Linux'ta Hard Link ve Soft Link Nasıl Oluşturulur?

How Create Hard Link



Linux işletim sisteminde, bir dosya hakkındaki tüm bilgiler, ilgili düğümünde saklanır. Bu düğümler, bir dosyanın tüm meta verilerini bilmenizi sağlar. Tıpkı popüler programlama dillerinin çoğunda dosyalara işaretçiler oluşturduğumuz gibi, Linux'ta bir dosyaya bağlantılar oluşturma kavramı vardır. Bu bağlantılar temel olarak iki türdür: sert ve yumuşak bağlantılar. Bir dosyaya sabit bağlantı, esasen dosyanın tam bir kopyasıdır; bu, bir dosyaya sabit bağlantının ve gerçek dosyanın aynı düğümü paylaşacağı anlamına gelir. Sabit bağlantı oluşturmanın en büyük avantajı, asıl dosyayı yanlışlıkla silseniz bile, içeriğine sabit bağlantı yoluyla erişmeye devam edebilecek olmanızdır.

Öte yandan, yumuşak bir bağlantı veya sembolik bir bağlantı, tam olarak bir işaretçi veya bir dosyanın kısayolu gibi çalışır. Dosyanın doğru bir kopyası değil, yalnızca orijinal dosyaya işaret ediyor. Bir dosyaya ve gerçek dosyaya yumuşak bir bağlantı farklı inode değerlerine sahip olacaktır. Ayrıca, herhangi bir zamanda asıl dosyayı silerseniz, içeriğine soft link üzerinden erişemezsiniz. Bugün, Linux'ta bir dosyaya sabit bağlantı ve yumuşak bağlantı oluşturma yöntemlerini sizinle paylaşacağız.







Not: Aşağıda gösterilen yöntemlerde size yol göstermesi için Linux Mint 20'yi kullandık.



Linux Mint 20'de Sabit Bağlantı Oluşturma Yöntemi:

Linux Mint 20'de bir dosyaya sabit bağlantı oluşturmak için aşağıda belirtilen adımları uygulayacağız:



Öncelikle Linux Mint 20'de hard link oluşturmak için terminal üzerinden komutları iletebilmemiz için terminali başlatmamız gerekiyor. Ayrıca Linux Mint 20 terminalinin görüntüsünü de aşağıya ekledik:





Şimdi mevcut çalışma dizininizde bulunan tüm dosyaları listelemeniz gerekiyor. Bunu, yolunu açıkça belirterek, seçtiğiniz herhangi bir başka dizin için de yapabilirsiniz. Ancak, aşağıdaki komutumuzda yolundan bahsetmek zorunda kalmamak için Giriş dizini ile çalışmayı tercih ettik:



$ls-NS

Bu komut, üzerinde çalışmakta olduğunuz çalışma dizininin tüm içeriğini listeleyecektir.

Ana dizinimizin içeriği de aşağıdaki resimde gösterilmektedir:

Şimdi, sabit bağlantısını oluşturmak istediğiniz herhangi bir dosyayı seçin. Seçtiğimiz dosyayı yukarıda gösterilen resimde vurguladık. Şimdi aşağıda gösterilen komutu çalıştırarak awk.txt adlı dosya için bir sabit bağlantı oluşturmaya çalışacağız:

$içindeawk.txt abc.txt

Burada, ilk dosya sabit bağlantısını oluşturmak istediğiniz dosya olacaktır, ikinci dosya ise oluşturulacak sabit bağlantının adını belirtir. abc.txt dışında herhangi bir ad kullanabilirsiniz.

Bu komutu çalıştırdıktan sonra, awk.txt dosyasına bir sabit bağlantının oluşturulup oluşturulmadığını doğrulamak için mevcut çalışma dizininizin içeriğini ls komutuyla bir kez daha listelemeniz gerekir. Bu komutu çalıştırdıktan sonra, awk.txt dosyasının tam klonunu aşağıdaki resimde vurgulandığı gibi mevcut çalışma dizininizde abc.txt adıyla görebileceksiniz:

Bunu doğrulamanın başka bir yolu da Dosya Yöneticisi simgesine tıklayarak Ana dizininizi ziyaret etmektir. Orada, aslında aynı metin dosyasının tam kopyası olan abc.txt ile birlikte awk.txt dosyasını görebileceksiniz. İçeriklerinin aynı olup olmadığını doğrulamak için bu dosyaların ikisini de açabilirsiniz.

Linux Mint 20'de Soft Link Oluşturma Yöntemi:

Linux Mint 20'de bir dosyaya soft link oluşturmak için aşağıda belirtilen adımları uygulayacağız:

Yukarıda gösterilen yöntemde yaptığımız gibi, mevcut çalışma dizininin içeriğini kontrol etmek için ls komutunu bir kez daha çalıştırmamız gerekiyor. Bu sefer, aşağıdaki resimde vurgulandığı gibi, yumuşak bağlantısını oluşturmak için Bash.sh adlı başka bir dosya seçtik:

Soft linkini oluşturmak için bir dosya seçtikten sonra, Linux Mint 20 terminalimizde aşağıdaki komutu çalıştırmamız gerekiyor:

$içinde–s Bash.sh NewBash.sh

Burada -s bayrağı, bir dosyaya yumuşak bir bağlantı oluşturacağımızı belirtir; ilk dosya, yazılım bağlantısı oluşturulacak dosyaya atıfta bulunurken, ikinci dosya, yazılım bağlantınızın adına veya ilk dosyanızın işaretçisine atıfta bulunur. Bu dosyanın yumuşak bağlantısı için istediğiniz herhangi bir ada sahip olabilirsiniz.

Bu komutu çalıştırdıktan sonra, Bash.sh dosyasına yumuşak bir bağlantının oluşturulup oluşturulmadığını doğrulamak için mevcut çalışma dizininizin içeriğini ls komutuyla bir kez daha listelemeniz gerekir. Bu komutu çalıştırdıktan sonra, aşağıdaki resimde vurgulandığı gibi, mevcut çalışma dizininizde Bash.sh adlı dosyaya işaret eden NewBash.sh adlı yumuşak bağlantıyı görebileceksiniz. Ayrıca, vurgulanan girişte l bayrağını da görebileceksiniz, bu da az önce oluşturduğunuz bağlantının dosyanın tam kopyası değil, yalnızca dosyaya yönelik bir işaretçi olduğunu gösterir.

Bunu doğrulamanın başka bir yolu da Dosya Yöneticisi simgesine tıklayarak Ana dizininizi ziyaret etmektir. Orada, aslında eski dosyanın yumuşak bağlantısı olan Bash.sh ve NewBash.sh'ı görebileceksiniz. Ayrıca NewBash.sh dosyasında yer alan ve bunun bir tür kısayol veya Bash.sh dosyasına bir bağlantı olduğunu ve aşağıda gösterilen resimde vurgulandığı gibi tam kopyası olmadığını gösteren bir ok görebilirsiniz:

Çözüm:

Bu makalede bir dosyaya sabit bağlantılar ve yumuşak bağlantılar oluşturma yöntemlerini açıklayarak, gereksinimlerinize göre bu bağlantılardan herhangi birini istediğiniz herhangi bir dosyaya oluşturmanıza olanak sağladık. Bu yöntemleri mümkün olan en kolay şekilde göstermeye çalıştık.