ایجاد پیوندهای نمادین
پیوندهای نمادین برای غلبه بر دو مضرات پیوندهای سخت ایجاد شده اند: پیوندهای سخت نمی توانند دستگاه های فیزیکی را پوشش دهند و پیوندهای سخت نمی توانند به دایرکتوری ها و فقط فایل ها اشاره کنند. پیوندهای نمادین نوع خاصی از فایل هستند که حاوی اشاره گر متنی به فایل یا دایرکتوری مورد نظر است.
ایجاد پیوندهای نمادین مشابه ایجاد پیوندهای سخت است:
[زمین بازی me@linuxbox] دلار ln -s fun-sym سرگرم کننده [زمین بازی me@linuxbox] دلار ln -s ../fun dir1/fun-sym [زمین بازی me@linuxbox] دلار ln -s ../fun dir2/fun-sym
[زمین بازی me@linuxbox] دلار ln -s fun-sym سرگرم کننده [زمین بازی me@linuxbox] دلار ln -s ../fun dir1/fun-sym [زمین بازی me@linuxbox] دلار ln -s ../fun dir2/fun-sym
مثال اول بسیار ساده است، ما به سادگی گزینه "-s" را برای ایجاد یک پیوند نمادین به جای پیوند سخت اضافه می کنیم. اما دو مورد بعدی چطور؟ به یاد داشته باشید، زمانی که ما یک پیوند نمادین ایجاد می کنیم، در حال ایجاد یک توضیح متنی از جایی هستیم که فایل مورد نظر نسبت به پیوند نمادین است. اگر به آن نگاه کنیم، دیدن آن آسان تر است ls خروجی:
[زمین بازی me@linuxbox] دلار ls -l dir1
[زمین بازی me@linuxbox] دلار ls -l dir1
مجموع 4 | ||
-rw-r--r-- 4 من | me | 1650 2016-01-10 16:33 سرگرم کننده-سخت |
lrwxrwxrwx 1 من | me | 6 2016-01-15 15:17 fun-sym -> ../fun |
فهرست برای fun-sym in dir1 نشان می دهد که یک پیوند نمادین توسط "l" پیشرو در فیلد اول است و به "../fun" اشاره می کند که درست است. نسبت به محل fun-sym, سرگرمی در دایرکتوری بالای آن قرار دارد. همچنین توجه داشته باشید که طول فایل پیوند نمادین 6 است، تعداد کاراکترهای رشته "../fun" به جای طول فایلی که به آن اشاره می کند.
هنگام ایجاد پیوندهای نمادین، می توانید از نام مسیرهای مطلق استفاده کنید:
[زمین بازی me@linuxbox] دلار ln -s /home/me/زمین بازی/fun dir1/fun-sym
[زمین بازی me@linuxbox] دلار ln -s /home/me/زمین بازی/fun dir1/fun-sym
یا مسیرهای نسبی، همانطور که در مثال قبلی خود انجام دادیم. در بیشتر موارد، استفاده از نام مسیرهای نسبی مطلوبتر است، زیرا به درخت فهرستی که حاوی پیوندهای نمادین و فایلهای ارجاعشده آنها است اجازه میدهد بدون شکستن پیوندها تغییر نام داده و/یا منتقل شوند.
علاوه بر فایلهای معمولی، پیوندهای نمادین نیز میتوانند به دایرکتوریها اشاره کنند:
[زمین بازی me@linuxbox] دلار ln -s dir1 dir1-sym
[زمین بازی me@linuxbox] دلار ls-l
مجموع 16
drwxrwxr-x | 2 | me | me | 4096 | 2016-01-15 | 15:17 | dir1 |
lrwxrwxrwx | 1 | me | me | 4 | 2016-01-16 | 14:45 | dir1-sym -> dir1 |
drwxrwxr-x | 2 | me | me | 4096 | 2016-01-15 | 15:17 | dir2 |
-rw-r--r-- | 4 | me | me | 1650 | 2016-01-10 | 16:33 | سرگرمی |
-rw-r--r-- | 4 | me | me | 1650 | 2016-01-10 | 16:33 | سرگرم کننده-سخت |
lrwxrwxrwx | 1 | me | me | 3 | 2016-01-15 | 15:15 | fun-sym -> سرگرم کننده |