ලිනක්ස් Shell Programming පාඩම-කොටස 04

ලිනක්ස් ශෙල් ප්‍රොග්‍රැමින් ගැන ඉගෙන ගන්න.

ලිනක්ස් Shell Programming පාඩම-කොටස 04

Postby root » Thu Aug 08, 2013 8:39 pm

Image


8. Linux file permissions

ලිනක්ස් (ගොඩක් දුරට unix System වලත්) වල ප්‍රධාන වශයෙන් user class තුනක් තියෙනව. user class කියල කිව්වෙ භාවිතා කරන පිරිස වෙන් කරල දක්වන්න පුලුවන් බෙදීමක් වගේ දෙයක්.
අපි බලමු මොනවද මේ user classes තුන කියල.

1.User (u)- මේකෙන් කියන්නෙ file එකේ අයිතිකෙනා ගැන(owner) file එක හදපු එක්කෙනා කියල හිතාගන්න.
2.Group (g)-මේකෙන් කියන්නෙ file එක access කරන අය. කෙනෙක් හදපු files වෙන අය use කරන්න පුලුවන්නෙ.
3.Other (o)-මේ කියන්නෙ උඩ කතා කරපු අය හැරුනාම අනිත් අය ගැන.

ලිනක්ස් file permissions වෙනස් කරල අපට පුලුවන් උඩ ඉන්න තුන් ගොල්ලන්ට කරන්න පුලුවන් දේවල් පාලනය කරන්න.සරලවම ගත්තොත් මෙන්න මෙහෙමයි ඔන්න ඉන්නව file එකක් අයිති එක්කෙනෙක් එයට පුලුවන් එයාගෙ file එක edit කරන්න write කරන්න. execute කරන්න පුලුවන් ජාතියෙ එකක් නම් එහෙම කරන්න. (කරන්න පුලුවන් ඔක්කොම ජාති කරන්න).දැන් බලන්න ඒ file එකම access කරන අය (Group කියන එකේ කස්ටිය) ඒ අයට පුලුවන් file එක execute කරන්නයි write කරන්නයි හැබැයි delete කරන්න බෑ. ඊළඟට Other කියන එකේ කස්ටියට පුලුවන් Read කරන්න විතරයි. උදාහරණයක් විදියට මෙහෙම හිතන්න ඔයාගෙ කම්පියුටරේ guest Account එකක ඉදන් සමහර file open කරන්න delete කරන්න Access කරන්න බෑ නේද ?

අපට පුලුවන් ලිනක්ස් වල තියෙන file එකක මේ permissions වෙනස් කරන්න ඒ කියන්නෙ කලින් කියපු තුන් ගොල්ලන්ට තියෙන වරප්‍රසාද වෙනස් කරන්න පුලුවන්.දැන් බලමු කොහොමද ඒව කරන්නෙ කියල.

අපිට file එකකට කරන්න පුලුවන් ප්‍රධාන දේවල් තුනක් තියෙනව ඒව තම
01.Read (r)
02.Write (w)
03.Execute (x)

වරහන් ඇතුලෙ තියෙන අකුරු වලින් කියන්නෙ කෙටි යෙදුම් කියල මතක තියා ගන්නකො.

File permissions mode තුනක් තියෙනව. ඒව තමයි
1.Linux Read mode permissions- file එකක් හරි directory එකක් හරි Read කරන්න දෙන අවසරය.
2.Write mode permissions- file එකක් හරි directory එකක් හරි Write කරන්න දෙන අවසරය.
3.Execute mode permissions-file එකක් හරි directory එකක් හරි Write කරන්න දෙන අවසරය.

ඔක්ටල් නම්බර් කතාවකුත් තියෙනව මේවත් එක්ක ඒකත් බලලම ඉම්මුකො.
ඔක්ටල් කියන්නෙ අටේ පාදයේ ඉලක්කම්.

ඔක්ටල් කතාව මේකයි
අපි කලින් file එකකට කරන්න පුලුවන් දේවල් තුනක් ගැන කතා කරානෙ r,w,x කියල ඒ r,w,x ඔක්ටල් වලින් ඉදිරිපත් කරගන්න ඒවට මේ අගයන් දාගන්න

r =4
w=2
x =1

දැන් ඉතින් දැනගන්න ඕන 4 කිව්වොත් read , 2 කිව්වොත් write, 1 කිව්වොත් execute කියල.
අපි දැන් බලමු Linux Read Write අවස්ථාව ඔක්ටල් වලින් කොහොමද කියල
මේකට පොඩි සූත්‍රයක් තියෙනවා පහල තියෙන්නෙ ඒක.

