DEV Community

Mujahida Joynab
Mujahida Joynab

Posted on

Linux User & Permission

১) User-এর তথ্য দেখা

cat /etc/passwd   → User-দের লিস্ট
cat /etc/group    → Group-দের লিস্ট
cat /etc/shadow   → Password থাকে (encrypted)
Enter fullscreen mode Exit fullscreen mode

২) User বানানো ও delete করা

useradd kamal       → kamal নামে user বানানো
passwd kamal        → kamal-এর password দেওয়া
userdel -rf kamal   → kamal-কে একদম মুছে ফেলা (ফোল্ডারসহ)
Enter fullscreen mode Exit fullscreen mode

৩) Group বানানো ও delete করা

groupadd HR         → HR নামে group বানানো
groupdel MKT        → MKT group delete করা
Enter fullscreen mode Exit fullscreen mode

৪) User-কে Group-এ রাখা

usermod -G HR kamal          → kamal-কে HR group-এ add করা
useradd -G IT,HR student     → student user-কে IT ও HR দুটো group-এ রাখা
gpasswd                       → Group-এর password সেট/ম্যানেজ করা
Enter fullscreen mode Exit fullscreen mode

৫) Permission বোঝা (ls -l এর output)

drwxr-xr-x 2 Mujahida English Medium 6 September 2020 EnglishMediumdata
Enter fullscreen mode Exit fullscreen mode
অংশ মানে
d Directory
rwx (প্রথম ৩টা) User-এর permission
r-x (পরের ৩টা) Group-এর permission
r-x (শেষ ৩টা) Other-এর permission

৬) Permission-এর মান

r = Read    = 4
w = Write   = 2
x = Execute = 1
Enter fullscreen mode Exit fullscreen mode

উদাহরণ:

  • 7 = 4+2+1 = rwx (সব permission)
  • 5 = 4+1 = r-x (read+execute)
  • 0 = কিছুই না

Common permission:

  • 770 → user=rwx, group=rwx, other=কিছু না
  • 750 → user=rwx, group=r-x, other=কিছু না
  • 660 → user=rw, group=rw, other=কিছু না

মনে রাখো:

Execute permission না থাকলে Folder-এর ভেতরে ঢোকা যাবে না (cd করা যাবে না)।

User-এর permission কম থাকলেও group-এ বেশি থাকলে user group-এর permission পায়।


৭) Permission দেওয়া/বদলানো

chmod 750 /HRdata        → HRdata folder-কে 750 permission দেওয়া
chmod 660 /ITdata        → ITdata file/folder-কে 660 permission
chmod +x /ITdata/        → execute permission add করা (সবার জন্য)
chmod u+x /ITdata/       → শুধু user-কে execute permission
chmod g+x /ITdata/       → শুধু group-কে execute permission
chmod o+x /ITdata/       → শুধু other-কে execute permission
chmod +r /ITdata/        → read permission add (সবার জন্য)
Enter fullscreen mode Exit fullscreen mode

Permission সরাতে চাইলে + এর জায়গায় - ব্যবহার করো:

chmod u-x /ITdata   → user থেকে execute permission সরানো
chmod u-r /ITdata   → user থেকে read permission সরানো
Enter fullscreen mode Exit fullscreen mode

৮) Ownership বদলানো

chown ali:HR /ITdata          → ITdata-র owner ali, group HR
chown -R ali:HR /ITdata       → Recursive (ভেতরের সব ফাইল-ফোল্ডারসহ)
Enter fullscreen mode Exit fullscreen mode

৯) Special Permission (সমস্যার সমাধান)

সমস্যা:

  1. Group-এ এক user অন্য user-এর ফাইল delete করতে পারে → আটকানো দরকার
  2. Group-এ ফাইল বানালে group ownership ঠিক থাকা দরকার

সমাধান:

SUID      → User-এর জায়গায় program run হয় (user permission নেয়)
SGID      → Group-এর জায়গায় run হয় + নতুন ফাইলে group ownership ঠিক থাকে
Sticky bit → Folder-এ দিলে শুধু owner-ই delete করতে পারে (অন্য user পারে না)
Enter fullscreen mode Exit fullscreen mode
  • SGID → chmod g+s /HRdata → নতুন ফাইল HR group-এর হবে
  • Sticky bit → chmod o+t /HRdata → অন্য user delete করতে পারবে না

🎯 Quick Revision

  • User দেখবে → cat /etc/passwd
  • Group দেখবে → cat /etc/group
  • Permission দেবে → chmod 750 ফোল্ডার
  • Owner বদলাবে → chown user:group ফোল্ডার
  • Delete আটকাবে → chmod o+t ফোল্ডার (sticky bit)

Top comments (0)