Saya baru saja memutakhirkan MacBook Air saya ke Mavericks. Proses tersebut tampaknya telah menghapus hampir semua symlink yang homebrew
dimasukkan /usr/local/bin
. Ketika saya melihat hal-hal yang hilang maka saya menghubungkan kembali melalui brew unlink <keg> && brew link <keg>
(meskipun symlink hilang, homebrew
masih berpikir mereka ada di sana jadi saya harus unlink
terlebih dahulu). Ini terasa agak tidak efisien.
Saya hanya bisa mengulang semua yang ada di dalam /usr/local/Cellar
tetapi tidak semua tong secara otomatis terhubung dan saya tidak ingin menghubungkannya. Jadi tebakan saya berikutnya adalah mendaftar setiap tong yang terhubung dan menghubungkannya kembali (menggunakan yang di atas).
Apakah ada perintah sihir yang akan menemukan semua tong yang homebrew
menurutnya terhubung sehingga saya dapat menghubungkan kembali mereka?
Jawaban:
/usr/local/Library/LinkedKegs
tampaknya berisi daftar, yang terkait dengan tong, jadi ini yang harus dilakukan:Saya sarankan memastikan Anda memiliki izin menulis
/usr/local/lib
lagi sebelum mencoba ini.sumber
--force
!brew link
harus memadai, dan beberapa tong benar-benar tidak boleh dihubungkan (karena dapat bertentangan dengan pustaka sistem), sedangkan--force
akan memaksa hubungan mereka./usr/local/Library
.Perintah bash ini (diambil dari sana ) akan memutuskan tautan semua formula yang diinstal dan kemudian menautkannya lagi:
Saya kira semua rumus harus ditautkan, jika tidak, alat apa pun yang bergantung padanya, tidak akan dapat menemukannya ..
sumber
brew list -1 | xargs -I formula sh -c "brew unlink formula && brew link formula"
Selain jawaban lain untuk pertanyaan ini, Anda mungkin juga perlu menautkan kembali rumus dengan beberapa versi yang diinstal (
brew link
tidak akan melakukan ini untuk Anda).Pertama, taut ulang semua formula yang Anda bisa:
Kemudian jalankan
brew doctor
, yang seharusnya mengeluh dan memberi Anda dua daftar:Untuk setiap rumus dengan beberapa versi, jalankan yang berikut, ganti "python" dengan nama rumus:
Ini akan menunjukkan kepada Anda, di antara informasi lainnya, semua versi yang diinstal. Pilih versi mana yang ingin Anda tautkan (untuk saya versi 2.7.6), dan gunakan
brew switch
Anda juga ingin menjalankan
brew unlink
pada daftar (jika ada) formula hanya-tong yang telah ditautkan.sumber