GNU/Linux >> Belajar Linux >  >> Linux

Menjelaskan Soft Link Dan Hard Link Di Linux Dengan Contoh

Sebuah simbolis atau tautan lunak adalah tautan sebenarnya ke file asli, sedangkan tautan keras adalah salinan cermin dari file asli. Jika Anda menghapus file asli, tautan lunak tidak memiliki nilai, karena mengarah ke file yang tidak ada.

Tetapi dalam kasus tautan keras, itu sepenuhnya berlawanan. Bahkan jika Anda menghapus file asli, tautan keras akan tetap memiliki data file asli. Karena tautan keras bertindak sebagai salinan cermin dari file asli.

Singkatnya, tautan lunak

  • dapat melewati sistem file,
  • memungkinkan Anda untuk menautkan antar direktori,
  • memiliki nomor inode dan izin file yang berbeda dari file aslinya,
  • izin tidak akan diperbarui,
  • hanya memiliki jalur file asli, bukan kontennya.

Tautan keras

  • tidak dapat melewati batas sistem file (yaitu hardlink hanya dapat bekerja pada sistem file yang sama),
  • tidak dapat menautkan direktori,
  • memiliki nomor inode dan hak akses yang sama dengan file asli,
  • izin akan diperbarui jika kami mengubah izin file sumber,
  • memiliki isi sebenarnya dari file asli, sehingga Anda tetap dapat melihat isinya, meskipun file asli dipindahkan atau dihapus.

Masih tidak mengerti? Baiklah, izinkan saya menunjukkan beberapa contoh praktis.

Cara membuat Soft Link atau Symbolic Link

Mari kita buat direktori kosong bernama "test" .

$ mkdir test

Ubah ke "test" direktori:

$ cd test

Sekarang, buat file baru bernama source.file dengan beberapa data seperti di bawah ini.

$ echo "Welcome to OSTechNix" >source.file

Mari kita lihat data dari source.file.

$ cat source.file
Welcome to OSTechNix

Nah, source.file telah dibuat.

Sekarang, buat tautan simbolis atau lunak ke source.file .

Untuk melakukannya, jalankan:

$ ln -s source.file softlink.file

Mari kita bandingkan data dari kedua source.file dan softlink.file .

$ cat source.file
Welcome to OSTechNix
$ cat softlink.file 
Welcome to OSTechNix

Seperti yang Anda lihat pada output di atas, softlink.file menampilkan data yang sama dengan source.file .

Mari kita periksa inode dan izin softlink.file dan source.file .

$ ls -lia

Contoh keluaran:

total 12
11665675 drwxrwxr-x  2 sk sk 4096 Oct 17 11:39 .
 4325378 drwxr-xr-x 37 sk sk 4096 Oct 17 11:39 ..
11665731 lrwxrwxrwx  1 sk sk   11 Oct 17 11:39 softlink.file -> source.file
11665692 -rw-rw-r--  1 sk sk   21 Oct 17 11:39 source.file

Seperti yang kita lihat pada tangkapan layar di atas, nomor inode (11665731 vs 11665692 ) dan izin file (lrwxrwxrwx vs -rw-r--r-- ) adalah berbeda , meskipun softlink.file memiliki konten yang sama dengan source.file . Oleh karena itu, terbukti bahwa soft link tidak memiliki nomor inode dan hak akses yang sama dengan file asli.

Sekarang, hapus file asli (yaitu source.file ) dan lihat apa yang terjadi.

$ rm source.file

Periksa isi softlink.file menggunakan perintah:

$ cat softlink.file

Contoh keluaran:

cat: softlink.file: No such file or directory

Seperti yang Anda lihat di atas, tidak ada file atau direktori yang disebut softlink.file setelah kami menghapus file asli (yaitu source.file ).

Jadi, sekarang kita mengerti bahwa soft link hanyalah sebuah link yang menunjuk ke file aslinya. Softlink itu seperti jalan pintas ke sebuah file. Jika Anda menghapus file, pintasan tidak berguna.

Seperti yang sudah Anda ketahui, jika Anda menghapus tautan lunak, file asli akan tetap tersedia.

Bacaan yang disarankan:

  • Cara Mendaftar Symlink di Linux
  • Cara Menemukan Symlink yang Rusak Dan Menghapusnya Di Linux

Buat file bernama source.file dengan beberapa isi seperti di bawah ini.

$ echo "Welcome to OSTechNix" >source.file

Mari kita verifikasi isi file.

