What is /etc/passwd file?

What is /etc/passwd file and what it is used for?
/etc/passwd ဆိုတဲ႔ဖိုင္က ဘာလဲ? ဘာအတြက္သံုးတာလဲ?




ဒီဖိုင္ေလးကိုေတာ႔ လူတုိင္းနည္းပါးသိၾကမွာပါ။ Website ေတြကို symlink လုပ္မယ္ဆိုရင္

ေတာ္ေတာ္မ်ားမ်ားက /etc/passwd ကိုအရင္ဖတ္ၿပီး username ေတြကိုသိေအာင္

ရွာေဖြပါတယ္။ ဒါေပမယ္႔ ဒီဖိုင္က ဘာလုပ္ေပးလဲဗ်။ ၿပီးေတာ႔ အဲ႔ဖိုင္ကို ဖြင္႔ၾကည္႔ရင္

ၿမင္ရတာ ဘာေတြလဲမသိဘူးဗ်။

$ cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt


ဘယ္လိုေတြနားလည္ရမလဲမသိဘူးေနာ္။ ဒီေတာ႔ ကြ်န္ေတာ္နည္းနည္း research လုပ္ၾကည္႔တယ္။ ဒီပိုစ္႔ကေတာ႔ ကြ်န္ေတာ္႔ေတြ႔ရိွခ်က္ေတြေပါ႔။
  1.  passwd file ကေတာ႔ login လုပ္ဖို႔မရိွမေန ဖိုင္တစ္ခုပါ။
  2.  ဒီေကာင္ေလးက text file ေလးပါ။
  3. ပံုမွန္အတိုင္းဆိုရင္ user အားလံုး read access ရပါတယ္။ ဒါေပမယ္႔ root/su(super user) တစ္ေယာက္ပဲ ဒီဖိုင္ကိုၿပင္ႏိုင္မွာပါ။
  4. User တစ္ေယာက္အတြက္ တစ္လုိင္းအေနနဲ႔မွတ္ထားေပးပါတယ္။ root user ကေတာ႔ ထိပ္ဆံုးလိုင္းေပါ႔ဗ်ာ။
  5.  file ထဲမွာ username ေတြ password ေတြ userid, groupid, home directory, shell path စတာေတြကို ေရးမွတ္ထားပါတယ္။ အားလံုးေပါင္း ခုႏွစ္မ်ိဳးကိုမွတ္ထားေပးတယ္။
  6.  field ေတြတစ္ခုနဲ႔တစ္ခုၾကားမွာ ":" ေကာ္လံနဲ႔ခြဲထားပါတယ္။

ေအာက္ကပံုကေတာ႔ passwd file ထဲက example line ေလးပါ။







  1. Username : ဒီေကာင္ေလးကေတာ႔ Username ေလးပါ။ Username က စာလံုး 1 လံုးကေန 32 လံုးၾကားပဲထားလို႔ရမွာပါ။ 
  2. Password : သာမန္ အတို္င္းဆိုရင္ ဒီေနရာမွာ password မွတ္ထားေလ႔ရိွတယ္။ ဒါေပမယ္႔ x ဆိုတာေလးက password က encrypted လုပ္ၿပီး /etc/shadow ဆိုတဲ႔ဖိုင္ထဲမွာသိမ္းထားတယ္လို႔ေၿပာတာပါ။
  3. User ID (UID) : ဒါကေတာ႔ရွင္းပါတယ္။ User ေတြအတြက္ ID နံပတ္ေလးေတြခြဲထားေပးတာပါ။ Windows မွာဆိုရင္ SID ေပါ႔ဗ်ာ။  0 ကေတာ႔ အၿမဲတန္း Root user အတြက္ပဲခ်န္ထားတာပါ။ 1-99 ကေတာ႔ system built-in account ေတြအတြက္။ 100-999 ကေတာ႔ သာမွန္ user ေတြအတြက္ေပါ႔။
     
  4. Group ID (GID) : ဒါလည္း ရွင္းပါတယ္။ Group ေတြအတြက္ ID နံပတ္ေပါ႔။ ဘယ္ ID ဘယ္ group ထဲမွာဆိုၿပီး မွတ္ထားတာပါ။ အဲဒီဖိုင္ေလးကေတာ႔ /etc/group ဆိုတဲ႔ဖုိင္ေလးပါ။
  5. User ID Info : ဒီေကာင္ေလးကက်ေတာ႔ User ေတြအေၾကာင္း ကိုယ္မွတ္ခ်င္တာ မွတ္ထားတဲ႔ေနရာေပါ႔။ Comment ေပးတဲ႔ေနရာပါ။ ပံုထဲမွာကေတာ႔ User ရဲ႕   full name ကုိေပးထားပါတယ္။ ဒါေလးကို finger ဆိုတဲ႔ command ကအသံုးခ်တာပါ။
  6. Home Directory : user login ၀င္လိုက္ရင္ စစခ်င္းေရာက္သြားမယ္႔ Directory ပါ။ Backtrack မွာဆိုရင္ root user က login ၀င္လိုက္ရင္ /root ဆိုတဲ႔ directory ကိုတန္းေရာက္သြားတာသိၾကမွာပါ။
     
  7. Command/Shell : ဒီေနရာေလးကေတာ႔ Command ထည္႔ထားေပးလို႔ရသလို ကိုယ္ၾကိဳက္ႏွစ္သက္တဲ႔ shell ကိုသံုးခ်င္ရင္ ဒီမွာထည္႔ထားလို႔ရတယ္။

1 comment:

  1. ေကာင္းတယ္ ဘရို။ ပိုနားလည္သြားျပီ Passwd အေၾကာင္းကို။ ;)

    ReplyDelete