rsync (Remote Sync)
ගොණු උපස්ථ කිරීමේ (file backup) සාමාන්ය ක්රමය නම් ගොණු (files) අඩංගු වන නාමාවලිය (directory) වෙනත ස්ථානයක ඇති එහි පිටපතක් (copy) සමග සමකාලීන (synchronize) කිරීමයි. මෙහිදී නාමාවලියේ පිටපත පරිගණකයේ වෙනත් ස්ථානයක, ඉවත් කළ හැකි ගබඩා මාධ්යයක (removable storage) හෝ දුරස්ථ පරිගණකයක (remote computer) තබා ගැනීම සිදුකරයි. Linux මෙහෙයුම් පද්ධතිය (operating system) තුළ මේ සඳහා යොදාගන්නා ප්රචලිත ක්රමය වන්නේ rsync (remote sync) විධානයයි (command). rsync මගින් පෙර සඳහන් කළ ඕනෑම ආකාරයක පිටපතක් සමකාලීන (sync) කිරීමේ හැකියාව ඇත. තවද sync කරනු ලබන directory අතර ඇති වෙනස්කම් (updates) පමණක් හඳුනාගෙන sync කිරීම සිදු කරන නිසා වඩාත් කාර්යක්ෂම ලෙස එය සිදුවේ. rsync හි රීතිය (syntax) පහත පරිදි ය.
rsync [options] <source> <destination>
මෙහි source(මූලය)/destination (ගමනාන්තය) ලෙස පහත දැක්වෙන පරිදි file/directory ලබාදිය හැකිය.
- ස්ථානීය (local) file/directory
- දුරස්ථ (remote) file/directory
syntax| [username@]host:path ([පරිශිලක නාමය@]පරිගණක නාමය:පෙත)
- දුරස්ථ rsync සේවාදායක පරිගණකයක් (server)
syntax| rsync://[username@]host[:port]/path
සටහන: source/destination අතරින් එකක් ස්ථානීය (local) විය යුතුය. දුරස්ථ ගමනාන්ත (remote destinations) දෙකක් අතර rsync යොදාගත නොහැකිය. source ලෙස directory කිහිපයක් වුවද ලබාදිය හැකිය.
rsync හි options (විකල්ප) ලෙස පහත ඒවා නිතර යොදාගනී.
-a (archive) → directory හි අඩංගු සියල්ල (අනු-නාමාවලිද ඇතුළුව) ඒවායේ ලක්ෂණ (attributes) ද සමගින් synchronize කරනු ලබයි. -v (verbose) → sync කරනු files/directory වල තොරතුරු දක්වමින් කාර්යය සිදුවේ. --delete → destination හි දැනටමත් source හි ඇති files එනමින් ඇත්නම් මකා දැමීම සිදු කරයි.
rsync යොදාගන්නා ආකාරය උදාහරණ සහිතව මීළඟට සොයා බලමු.
1. ස්ථානීය නාමාවලි අතර සමකාලීන කිරීම (Sync local directories)

2. වෙනස්කම් පමණක් සමකාලීන කිරීම (Sync updates)

සටහන: File එකකට සිදුකරන වෙනස්කම් ද මෙහිදී updates ලෙස හදුනාගැනේ.
3. දුරස්ථ පරිගණකයක් සමග සමකාලීන කිරීම (Sync with remote computer)
මේ සඳහා දුරස්ථ පරිගණකයේ rsync පිහිටුවා තිබීම (install) අවශ්ය වන අතර ssh (secure shell) මගින් ආරක්ෂාකාරී ලෙස shell යොදාගැනීමේ හැකියාව ලබාදේ.
rsync -av --delete --rsh=ssh /home/indikau remote-ruhuna:/backup
සටහන: — delete මගින් sync කරනු ලබන files/directories දැනටමත් destination හි ඇත්නම් මකාදැමීම සිදුකරයි. මෙහිදී දුරස්ථ පරිගණකයේ (remote computer) නාමය වන්නේ remote-ruhuna ය. /backup මගින් destination හි සමකාලීන කරනු ලබන directory දැක්වේ. — rsh මගින් rsync සඳහා යොදාගත යුතු shell හඳුන්වාදී ඇත.
දුරස්ථ සේවාදායක (server) පරිගණකයක ඇති files/directories සමග ස්ථානීය (local) පිටපතක් සමකාලීන කිරීම සඳහා rsync විධානය (command) පහත දැක්වෙන ආකාරයට ලබාදෙන්න. මේ සඳහා දුරස්ථ පරිගණකය rsync server එකක් ලෙස සකසා තිබීම (configure) අත්යාවශ්ය වේ.
rsync -av --delete rsync://rsync.remote-ruhuna.net/home/indikau/backup myhome_backup
සටහන: මෙහි Server පරිගණකයේ නාමය rsync.remote-ruhuna.net ලෙස සහ සමකාලීන කරන directory හි පෙත (path) ලෙස /home/indikau/backup ද ලබාදී ඇත. ස්ථානීය (local) directory හි නාමය වන්නේ myhome_backup ය.
මෙම ලිපියත් සමගින් ‘ගොණු උපස්ථ කිරීම සහ ලේඛණාරක්ෂිත කිරීම’ පිලිබඳ ලිපි පෙළ අවසන් වන අතර මීළඟ ලිපි වලින් පරිගණක ජාලකරණයට (networking) සම්බන්ධ වන Linux හි ඇති මෙවලම් ගැන සොයා බලමු.