آشنایی با Hard Link در لینوکس

–1 رأی
میانگین بازدید روزانه 0.6511 بازدید

یک لینک سخت نمی تواند از مرزهای سیستم پرونده عبور کند Hard Link در لینوکس ایران هاست (به عنوان مثال یک لینک مستقیم فقط می تواند در همان سیستم پرونده کار کند) ،

نمی توانند دایرکتوری ها را پیوند دهند ،
دارای شماره inode و مجوزهای پرونده اصلی است ،
اگر مجوزهای فایل منبع را تغییر دهیم ، مجوزها به روز می شوند ،

دارای محتوای واقعی پرونده اصلی است ، Hard Link در لینوکس به طوری که شما هنوز هم می توانید محتویات را مشاهده کنید ، حتی اگر پرونده اصلی منتقل یا حذف شود.
هنوز آن را دریافت نمی کنید؟ خوب ، به من اجازه دهید مثالهای عملی را برای شما نشان دهم.

ایجاد لینک نرم یا پیوند نمادین
بگذارید یک دایرکتوری خالی به نام "test" ایجاد کنیم.

تست  لینوکس directory تغییر به فهرست "test": تست سی دی اکنون ، پرونده ای جدید با نام Source.file را با داده هایی Hard Link در لینوکس مانند شکل زیر ایجاد کنید. $ echo "به OSTechNix خوش آمدید"> source.file

بگذارید داده های منبع.file را مشاهده کنیم.

$ source cat.file
به OSTechNix خوش آمدید
خوب ، Source.file ایجاد شده است.

اکنون یک پیوند نمادین یا نرم به منبع فایل ایجاد کنید.

برای انجام این کار ، اجرا کنید:

$ ln -s source.file softlink.file
بگذارید داده های Source.file و softlink.file را با هم مقایسه کنیم.

$ source cat.file
به OSTechNix خوش آمدید
$ cat softlink.file
به OSTechNix خوش آمدید
مشاهده داده های Symlink

همانطور که در خروجی بالا مشاهده می کنید Hard Link در لینوکس ، softlink.file داده های مشابه منبع.file را نشان می دهد.

به ما اجازه دهید تا ورودیها و مجوزهای softlink.file و Source.file را بررسی کنیم.

$ ls -lia
خروجی نمونه:

کل 12
11665675 drwxrwxr-x 2 sk sk 4096 اکتبر 17 11:39.
4325378 drwxr-xr-x 37 sk sk 4096 اکتبر 17 11:39 ..
11665731 lrwxrwxrwx 1 sk sk 11 Oct 17 11:39 softlink.file -> source.file
11665692 -rw-rw-r-- 1 sk sk 21 اکتبر 17 11:39 منبع.فایل
درج و مجوزهای لینک نمادین را بررسی کنید.

همانطور که در تصویر بالا مشاهده می کنیم ، تعداد inode (11665731 vs 11665692) و مجوزهای پرونده (lrwxrwxrwx vs -rw-r – r–) متفاوت هستند ، Hard Link در لینوکس حتی اگر softlink.file دارای مطالب مشابه منبع.file باشد. از این رو ، ثابت شده است که پیوند نرم ، تعداد نامود و مجوزهای پرونده اصلی را به اشتراک نمی گذارد.

حال پرونده اصلی (i.e Source.file) را حذف کرده و ببینید چه اتفاقی می افتد.

$ rm منبع.فایل
محتویات softlink.file را با استفاده از دستور بررسی کنید:

$ cat softlink.file
خروجی نمونه:

cat: softlink.file: چنین پرونده یا دایرکتوری وجود ندارد
محتوای لینک نمادین را بررسی کنید

همانطور که در بالا مشاهده می کنید ، پس از Hard Link در لینوکس حذف پرونده اصلی (یعنی منبع.فایل) چنین پرونده یا دایرکتوری به نام softlink.file وجود ندارد. بنابراین ، اکنون می فهمیم که لینک نرم فقط پیوندی است که به پرونده اصلی اشاره دارد. نرم افزار مانند میانبر یک پرونده است. اگر پرونده را حذف کنید ، میانبر بی فایده است.

همانطور که قبلاً می دانید در صورت حذف لینک نرم ، فایل اصلی هنوز در دسترس خواهد بود.

خوانده شده پیشنهادی:

چگونه لیست های لینوکس را در لینوکس قرار دهیم
چگونه می توان Symlinks Broken را پیدا کرد و آنها را در لینوکس حذف کرد
ایجاد لینک سخت
مطابق شکل زیر فایلی با نام Source.file ایجاد کنید.

$ echo "به OSTechNix خوش آمدید"> source.file
بگذارید محتویات پرونده را تأیید کنیم.

$ source cat.file
به OSTechNix خوش آمدید
Source.file اکنون ایجاد شده است.

حال ، اجازه دهید پیوند سخت به منبع. Hard Link در لینوکس فایل مانند شکل زیر ایجاد کنیم.

