ทางเลือกที่ดีสำหรับคำสั่ง sux คืออะไร?


13

ด้วยการเปิดตัว sux 14.04 ที่กำลังมาถึง (wrapper รอบ su ซึ่งจะถ่ายโอนข้อมูลรับรอง X ของคุณ) จะไม่รวมอยู่ใน Ubuntu อีกต่อไป (ฉันคิดว่ามันถูกลบเพราะมันถูกดึงมาจาก Debian เพราะไม่มีการบำรุงรักษารหัสต้นฉบับ)

ฉันกำลังมองหาทางเลือกง่ายๆไม่ใช่สิ่งที่คุณต้องยุ่งกับ config-files หรือรัน sshd ในเครื่อง


ผู้ตรวจสอบ: นี่ไม่ใช่หัวข้อปิด แต่ไม่มีส่วนเกี่ยวข้องกับ 14.04
เซท

คุณต้องการสิ่งนี้จริงหรือ หากตัวเลือก sudoers ของคุณมีการตั้งค่าเช่นนั้น (เช่นเพื่อให้ sudo รักษา HOME เมื่อเปลี่ยนข้อมูลประจำตัว) คุณไม่จำเป็นต้องทำอะไรเป็นพิเศษด้วย. Xauthority นั่นคือวิธีการกำหนดค่าแล็ปท็อปของฉันและฉันไม่เคยใช้ sux ... เพียง 'sudo {command}'
Stabledog

@Stabledog มันจะทำงานอย่างไร ฉันจะตั้งค่าที่ใด มีไฟล์ sudo config ไหม? เป้าหมายของฉันคือเข้าสู่เดสก์ท็อปของผู้ใช้ A จากนั้นรับเทอร์มินัลในฐานะผู้ใช้ B โดยที่ x ทั้งหมดเข้าสู่เดสก์ท็อป หวังว่าจะทำให้รู้สึก ... ตัวอย่างของสิ่งที่ฉันสามารถทำได้ตอนนี้กับ sux ที่ฉันต้องการทางเลือกสำหรับ: ผู้ใช้เข้าสู่ระบบและเปิด terminal A @ desktop: ~ $ sux - BB @ desktop: ~ $ firefox Firefox เปิด แต่ด้วย การตั้งค่าบุ๊กมาร์กและไฟล์ของผู้ใช้ B ไปยังโฮมไดเร็กทอรีของผู้ใช้ B
Søren

ใช่ฉันทำสิ่งนั้นตลอดเวลา มี 2 ​​สิ่งที่ต้องเข้าใจ: ~ / .Xauthority สำหรับผู้ใช้ "outer" จำเป็นต้องกลายเป็น. Xauthority สำหรับผู้ใช้ภายในเช่นกันและการตั้งค่าตัวแปร DISPLAY โดย ssh จำเป็นต้องจับคู่ในเชลล์ด้านใน ตัวอย่างเช่นคุณสามารถคัดลอกไฟล์ ~ / .Xauthority จาก '/ home / tom' ไปยัง / home / jerry, แก้ไขการอนุญาต, ตั้งค่า DISPLAY ในเชลล์ 'jerry' เมื่อเรียกใช้โปรแกรม X เป็น jerry ค่า DISPLAY จะบอก X libs วิธีค้นหาจอแสดงผลและไฟล์. Xauthority ใน / home / jerry จะให้ข้อมูลรับรองความถูกต้อง
Stabledog

แต่มันก็ยุ่งที่จะทำในการเข้าสู่ระบบแต่ละครั้ง มันสะอาดกว่าที่จะแก้ไข / etc / sudoers ของคุณเพื่อให้ค่า HOME และ DISPLAY ของ tom ถูกเก็บรักษาไว้เมื่อเขาใช้ 'sudo -u jerry bash' เพื่อเปิดเชลล์เป็น jerry มีความคิดเห็นใน sudoers ซึ่งอธิบายวิธีเผยแพร่ตัวแปรสภาพแวดล้อมผ่านการเรียก sudo ต้องแน่ใจว่าใช้ visudo เมื่อแก้ไข sudeors ดังนั้นคุณจะไม่ล็อคตัวเองออกจากเครื่องถ้าคุณทำพลาด!
Stabledog

คำตอบ:


10

ฉันเสียใจมากเกินไปที่จะเห็นว่าไม่มีทางเลือกอื่นในsuxตอนแรก แต่จบลงด้วยสิ่งนี้:

  • ใน /etc/pam.d/su เพื่อส่งต่อคีย์ xauth ระหว่างผู้ใช้เมื่อเรียก su ให้เพิ่ม: session optional pam_xauth.so

  • ใน ~ olivier / .bashrc: export $(dbus-launch) (ไม่แน่ใจว่าจำเป็นจริง ๆ )

  • แล้วก็ง่าย ๆsu olivierจากผู้ใช้ที่เข้าสู่ระบบของฉัน

1
ฉันได้รับ "ไม่ได้ระบุโปรโตคอล" เมื่อฉัน "su" หลังจากทำเช่นนี้
Claudiu

-1
  • ดาวน์โหลด sux จากที่นี่http://fgouget.free.fr/index-en.shtml
  • คัดลอก sux ไปยังไดเรกทอรีในพา ธ ของคุณ (ตัวอย่างเช่น / usr / local / bin)
  • เปลี่ยนการอนุญาตเป็น executable (chmod 755 sux) ฉันไม่รู้ว่าการอนุญาตเหล่านี้คือ ritgh หรือไม่
  • แทนที่ / bin / sh สำหรับ / bin / bash

ระบบ Mi เป็นเดเบียน 10

ความนับถือ


1
สวัสดีและยินดีต้อนรับสู่ AskUbuntu ตามชื่อโดเมนที่แนะนำเว็บไซต์นี้เกี่ยวกับ Ubuntu โซลูชันโซลูชันของคุณทำงานบน Ubuntu หรือไม่ ทำไมมันไม่จำเป็นต้องเปลี่ยน/bin/shด้วย/bin/bash?
Simon Sudler
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.