$ cat source.file
Welcome to OSTechNix

source.file telah dibuat sekarang.

Sekarang, mari kita buat tautan keras ke source.file seperti yang ditunjukkan di bawah ini.

$ ln source.file hardlink.file

Periksa konten hardlink.file :

$ cat hardlink.file
Welcome to OSTechNix

Anda melihat hardlink.file menampilkan data yang sama dengan source.file.

Mari kita periksa inode dan izin hardlink.file dan source.file .

$ ls -lia

Contoh keluaran:

total 16
11665675 drwxrwxr-x 2 sk sk 4096 Oct 17 11:58 .
4325378 drwxr-xr-x 37 sk sk 4096 Oct 17 11:39 ..
11665692 -rw-rw-r-- 2 sk sk 21 Oct 17 11:57 hardlink.file
11665692 -rw-rw-r-- 2 sk sk 21 Oct 17 11:57 source.file

Sekarang, kita melihat bahwa keduanya hardlink.file dan source.file memiliki nomor inode yang sama (11665692 ) dan izin file (-rw-r--r-- ) . Oleh karena itu, terbukti bahwa file hard link memiliki nomor inode dan izin yang sama dengan file asli.

Perhatian: Jika kami mengubah izin pada source.file , izin yang sama akan diterapkan ke hardlink.file juga.

Sekarang, hapus file asli (yaitu source.file ) dan lihat apa yang terjadi.

$ rm source.file

Periksa isi hardlink.file menggunakan perintah:

$ cat hardlink.file

Contoh keluaran:

Seperti yang Anda lihat di atas, meskipun saya menghapus file sumber, saya dapat melihat konten hardlink.file . Oleh karena itu, terbukti bahwa Hard link memiliki nomor inode, izin, dan data yang sama dengan file asli.

Jadi, apa perbedaan antara Hard link dan file salinan biasa?

Anda mungkin bertanya-tanya mengapa kami membuat tautan keras sementara kami dapat dengan mudah menyalin/menempel file aslinya? Membuat tautan keras ke file berbeda dengan menyalinnya.

Jika Anda menyalin file, itu hanya akan menduplikasi konten. Jadi, jika Anda mengubah konten dari satu file (baik asli atau hard link), itu tidak akan berpengaruh pada file lainnya.

Namun jika Anda membuat tautan keras ke file dan mengubah konten salah satu file, perubahan akan terlihat pada keduanya.

Mari kita lihat file source.

$ cat source.file 
Welcome to OSTechNix

File sumber memiliki satu baris yang mengatakan - Selamat datang di OSTechNix.

Tambahkan baris baru, misalnya "Selamat datang di Linux" di source.file atau hardlink.file .

$ echo "Welcome to Linux" >>source.file

Sekarang periksa isi kedua file.

$ cat hardlink.file 
Welcome to OSTechNix
Welcome to Linux
$ cat source.file 
Welcome to OSTechNix
Welcome to Linux

Lihat? Perubahan yang baru saja kita buat di source.file diperbarui di kedua file. Artinya - kedua file (sumber dan tautan keras) disinkronkan.

Perubahan apa pun yang Anda lakukan di file apa pun akan tercermin di file lain. Jika Anda biasanya menyalin/menempel file, Anda tidak akan melihat perubahan baru di file lain.

Untuk detail lebih lanjut, periksa halaman manual.

$ man ln

Kesimpulan

Dalam panduan ini, kita telah membahas apa itu soft link dan hard link di Linux, cara membuat softlink dan hardlink dengan contoh perintah dan akhirnya kami menjelaskan perbedaan antara hardlink dan file salinan biasa.

Semoga Anda mendapatkan ide dasar tentang cara menggunakan tautan simbolik atau tautan lunak dan tautan keras di Linux.


Linux
  1. Urutkan Perintah di Linux dengan Contoh

  2. Cara Membuat Tautan Lunak dan Keras di Linux

  3. Apa itu Tautan Lunak dan Tautan Keras di Sistem File Linux

  1. Cara Menggunakan Perintah IP di Linux dengan Contoh

  2. Tautan keras dan tautan lunak di Linux dijelaskan

  3. Perbedaan antara tautan lunak dan tautan keras di Linux

  1. 10 Perintah Cepat Linux Tail dengan Contoh

  2. Cara Membuat Tautan Keras dan Lunak (symlink) di Sistem Linux

  3. Perintah Zip dan Unzip Linux dengan Contoh