sudo กำลังสับสนกับคำสั่งพา ธ


1

ฉันมีปัญหาเล็กน้อยกับฉัน PATH เมื่อฉันใช้ sudo :

ของฉัน PATH จากเปลือกผู้ใช้:

/usr/local/bin:/usr/bin:/bin:/opt/bin

ของฉัน PATH จากรูตเชลล์ผ่าน su หรือเข้าสู่ระบบรูทบน TTY:

/usr/sbin:/usr/bin:/sbin:/bin

ของฉัน PATH จากรูตเชลล์ผ่าน sudo -s :

/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/opt/bin

อย่างที่คุณเห็นเมื่อใช้ sudoคำสั่งของ /bin, /usr/bin และ /usr/local/bin กลับด้าน

มันค่อนข้างน่ารำคาญส่วนใหญ่เมื่อฉันใช้เสียงเรียกเข้า ฉันเคยมี vi symlink ไป vim. การกำหนดค่า symlink ในระบบ Gentoo ของฉันคือ:

/bin/vi     -> busybox
/usr/bin/vi -> vim

ดังนั้นในกรณีส่วนใหญ่เพียงพิมพ์ vi แสดง Vim ขึ้นมา แต่ถ้าฉันใช้ sudo viฉันจะจบลงด้วย Busibox vi เนื่องจากมีการเปลี่ยนแปลง PATH สั่งซื้อ!

ฉันหาคำตอบไม่ได้ sudo สร้างเส้นทางใหม่นี้มีวิธีที่จะเปลี่ยนหรือไม่?


คุณใช้ / bin / vi หรือไม่ คุณสามารถเชื่อมโยงไปยัง / usr / bin / vi
exussum

@ user1281385 symlick นี้เป็นส่วนหนึ่งของระบบ Gentoo ภายในและอาจมีประโยชน์ในสถานการณ์การกู้คืน ฉันไม่ต้องการลบ
Levans

คำตอบ:


4

ตรวจสอบไฟล์ / etc / sudoers หรือไดเร็กทอรี /etc/sudoers.d คุณควรเห็นบางสิ่งเช่น:

Defaults    secure_path = /sbin:/bin:/usr/sbin:/usr/bin

ฉันไม่ได้มีเส้นดังกล่าว แต่การเพิ่มมันด้วยการเรียงลำดับที่ถูกต้องได้หลอกลวง
Levans
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.