Yazarlar Sözlük Makaleler Yardım Masası Gözlük Forum İstatistik

ln
Tüm Başlıklar XML

1.  Bir dizine ya da dosyaya link dosyası oluşturmak için kullanılan Unix komutu. Link dosyaları ilk bakışta Windows'taki kısayollara benzer ama bazı farklar vardır. İki tür link vardır:

1. Sembolik link:
Bu sadece dosyanın pathini saklayan bir kısayol dosyasıdır. Ama işletim sistemi size sanki dosya kısayolun kendisiymiş gibi hizmet verir. Örneğin PHP ile geliştirdiğiniz bütün sitelerinizde kullandığınız library kodlarınızı tek bir dizinde saklayıp, sonra her sitenin kök dizininde library adında bir sembolik link oluşturup, bütün sitelerin library dosyalarını kendi dizinlerinde saklıyormuş gibi gösterebilirsiniz. Bundan sonra PHP kodları gereken library dosyalarını sanki kendi dizinlerindeymiş gibi include edebileceklerdir. Yani include("library/falanca.lib") komutu bütün farklı sitelerde aynı dosyayı include edecektir.

2. Hard link:
Bu ise sembolik link gibi bir kısayol olmaktan çok farklıdır çünkü link verilen dosyanın gerçek bir kopyasını oluşturur. Normal kopyalamadan farkı şudur ki; dosyalardan birini değiştirdiğinizde diğeri de değişir. Ortada iki (veya daha çok) farklı dosya vardır ama bunlar birbirinin mirror'u gibidir.

Örnekler:
ln -s /home/library
Bulunduğunuz dizinde library adında bir sembolik link oluşturur. Bu link /home/library dizininin bir çeşit kısayoludur.
ln /home/library
Bulunduğunuz dizinde library adında bir hard link oluşturur. Bu link /home/library dizininin aynasıdır.
fizikci
25 Aralık 2005 22:01 ~ 26 Aralık 2005 01:36
2.  line kelimesinin kısaltması olarak karşınıza çıkarsa şaşırmayın.Olur böyle şeyler deyip geçin.
mennan
25 Aralık 2005 22:06
3.  soft link oluşturduğunuz zaman yapılan şey, bir link dosyası oluşturmak ve asıl dosyanın yerini bu dosyaya yazmaktır. ls -l ile baktığınız zaman soft link yapılan dosyanın boyunun, bağlanılan dosyanın adının boyuyla aynı olduğunu görürsünüz zaten.
Bu yüzden:
/home/sertw dizinindeki "hebele" dosyasına "hede" dosyasını şu şekilde bağlarsanız:
ln -s hebele  hede
hede'nin boyu 6 olur.{"hebele"nin boyu...}
Ancak,
ln -s `pwd`/hebele  hede
şeklinde bağlarsanız hede'nin boyu 18 olur. {"/home/sertw/hebele"nin boyu...}
link dosyası olduğu için ls -l yaptığınız zaman lrwxrwxrwx * şeklinde bir belirtim ile karşılaşırsınız.


Hardlink olması ise, aynı C'deki bir struct'a birden çok pointer'ın işaret etmesi gibidir. Dosya sistemindeki birden çok index, harddisk üzerindeki aynı verileri gösteriyordur. Hardlink yapmak yeni bir index eklemektir yani.

Bir dosyayı sildiğiniz zaman ise sadece index'i silinir. Bu yüzden de bir dosyayı gösteren indexlerin sayısı da tutulur. Eğer silme işlemi ile index sayısı 0 olmuşsa, veriniz silinir.
{java'daki garbage collector gibi bir mekanizma diyelim.}

Bu sayede dinlemekte olduğunuz müziği silebilirsiniz sisteminizden. Çünkü müzik çalan program, o dosyayı açmıştır, dolayısıyla kendine bir index edinmiştir.* Siz çalan dosyayı sildiğiniz vakit bir index eksilir, müzik çalan program dosyayı kapattığı vakit de dosya, sistemden tamamen silinir.
Taşıma* işlemi de aynıdır. Bu sayede çalmakta olan dosyanın yerini değiştirebilmektesiniz.
* * *
sertw
26 Aralık 2005 00:49
Bu konuda bildiklerinizi bizlerle paylaşabilirsiniz
Tabi bunun için yazarsanız giriş yapmalı, yazar değilseniz yazar olmalısınız.


Bu başlığa bkz veren girişlerin başlıkları nedir?
» ls -l » Unix


Bu başlığa bkz veren girişler başka hangi başlıklara bkz verdiler?
© 2005, Bilişim Kulübü. (1125 ms)
Ne yapabilirsin: SubtitleClick ile İngilizceni Geliştir, Çınar Framework ile kod yaz, Eglencelik.org'ta biraz eğlen