$ ln Source.file hardlink.file
پیوند سخت ایجاد کنید

محتوای hardlink.file را بررسی کنید.

$ cat hardlink.file
به OSTechNix خوش آمدید
مشاهده می کنید hardlink.file داده های مشابه منبع.file را نشان می دهد.

بگذارید که میزان inode و Hard Link در لینوکس مجوزهای hardlink.file و Source.file را بررسی کنیم.

$ ls -lia
خروجی نمونه:

جمع 16
11665675 drwxrwxr-x 2 sk sk 4096 اکتبر 17 11:58.
4325378 drwxr-xr-x 37 sk sk 4096 اکتبر 17 11:39 ..
11665692 -rw-rw-r-- 2 sk sk 21 اکتبر 17 11:57 hardlink.file
11665692 -rw-rw-r-- 2 sk sk 21 اکتبر 17 11:57 منبع.فایل
ورودی ها و مجوزهای لینک سخت را بررسی کنید

حال ، می بینیم که هر دو hardlink.file و Source.file دارای عدد inodes (11665692) و مجوزهای پرونده (-rw-r – r–) هستند. از این رو ، ثابت شده است که Hard Link در لینوکس فایل پیوند سخت با همان تعداد درج و مجوزهای فایل اصلی به اشتراک می گذارد.

توجه: اگر مجوزها را در Source.file تغییر دهیم ، همان اجازه در مورد hardlink.file نیز اعمال می شود.



حال پرونده اصلی (i.e Source.file) را حذف کرده و ببینید چه اتفاقی می افتد.

$ rm منبع.فایل
محتویات hardlink.file را با استفاده از دستور بررسی کنید:

$ cat hardlink.file
خروجی نمونه:

محتوای لینک سخت را بررسی کنید

همانطور که در بالا مشاهده می کنید ، حتی اگر پرونده منبع را حذف کردم ، می توانم محتوای hardlink.file را مشاهده کنم. از این رو ، ثابت شده است که لینک سخت همان تعداد اینود ، مجوزها و داده های پرونده اصلی را به اشتراک می گذارد.

بنابراین ، تفاوت بین لینک سخت و پرونده کپی شده معمولی چیست؟
شاید تعجب کنید که چرا می توانیم پیوند سخت ایجاد کنیم در حالی که می توانیم پرونده اصلی را به راحتی کپی / چسباند؟ ایجاد پیوند سخت به یک پرونده متفاوت از کپی کردن آن است.

اگر فایلی را کپی کنید ، فقط محتوا را کپی می کند. Hard Link در لینوکس بنابراین اگر محتوای یک فایل (یا پیوند اصلی یا سخت) را تغییر دهید ، هیچ تأثیری روی پرونده دیگر ندارد. اما اگر پیوند سختی را برای یک پرونده ایجاد کنید و محتوای هر یک از پرونده ها را تغییر دهید ، تغییر در هر دو مشاهده می شود.

بگذارید نگاهی به منبع.فایل بیاندازیم.

$ source cat.file
به OSTechNix خوش آمدید

پرونده منبع یک خط واحد دارد Hard Link در لینوکس که می گوید - به OSTechNix خوش آمدید.

https://javabyab.com/33569/%D9%BE%D8%B1%D9%88%D8%AA%DA%A9%D9%84-imap-%DA%86%DB%8C%D8%B3%D8%AA-%D9%88-%D9%87%D8%B1-%D8%A2%D9%86%DA%86%D9%87-%D8%A8%D8%A7%DB%8C%D8%B3%D8%AA%DB%8C-%D8%AF%D8%B1-%D9%85%D9%88%D8%B1%D8%AF-%D8%A2%D9%86-%D8%A8%D8%AF%D8%A7%D9%86%DB%8C%D8%AF

سوال 2 هفته قبل در تالار کامپیوتر و اینترنت توسط mohsen mohammadi90_5 (-2 امتیاز)

سوال های مشابه

0 رأی
1 جواب میانگین بازدید روزانه 0.1127 بازدید
0 رأی
1 جواب میانگین بازدید روزانه 0.0698 بازدید
0 رأی
0 جواب میانگین بازدید روزانه 0.0368 بازدید
0 رأی
1 جواب میانگین بازدید روزانه 0.6570 بازدید
0 رأی
0 جواب میانگین بازدید روزانه 0.4867 بازدید
0 رأی
0 جواب میانگین بازدید روزانه 0.15161 بازدید
0 رأی
1 جواب میانگین بازدید روزانه 0.41540 بازدید
0 رأی
1 جواب میانگین بازدید روزانه 0.2258 بازدید
0 رأی
1 جواب میانگین بازدید روزانه 0.13181 بازدید
0 رأی
1 جواب میانگین بازدید روزانه 1.031,455 بازدید
کانال تلگرام جواب یاب
...