0+r+w+e =0+4+2+0 = 6

පේනව නේද Read & Write අවස්ථාවෙ ඔක්ටල් අගය = 6

ඊළඟට බලමු read & execute අවස්ථාව

0+r+w+e = 0+4+0+1 =5

Read & execute අවස්ථාවෙ ඔක්ටල් අගය = 5

දැන් Read, Write & execute අවස්ථාව

0+r+w+e = 0+4+2+1 = 7

Read, Write & execute අවස්ථාවෙ ඔක්ටල් අගය = 7

ඔක්ටල් වල තියෙන්නෙ 0 ඉදල 7 වෙනකම් ඉලක්කම් ටික නෙ ඒ නිසා 7 න් එහා යන්නෙ නෑ කියලත් මතක තියා ගන්න.

කලින් කිව්ව permissions mode යොදාගෙන පොඩි වැඩක් කරල බලමු දැන්

ඔන්න හිතන්න මෙහෙම තියනව file එකක් ඒකෙ user(u) ට Read,Write & execute කියන permissions 3 නම දෙන්න ඔන Group(g) ට දෙන්න ඔන Read & Write permissions දෙක Other (o) ට දෙන්න ඔන execute permissions එක විතරක් එතකොට මෙන්න මේ විදියට තමයි ගණනය කරන්න ඔන.

User = 0+r+w+x = 0+4+2+1 = 7
Group= 0+r+w+x = 0+4+2+0 = 6
Others = 0+r+w+x = 0+0+0+1 = 1

මේවගේම තවත් එකකුත් බලමු දැන්
file එකක Read,Write & execute කියන permissions u,g,o කියන තුන්ගොල්ලොන්ටම දෙන්න ඕන එකට ගණනය කිරීම කරන්න ඕන මෙහෙමයි.

User = 0+r+w+x = 0+4+2+1 = 7
Group= 0+r+w+x = 0+4+2+1 = 7
Others = 0+r+w+x = 0+4+2+1 = 7

මම හිතිනව ඔයාලට මම කියපු දේ තේරෙන්න ඇති කියල මේ විදියට අපට ඕන විදියට Permissions හදා ගන්න පුලුවන්.
 
දැන් බලමු අපි කොහොමද අපි හදාගනිපු file එකක Permissions වෙනස් කරන්නෙ කියල.

මේකට use කරනව chmod කියල Command එකක් ඒක use කරන්නෙ පහල තියෙන විදියට (වරහන් දෙක දාන්නෙ නෑ හරිද? )

chmod {Permisson mode } {file-name}

මේක තව සරල කර ගත්තොත් මෙහෙමයි තියනව my.txt කියල TEXT FILE එකක් මට ඔන ඒකෙ Permissions එක 761 (කලින් උදාහරණ් 2 තියෙන Permission එක) විදියට හදන්න. මම එතකොට කරන්නෙ මෙහෙමයි.(මුලින්ම file එක තියෙන තැනට ටර්මිනල් එකෙන් යන්න ඔන හරිද?)

 chmod 761 my.txt

දැන් මේ වැඩෙත් කරල බලන්න.
මෙහෙම දීල බලන්න

chmod 000 my.txt

file එක හොල්ලන්නවත් දෙන්නෙ නෑ නේද? R,W,X කිසිම දෙයක් කරන්න අවසරයක් නැති වෙනව.මෙහෙම කරල වැරදිලාවත් ඒ file එකක් ඩිලීට් කරන්න ඔන උනොත්  ආයෙ පර්මිශන් එක වෙනස් කරන්න ඔන නැත්තම් administrator ගෙන් ලොග් වෙන්න ඔන.

chmod -R 755 directory-name

කියන Command එකෙන් පුලුවන් directory(ෆොල්ඩර්) එකක permission එක වෙනස් කරන්න.
පුරුදු වෙන්නත් එක්ක එක එක files වල permissions වෙනස් කරල බලන්න(තමන් හදපු ඒවයෙම කරල බලන එක ඇඟට ගුණයි.)

ඔන්න මෙතනින් file permission කතන්දරේ ඉවර වෙනව අපි අයෙ යමු shell වලට.


අදට ඉවරයි....
නිකම් බලල යන්න එපා register වෙලා කමෙන්ට් එකක් එහෙම දාල යන්න.
  • 0

User avatar
root
Site Admin
 
Posts: 83
Joined: Mon Jul 15, 2013 3:46 pm
Has thanked: 0 time
Been thanked: 0 time
Reputation: 0

Return to Shell Programming

Who is online

Users browsing this forum: No registered users and 0 guests

cron