در ویندوز میتوانید یک فایل را طوری در دو پوشه مختلف در دسترس قرار دهید که بهجای ساختن دو نسخه جداگانه، هر دو نام به همان دادههای ذخیرهشده اشاره کنند. این قابلیت که Hard Link نام دارد، برای مدیریت فایلهای پروژه، آرشیوها و فایلهایی که باید از چند مسیر در دسترس باشند کاربردی است. نکته مهم این است که تغییرات از هر دو مسیر روی همان فایل اعمال میشوند؛ بنابراین هارد لینک جایگزین نسخه پشتیبان نیست.
هارد لینک در ویندوز چیست و چگونه فضای دیسک را ذخیره میکند؟
در حالت معمول، اگر یک فایل را از پوشهای به پوشه دیگر کپی کنید، ویندوز نسخهای جداگانه از دادههای آن میسازد. اما با هارد لینک میتوانید نام دیگری برای همان فایل ایجاد کنید. هر دو نام به یک محتوای ذخیرهشده روی دیسک اشاره میکنند و تغییر فایل از طریق یکی از نامها در مسیر دیگر هم قابل مشاهده است.
به عنوان مثال، اگر یک فایل متنی در پوشه پروژه دارید و میخواهید همان فایل از پوشه آرشیو هم قابل دسترسی باشد، هارد لینک این کار را بدون کپی کردن دوباره محتوای فایل انجام میدهد. این قابلیت برای فایلهای بزرگ نیز میتواند مفید باشد؛ چون ایجاد نام دوم، بهاندازه کپی کامل فایل فضای ذخیرهسازی مصرف نمیکند.
با این حال، هارد لینک محدودیتهایی دارد. معمولاً فقط برای فایلها روی یک حجم ذخیرهسازی یا پارتیشن قابل استفاده است و نمیتوانید با آن مستقیماً به پوشهها هارد لینک بسازید. همچنین اگر فایل را از طریق یکی از نامها ویرایش کنید، تغییرات از طریق نام دیگر نیز دیده میشوند.
آموزش ساخت هارد لینک با دستور mklink در ویندوز ۱۱
برای ساخت هارد لینک، باید از ابزار خط فرمان ویندوز استفاده کنید. ابتدا دو پوشه آزمایشی روی یک درایو بسازید؛ به عنوان مثال C:TestProjects و C:TestArchive. سپس یک فایل متنی به نام original.txt در پوشه اول ایجاد کنید.
منوی استارت را باز کنید، عبارت cmd را جستوجو کنید و Command Prompt را اجرا کنید. برای ساخت نام دوم فایل، دستور زیر را وارد کنید:
mklink /H "C:TestArchivesecond-name.txt" "C:TestProjectsoriginal.txt"
در این دستور، مسیر اول نام جدیدی است که قرار است ایجاد شود و مسیر دوم به فایل موجود اشاره میکند. پوشه مقصد باید از قبل وجود داشته باشد و فایل مبدأ نیز باید در دسترس باشد. برای این روش نیازی به فعال کردن Developer Mode نیست؛ با این حال، ممکن است بسته به مجوزها و تنظیمات سیستم به اجرای خط فرمان با دسترسی مناسب نیاز داشته باشید.
برای بررسی اینکه هر دو نام به یک فایل متصل هستند، دستور زیر را اجرا کنید:
fsutil hardlink list "C:TestProjectsoriginal.txt"
اگر هارد لینک درست ایجاد شده باشد، خروجی مسیرهای مرتبط با همان فایل را نشان میدهد. اکنون فایل second-name.txt را از پوشه آرشیو باز کنید و متنی به آن اضافه کنید. با باز کردن original.txt باید همان تغییر را ببینید.
نکته: مقدار اندازه فایلی که در مدیریت فایل ویندوز نمایش داده میشود، لزوماً نشان نمیدهد که هارد لینک فضای فایل را دوباره مصرف کرده است. هر دو نام اندازه همان داده را نمایش میدهند، اما محتوای فایل دو بار ذخیره نشده است.
حذف هارد لینک چه تأثیری روی فایل اصلی دارد؟
یکی از ویژگیهای مهم هارد لینک این است که هیچیک از نامها لزوماً نام اصلی یا مهمتر از دیگری نیست. هر نام یک ورودی مستقل در ساختار پوشههاست که به همان داده اشاره میکند. بنابراین، حذف یکی از نامها نباید باعث حذف محتوای فایل از طریق نام دیگر شود.
به عنوان مثال، اگر original.txt را حذف کنید، فایل second-name.txt همچنان قابل استفاده خواهد بود. فضای مربوط به دادههای فایل نیز تا زمانی که نام هارد لینک دیگری به آن اشاره میکند آزاد نمیشود. وقتی آخرین هارد لینک حذف شود و برنامهای هم فایل را باز نگه نداشته باشد، فضای اشغالشده میتواند آزاد شود.
البته باید بین حذف یک نام و حذف محتوای فایل تفاوت قائل شوید. اگر فایل را از طریق یکی از مسیرها باز کنید و محتوای آن را پاک یا بازنویسی کنید، تغییر روی داده مشترک اعمال میشود و نام دیگر نیز همان محتوای تغییریافته را نشان خواهد داد.
برای همین، هارد لینک را با نسخه پشتیبان اشتباه نگیرید. اگر میخواهید از فایلهای مهم در برابر حذف تصادفی، خرابی دیسک یا تغییرات ناخواسته محافظت کنید، یک نسخه جداگانه روی درایو دیگر یا فضای ذخیرهسازی مستقل نگه دارید.
تفاوت هارد لینک، سمبلیک لینک و شورتکات در ویندوز
این سه قابلیت ممکن است در ظاهر مشابه به نظر برسند، اما رفتار متفاوتی دارند. انتخاب درست به این بستگی دارد که میخواهید فقط راهی برای باز کردن فایل داشته باشید یا یک مسیر واقعی در ساختار فایلسیستم ایجاد کنید.
|
ویژگی |
هارد لینک |
سمبلیک لینک |
شورتکات |
|---|---|---|---|
|
اشاره به داده یا مسیر مقصد |
همان داده فایل |
مسیر فایل یا پوشه |
آدرس مقصد |
|
کار با پوشهها |
خیر |
بله |
بله |
|
استفاده بین درایوها |
خیر |
بله |
بله |
|
حذف لینک |
نام لینک حذف میشود نامهای دیگر باقی میمانند |
لینک حذف میشود مقصد باقی میماند |
شورتکات حذف میشود مقصد باقی میماند |
|
حذف یا جابهجایی مقصد |
نامهای دیگر هارد لینک همچنان به داده دسترسی دارند |
ممکن است لینک از کار بیفتد |
ممکن است شورتکات از کار بیفتد |
اگر فقط میخواهید یک فایل را از دو مسیر روی همان درایو در دسترس داشته باشید و هر دو مسیر دقیقاً به داده یکسان اشاره کنند، هارد لینک گزینه مناسبی است. برای لینک کردن پوشهها یا ارجاع به فایل و پوشهای در درایو دیگر، سمبلیک لینک انتخاب مناسبتری است. شورتکات نیز برای دسترسی سریع از دسکتاپ یا منوی استارت کاربرد دارد، اما خودش لینک فایلسیستم محسوب نمیشود.
برای ساخت سمبلیک لینک فایل میتوانید از دستور زیر استفاده کنید:
mklink "C:TestArchivelinked-file.txt" "D:Dataoriginal.txt"
برای ساخت سمبلیک لینک پوشه نیز از این دستور استفاده کنید:
mklink /D "C:TestArchiveLinkedFolder" "D:Projects"
در هر دو حالت، مسیر مقصد باید معتبر باشد. ساخت سمبلیک لینک ممکن است به مجوزهای مناسب یا فعال بودن قابلیتهای لازم در ویندوز نیاز داشته باشد. پیش از استفاده در پوشههای مهم، دستورها را روی فایلهای آزمایشی بررسی کنید.
اینتوتک