Perbedaan antara tautan lunak dan tautan keras

Perbedaan antara tautan lunak dan tautan keras

Di Linux, tautan ke file dibuat dengan cara yang sama seperti referensi ke file dibuat dalam bahasa pemrograman yang paling umum. Tautan ini dibagi menjadi dua kategori: tautan keras dan lunak.

Tautan keras secara efektif merupakan replika file yang identik, oleh karena itu tautan keras dan file yang sebenarnya akan memiliki inode yang sama.

Tautan lunak, juga dikenal sebagai tautan simbolik, berfungsi mirip dengan jalan pintas atau penunjuk ke file. Ini bukan replika file yang tepat, melainkan pointer untuk aslinya.

Nilai inode dari tautan lunak ke file dan file nyata akan berbeda. Selain itu, Anda tidak akan dapat mengakses konten soft link jika Anda menghapus file yang sebenarnya. Di artikel ini, kami akan mempelajari lebih lanjut tentang tautan lunak dan tautan keras.

Memahami perbedaan antara tautan keras dan tautan lunak

Apa tautan lunak di Linux?

Kami memiliki fitur pintasan file di windows yang digunakan untuk membuat pintasan untuk file. Tautan lunak mirip dengan pintasan file. Setiap file yang terhubung lunak memiliki nilai inode sendiri, yang mengacu pada file asli. Setiap perubahan pada informasi dalam satu file dicerminkan di yang lain. Anda dapat menghubungkan soft link di berbagai sistem file, tetapi jika file sumber dihapus atau ditransfer, file yang terkait dengan soft tidak akan berfungsi dengan baik. Tautan ini disebut tautan gantung. Menghapus soft link tidak berpengaruh, tetapi jika Anda menghapus file asli, itu dapat menyebabkan tautan akan berhenti bekerja.

Tautan lunak dapat digunakan untuk menunjuk ke direktori dan hanya mempertahankan jalur ke file asli, bukan isinya. Ukuran tautan lunak akan sama dengan file yang dibentuk tautan lunak. Misalnya, jika file Theabcd.txt adalah 5kb, tautan lunak dari file ini juga 5kb.

Tautan lunak:

  • dapat melintasi sistem file,
  • memungkinkan Anda untuk terhubung lintas direktori,
  • memiliki izin file dan inode yang berbeda dari file asli,
  • izin tidak akan dimodifikasi,
  • dan hanya memiliki jalur file asli, bukan isinya

Apa tautan keras di Linux?

Tautan keras di Linux setara dengan file yang disimpan di hard drive - dan itu benar -benar mengacu atau tautan ke lokasi di hard drive. Tautan keras pada dasarnya adalah gambar cermin dari file asli. Perbedaan antara tautan keras dan tautan lunak adalah bahwa menghapus file sumber tidak berpengaruh pada tautan keras tetapi membuat tautan lunak tidak dapat dijalankan. Jadi manfaat paling signifikan dari membuat tautan keras adalah Anda masih dapat mengakses konten file bahkan jika Anda secara tidak sengaja menghapusnya.

Tautan keras:

  • tidak dapat melintasi perbatasan sistem file,
  • Tidak dapat menghubungkan direktori,
  • memiliki izin file yang sama dan nomor inode dengan file asli
  • Jika kami mengubah izin file sumber, izin akan diubah untuk tautan keras juga
  • berisi konten file asli, bahkan jika file asli dihancurkan, Anda dapat mengakses konten.

Perbedaan antara tautan lunak dan tautan keras

ParameterTautan lunakTautan keras
Nomor InodeNomor inode yang berbeda dari file asli.Nomor inode yang sama dengan file asli.
DirektoriSoft Links dapat menghubungkan direktoriTautan keras tidak dapat menautkan direktori di seluruh.
File asli dihapusTautan tidak akan beroperasi jika file asli dihapus karena tidak mengakses data dalam file asli. Itu tidak lebih dari jalan pintas ke file aslinya.Tautan keras akan terus beroperasi bahkan jika file asli dihapus karena mengakses data yang sama dengan aslinya.
KecepatanTautan lunak lebih lambatTautan keras lebih cepat dari tautan lunak.
Konsumsi memoriLagiLebih sedikit

Periksa tangkapan layar di bawah ini dari perbedaan inode antara file Hard Link dan Soft Link:

Perubahan inode dalam soft link dan hard link

Cara membuat tautan keras dan tautan lunak?

Mari kita pahami perbedaan dengan latihan cepat. Buat file teks sederhana di direktori dan beri nama file1.txt. Kami akan membuat tautan lunak dan tautan keras untuk file ini.

Membuat Tautan Keras:

  1. Untuk membuat tautan keras, kami menggunakan "LN" memerintah. Jadi ketikkan perintah berikut di jendela terminal Anda:
    ln file1.Hardlink txt.txt  
  2. Jadi di sini kami menggunakan perintah 'in' untuk membuat tautan keras, maka kami memberikan nama file yang membutuhkan tautan keras, dan kemudian kami menamai tautan keras yang merupakan hardlink.txt.

    Ketik perintah berikut setelah menjalankan perintah sebelumnya:

    ls -l  
  3. Ini akan menunjukkan kepada Anda bahwa ada dua file di direktori - file1.txt dan hardlink.txt. Sekarang mari kita periksa apakah file tautan keras kami berfungsi atau tidak. Buka hardlink.file txt di editor teks:
    Nano Hardlink.txt  
  4. Ubah konten file dan tulis sesuatu yang berbeda. Kemudian buka file asli:
    file kucing1.txt  
  5. Anda akan melihat bahwa perubahan yang dibuat dalam file tautan keras tercermin dalam file asli. Sekarang mari kita hapus file asli dan lihat apakah file tautan keras masih akan berfungsi atau tidak:
    RM File1.txt  
  6. Jalankan perintah "LS" dan Anda akan melihat bahwa hanya ada satu file di Direktori Hardlink.txt. Buka file dan Anda akan melihat bahwa file tersebut masih memiliki konten yang sama.

Membuat Soft Link:

  1. Untuk mendemonstrasikan, Agai saya telah membuat file.txt di direktori saat ini. Kami akan membuat tautan lunak untuk hal yang sama. Jalankan perintah berikut untuk membuat tautan lunak:
    ln -s file1.txtlink txt.txt  
  2. Jalankan ls -l Perintah dan Anda akan melihat bahwa ada dua file berbeda di direktori. Sekarang jika Anda akan mengetik
    Softlink kucing.txt  
  3. Anda akan melihat konten file1.txt sebagai soft link menunjuk ke file ini. Dan jika Anda menghapus file1.File txt:
    RM File1.txt  
  4. Lagi jalankan ls -l Perintah dan Anda akan melihat kesalahan. Itu karena file asli dihapus dan tautan lunak tidak dapat berfungsi tanpa itu. Dan jika kita mengetik:
    Softlink kucing.txt  

    Anda akan melihat bahwa tidak ada file atau direktori seperti itu

Membungkus

Tautan keras membutuhkan lebih sedikit ruang dan bekerja lebih cepat, tetapi modifikasi yang dibuat untuk itu tercermin dalam file asli. Sedangkan, tautan lunak membutuhkan lebih banyak ruang, perubahan apa pun pada soft link tidak berpengaruh pada file asli. Tidak seperti tautan keras, koneksi lunak ke direktori diizinkan.