Ketika saya mencoba menghubungkan biner di folder / usr / bin saya, saya mendapatkan kesalahan Operasi tidak diizinkan:
sudo ln -s /usr/bin/python2.7 /usr/bin/python2
ln: /usr/bin/python2: Operation not permitted
Bahkan sebagai sudo, saya mendapatkan kesalahan ini.
Jawaban:
Mengapa saya tidak dapat melakukan symlink ke
/usr/bin
?Fitur Perlindungan Integritas Sistem baru El Capitan mencegah perubahan pada beberapa bagian inti OS X, termasuk sebagian besar
/usr/
, bahkan oleh root.Bagaimana saya masih bisa menambahkan file yang dapat dieksekusi ke jalur saya?
Kustomisasi lokal, seperti apa yang Anda lakukan, termasuk di
/usr/local
dalamnya. Path/usr/local/bin
tidak ada secara default, tetapi Anda dapat membuatnya dan meletakkan binari kustom (dan symlink) di dalamnya:Perhatikan bahwa meskipun
/usr/local/bin
tidak ada secara default, itu ada dalam PATH default, jadi segera setelah Anda membuatnya, itu akan dicari untuk perintah.Menonaktifkan SIP
Anda juga dapat menonaktifkan Perlindungan Integritas Sistem, tetapi biasanya yang terbaik adalah membiarkannya aktif dan melakukan penyesuaian di lokasi yang lebih sesuai. Pertanyaan Apple Stack Exchange memiliki detail lebih lanjut tentang ini: Apa sebenarnya Fitur Tanpa Root di El-Captain? .
sumber
Saya membuat tautan simbolis untuk Sublime Text 3 di Mac OS High Sierra sebagai
Saya juga mencoba membuat tautan simbolik di "/ usr / bin" dan mendapatkan Operasi Tidak Diizinkan.
Kemudian saya membuat tautan simbolik di "/ usr / local / bin" dan tidak ada kesalahan. Tautan simbolis berfungsi dengan baik. Pastikan bahwa "/ usr / local / bin" ada di jalurnya.
Jadi, tampaknya akses ke "/ usr / bin" dibatasi.
sumber
Restart sistem -> tekan lama cmd + R . pilih terminal dari menu utilitas ketik perintah berikut csrutil nonaktifkan tutup terminal dan restart sistem.
sumber
sudo
.jika Anda tidak dapat membuat tautan simbolis karena masalah izin, itu akan terjadi karena "csrutil". setelah menonaktifkan csrutil Anda dapat membuat tautan simbolis. Ikuti langkah-langkah berikut untuk menonaktifkan CSRUtill:
Mulai ulang Mac Anda. Sebelum OS X dimulai, tahan Command-R dan tahan hingga Anda melihat ikon Apple dan bilah kemajuan. Melepaskan. Ini mem-boot Anda ke Recovery. Dari menu Utilities (di bilah atas), pilih Terminal. Pada prompt ketik persis berikut ini dan kemudian tekan Return: csrutil disable Terminal akan menampilkan pesan bahwa SIP telah dinonaktifkan. Dari menu , pilih Mulai Ulang.
sumber
Coba jalankan
sudo su
dulu baru jalankan perintah w / root level.sumber