لینک
لینک (Link) یا پیوند روشی برای ایجاد ارجاع به یک فایل یا شاخه در سامانهٔ پرونده است.
در گنو/لینوکس دو نوع اصلی لینک وجود دارد:
لینک نرم
لینک نرم یا لینک نمادین (Symbolic Link یا Symlink) یک فایل ویژه است که مسیر یک فایل یا شاخهٔ دیگر را در خود نگه میدارد.
برای ایجاد یک لینک نرم از دستور
ln همراه با گزینهٔ
-s استفاده میشود:
$ ln -s /مسیر/مقصد /مسیر/لینک
برای نمونه، برای ایجاد لینکی به نام
Music روی میزکار که به شاخهٔ
Music در شاخهٔ خانگی اشاره کند:
$ ln -s ~/Music ~/Desktop/Music
پس از اجرای دستور، با باز کردن
Music روی میزکار، محتوای شاخهٔ
~/Music نمایش داده میشود.
برای مشاهدهٔ لینکهای نرم میتوان از دستور زیر استفاده کرد:
$ ls -l
خروجی نمونه:
lrwxrwxrwx 1 user user 15 Sep 18 15:00 Music -> /home/user/Music
اگر فایل یا شاخهٔ مقصد حذف یا جابهجا شود، لینک نرم دیگر نمیتواند مقصد خود را پیدا کند و به یک لینک شکسته تبدیل میشود.
لینک سخت
لینک سخت (Hard Link) نام دیگری برای همان دادههای یک فایل در سامانهٔ پرونده است.
در یک لینک سخت، دو یا چند نام میتوانند به یک دادهٔ یکسان اشاره کنند. بنابراین تغییر محتوای فایل از طریق یکی از این نامها، از طریق نامهای دیگر نیز قابل مشاهده خواهد بود.
برای ایجاد یک لینک سخت، دستور
ln بدون گزینهٔ
-s استفاده میشود:
$ ln file-1 file-2
در این مثال،
file-1 و
file-2 دو نام برای همان دادهها هستند.
اگر یکی از نامها حذف شود:
$ rm file-1
نام دیگر همچنان قابل استفاده خواهد بود:
$ cat file-2
دادهها تا زمانی که حداقل یک لینک سخت به آنها وجود داشته باشد، در سامانهٔ پرونده باقی میمانند.
لینک سخت معمولاً نمیتواند برای شاخهها ایجاد شود و نمیتواند از یک سامانهٔ پرونده به سامانهٔ پروندهٔ دیگری اشاره کند.
تفاوت لینک نرم و سخت
| ویژگی | لینک نرم | لینک سخت |
|---|---|---|
| دستور ایجاد |
|
|
| اشاره به | مسیر یک فایل یا شاخه | همان دادههای فایل |
| امکان اشاره به شاخه | بله | خیر |
| حذف مقصد | لینک شکسته میشود | دادهها باقی میمانند، اگر لینک سخت دیگری وجود داشته باشد |
| امکان عبور از سامانهٔ پرونده | بله | خیر |
راهنما
برای مطالعهٔ جزئیات بیشتر دربارهٔ دستور
ln میتوانید از راهنمای آن استفاده کنید:
$ man ln
یا:
$ ln --help