Skip to Content

Symlinks

Symlink মানে Symbolic Link — একটা file বা folder-এর shortcut। Windows-এ যেটা “Shortcut” (.lnk file), Linux-এ সেটা symlink। কিন্তু Linux symlink অনেক বেশি powerful।

একটা symlink হলো একটা special file যেটা অন্য একটা file বা folder-কে point করে

notes.txt ← actual file (এখানে data আছে) my-notes → notes.txt ← symlink (pointer মাত্র)

my-notes access করলে automatically notes.txt এর content দেখবে। কিন্তু actual data notes.txt-এ।

Soft link (symbolic link) হলো path-এর একটা pointer।

Terminal
ln -s /path/to/original /path/to/link
  • Original file delete হলে link broken হয়ে যায়
  • আলাদা filesystem-এ link করা যায়
  • ls -ll দেখায় এবং -> দিয়ে target দেখায়
  • সবচেয়ে বেশি use হয় — এটাই “symlink” বলতে বোঝায়

সহজ কথায়: Soft link হলো shortcut। Hard link হলো same file-এর দুটো নাম। ৯৯% ক্ষেত্রে soft link use করো।

Terminal
# Soft link তৈরি করো ln -s /original/path /link/path # Example — Documents-এ একটা config file-এর link ln -s /etc/nginx/nginx.conf ~/nginx.conf # Folder-এর symlink ln -s /var/log ~/logs # Confirm করো ls -la # দেখবে: nginx.conf -> /etc/nginx/nginx.conf

ls -l output-এ symlink এভাবে দেখায়:

lrwxrwxrwx 1 omar omar 20 Apr 8 10:00 nginx.conf -> /etc/nginx/nginx.conf
অংশমানে
l at startএটা একটা symlink
nginx.confLink-এর নাম
->Points to
/etc/nginx/nginx.confActual file location
Terminal
# Symlink delete করো (original untouched থাকে) rm my-link # অথবা unlink দিয়ে unlink my-link

rm -rf link/ — trailing slash দিলে link-এর target directory-র contents delete হয়। সবসময় trailing slash ছাড়া delete করো।

Common Use Cases

Linux system-এ symlinks সব জায়গায় আছে:

Terminal
# Python version management ls -la /usr/bin/python # python -> python3 # Log folders অন্য জায়গায় ls -la /var/log/nginx # System libraries ls -la /lib # lib -> usr/lib

CyberSec Note

Symlinks CTF-এ:

Path Traversal with Symlinks: কিছু vulnerable application symlink follow করে restricted area-র বাইরে যায়।

Terminal
# /tmp তে একটা symlink বানাও যেটা /etc/passwd point করে ln -s /etc/passwd /tmp/uploaded-file # যদি server /tmp থেকে files serve করে — /etc/passwd expose হতে পারে

Privilege Escalation: যদি root-এর script তোমার control-এ থাকা path থেকে file read করে, সেখানে symlink রেখে sensitive file read করানো যায়।

Detection:

Terminal
# Suspicious symlinks খোঁজো find / -type l 2>/dev/null # Symlink কোথায় point করে readlink -f suspicious-link

Quick Check

  • Symlink আর actual file-এর মধ্যে পার্থক্য কী?
  • Soft link আর hard link-এর মূল পার্থক্য বলতে পারবে?
  • Symlink তৈরির command কী?
  • ls -l এ symlink কীভাবে চিনবে?

পরবর্তী Section → Text Manipulation

Search Keywords: linux symlink, symbolic link, ln -s, hard link vs soft link, linux shortcut, symlink cybersecurity, path traversal symlink

Last updated on