Simgeler ve hardlinkler arasındaki teknik farkı anlıyorum, bu pratikte kullanımları hakkında bir soru, özellikle her ikisinin de neden benzer koşullarda kullanıldığını merak ediyorum: /bin
dizin.
İşte benim sistemindeki bir parçası:
~$ ls -lai /bin
total 10508
32770 drwxr-xr-x 2 root root 4096 Jun 14 11:47 .
2 drwxr-xr-x 28 root root 4096 Sep 6 13:15 ..
119 -rwxr-xr-x 1 root root 959120 Mar 28 22:02 bash
2820 -rwxr-xr-x 3 root root 31112 Dec 15 2011 bunzip2
127 -rwxr-xr-x 1 root root 1832016 Nov 16 2012 busybox
2820 -rwxr-xr-x 3 root root 31112 Dec 15 2011 bzcat
6191 lrwxrwxrwx 1 root root 6 Dec 15 2011 bzcmp -> bzdiff
5640 -rwxr-xr-x 1 root root 2140 Dec 15 2011 bzdiff
5872 lrwxrwxrwx 1 root root 6 Dec 15 2011 bzegrep -> bzgrep
3520 -rwxr-xr-x 1 root root 4877 Dec 15 2011 bzexe
6184 lrwxrwxrwx 1 root root 6 Dec 15 2011 bzfgrep -> bzgrep
5397 -rwxr-xr-x 1 root root 3642 Dec 15 2011 bzgrep
2820 -rwxr-xr-x 3 root root 31112 Dec 15 2011 bzip2
2851 -rwxr-xr-x 1 root root 10336 Dec 15 2011 bzip2recover
6189 lrwxrwxrwx 1 root root 6 Dec 15 2011 bzless -> bzmore
5606 -rwxr-xr-x 1 root root 1297 Dec 15 2011 bzmore
Daha iyi görünürlük için sabit bağlantıları aynı inode'a girintilendirdim. Yani sembolik bağ olması durumunda kullanılır bzcmp
, bzegrep
, bzfgrep
, bzless
söz konusu ve sabit bağlantılarını bzip2
, bzcat
, bunzip2
?
Hepsi normal dosyalardır (dizinler değil), bir dosya sisteminde bulunur, sistem yardımcı programlarıdır ve aynı şeyle çalışmak için bile yapılmıştır: bzip arşivleri. Bu durumda sert bağlantıların / sembolik bağlantıların kullanım nedenleri tamamen tarihsel mi yoksa bir şey mi kaçırıyorum?
Sorumun açıklaması:
Ben değilim değil soran:
- Semboller ve hardlinkler arasındaki teknik farklar
- Her birinin teorik avantajları ve dezavantajları
Bu sorular SO ile ilgili diğer başlıklarda ele alınmıştır. Belirli bir durumda neden farklı kararlar verildiğini anlamaya çalışıyorum: ilgili sistem yardımcı programları grubu için. Teknik olarak, hepsi sembolik olabilir ya da hepsi hardlink olabilirdi, her iki seçenek de işe yarayacaktı (ve her iki durumda da bir program hala nasıl çağrıldığını çözebilir argv[0]
). Varsa, burada niyeti anlamak istiyorum.
İlişkili:
/bin
üçüncü sütunundals -lai
her zaman1
sadece yumuşak bağlantıları kullanmak gibi görünüyor. Hangi dağıtımı kullanıyorsunuz?