نام مقاله : لینک ها در لینوکس (Links in Linux)
|
I.لینک چیست؟ در کل لینک ها یک نقطه ی اشاره به نقطه ای از یک سیستم فایل می سازند. این می تواند برای شما بسیار مفید باشد ، شمابا ساخت یک لینک به یک دایرکتوری دیگر احتیاجی به تایپ کامل مسیر آن ندارید و یا لازم نیست در مدیر فایل گرافیکی خود دائم به بالا و پایین بروید و کافیست یک بار برروی لینک خود کلیک کنید. شما می توانید لینک ها را همان میانبر ها (Shortcuts) در ویندوز مایکروسافت در نظر بگیرید که البته چند تفاوت نیز با یکدیگر دارند. در این جا ابتدا به بررسی و نحوه ی ایجاد یک لینک سخت افزاری و سپس یک لینک نرم افزاری و در انتها به مقایسه ای اجمالی بین این دو خواهم پرداخت . II.لینک های سخت یا Hardlinks یک لینک سخت یک ورودی دایرکتوری است که به محل فیزیکی یک فایل اشاره دارد.(به محل فیزیکی یک فایل i-node می گویند.). در حقیقت ما تنها یک فایل داریم اما ورودی دو (یا بیشتر) دایرکتوری به محل فیزیکی آن بر روی دیسک سخت اشاره دارند. برای ایجاد یک لینک سخت در خط فرمان از دستور ln استفاده می شود.این دستور به طور پیش فرض یک لینک سخت می سازد . برای نمونه من در این جا یک لینک سخت افزاری به فایل article.txt در دایرکتوری خانگی ام می سازم.
در این نمونه یک ورودی در دایرکتوری /home/tux/foo/ ایجاد شده که به محل فیزیکی فایل article.txt بر روی دیسک سخت اشاره می کند. خوب شما می توانید با این فایل کار کنید ، برای نمونه اگر دستور ls -l را وارد کنیم تعداد هارد لینک آن (که بلافاصله پس از مجوز های دسترسی آن نمایش داده می شود) برابر ۲ نمایش داده خواهد شد. و جالب این جاست که تمام مجوز ها و سایز فایل و تاریخ آخرین اصلاح فایل دقیقا همانند فایل قبلی است ! عدد ۲ یعنی ۲ دایرکتوری به این نقطه ی فیزیکی (i-node) از هارد اشاره دارند.
اگر من فایل اصلی یعنی temp/article.txt/ را پاک کنم ورودی دایرکتوری پاک خواهد شد و تعداد لینک های سخت ۱ خواهد بود و اما فایل همچنان باقی خواهد بود ! چرا که هنوز یک لینک سخت به ان وجود دارد.و فایل هرگز پاک نمی شودمگر آن که تعداد هارد لینک های آن به صفر برسد. III.لینک های نرم یا soft links لینک های نرم یا Softlinks که با نام های symbolic links یا symlinks نیز شناخته می شوند بسیار شبیه میانبر ها (shortcut) های ویندوز هستند، در لینک های نرم بر خلاف لینک های سخت هر لینک آدرس سخت افزاری (i-node) مخصوص به خودشان را دارند . این لینک ها تنها یک فایل هستند که می توانند به یک فایل دیگر اشاره کنند .برای ایجاد این لینک ها از از آپشن s- به همراه دستور ln استفاده می کنند:
اگر شما از ls -l برای دیدن این فایل استفاده کنید به نتیجه ای مانند زیر خواهید رسید:
همان طور که مشاهده می کنید بیت اول l می باشد ، به معنی لینک و بعد از پایان نام فایل بعد از یک " <- " آدرس فایل اصلی آمده است. IV.لینک های سخت در مقابل لینک های نرم
در این بخش به مقایسه ای اجمالی میان دو نوع لینکی که در بالا گفتم می پردازم:
امید وارم با استفاده ی مفید از لینک ها از وقت خود به بهترین نحو استفاده کنید. |