لینک: تفاوت بین نسخه‌ها

از ویکی فارسی اوبونتو
پرش به: ناوبری، جستجو
(ایجاد صفحه)
 
(ویکی سازی)
 
(۱ نسخهٔ میانی ویرایش شده توسط ۱ کاربر نشان داده نشده)
سطر ۱: سطر ۱:
<div style="clear:both; width:100%;">
+
'''لینک''' (Link) یا '''پیوند''' روشی برای ایجاد ارجاع به یک فایل یا شاخه در سامانهٔ پرونده است.
  
<div style="text-align:center; padding-bottom:.9em;">
+
در گنو/لینوکس دو نوع اصلی لینک وجود دارد:
<span style="font-size:200%; font-family:Tahoma,sans-serif; color:#373737;">
 
لینک نرم
 
</span></div>
 
  
لینک چیست؟
+
* [[#لینک نرم|لینک نرم]] یا لینک نمادین (Symbolic Link)
در علوم رایانه، لینک نرم (به انگلیسی: soft link) یا لینک نمادین (به انگلیسی: symbolic link) (که به اختصار symlink) هم نوشته می‌شود، یک فایل مخصوص و ویژه است که دربرگیرنده ارجاعی به فایل یا دایرکتوری دیگر در غالب یک مسیر مطلق یا مسیر نسبی است. به عبارتی دیگر، لینک‌های نرم فایل‌های هستند که به عنوان اشاره‌گر به فایل‌های دیگر عمل می‌کنند.[http://man.freebsd.org/symlink(7) [1]]
+
* [[#لینک سخت|لینک سخت]] (Hard Link)
  
برای درست کردن چند تا راه هست که راحت ترینش (البته بدونه ابزار و اسکریپت) دستور ln (برای گنو/لینوکس) هست که به این شکل در ترمینال میشه ازش استفاده کرد.
+
== لینک نرم ==
<pre> ln -s /file-1 file-2 </pre>
 
در کد بالا ln مخفف link هست. s- مخفف symbolic هست. file-1 فایل یا پوشه منبع (ادرس فایل یا پوشه ای که لینک رو برای اون میسازیم) هست. file-2 هم مکانی هست که لینکمون اونجا ساخته میشه . اون اسلش هم قبل از file-1 هم نمیدونم کارش چیه اما لازمه بدونه اون انگار لینک ها درست کار نمیکنن.
 
  
مثلا من میخوام یه لینک نرم از پوشه موزیک تو دسکتاپ داشته باشم ؛ پس کد زیر رو داخل ترمینال وارد میکنم.
+
'''لینک نرم''' یا '''لینک نمادین''' (Symbolic Link یا Symlink) یک فایل ویژه است که مسیر یک فایل یا شاخهٔ دیگر را در خود نگه می‌دارد.
<pre> ln -s ~/Music Desktop </pre>
 
اینطوری یه لینک برام تو دسکتاپ میاد که هرموقع روش کلیک کنم وارد پوشه موزیک میشه .
 
  
در ضمن میتونید با دستورات زید اطلاعات بیشتری درباره دستور ln به دست بیارید.
+
برای ایجاد یک لینک نرم از دستور {{ic|ln}} همراه با گزینهٔ {{ic|-s}} استفاده می‌شود:
  
<pre>
+
{{bc|
 +
$ ln -s /مسیر/مقصد /مسیر/لینک
 +
}}
 +
 
 +
برای نمونه، برای ایجاد لینکی به نام {{ic|Music}} روی میزکار که به شاخهٔ {{ic|Music}} در شاخهٔ خانگی اشاره کند:
 +
 
 +
{{bc|
 +
$ ln -s ~/Music ~/Desktop/Music
 +
}}
 +
 
 +
پس از اجرای دستور، با باز کردن {{ic|Music}} روی میزکار، محتوای شاخهٔ {{ic|~/Music}} نمایش داده می‌شود.
 +
 
 +
برای مشاهدهٔ لینک‌های نرم می‌توان از دستور زیر استفاده کرد:
 +
 
 +
{{bc|
 +
$ ls -l
 +
}}
 +
 
 +
خروجی نمونه:
 +
 
 +
{{bc|
 +
lrwxrwxrwx 1 user user 15 Sep 18 15:00 Music -> /home/user/Music
 +
}}
 +
 
 +
اگر فایل یا شاخهٔ مقصد حذف یا جابه‌جا شود، لینک نرم دیگر نمی‌تواند مقصد خود را پیدا کند و به یک '''لینک شکسته''' تبدیل می‌شود.
 +
 
 +
== لینک سخت ==
 +
 
 +
'''لینک سخت''' (Hard Link) نام دیگری برای همان داده‌های یک فایل در سامانهٔ پرونده است.
 +
 
 +
در یک لینک سخت، دو یا چند نام می‌توانند به یک دادهٔ یکسان اشاره کنند. بنابراین تغییر محتوای فایل از طریق یکی از این نام‌ها، از طریق نام‌های دیگر نیز قابل مشاهده خواهد بود.
 +
 
 +
برای ایجاد یک لینک سخت، دستور {{ic|ln}} بدون گزینهٔ {{ic|-s}} استفاده می‌شود:
 +
 
 +
{{bc|
 +
$ ln file-1 file-2
 +
}}
 +
 
 +
در این مثال، {{ic|file-1}} و {{ic|file-2}} دو نام برای همان داده‌ها هستند.
 +
 
 +
اگر یکی از نام‌ها حذف شود:
 +
 
 +
{{bc|
 +
$ rm file-1
 +
}}
 +
 
 +
نام دیگر همچنان قابل استفاده خواهد بود:
 +
 
 +
{{bc|
 +
$ cat file-2
 +
}}
 +
 
 +
داده‌ها تا زمانی که حداقل یک لینک سخت به آن‌ها وجود داشته باشد، در سامانهٔ پرونده باقی می‌مانند.
 +
 
 +
لینک سخت معمولاً نمی‌تواند برای شاخه‌ها ایجاد شود و نمی‌تواند از یک سامانهٔ پرونده به سامانهٔ پروندهٔ دیگری اشاره کند.
 +
 
 +
== تفاوت لینک نرم و سخت ==
 +
 
 +
{| class="wikitable"
 +
! ویژگی
 +
! لینک نرم
 +
! لینک سخت
 +
|-
 +
| دستور ایجاد
 +
| {{ic|ln -s}}
 +
| {{ic|ln}}
 +
|-
 +
| اشاره به
 +
| مسیر یک فایل یا شاخه
 +
| همان داده‌های فایل
 +
|-
 +
| امکان اشاره به شاخه
 +
| بله
 +
| خیر
 +
|-
 +
| حذف مقصد
 +
| لینک شکسته می‌شود
 +
| داده‌ها باقی می‌مانند، اگر لینک سخت دیگری وجود داشته باشد
 +
|-
 +
| امکان عبور از سامانهٔ پرونده
 +
| بله
 +
| خیر
 +
|}
 +
 
 +
== راهنما ==
 +
 
 +
برای مطالعهٔ جزئیات بیشتر دربارهٔ دستور {{ic|ln}} می‌توانید از راهنمای آن استفاده کنید:
 +
 
 +
{{bc|
 
$ man ln
 
$ man ln
 +
}}
 +
 +
یا:
 +
 +
{{bc|
 
$ ln --help
 
$ ln --help
</pre>
+
}}
 +
 
 +
 
 +
[[رده:گنو/لینوکس]]
 +
[[رده:خط فرمان]]
 +
[[رده:سامانهٔ پرونده]]

نسخهٔ کنونی تا ‏۲۷ شهریور ۱۴۰۵، ساعت ۱۵:۱۱

لینک (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 -s

ln

اشاره به مسیر یک فایل یا شاخه همان داده‌های فایل
امکان اشاره به شاخه بله خیر
حذف مقصد لینک شکسته می‌شود داده‌ها باقی می‌مانند، اگر لینک سخت دیگری وجود داشته باشد
امکان عبور از سامانهٔ پرونده بله خیر

راهنما

برای مطالعهٔ جزئیات بیشتر دربارهٔ دستور ln می‌توانید از راهنمای آن استفاده کنید:


$ man ln

یا:


$ ln --help