في نظام غنو لينكس هناك أسلوبين مختلفين في إنشاء روابط للملفات، وبالتالي نوعين من الروابط، يسمى الأول soft link أو symbolic ويمكننا ترجمته إلى "رابط مرن" أو ليّن، ويسمّى الآخر hard link أي "رابط صلب".
الرابط اللين يعمل بذات أسلوب الاختصارات في ويندوز windows shortcuts، أي هو عبارة عن وصلة صغيرة يقتصر محتواها على المسار الكامل للملف أو المجلد المُحدّد، وأشبّهه بـ "ظل الملف"، فإذا حُذف الأصل يصبح الفرع عديم القيمة (وكأنه لا وجود له). لإنشاء رابط ليّن نستخدم الأداة ln مع الخيار -s.
الرابط الصلب يدمج بين أسلوبي الاختصار والنسخ معًا، فهو من جهة يملك وجودًا مستقلًا عن الملف الأصل، بمعنى أنه إذا حُذف الأصل فسيبقى الفرع على حاله، ولكن إذا طرأ تعديل على محتوى الأصل فسيتغيّر محتواه كذلك، وهذه ميزة غير موجودة في أنظمة ويندوز ولذلك قد تبدو غريبة للوهلة الأولى.
وسأشبهه بإثنين من الأواني المرتبطين معًا بأسلوب الأواني المستطرقة (أتمنى أن لا تتعقد الأمور)، فإضافة كمية من السائل في أحد الإناءين ستؤثر بذات المقدار على الإناء الآخر، ولكن إذا رغبت بفصل الإناءين والتخلص من أحدهما فسيبقى الآخر على حاله. لإنشاء رابط صلب نستخدم الأمر ln بدون أي خيار.
هناك شرطين لإنشاء رابط صلب، أولًا أن لا يكون لمجلد (حيث لا يمكن إنشاء روابط صلبة سوى للملفات)، وثانيًا أن يكون الملف ورابطه الصلب في ذات القسم partition.
لنأخذ مثال عمليّ يوضّح الفكرة:
يُنشئ السطر الثاني رابطًا صلبًا للملف a باسم b.
ينشئ السطر الثالث رابطًا لينًا للملف a باسم c.
وبالتأكيد سيكون الآن محتوى الملفات واحدًا:
الآن لنحذف الملف الأصل a
cat a ---> No such file or directory
cat b ---> hello
cat c ---> No such file or directory
يمكن الاستفادة من الروابط الصلبة بإنشاء نسخ احتياطية للملفات ذات الأهمية الكبيرة، بحيث تخضع لذات التعديلات، بينما تتمتع بوجود مستقل عن بعضها.