අපි ඔන්න පාඩම් හතක්ම ඉවර කරලා දැන් අට වෙනි එකටත් ඇවිල්ලා ඉන්නෙ. මේක බලන කෙනෙක් කලින් පාඩම් නොබලා බලනවා නම් මේ පාඩම තේරෙන එකක් නෑ. ඒ නිසා මුල් පාඩම් ටික බලලා මෙතනට එන්න.

අද ටිකක් පොඩි පාඩමක් අරන් ආවෙ, මොකද මේ පාඩමට අවශ්‍ය වුණ theory ටික මම කලින් පාඩමෙන් cover කළා. අද තියෙන්නෙ මූලික theory කොටස් සහ practical කොටස විතරක් සාකච්ඡා කරන්න.

එහෙනම් පාඩම පටන්ගනිමු.

Microsoft Windows වල shortcuts ඔයාලා දැකලා ඇති හදලත් ඇති. ඒත් මේ අපි කතා කරන්න යන Links ගැන දන්නෙ ටික දෙනයි. මේවත් shortcuts වගේ තමයි. හැබැයි ටිකක් වෙනස්. ඒ වෙනස්කම් ගැනයි, command line එකේ, එහෙමත් නැත්නම් terminal එකේ මේවා හදන විදිය ගැනයි, ඔක්කොම අද කතා කරමු.

Note: මේක කතා කරන්න කලින් පාඩමේ මම කියලා දුන්න i-node number කතාව අවශ්‍ය වෙනවා. ඒ ගැන කියලා දුන්න නිසා ආයෙ කියන්න මම උත්සාහ කරන්නෑ.
  1. Hard Links වලට තියෙන්නෙ එකම i-node number එකක්. ඒ කියන්නෙ, ඔරජිනල් ෆයිල් එකටයි, ඔයා හදන හැම hard link එකකටමයි තියෙන්නෙ එකම i-node number එක.
  2. මේ link වැඩ කරන්නෙ shortcut විදියට නෙවෙයි. ඒ original file එක විදියටමයි. Shortcut එකේ Content එකට කරන changes එහෙම්ම original file එකටත් apply වෙනවා.
  3. ලොකුම දේ තමයි, link එක තියලා original file එක මකලා දැම්මත් link එක වැඩ. එතකොට link එක original එක වෙනවා.
  4. Directories වලට hard links හදන්න බෑ.

අපි දැන් මේ ටික ඔළුවට යන්නත් එක්ක පොඩි exercise එකක් කරමු. Terminal එක දැන් ඕපන් කරගන්න.

මුලින්ම කැමති නමකින් අලුත් directory එකක් හදන්න. මේවට commands දැන් මතක ඇති. ඊට පස්සෙ ඒ directory එක ඇතුළට cd වෙලා තමන් කැමති නමකින් අලුත් ෆයිල් එකක් හදන්න. අලුත් ෆයිල් එකක් හදන්න touch, nano වගේ command එකක් පාවිච්චි කරන්න. මම කලින් කියලා දුන්නා නෙ. ඔන්න මම කරපු විදිය පහළින් දාන්නම්.

මේ වැඩේ හොඳින්ම තේරෙන්න නම්, ඔයා හැදුව ෆයිල් එකට මොනා හරි කන්ටෙන්ට් එකක් දාන්න ඕන. උදාහරණයක් වශයෙන් ඔයාගෙ නම ඒ text ෆයිල් එකේ ලියන්න. nano හරි ඔයා කැමති ඕනම editor එකක් මේකට පාවිච්චි කරන්න පුළුවන්.

ඊළඟට, අපි හැදුව File එකට hard link එකක් හදමු.

මේකයි කමාන්ඩ් එක. ln කියන්නෙ කමාන්ඩ් එක, මුලින් එන්නෙ original file එක, ඊළඟට එන්නෙ ඔයා හදන්න යන අලුත් hard link එකේ නම.

ln file.txt myhardlink

ඊට පස්සෙ, මම කලින් කියලා දීලා තියෙන විදියට, ls -i කමාන්ඩ් එකෙන් බලන්න අපි හැදුව files දෙකේ i-node නම්බර්ස් මොනාද කියලා.

