Saya sedang menjalankan skrip yang mengulangi semua file di sistem Linux saya dan membuat beberapa metadata tentang mereka, dan itu melemparkan kesalahan ketika mengenai tautan simbolis yang rusak.
Saya baru mengenal * nix, tetapi saya mendapatkan ide utama di balik menautkan file dan bagaimana tautan rusak muncul. Sejauh yang saya tahu, mereka seperti sampah di jalanan. Hal-hal yang saya hapus dari sebuah program tidak cukup pintar untuk mengatakan bahwa manajer paket itu ada, dan miliknya, atau sesuatu yang tertinggal dalam peningkatan. Pada awalnya, saya mulai mengubah skrip yang saya jalankan untuk melewati mereka, kemudian saya berpikir, 'well, kita selalu bisa menghapusnya saat kita di sini ...'
Saya menjalankan Ubuntu 14.04 (Trusty Tahr). Saya tidak dapat melihat alasan untuk tidak melakukannya, tetapi sebelum saya melanjutkan dan menjalankan ini di sistem pengembangan saya, adakah alasan ini sebenarnya merupakan ide yang mengerikan? Apakah symlink yang rusak memiliki tujuan yang tidak saya sadari?
Jawaban:
Ada banyak alasan untuk tautan simbolik yang terputus:
Resolusi: hapus symlink yang rusak.
Resolusi: temukan target yang dituju dan perbaiki tautan tersebut.
Resolusi: temukan target yang dimaksud dan perbaiki tautannya.
Penyelesaian: tidak ada, tautan tidak rusak di mana-mana.
Penyelesaian: tidak ada, tautan tidak rusak untuk semua orang.
Resolusi: tidak ada. Dalam hal ini, menghapus tautan akan merugikan.
Jika Anda dapat menentukan bahwa symlink masuk ke dalam kategori pertama, maka pastikan, lanjutkan dan hapus. Kalau tidak, abstain.
Program yang melintasi direktori secara rekursif dan peduli dengan konten file biasanya harus mengabaikan tautan simbolis yang rusak.
sumber
Jangan membabi buta menghapus semua tautan simbolik yang menjuntai. Mereka mungkin ada hanya untuk membawa beberapa informasi, dan mungkin lebih aman daripada file normal karena pembuatan symlink adalah atom.
Sebagai contoh, Firefox membuat "lock" file kunci yang merupakan symlink yang nilainya memiliki bentuk seperti "IP_address: + PID".
sumber
Baik server web fnord maupun Gatling menggunakan sistem file Unix sebagai basis data konfigurasi mereka (berbeda dengan, katakanlah, Microsoft IIS, yang menggunakan registri Windows, atau Apache, yang menggunakan file konfigurasi kompleks-untuk-parse).
Sebagai contoh, virtual host hanyalah direktori, dan membuat virtual host baru semudah itu
Mengkonfigurasi file mana yang akan ditayangkan?
Mengkonfigurasi file mana yang akan dieksekusi sebagai CGI dan yang akan ditayangkan?
Dan terakhir (dan relevan dengan pertanyaan ini): mengkonfigurasi pengalihan?
Anda sekarang akan memiliki symlink yang disebut
search.html
titik mana, tetapi sangat penting untuk kerja situs Anda.sumber
Sebuah symlink mungkin menunjuk ke lokasi yang masih kosong hanya untuk memaksa pembuatan di lokasi atau nama sistem file tertentu.
Jadi tidak - jangan membabi buta menghapusnya.
sumber
Kelemahan yang signifikan untuk menghapus tautan simbolis basi adalah bahwa Anda kehilangan referensi ke tempat mereka tunjuk yang bisa sangat berharga!
Katakanlah saya memiliki tautan simbolis untuk file bernama "
send_to
" yang menunjuk ke/Users/myname/tmp
dan mengira itu/Users/myname/tmp
tidak ada.Dengan tautan simbolis saya tahu di mana file itu dimaksudkan . Sebagai contoh, dalam hal ini saya dapat melihat bahwa ini adalah direktori sementara dan jika saya perlu "memperbaikinya", saya harus mempertimbangkan direktori sementara sebagai tujuan.
Demikian pula tautan "
my_config
" yang mengarah ke/etc/conf_file
'buruk' karenaconf_file
telah diubah namanya menjadi confirm_file masih merupakan informasi yang berguna. Jika Anda pergi ke/etc
direktori dan melakukanls
dan melihat file yang dipanggilconf_file
hilang tetapiconfirmation_file
ada di sana Anda mungkin memiliki info yang cukup untuk sekarang memperbaiki tautan.sumber
Mengutip dari The Linux Command Line (buku terbaik untuk pemula Linux, dan Anda dapat mengunduhnya secara gratis di sini ):
Jadi tidak, saya tidak akan menghapus tautan simbolis karena itu akan membuat Anda pusing, dan Anda berisiko mengacaukan sistem Anda.
sumber