Yosemite
/etc/launchd.conf
không còn được hỗ trợ trong 10.10. Xem man launchctl
:
Tệp /etc/launchd.conf không còn được tư vấn để các tiểu ban chạy trong thời gian khởi động sớm; chức năng này đã được gỡ bỏ để xem xét bảo mật.
Bây giờ bạn có thể lưu ví dụ này dưới dạng ~/Library/LaunchAgents/my.startup.plist
:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>my.startup</string>
<key>ProgramArguments</key>
<array>
<string>sh</string>
<string>-c</string>
<string>launchctl setenv PATH /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
Các launchctl setenv
lệnh là ran như người sử dụng, vì vậy nó chỉ áp dụng cho quá trình triển khai trong lĩnh vực sử dụng.
Phương pháp này không áp dụng cho các ứng dụng được mở lại khi đăng nhập nếu "Mở lại cửa sổ khi đăng nhập lại" được chọn.
Mavericks và trước đó
Trong 10.9 trở về trước, bạn có thể chạy
echo setenv PATH /usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin|sudo tee -a /etc/launchd.conf
và sau đó khởi động lại để áp dụng các thay đổi.
Các phương pháp khác
/etc/paths
và /etc/paths.d/
chỉ áp dụng (hoặc chủ yếu) cho vỏ. Các dòng trong /etc/paths
và /etc/paths.d/*
được thêm vào đường dẫn của path_helper , được điều hành từ /etc/profile
, /etc/zshenv
và /etc/csh.login
. Tôi không biết bất kỳ chương trình nào khác ngoài shell sẽ xem xét /etc/paths
hoặc /etc/paths.d/
.
~/.MacOSX/environment.plist
ngừng hoạt động vào 10.8.