سؤال

كنت أبحث عن طريقة لإنشاء روابط صعبة تحت Windows ووجدت هذه الصفحة: http://technet.microsoft.com/en-us/library/cc788097.aspx.

لإجراء ذلك، قمت بإنشاء ملف (1.TXT) على جذر محرك الأقراص C: مع 100 سطر من المحتوى التالي:

C: 1.Txt (2.598 بايت):

test test test test test

ثم افتح موجه الأوامر ومكتبتها:

fsutil hardlink create C:\2.txt C:\1.txt

النجاح، تم إنشاء 2.Txt ولكن عندما أذهب لرؤية حجمها، فإنه يحتوي على 2.598 بايت بالضبط ولاحظ بعض السلوكيات الغريبة (بقدر ما يذهب فهم الروابط الصعبة):

  1. إذا قمت بحذف 2.Txt (الملف الثابت المرتبط) لم يتم حذف 1.Txt، والعكس صحيح.
  2. إذا قمت بفتح 2.txt بعد حذف 1.Txt (الملف الأصلي)، فإن المحتوى لا يزال هو نفسه.

كيف يختلف الأمر FSUTIL Hardlink إنشاء أمر من أمر "نسخ"؟ وكيف يمكنني إنشاء رابط صلب حقيقي تحت ويندوز؟

أنا أستخدم نظام التشغيل Windows XP SP 3، ونظام الملفات الخاص بي هو NTFS.

هل كانت مفيدة؟

المحلول

هذا هو بالضبط السلوك الذي من المفترض أن يحدث. هل أنت متأكد أنك تفهم مدى عمل الروابط الصعبة؟ الروابط الصلبة هي حقا مجرد إدخالات متعددة في نظام الملفات التي تشير إلى نفس الملف المحدد. إذا قمت بإنشاء رابط ثابت لملف وتعديل أحد مثيلات الملف، فسيتم عرض الملف الآخر مع التغييرات الخاصة بك لأن كلاهما يشير إلى نفس كتل البيانات على القرص.

عند حذف إحدى الروابط الصلبة، فأنت فقط حذف أحد إدخالات نظام الملفات التي تشير إلى هذا الملف. لا يتم حذف الملف حتى تحذف الكل من روابطها الصعبة (بما في ذلك الأصل الأصلي). بعد حذف 1.txt، لا يزال 2.txt موجودا ويشير إلى نفس الملف الذي كان في الأصل هناك، الآن فقط يوجد فقط إدخال نظام ملف واحد يشير إلى هذا الملف (وهي 2.TXT). 2.txt. يكون هذا الملف.

نصائح أخرى

كيف يختلف الأمر FSUTIL Hardlink إنشاء أمر من أمر "نسخ"؟ وكيف يمكنني إنشاء رابط صلب حقيقي تحت ويندوز؟

بعد إنشاء ملف hardlinked، حاول التحرير أيضا. سوف تكتشف أن التغييرات تنعكس في كلا الملفين.

حاول إنشاء وصلة قوية لملف كبير جدا (قل فيديو أو صورة قرص). لاحظ أن المساحة المتوفرة على القرص لم يتغير (أو غير متغير بأكثر من بضعة بايت، إذا كان من الضروري كتابة بيانات التعريف الإضافية على القرص لتعكس إدخال DIR الجديد).

هذا هو الرابط الثابت الحقيقي. في UNIX (أنا لست على دراية ب Windows Voliant)، ملف هو مجرد مجموعة من البيانات على القرص (بساطة). إنه إدخال الدليل نفسه الذي يعطي هذا الملف اسما.

عندما يكون لديك إدخالات دليلين تشير إلى نفس الملف الأساسي، يحذف أحدهم ليس حذف الملف ما لم يكن هناك إدخال دليل آخر متصل به (والملف لا يزال مفتوحا من خلال عملية، ولكن هذا أمر مختلف).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top