ලිනක්ස් පද්ධතියක භාවිතා කරන ෆයිල් පර්මිෂන් ගැන හා ඒවා පරීක්ෂා කරන ආකාරය පිළිබඳව අපි කලින් ලිපි දෙකින් සාකච්ඡා කලා. අද අපි අපේ පද්ධතියේ තියෙන ෆයිල් වල අවසර තත්වයන් වෙනස් කරන ආකාරය විස්තරාත්මකව සාකච්ඡා කරමු. මෙම පාඩමේ මුල්ම ලිපියෙන් සාකච්ඡා කල පරිදි මෙම අවසර සැකසීම භාවිතා කරන පාර්ශව තුනටම අදාලව සාකච්ඡා කල යුතුය.
මුලින්ම අපි යම් කිසි ෆයිල් එකකට අලුතින් අවසර තත්වයක් ලබා දීම හෝ තිබෙන අවසර තත්වයක් ඉවත් කිරීම කරන්න පුළුවන් සරළම ආකාරය පිළිබඳව සාකච්ඡා කරමු.
මේ සඳහා භාවිතා කරන්නේ chmod (change mode)කියන විධානයයි. දැන් අපි බලමු මේ විධානය භාවිතා කරලා කොහොමද අවසර තත්වයන් වෙනස් කරගන්නේ කියලා.
- අවසර තත්වයක් එකතු කිරීම.
$ chmod +Permisson_Type filename
මෙහි Permisson_Type කියලා සඳහන් වන්නේ ලබාදෙන අවසර තත්වයයි. ඔබට මතක ඇති අපි භාවිතා කරන අවසර තත්ව.
r = read permission කියවීමට ඇති අවසරය.
එනම් ඉහත සඳහන් අවසර තත්වයක් අවශ්යය ෆයිල් එකේ නම ඉදිරියෙන් ටයිප් කර එම අවසර තත්වය අදාල ෆයිල් එකට ලබාදිය හැකිය.
w = write permission ලිවීමට (වෙනස් කිරීමට ඇති අවසරය.)
x = execute permission ක්රියාත්මක කිරීමට ඇති අවසරය.
උදාහරණයක් විදිහට foo කියන ෆයිල් එකට ක්රියාත්මක කිරීමේ අවසරය ලබාදෙන්න අවශ්යයි කියලා හිතන්න. ඒ සඳහා විධානය වන්නේ,$ chmod +x foo
- අවසර තත්වයක් ඉවත් කිරීම.
අවසර තත්වයක් ඉවත් කිරීම සඳහා කල යුත්තේ ඉහත විධානයේ ධන ලකුණ (+) වෙනුවට සෘණ ලකුණ (-) යෙදීම පමණී.
උදාහරණයක් විදිහට foo ෆයිල් එකේ ක්රියාත්මක කිරීමට ඇති අවසරය ඉවත් කිරීමට භාවිතා කල යුත්තේ පහට විධානයයි.$ chmod -x foo
මේ විදිහට බොහෝ ෆයිල්ස් වලට අවසර තත්වයන් එකතු කරන්නටත්, තිබෙන අවසර තත්වයක් ඉවත් කිරීමටත් පුලුවන්. අභ්යාසයක් විදිහට ටර්මිනල් එකක් ගෙන විවිධ ආකාරයේ ෆයිල් නිර්මාණය කර ඒවායේ අවසර තත්වයන් වෙනස් කර බලන්න. වෙනස් කල පසු ls -l විධානය භාවිතා කර වෙනස් කම පරීක්ෂා කරන්න.
ඉහත අපි සාකච්ඡා කලේ මේ අවසර තත්වයන් තනි පරිශිලකයෙකුට පමණක් බලපාන පරිදි වෙනස් කරගැනීම පිළිබඳවයි. දැන් අපි සම්පූර්ණයෙන්ම මෙම අවසර සැකසීමට අදාල සියළු කොටස් ගැන සාකච්ඡා කරමු. මෙය මූලිකව කොටස් දෙකකට වෙන් කොට සාකච්ඡා කල හැකිය.
- ඉලක්කම් භාවිතයෙන් අවසර සැකසීම.
ලිනක්ස් භාවිතා කරන ගොඩාක් දෙනෙක් භාවිතා කරන ඉතා පහසු ක්රමයක් තමා මේක. ඒත් මේක පාඩම් මාලාවකට අයත් ලිපියක් නිසා මේ ක්රමයේ මූලික සිද්ධාන්තයේ සිටම කරුණු පැහැදිලි කරන්නම්.මේක ගොඩනැගිලා තියෙන්නේ මෙහෙමයි.
පහත පරිදි අවසර තත්වයන් 4 සඳහා වෙන වෙනම සංඛ්යාත්මක වටිනාකමක් ලබාදී තිබෙනවා.4 = read (r)
මෙම සංඛ්යාවල එකතුවෙන් තමා අවසර සැකසීම සිදු කෙරෙන්නේ.
2 = write (w)
1 = execute (x)
0 = no permission (-)
උදාහරණයක් විදිහට හිතන්න අපිට යම් කොට්ඨාසයකට කියවීමට හා ක්රියාත්මක කිරීමට පමණක් අවසර ලබා දෙන්න අවශ්යයි කියලා හිතන්න. එවිට අදාල අංකය වෙන්නේ
5 = 4 (read) + 1 (execute)
මේ විදිහට ගණනය කරලා හදා ගත්තු වගුවක් තමා පහත දක්වලා තියෙන්නේ.
අංකය අර්ථය අවසර තත්වය 0 --- කිසිදු අවසරයක් නැත. 1 --x ක්රියාත්මක කිරීමට පමණක්. 2 -w- වෙනස් කිරීමට පමණක්. 3 -wx වෙනස් හා ක්රියාත්මක කිරීමට පමණක්. 4 r-- කියවීමට පමණක් 5 r-x කියවීමට හා ක්රියාත්මක කිරීමට පමණක්. 6 rw- කියවීමට හා වෙනස්කිරීමට පමණක්. 7 rwx කියවීමට, වෙනස් කිරීමට හා ක්රියාත්මක කිරීමට පමණක්.
දැන් අපි බලමු කොහොමද මේ ආකාරයෙන් සම්පූර්ණ අවසර සැකසීමක් සිදු කරන්නේ කියලා.- උදා 1 :- ෆයිල් එක අයිති පරිශීලකයාට පමණක් සියලු අවසරත්, අනෙක් පාර්ශව සඳහා කියවීමට හා ක්රියාත්මක කිරීමට පමණක් අවසර ලබා දීමට නම්, එනම් ආකාරයේ (rwxr-xr-x) අවසරයක්
$ chmod 755 file_name
- උදා 2 :- ෆයිල් එක අයිති පරිශීලකයාට පමණක් කියවීමට හා වෙනස් කිරීමට අවසරත්, අනෙක් පාර්ශව සඳහා කියවීමට පමණක් අවසර ලබාදිමට, එනම් ආකාරයේ (rw-r--r--) අවසරයක්
$ chmod 644 file_name
- උදා 1 :- ෆයිල් එක අයිති පරිශීලකයාට පමණක් සියලු අවසරත්, අනෙක් පාර්ශව සඳහා කියවීමට හා ක්රියාත්මක කිරීමට පමණක් අවසර ලබා දීමට නම්, එනම් ආකාරයේ (rwxr-xr-x) අවසරයක්
- සංකේත (අක්ෂර) භාවිතයෙන් අවසර සැකසීම.
මේ ක්රමයත් ගොඩාක් ලේසි ක්රමයක්. මෙහිදී දැනගන්න ඕනේ අවසර සැකසීමට අදාල අක්ෂර කිහිපයක් තියෙනවා. දැනටමත් r, w හා x කියන අක්ෂර වල තේරුම දන්නවනේ. ඉතිරි ටික පහත දක්වලා තියෙනවා.
පරිශීලකයන් අක්ෂරය අර්ථය විස්තරය u user හිමිකරු g group කණ්ඩායම o other වෙනත් a all සියල්ලන්ම
ක්රියාව සංකේතය අර්ථය + ලබාදෙන අවසරය එකතු කරන්න. - ලබාදෙන අවසරය ඉවත් කරන්න. = ලබාදෙන අවසර තත්වයට පත්කරන්න. - උදා 1 :- සියළුම පාර්ශව සඳහා කියවීමට පමණක් අවසර ලබා දීම.
$ chmod a=r file_name
මේ විධානයෙන් අනතුරුව අදාල ෆයිල් එකේ අවසර තත්වය r--r--r-- ආකාරයට සකස් වේ. පරීක්ෂා කර බලන්න. - උදා 2 :- පරිශිලක කණ්ඩායම සඳහා ක්රියාත්මක කිරීමට හා වෙනස් කිරීමට අවසරය ලබා දීම.
$ chmod g+rx file_name
- උදා 3 :- හිමිකරුගෙන් හා කණ්ඩායමෙන් වෙනස් කිරීමේ හා ක්රියාත්මක කිරීමේ අවසරය ඉවත් කිරීම.
$ chmod ug-rx file_name
- උදා 1 :- සියළුම පාර්ශව සඳහා කියවීමට පමණක් අවසර ලබා දීම.
සටහන: අපි මෙතනදී සාකච්ඡා නොකල එකම දේ තමයි ෆයිල් එකක හිමිකාරිත්වය හා එය අඩංගු කණඩායම වෙනස් කරන ආකාරය.ඒ පිළිබඳව සම්පූර්ණ ලිපියක් බලාපොරොත්තු වන්න.
9 අදහස්...:
godak wedagath lipi pelak....... thanks!
මන් මෙකේන් ගොඩාක දෙවල් ඉගෙන ගත්තා..හොදට තේරෙන විඩිහට ලියල තියන්වා
පොඩි ප්රශ්නයකට තියෙන්නෙ අන්තිම කොටසේ 2 3 උදාහරන වල
eg 2 = $ chmod g+wx file_name
eg 3 = $ chmod ug-wx file_name
මෙහෙම නේද ඒක එන්න ඔනා...???
ghodak vatina me lipipela.....ikmantama lipi updetes karanda...tnx macho
PATTA AYYE... ELAKIRI.. DIGATAMA KARAGENA YANNA.. API BALANAWOOOO!
අයියේ මොකක්හරි file එකක අවසර තත්වය වෙනස් User, Groupe, Other වලට වෙනස් කළහම ඒවා Windows OS එකටත් එහෙම්ම වැඩ කරනවද? මන් Windows වල දැකලා තියෙන්නේ Write, Read Only කියන ඒවා විතරයි.. එතකොට උබුන්ටු වලින් File එකකට ක්රියාත්මක කිරීමේ අවසරය ලබා දීලා තිබුනේ නැතොත් එක Windows වලදී ක්රියාත්මක කරන්න බැරිද?
@Linuxman මෙහෙමයි මලේ.... අපි මුලින්ම තේරුම් ගන්න ඕනේ.. ලිනක්ස් වල සහ වින්ඩෝස් වල තියෙන ෆයිල් සිස්ටම් වර්ග එකිනෙකට වෙනස් බව.. උදාහරණයක් වශයෙන්.. ලිනක්ස් වල භාවිතා වෙන්නේ ext2, ext3, ext4 වගේ file systems, Windows වල භාවිතා වෙන්නේ FAT, NTFS වගේ file systems . මේවගෙන් FAT වල security කොහොමත් නෑ. ඒ කියන්නේ FAT වලදි ඔයාට Permission හදන්න බෑ. FAT හරි NTFS හරි වගේ එකක security enable කරනවා නම් file encrypt කරන එක තමා කරන්න වෙන්නේ... කොහොමත් ලිනක්ස් වල භාවිතා කරන ext2, ext3, ext4 වගේ file system එකක Hard Disk එකක් Windows වල mount කරන්න බෑ. ඒ කියන්නේ Linux files Windows වලින් කියවන්න බෑ. අදහස් දැක්වූවාට ස්තූතියි. නොතේරෙන යමක් තියෙනවා නම් ආයේ අහන්න.. තවත් පැහැදිලි කරලා දෙන්නම්.... ජය වේවා...
@Dulanja Subodhana හ්ම්ම්... හොදට පැහැදිලි කරලා තියෙනවා අයියේ... මට හොදට තේරුණා... වෙන මේ සම්බන්ධව නොතේරුණු යමක් තිබ්බොත් මන් අහන්නම්කො.... :) ගොඩක් ස්තුතියි අයියේ... අයියටත් ජය වේවා!
ela post ekak,,digatama liyannna, api balano!!
ගොඩක් කාලෙක ඉදන් ලිනක්ස් ඉගෙන ගන්න ආසාව තිබුනත් වුවමනාව තිබුනේ නෑ. ඒ වුනත් හදිසියේම ඉගෙන නොගෙන ඉන්න බැරි තත්වෙකට පත්වුනා. එතකොට තමයි මේ blog එක හම්බ වුනේ.ඇත්තේන්ම මට මේ පාඩම් වලින් ලොකු උදව්වක් වුනා ලිනක්ස් ඉගෙනගන්න එකට.කොටින්ම කිව්වොත් එළකිරි. ජයවේවා !
Post a Comment