মূল কন্টেন্টে যান
মডিউল 4 · 1-এর পাঠ 2কোর্সে 8/11~12 min
মডিউল পাঠ (1/2)

অনুমতি ব্যবস্থাপনা (chmod)

লিনাক্সে, ফাইল এবং ডিরেক্টরিগুলিতে অ্যাক্সেস একটি অনুমতি সিস্টেম দ্বারা নিয়ন্ত্রিত হয়। প্রতিটি ফাইল/ডিরেক্টরি একজন মালিক ব্যবহারকারী এবং ব্যবহারকারীদের একটি গ্রুপ এর অন্তর্গত।

অনুমতি প্রাপকদের তিনটি বিভাগে বিভক্ত:

  1. **ব্যবহারকারী (u): ফাইলের মালিক।
  2. **গ্রুপ (g): ফাইলের সাথে যুক্ত গ্রুপের সদস্যরা।
  3. অন্যান্য (ও): সিস্টেমের বাকি সবাই।

প্রতিটি বিভাগের জন্য, অনুমোদিত বা অস্বীকৃত তিন ধরনের ক্রিয়া রয়েছে:

  • পড়ুন (r): ফাইলের বিষয়বস্তু দেখুন বা ডিরেক্টরি বিষয়বস্তু তালিকাভুক্ত করুন।
  • **লিখুন (w): ফাইলটি সম্পাদনা করুন বা একটি ডিরেক্টরিতে ফাইল তৈরি/মুছুন।
  • Execute (x): একটি ফাইল চালান (যেমন একটি স্ক্রিপ্ট) বা একটি ডিরেক্টরি লিখুন।

ls -l দ্বারা দেখানো সাধারণ স্বরলিপি: -rwxr-xr-x। প্রথম অক্ষরটি টাইপ নির্দেশ করে (যেমন ফাইলের জন্য -, ডিরেক্টরির জন্য d), তারপরে user, group এবং others এর জন্য তিনটি ট্রিপলেট।


অনুমতি পরিবর্তন করা হচ্ছে: chmod

chmod (পরিবর্তন মোড) কমান্ড আপনাকে ফাইলের অনুমতি পরিবর্তন করতে দেয়। তাদের নির্দিষ্ট করার দুটি প্রধান উপায় আছে:

1. প্রতীকী মোড

অনুমতি যোগ করতে, সরাতে বা সেট করতে অক্ষর এবং অপারেটর (+, -, =) ব্যবহার করে:

Bash
chmod u+x script.sh    # Adds execute permission (x) to the owner (u)
chmod g-w file.txt     # Removes write permission (w) from the group (g)
chmod a+r file.txt     # Makes the file readable by everyone (all: u, g, o)

2. অক্টাল মোড (সাংখ্যিক)

0 থেকে 7 পর্যন্ত তিনটি অক্টাল ডিজিট ব্যবহার করে, যেখানে প্রতিটি ডিজিট ক্যাটাগরির অনুমতির যোগফলকে প্রতিনিধিত্ব করে (r=4, w=2, x=1):

  • 7 = rwx (4 + 2 + 1)
  • 6 = rw- (4 + 2)
  • 5 = r-x (4 + 1)
  • 4 = r-- (4)
  • 0 = --- (কোন অনুমতি নেই)
Bash
chmod 755 script.sh    # Owner: rwx (7), Group: r-x (5), Others: r-x (5)
chmod 600 private.key  # Owner: rw- (6), Group: --- (0), Others: --- (0)

নিজে চেষ্টা করে দেখুন

অনুশীলনী 1: মানসম্মত অনুমতি সেট করুন

ব্যায়াম#linux.m4.l1.e1
প্রচেষ্টা: 0লোড হচ্ছে...

'script.sh'-এ অনুমতি সেট করুন যাতে মালিক পড়তে, লিখতে এবং চালাতে পারে (rwx), যখন গ্রুপ এবং অন্যরা শুধুমাত্র পড়তে এবং চালাতে পারে (r-x)। অক্টাল মোড ব্যবহার করুন।

সম্পাদক লোড হচ্ছে...
ইঙ্গিত দেখান

rwx এর জন্য অক্টাল কোড হল 7 (4+2+1), আর r-x এর জন্য হল 5 (4+1)। সুতরাং chmod 755 ব্যবহার করুন।

সমাধান 3 প্রচেষ্টার পরে উপলব্ধ

অনুশীলনী 2: একটি ব্যক্তিগত কী রক্ষা করুন

ব্যায়াম#linux.m4.l1.e2
প্রচেষ্টা: 0লোড হচ্ছে...

'private.key' ফাইলটির অনুমতি পরিবর্তন করুন যাতে এটি শুধুমাত্র মালিকের দ্বারা পঠনযোগ্য এবং লেখার যোগ্য (rw-) করে, গ্রুপ এবং অন্যদের (---) সমস্ত অ্যাক্সেস সরিয়ে দেয়।

সম্পাদক লোড হচ্ছে...
ইঙ্গিত দেখান

অক্টাল কোড 600 সহ chmod ব্যবহার করুন (মালিকের 4+2, গ্রুপ 0, অন্যান্য 0 আছে)।

সমাধান 3 প্রচেষ্টার পরে উপলব্ধ

অনুশীলন 3: একটি ফাইলকে সকলের জন্য নির্বাহযোগ্য করুন

ব্যায়াম#linux.m4.l1.e3
প্রচেষ্টা: 0লোড হচ্ছে...

সিম্বলিক মোড (a+x) ব্যবহার করে সকল ব্যবহারকারী বিভাগের জন্য 'runner.sh' ফাইলটিকে এক্সিকিউটেবল করুন।

সম্পাদক লোড হচ্ছে...
ইঙ্গিত দেখান

ফাইলের নাম অনুসরণ করে সিনট্যাক্স chmod a+x ব্যবহার করুন।

সমাধান 3 প্রচেষ্টার পরে উপলব্ধ