ปรับปรุง:
การตั้งค่าตัวแปรสภาพแวดล้อมทั่วโลกควรจะยังคงดำเนินการ/etc/environment
แต่เมื่อคุณชี้ให้เห็นว่าการใช้sudo -s
มีผลกระทบของตัวแปรเหล่านี้คือ "หายไป"
เหตุผลก็คือsudo
มีนโยบายของการตั้งค่าสภาพแวดล้อมและการตั้งค่าเส้นทางที่เชื่อถือได้ มันถูกเปิดใช้งานโดยค่าเริ่มต้น:
/etc/sudoers:
Defaults env_reset
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
ดังนั้นสิ่งที่ตั้งอยู่ในเส้นทางถูกแทนที่โดย/etc/environment
sudo
หน้าคู่มือสำหรับsudoers
รัฐ:
env_reset If set, sudo will reset the environment to only contain
the LOGNAME, MAIL, SHELL, USER, USERNAME and the SUDO_*
variables. Any variables in the caller's environment
that match the env_keep and env_check lists are then
added. The default contents of the env_keep and
env_check lists are displayed when sudo is run by root
with the -V option. If the secure_path option is set,
its value will be used for the PATH environment
variable. This flag is on by default.
คุณสามารถใช้งานได้sudo su
ว่าจะให้เชลล์ที่มีสิทธิ์รูท แต่มี PATH ที่เหมาะสม
คำตอบเดิม
/etc/environment
คุณควรกำหนดไว้ใน
ลองsudo YOUR_TEXT_EDITOR /etc/environment
(ให้แน่ใจว่าได้สร้างการสำรองข้อมูลก่อน)
สำหรับข้อมูลเพิ่มเติม: EnvironmentVariables
ตัวแปรสภาพแวดล้อมทั้งระบบ
การตั้งค่าตัวแปรสภาพแวดล้อมที่ส่งผลกระทบต่อระบบโดยรวม (ไม่ใช่แค่ผู้ใช้เฉพาะ) ไม่ควรอยู่ในสคริปต์ระดับระบบใด ๆ ที่ได้รับการดำเนินการเมื่อมีการโหลดระบบหรือเซสชันเดสก์ท็อป
/etc/environment
- ไฟล์นี้มีความหมายโดยเฉพาะสำหรับการตั้งค่าตัวแปรสภาพแวดล้อมทั้งระบบ ไม่ใช่ไฟล์สคริปต์ แต่ประกอบด้วยนิพจน์การกำหนดหนึ่งรายการต่อบรรทัด ไฟล์นี้จัดเก็บการตั้งค่าโลแคลและพา ธ ทั่วทั้งระบบ
ไม่แนะนำ:
/etc/profile
- ไฟล์นี้จะถูกเรียกใช้งานเมื่อใดก็ตามที่มีการป้อนเชลล์ bash (เช่นเมื่อล็อกอินจากคอนโซลหรือผ่าน ssh) รวมถึง DisplayManager เมื่อเดสก์ท็อปโหลดขึ้นมา นี่อาจเป็นไฟล์ที่คุณจะได้รับการอ้างอิงเมื่อถามผู้ดูแลระบบ UNIX รุ่นเก๋าเกี่ยวกับตัวแปรสภาพแวดล้อม อย่างไรก็ตามในอูบุนตูไฟล์นี้จะเรียกใช้ไฟล์ /etc/bash.bashrc อีกเล็กน้อย
/etc/bash.bashrc
- นี่เป็นไฟล์ทั้งระบบ ~ / .bashrc Ubuntu ได้รับการกำหนดค่าตามค่าเริ่มต้นให้เรียกใช้ไฟล์นี้ทุกครั้งที่ผู้ใช้เข้าสู่เชลล์หรือสภาพแวดล้อมเดสก์ท็อป