GNU/Linux >> Belajar Linux >  >> Linux

Cara Bekerja dengan Hardlink dan Softlink di Linux

Tautan Keras dan Tautan Lunak adalah konsep penting untuk dipahami ketika Anda bekerja di lingkungan mirip Unix. Pada artikel kali ini, kita akan membahas apa itu hard link dan soft link serta cara membuatnya di Linux.

Linux memperlakukan semuanya sebagai file. Apakah itu perangkat blok, perangkat karakter, soket, atau pipa bernama Linux akan memperlakukannya sebagai file. Tautan Keras dan tautan lunak juga merupakan jenis file yang sebenarnya dibuat dengan mengacu pada file lain.

Apa itu Hardlink di Linux

Tautan Keras seperti tiruan dari file aslinya. Semua hard link memiliki nomor inode yang sama dan menghapus file asli atau file hard-link lainnya tidak akan berpengaruh pada file lain dan tetap saja, Anda dapat membaca konten file.

CATATAN :Tautan keras tidak dapat dibuat untuk direktori.

Cara Membuat Tautan Keras di Linux

Mari kita lihat cara bekerja dengan tautan keras. Saya membuat file bernama file1.txt dan menulis beberapa isinya.

$ cat file1.txt

Sekarang jalankan perintah ls dengan -i tandai untuk memeriksa nomor inode file1.txt dan jumlah tautan.

$ ls -li file1.txt

Sekarang buat tautan keras baru dan jalankan perintah ls yang sama untuk memeriksa nomor inode. Anda akan melihat kedua file memiliki nomor inode yang sama.

$ ln <source-file> <destination-file>
$ ln file1.txt file2.txt

Sekarang saya akan membuat file tautan keras baru dari file2.txt yang sudah dibuat dari file1.txt . Periksa jumlah tautan dan diperbarui menjadi 3 di semua file.

$ ls -li file2.txt /home/karthick/file3.txt

Cara Menghapus Tautan Keras di Linux

Sekarang jika Anda menghapus salah satu file tertaut keras, jumlah tautan akan diperbarui sesuai dengan semua file dan Anda masih dapat mengakses konten file.

$ rm file1.txt

Untuk menghapus semua file hard-linked sepenuhnya di seluruh sistem file, Anda dapat menggunakan perintah find untuk mencari file dengan nomor inode yang sama dan menghapus file.

$ find <directory> -inum <inode-number>  # SYNTAX
$ find / -inum 415314          # Finding all files with Inode 51425368

Untuk menghapus file, Anda dapat menambahkan exec perintah untuk menemukan perintah.

$ sudo find / -inum415314 -exec rm -f {} \;

CATATAN :Saat Anda menjalankan temukan perintah dan jika Anda ingin memindai semua direktori dalam sistem file, lebih baik gunakan sudo .

Apa itu Softlink di Linux

Tautan Lunak kadang-kadang disebut symlink atau tautan simbolik. Saat Anda membuat tautan lunak, file baru akan dibuat dan file itu akan mengarah ke file induk. Anggap ini sebagai pintasan yang Anda buat untuk file dan folder. File baru akan memiliki Inode yang berbeda dengan file induk.

$ cat > slink.txt
$ ls -li slink.txt

Cara Membuat Tautan Lunak di Linux

Sekarang buat tautan lunak baru dan jalankan perintah ls yang sama untuk memeriksa nomor inode. Anda akan melihat kedua file memiliki nomor inode yang sama. Juga, lihat jumlah tautan untuk setiap file.

$ ln -s <source> <destination>      # SYNTAX
$ ln -s file1.txt file2.txt

Lihatlah jumlah tautan dari gambar di atas, itu akan selalu 1 untuk tautan lunak karena semua file mendapatkan nomor Inode terpisah. Sekarang jika Anda menghapus tautan lunak, itu tidak akan berpengaruh pada file asli.

#  grep ^ ./slink*   # Display the contents of file1, file2
#  rm slinked_linked.txt

Jika Anda menghapus file asli yang ditautkan, file yang ditautkan akan menimbulkan kesalahan saat Anda mencoba mengaksesnya.

$ ls -li
$ rm slink.txt
$ ls -li
$ cat slink_linked.txt

Terkadang Anda mungkin menghapus file induk tetapi lupa menghapus semua file yang ditautkan. Anda dapat memeriksa dan membersihkan semua tautan lunak yatim piatu dengan menjalankan perintah berikut. Temukan perintah akan mencoba menemukan semua tautan yatim dari /home/ direktori dan -delete akan menghapus tautan.

# find -L /home/ -type l -delete

Itu saja untuk artikel ini. Kami ingin mendengar umpan balik Anda yang berharga atau kiat apa pun yang dapat meningkatkan artikel.


Linux
  1. Temukan File dengan Perintah Temukan dan Temukan di Linux

  2. Bagaimana saya melihat du dalam GB bukannya MB di linux?

  3. File mv Linux dengan nama panjang

  1. Cara Memanipulasi Nama File yang Memiliki Spasi dan Karakter Khusus di Linux

  2. Cara Menggunakan Perintah 'cat' dan 'tac' dengan Contoh di Linux

  3. Cara Zip File dan Direktori di Linux (dengan Contoh)

  1. Cara Mengarahkan Output ke File dan Stdout di Linux

  2. Apa itu NFS dan bagaimana cara menginstalnya di Linux

  3. Linux – Bagaimana Cara Membuat Oracle Java 7 Bekerja Dengan Setcap Cap_net_bind_service+ep?