Cara membuat symbolic link Linux
Symbolic link, atau symlink, adalah jenis file khusus di Linux yang berfungsi untuk membuat path ke file atau direktori lain. Mirip dengan shortcut di Windows, symlink memungkinkan akses cepat tanpa harus menduplikasi data. Anda bisa menelusuri struktur direktori yang rumit dengan lebih mudah, sekaligus menghemat ruang penyimpanan.
Di artikel ini, kami akan menjelaskan cara membuat symlink di Linux beserta contoh penggunaan praktisnya. Setelah membaca tutorial ini, Anda pun bisa menggunakan symlink secara efektif untuk mengatur file dan direktori di sistem Linux. Yuk, kita mulai!

Bagaimana cara kerja symlink Linux?
Di Linux, symlink mengarah ke file atau folder target. Tidak seperti file biasa, symlink tidak menyimpan data asli, melainkan path lengkap dari item yang ditautkan. Saat Anda membuka symlink, sistem operasi akan menggunakan system call untuk menyelesaikan path tersebut dan mengarahkan Anda langsung ke target.
Karena itulah symlink akan terlihat seperti file atau direktori biasa, tapi memungkinkan Anda mengelola data di berbagai lokasi dengan lebih efisien tanpa perlu menduplikasi file.
Selain itu, menghapus symlink tidak akan menghapus file target. Hanya referensinya saja yang dihapus sehingga Anda bisa menghapus symlink dengan aman tanpa kehilangan data aslinya.
Perbedaan symlink dan hard link
Symlink (terkadang juga disebut soft link) dan hard link sama-sama merupakan cara untuk membuat link antar file. Namun, keduanya berbeda dari segi struktur.
Symlink memiliki inode sendiri dan terpisah dari file atau direktori target, sedangkan hard link langsung menunjuk ke inode file target sehingga berbagi inode dan metadata yang sama dengan file aslinya. Selain itu, symlink bisa dibuat untuk file maupun direktori, sementara hard link hanya bisa untuk file.
Berikut tabel perbandingan symlink dan hard link untuk membantu Anda memahami perbedaannya:
Fitur | Symlink | Hard link |
Penyimpanan | Menyimpan path file atau direktori target | Menunjuk langsung ke data file asli |
Nomor inode | Memiliki nomor inode berbeda dari target | Berbagi nomor inode yang sama dengan target |
Sistem file | Bisa membuat link ke sistem file berbeda | Harus berada di sistem file yang sama |
Dampak penghapusan target | Rusak (dangling) kalau target dihapus atau dipindahkan | Tetap ada selama masih ada satu referensi |
Penggunaan | ln -s [sumber] [link] | ln [sumber] [link] |
Izin | Punya izin sendiri; akses ditentukan oleh file target | Berbagi izin dan kepemilikan dengan target |
Contoh penggunaan | Membuat shortcut file dengan cepat | Menjaga integritas dan konsistensi data di banyak referensi |
Kapan harus menggunakan symlink?
- Mengakses sistem lintas file. Symlink cocok untuk menautkan file di sistem file yang berbeda. Misalnya, Anda bisa membuat shortcut di direktori home menuju file konfigurasi yang berada di partisi lain.
- Menelusuri dan menemukan file. Dengan symlink, Anda bisa membuat path direktori yang ringkas dan mudah ditelusuri tanpa harus menduplikasi file.
Kapan harus menggunakan hard link?
- Menjaga integritas dan membackup data. Hard link berguna ketika Anda perlu memiliki beberapa referensi ke file yang sama. Misalnya dalam skenario backup, hard link memastikan backup selalu mencerminkan kondisi file asli.
- Menjaga konsistensi. Kalau ada beberapa aplikasi atau proses yang perlu mengakses file yang sama, hard link bisa memastikan perubahan diterapkan secara konsisten di semua referensi.
Kelebihan dan kekurangan symlink
Sebelum memutuskan untuk menggunakan symlink, penting untuk memahami kelebihan dan kekurangannya agar Anda bisa menggunakannya secara efektif.
Keuntungan menggunakan symlink
- Pengaturan file lebih efisien. Symlink memungkinkan Anda membuat shortcut ke file dan folder sehingga akses ke data penting jadi lebih cepat.
- Bisa menautkan ke berbagai lokasi. Tidak seperti hard link, symlink bisa mengarah ke file di berbagai sistem, misalnya antar partisi, yang berguna apabila Anda menggunakan distribusi Linux besar karena file berada di partisi yang terpisah.
- Mendukung kontrol versi dan library bersama. Dalam pengembangan software, symlink sering digunakan untuk mengatur versi library atau tool tertentu. Misalnya, Anda bisa membuat symlink yang menunjuk ke versi terbaru, lalu cukup mengubah link tersebut kalau ingin beralih ke versi lain.
Kerugian menggunakan symlink
- Symlink rusak (dangling). Kalau file atau folder target dipindahkan atau dihapus, symlink akan rusak dan tidak bisa digunakan, bahkan mengacaukan skrip yang bergantung padanya. Contoh error yang sering muncul adalah “No such file or directory”.
- Risiko keamanan. Symlink bisa menimbulkan celah keamanan kalau diarahkan ke file sensitif. Pastikan symlink tidak memberi akses ke pengguna yang tidak berwenang.
- Pengelolaannya bisa cukup rumit. Kalau jumlahnya terlalu banyak, Anda bisa kesulitan menemukan symlink yang mengarah ke file atau folder yang dimaksud. Anda perlu membuat dokumentasi yang rapi untuk mempermudah pengelolaannya.
Cara membuat symlink di Linux
Nah, sekarang kita akan mempelajari cara membuat symlink di Linux menggunakan perintah sederhana. Kalau menggunakan VPS Hostinger, Anda bisa langsung latihan dengan mengakses server Anda melalui terminal, aplikasi SSH seperti PuTTY, atau fitur terminal browser bawaan di akun hosting Anda.