හොඳින්ම පේනවා ඇති, මේ ෆයිල් දෙකේම තියෙන්නෙ එකම i-node number කියන එක. ඒ නිසාම, මේවට තියෙන්නෙ එකම file permissions, එකම sizes, timestamp වගේම එකම contents.

ඔයා කැමති නම් එක එක ෆයිල් වල permissions වෙනස් කර කර අනෙක් ෆයිල් එකෙත් ඒවා වෙනස් වෙනවද කියන පරීක්ෂා කරලා බලන්න. දැන් ඒවා කරන විදිය දන්නවනෙ.

කන්ටෙන්ට් එකත් වෙනස් කරමින්, අනික් ෆයිල් එකේ content එක වෙනස් වෙන විදිය පරීක්ෂා කරන්න.

මේක තේරුම්ගන්න පහසුයි, මොකද මේක MS Windows වල shortcut හා සමානයි. අපි කලින් වගේම Soft හෙවත් Symbolic links වල ගුණ ගැන කතා කරමු.

  1. Link එකේ සහ original file එකේ i-node numbers වෙනස්.
  2. Soft Link එකේ තියෙන්නෙ original file එකට යන්න path එක විතරයි. Content එක මුකුත් ඒකෙ නෑ.
  3. Link එක මැකුවත් original file එකට කිසි වෙනසක් වෙන්නෑ. හැබැයි original file එක මැකුවොත් ඒ link එක dangling link එකක් වෙනවා. ඒ කිව්වෙ මුකුත් වැඩක් නැති ඵලක් නැති link එකක් වෙනවා.
  4. ඕන නම්, Directory එකකටත් අපිට soft link එකක් හදන්න පුළුවන්.

කලින් වගේම අපි දැන් practice exercise එකක් කරමු.

කලින් වගේම directory එකක් හදලා ඒක ඇතුළට cd වෙලා අලුත් file එකක් හදන්න. Nano වලින් ඕපන් කරලා content එකකුත් දාන්න. මොනා හරි ලියන්න. ඊට පස්සෙ මෙන්න මේ විදියට command එක පාවිච්චි කරන්න.

ln -s file.txt mysoftlink

කලින් වගේම මේ කමාන්ඩ් එකෙන් i-node numbers පරීක්ෂා කරලා බලන්න.

ls -i

ඒ වගේම, ls -l පාවිච්චි කරලා බලන්න file permissions වල වෙනස.

File permissions ඉස්සරහින් l අකුරක් එකතු වෙලා තියෙනවා. ඒකත් ඔයාට දකින්න පුළුවන්. ඒකෙන් පෙන්වන්නෙ ඒක link එකක් බව. ඒ වගේම link වුණ original file එකත් name එක ළඟින් පෙන්වනවා.

අපි බලමු මේ soft link එක හරහා file එක ඇක්සස් කරන්න පුළුවන් ද කියලා.

cat mysoftlink

කියන command එක run කරලා ඔයාට පුළුවන් මේක පරීක්ෂා කරන්න. මට මෙන්න මෙහෙම අපේක්ෂිත ප්‍රතිඵලය ආවා.

අපි තව පරීක්ෂණයක් කරමු, rm කමාන්ඩ් එකෙන් අපි original file එක මකලා දාමු. ඊට පස්සෙ අපි link එක cat වලින් ඕපන් කරමු.

එතකොට එන්නෙ මෙන්න මේ වගේ output එකක්.

දැක්කනෙ, original file එක නැතුව soft link එකක ප්‍රයෝජනයක් නෑ.

Note: ඔයාලා දන්නවද දන්නෑ, ඉස්සර Android phone වලට root app එකක් තිබුණා Link to SD කියලා. ඒකෙන් කරන්නෙ Phone memory එකෙන් SD card එකට මාරු කරන්න බැරි ඇප්ස් පවා SD එකට මාරු කරන එක. ඒක එහෙම කළේ මෙන්න මේ Links වල උදව්වෙන්.

අද පාඩම බොහොම වැදගත් එකක් බව ඔයාලට තේරෙන්න ඇති. ඊළඟ පාඩම 9 වැනි පාඩම, අරන් එන්නම් ඊළඟට. ඔබට ජය!