Apa itu Symbolic link di Linux dan mengapa digunakan?
Tautan simbolis, juga dikenal sebagai symlink atau tautan lunak , adalah jenis file khusus yang hanya menunjuk ke file atau direktori lain seperti pintasan di Windows. Membuat tautan simbolik seperti membuat alias ke file yang sebenarnya.
Jika Anda mencoba mengakses tautan simbolik, Anda sebenarnya mengakses file target yang ditunjuk oleh symlink. Perubahan yang dilakukan pada konten file tautan mengubah konten file target sebenarnya.
Jika Anda menggunakan perintah ls dengan opsi -l, seperti inilah tampilan tautan simbolik:
lrwxrwxrwx 1 abhishek abhishek 23 Jul 2 08:51 link_prog -> newdir/test_dir/prog.py
Di sebagian besar distribusi Linux, tautan ditampilkan dalam warna yang berbeda dari entri lainnya sehingga Anda dapat membedakan tautan dari file dan direktori biasa.

Tautan simbolis menawarkan cara mudah untuk mengatur dan berbagi file. Mereka menyediakan akses cepat ke jalur direktori yang panjang dan membingungkan. Mereka banyak digunakan dalam menautkan pustaka di Linux.
Sekarang setelah Anda mengetahui sedikit tentang tautan simbolik, mari kita lihat cara membuatnya.
Cara membuat tautan simbolis di Linux
Untuk membuat tautan simbolis untuk menargetkan file dari nama tautan , Anda dapat menggunakan perintah ln dengan opsi -s seperti ini:
ln -s target_file link_name
Opsi -s penting di sini. Ini menentukan bahwa tautan tersebut adalah tautan lunak. Jika Anda tidak menggunakannya, itu akan membuat tautan keras. Saya akan menjelaskan perbedaan antara tautan lunak dan tautan keras di artikel yang berbeda.
Hal-hal yang perlu diingat tentang tautan simbolik

Tautan simbolis terkadang membingungkan karena itu Anda harus memperhatikan beberapa hal.
Perubahan yang dilakukan pada tautan tercermin dalam file asli
Bagaimanapun, itulah tujuan keseluruhan dari tautan. Anda mengakses file target dengan mengakses link. Anda dapat membuat perubahan pada file target melalui tautan. Mari kita lihat dengan contoh.
Saya memiliki file prog.py di newdir/test_dir. Ini memiliki atribut berikut:
-rw-r--r-- 1 abhishek abhishek 163 Apr 13 15:07 newdir/test_dir/prog.py
Sekarang, saya akan membuat tautan lunak ke file ini di direktori saya saat ini:
ln -s newdir/test_dir/prog.py link_prog
Berikut adalah atribut dari link yang baru dibuat:
lrwxrwxrwx 1 abhishek abhishek 23 Jul 2 08:51 link_prog -> newdir/test_dir/prog.py
Perhatikan l (itu L, bukan satu) di awal baris? Jika Anda sudah familiar dengan hak akses file di Linux, Anda akan tahu bahwa 'l' menandakan link dan dengan demikian memberitahu Anda bahwa file ini sebenarnya sebuah link. Untuk menyegarkan ingatan Anda, – berarti file, dan d berarti direktori.
Sekarang jika saya menggunakan tautan ini untuk mengubah konten atau atribut, hal yang sama akan tercermin dalam file target. Misalnya, saya menggunakan perintah sentuh pada tautan lunak dan Anda akan melihat bahwa itu mengubah stempel waktu file target.
touch link_prog
ls -l newdir/test_dir/prog.py
-rw-r--r-- 1 abhishek abhishek 163 Jul 2 10:04 newdir/test_dir/prog.py
Apakah itu menautkan ke file atau direktori? Anda mungkin tidak tahu!
Bagaimana Anda tahu jika tautan menunjuk ke file atau direktori? Anda tidak dapat mengetahuinya sampai Anda mengikuti jalur dan mengakses file target itu sendiri.
Anda dapat membuat link ke file atau direktori yang tidak ada
Ya, itu sangat mungkin. Inilah sebabnya mengapa Anda harus berhati-hati saat membuat tautan lunak di Linux. File target yang Anda tautkan tidak perlu ada. Anda tidak akan mendapatkan kesalahan atau peringatan apa pun untuk membuat tautan ke file/direktori yang tidak ada.
Anda akan mendapatkan kesalahan hanya ketika Anda mencoba mengakses file target, baik melalui tautan atau sendiri. Perintah ls akan tetap berfungsi.
ln -s non_existant_dir link_dir
less link_dir
link_dir: No such file or directory
Tautan simbolik dibuat dengan izin 777 tetapi tidak berarti apa-apa
Apakah Anda memperhatikan izin file pada tautan simbolis? Symlink selalu dibuat dengan izin 777 (rwxrwxrwx). Untuk file biasa, ini berarti siapa pun dapat mengakses file tersebut. Tapi itu tidak berlaku untuk tautan.
lrwxrwxrwx 1 abhishek abhishek 23 Jul 2 08:51 link_prog -> newdir/test_dir/prog.py
Jika izin file pada tautan diperlakukan sebagaimana adanya, setiap pengguna dapat membuat symlink ke file aman dan mengaksesnya dengan bebas. Itu akan menjadi masalah keamanan utama. Syukurlah, itu tidak terjadi. Karena izin pada file target penting, bukan izin pada tautan.
Anda dapat menggunakan perintah chmod untuk mengubah izin pada tautan tetapi itu akan mengubah izin file yang ditautkan, bukan tautan itu sendiri.
Anda dapat menautkan ke tautan alias tautan simbolik berantai
Anda dapat membuat tautan simbolik yang mengarah ke tautan lain dan seterusnya. Ini disebut tautan simbolis berantai. Lebih baik menghindarinya karena akan menimbulkan lebih banyak kebingungan.
Nah, itu saja. Saya kira Anda memiliki pengetahuan yang lebih baik tentang tautan lunak sekarang dan Anda tahu cara membuat tautan simbolis di Linux. Anda dapat membaca tentang perintah symlink yang dapat membantu Anda menemukan symlink yang rusak di Linux dan mengelolanya dengan mudah.
Jika Anda memiliki pertanyaan atau saran, silakan tinggalkan komentar di bawah.