Cara membuat symlink file
Anda bisa membuat symlink file di Linux menggunakan perintah ln dengan opsi -s, yang menentukan bahwa link tersebut berupa symbolic link. Berikut syntax dasarnya:
ln -s [file_target] [nama_link]
- [file_target] → path file asli yang ingin Anda tautkan.
- [nama_link] → nama symlink yang akan dibuat.
Sebagai contoh, untuk membuat symlink bernama my_link yang mengarah ke file bernama myfile.txt, jalankan perintah berikut:
ln -s /path/ke/myfile.txt /path/ke/my_link
Opsi tambahan untuk symlink
Selain -s yang wajib digunakan, ada beberapa opsi lain yang bisa ditambahkan ke perintah ln:
- -f atau –force – memaksa pembuatan symlink, dengan cara menghapus file atau link yang sudah ada dengan nama yang sama.
- -v atau –verbose – menampilkan detail proses pembuatan symlink.
- -r atau –relative – membuat symlink dengan path relatif terhadap file target.
Path relatif vs path absolut
Saat membuat symlink, Anda bisa memilih menggunakan path relatif atau path absolut:
- Path relatif – menunjuk ke file target berdasarkan direktori saat ini. Cara ini cocok kalau struktur direktori Anda tidak akan berubah. Contohnya, kalau Anda sedang membuka direktori /home/user/documents/ dan ingin menautkan ke myfile.txt, masukkan:
ln -sr ../myfile.txt my_link
- Path absolut – menggunakan path lengkap dari direktori root hingga ke file target. Cara ini lebih stabil kalau struktur direktori Anda berubah, karena selalu menunjuk ke lokasi yang tepat. Berikut contohnya:
ln -sv /home/user/document/myfile.txt my_link
Cara membuat symlink direktori
Membuat symlink untuk direktori sama mudahnya dengan membuat symlink untuk file. Misalnya, Anda memiliki direktori bernama project_files di /home/user/documents/ dan ingin menautkannya ke direktori home. Gunakan perintah berikut:
ln -s /home/user/documents/project_files /home/user/my_project
Perintah di atas akan membuat symlink bernama my_project di /home/user/ yang mengarah ke project_files. Dengan begitu, Anda bisa mengakses isi direktori project_files cukup dengan masuk ke my_project.
Cara menimpa symlink
Seperti yang tadi dijelaskan, Anda bisa menimpa symlink dengan menambahkan opsi -f pada perintah ln. Opsi ini akan menghapus link lama sebelum membuat yang baru, lalu menimpanya secara efektif.
Misalnya, Anda memiliki symlink bernama my_link yang awalnya mengarah ke /home/user/documents/old_file.txt, lalu ingin memperbaruinya agar mengarah ke /home/user/documents/new_file.txt. Gunakan perintah:
ln -sf /home/user/documents/new_file.txt /home/user/my_link
Pastikan Anda tetap memakai nama symlink yang sama (my_link) agar link benar-benar ditimpa dengan target yang baru.
Cara menghapus symlink di Linux
Setelah tidak lagi membutuhkan symlink, Anda perlu menghapusnya. Bagian ini akan menunjukkan cara menghapus symlink dengan aman.
Menggunakan perintah unlink
Perintah unlink dirancang khusus untuk menghapus symlink. Perintah ini memastikan hanya linknya saja yang dihapus tanpa memengaruhi file atau direktori target. Syntax dasarnya adalah sebagai berikut:
unlink [nama_link]
Misalnya, kalau Anda memiliki symlink bernama my_link di direktori home yang mengarah ke /home/user/documents/real_file.txt, Anda bisa menghapus symlink ini tanpa menghapus real_file.txt dengan:
unlink /home/user/my_link
Saat menggunakan unlink, hindari menambahkan garis miring (/) di akhir nama link dalam path. Menambahkan trailing slash membuat perintah mengira link tersebut adalah direktori sehingga bisa gagal dijalankan, seperti pada contoh berikut:
unlink /home/user/my_link/
Selain itu, perintah unlink tidak meminta konfirmasi sebelum menghapus symlink, jadi pastikan Anda menargetkan link yang benar untuk menghindari penghapusan yang tidak disengaja.
Menggunakan perintah rm
Mirip seperti menghapus file biasa di Linux, Anda bisa menggunakan perintah rm untuk menghapus symlink. Berikut contoh menghapus link bernama my_link dari direktori home:
rm /home/user/my_link
Berbeda dengan perintah unlink, Anda bisa menambahkan opsi -i pada rm untuk meminta konfirmasi sebelum penghapusan:
rm -i /home/user/my_link
Perintah unlink vs rm
Perintah unlink dan rm sama-sama bisa menghapus symlink di Linux, tapi keduanya bekerja dengan cara yang berbeda dan cocok untuk skenario yang berbeda.
Perintah unlink dirancang untuk menghapus satu symlink dalam satu waktu. Perintah ini tidak memiliki opsi interaktif atau konfirmasi. unlink sangat berguna untuk memastikan bahwa hanya symlink yang dihapus.
Sementara itu, rm bisa menangani beberapa symlink sekaligus sehingga lebih cocok untuk penghapusan batch. Perintah ini juga menawarkan beberapa opsi, seperti -i untuk mengonfirmasi tindakan Anda sebelum penghapusan.
Secara umum, rm lebih ideal ketika Anda perlu menghapus beberapa target dalam satu perintah atau pada situasi di mana penghapusan yang tidak disengaja bisa menimbulkan masalah.
Praktik yang aman untuk menghapus symlink
Ketika menghapus symlink, terutama di dalam skrip atau proses automasi, ikuti tips keamanan berikut untuk menghindari penghapusan file yang tidak disengaja:
- Periksa ulang symlink. Selalu pastikan Anda menargetkan symlink yang benar sebelum menghapusnya. Gunakan ls -l untuk melihat ke mana symlink tersebut mengarah.
- Uji skrip di lingkungan yang aman. Sebelum menjalankan skrip yang menghapus symlink, uji skrip tersebut di lingkungan terkontrol, misalnya direktori berisi file dummy. Langkah ini membantu menemukan potensi masalah sebelum akhirnya diterapkan pada file penting.
- Penghapusan log. Kalau Anda menghapus symlink menggunakan skrip, pertimbangkan untuk mencatat setiap tindakan penghapusan dalam log. File log akan menyimpan riwayat tentang item yang dihapus, sehingga memudahkan troubleshooting kalau terjadi masalah.
- Tulis skrip dengan hati-hati. Saat menulis skrip yang menghapus symlink, sertakan pengecekan agar skrip hanya menargetkan symlink, bukan file biasa, untuk mencegah tindakan yang tidak diinginkan.
Bagaimana cara menemukan symlink yang rusak?
Symlink yang rusak terjadi ketika file atau direktori yang ditargetkan sudah dipindahkan atau dihapus. Kondisi ini bisa menimbulkan berbagai masalah di sistem maupun aplikasi, misalnya skrip gagal berjalan, alur kerja terganggu, atau aplikasi menampilkan error.
Menemukan symlink yang rusak
Anda bisa menggunakan perintah find dengan opsi –xtype l untuk mencari symlink yang rusak di sistem file Anda. Berikut contohnya:
find /path/yang/dicari -xtype l
- /path/yang/dicari – ganti dengan path direktori tempat Anda ingin mencari symlink rusak.
- -xtype l – opsi ini memberi tahu find untuk mencari symlink (l) yang mengarah ke file atau direktori yang tidak ada.
Setelah menemukan symlink yang rusak, Anda bisa melakukan langkah berikut:
- Perbarui symlink – kalau target dipindahkan, buat symlink baru yang mengarah ke lokasi baru menggunakan perintah ln -sf.
- Hapus symlink – kalau tidak diperlukan lagi, hapus symlink yang rusak menggunakan perintah unlink atau rm.
Tool dan skrip untuk penghapusan otomatis
Ada beberapa tool dan skrip yang bisa membantu mengotomatiskan deteksi dan perbaikan symlink yang rusak:
- Utilitas symlinks – tool command-line ini dibuat khusus untuk mengelola symbolic link. Tool ini bisa mendeteksi, melaporkan, bahkan menghapus atau memperbaiki symlink yang rusak. Tambahkan opsi -r untuk melakukan pencarian rekursif di dalam direktori.
symlinks -r /path/untuk/dicari
- Skrip kustom – Anda bisa menulis skrip sendiri untuk memindai symlink rusak secara berkala, lalu memperbaiki atau menghapusnya secara otomatis. Misalnya, jadwalkan skrip ini sebagai cron job agar find berjalan rutin dan mencatat symlink rusak yang ditemukan.
Kesimpulan
Dalam artikel ini, Anda sudah mempelajari cara membuat, mengelola, dan menghapus symlink di Linux. Untuk menggunakan symlink secara efektif, pastikan Anda selalu memverifikasi path target, menghapus link yang tidak terpakai, dan memanfaatkan tool seperti find dan symlinks untuk mendeteksi link yang rusak.
Symlink adalah tool berguna yang bisa membantu Anda mengatur file dan direktori. Dengan mengetahui penggunaannya, Anda bisa menyederhanakan alur kerja Anda sekaligus meningkatkan efisiensi pengelolaan sistem Linux.
Kalau masih memiliki pertanyaan seputar symlink, sampaikan lewat kolom komentar di bawah artikel ini, ya.
Tanya jawab (FAQ) symlink Linux
Apakah symlink memengaruhi izin file?
Symlink memiliki izin tersendiri, tapi akses sebenarnya tetap ditentukan oleh izin file target. Dalam sistem multi-user, pengguna harus memiliki izin yang sesuai pada file target untuk bisa mengaksesnya lewat symlink.
Bagaimana kalau file target symlink dihapus?
Kalau file target symlink dihapus, link akan menjadi rusak atau menggantung (dangling). Symlink tersebut tetap ada, tapi mengarah ke file yang tidak tersedia sehingga akan menyebabkan error saat diakses.
Apakah bisa mengedit symlink?
Ya, Anda bisa memperbarui symlink dengan menimpanya menggunakan target baru lewat perintah ln -sf. Cara ini secara efektif mengganti symlink agar menunjuk ke file atau direktori baru.