อืม ... ตั้งแต่ Mac OS X 10.10.5 และอาจก่อนหน้านี้man -s5 launchd.conf
บอกเราว่า: " launchd.conf is no longer respected by the system.
" ตอนนี้ฉันมีสิ่งต่าง ๆ มากเกินไปที่จะใส่ตัวแปรดัมมี่ลงในไฟล์แล้วรีสตาร์ทเพื่อดูว่ามันใช้งานได้จริงหรือไม่ ทั้งหมด แต่เอกสารระบุว่าไม่ควรใช้งานได้
ฉันค่อนข้างแน่ใจว่ามันจะไม่ ทำman launchctl
แล้วคุณจะเห็น: " The /etc/launchd.conf file is no longer consulted for subcommands to run during early boot time; this functionality was removed for security considerations.
"
สิ่งที่คุณสามารถทำคือใส่ทุกตัวแปรสภาพแวดล้อมที่คุณต้องการที่จะเป็นโลก-ish เป็นไฟล์บางอย่างอาจจะเรียกว่าenvironment
ในการรักษาด้วยลินุกซ์หรือ (ในกรณีที่แอปเปิ้ลตัดสินใจที่จะทำอะไรบางอย่างกับว่าภายหลัง - คุณไม่เคยรู้) environment.conf
เช่นผม, จากนั้นให้แหล่งข้อมูลนี้ผ่าน/etc/profile
:
if [ -f /etc/environment.conf ]; then
source /etc/environment.conf
fi
หรือหากคุณต้องการรูปแบบกะทัดรัด:
if [ -f /etc/environment.conf ]; then . /etc/environment.conf; fi
หากคุณใช้เชลล์อื่นนอกเหนือจาก bash และใช้ไวยากรณ์การตั้งค่าตัวแปรเดียวกับ bash (เช่นเดียวกับ zsh ฉันคิดว่า) คุณจะต้องส่งไฟล์นี้จากไฟล์ rc ของทั้งระบบ (เช่น/etc/zshrc
) หากคุณใช้เชลล์ที่ใช้ไวยากรณ์ที่แตกต่างกันเช่น tcsh คุณจะต้องบำรุงรักษาไฟล์ที่คล้ายกันสำหรับเชลล์นั้นและแหล่งที่มาจากไฟล์ rc ของทั้งระบบของเชลล์ (เช่น/etc/csh.cshrc
สำหรับ tcsh) หรือดีกว่ายังสร้างสคริปต์ ที่สร้างขึ้นโดยอัตโนมัติดังนั้นคุณจะต้องแก้ไขเพียงหนึ่งไฟล์เพื่อเพิ่ม / เปลี่ยนตัวแปร นี่ไม่ใช่สถานที่สำหรับการสอนเช่นนี้ ไม่กี่วินาทีบน Google พบวิธีแปลง [t] ตัวแปร csh เป็น bash syntax ได้ที่https://stackoverflow.com/questions/2710790/how-to-source-a-csh-script-in-bash-to -SET-the-สิ่งแวดล้อมดังนั้นอาจมีบางสิ่งบางอย่างที่สามารถไปในทิศทางอื่นได้
เป็นประสบการณ์ของฉันที่ Mac OS X เคลื่อนไปไกลกว่าและไกลจากพฤติกรรมของไฟล์ rc ที่คาดการณ์ได้ ในฐานะที่เป็นอย่างน้อย 10.8 ก็ไม่น่าที่จะโหลด/etc/rc.common
, /etc/rc.conf
หรือ/etc/rc.<anything>
ไม่ (อย่างน้อยตั้งแต่ 10.9) มันจะโหลด/etc/bash.bashrc
สำหรับเปลือกหอย nonlogin โต้ตอบ (ซึ่งก็แน่นอนควรจะทำเช่นเดียวกับมันโหลด~/.bashrc
สำหรับพวกเขายังคงเป็นของ 10.10) . จากนั้นอีกครั้งฉันมี Fink, MacPorts และ Homebrew ติดตั้งทุกอย่างดังนั้นอาจมีหนึ่งในนั้นกำลังรบกวนพฤติกรรม dotfile เริ่มต้น YMMV
/etc/environment
) ไม่อ่านเนื่องจากไม่ใช่มาตรฐานข้ามระบบ - เป็นเพียงส่วนหนึ่งของเครื่องมืออำนวยความสะดวก Linux PAM Mac OS X ไม่ใช่ Linux และไม่ได้ใช้ PAM หรือไม่ใช้ระบบปฏิบัติการอื่นกับความรู้ของฉัน คุณจะหนีไปเพราะมันอยู่บนลีนุกซ์ และใช่มันยังคงอ่าน - โดย Linux ;-)