Linux পারমিশন ব্যাখ্যাকারী
ইন্টারেক্টিভ চেকবক্স এবং chmod কমান্ড আউটপুটসহ সংখ্যাসূচক (অক্টাল) ও প্রতীকী নোটেশনে Linux ফাইল পারমিশনের ভিজ্যুয়াল ব্যাখ্যা
ইনপুট
আউটপুট
রিডমি
Linux ফাইল পারমিশন কী?
Linux ফাইল পারমিশন নিয়ন্ত্রণ করে কে একটি ফাইল বা ডিরেক্টরি পড়তে, লিখতে বা এক্সিকিউট করতে পারবে। Linux-এ প্রতিটি ফাইলের তিনটি পারমিশন গ্রুপ থাকে: owner (যে ব্যবহারকারী এটি তৈরি করেছেন), group (একটি সাধারণ গ্রুপ শেয়ার করা ব্যবহারকারীরা), এবং others (বাকি সবাই)। প্রতিটি গ্রুপকে তিন ধরনের অ্যাক্সেস দেওয়া যায়: read (r), write (w), এবং execute (x)।
পারমিশন দুটি নোটেশনে প্রকাশ করা যায়। Symbolic নোটেশন rwxr-xr-x-এর মতো অক্ষর ব্যবহার করে, যেখানে প্রতিটি অক্ষর একটি নির্দিষ্ট গ্রুপের জন্য একটি নির্দিষ্ট পারমিশন উপস্থাপন করে। Octal (সংখ্যাসূচক) নোটেশন 755-এর মতো তিন বা চার সংখ্যার নম্বর ব্যবহার করে, যেখানে প্রতিটি সংখ্যা পারমিশন মানের যোগফল: read = 4, write = 2, execute = 1।
Octal নোটেশনে একটি ঐচ্ছিক প্রথম সংখ্যা special bit উপস্থাপন করে: setuid (4), setgid (2), এবং sticky bit (1)। Setuid একটি প্রোগ্রামকে ফাইল owner-এর সুবিধা নিয়ে চালাতে দেয়, setgid নতুন ফাইলগুলিকে parent ডিরেক্টরির গ্রুপ উত্তরাধিকার করায়, এবং sticky bit শেয়ার করা ডিরেক্টরিতে ব্যবহারকারীদের নিজেদের মালিকানাধীন নয় এমন ফাইল মুছে ফেলা থেকে বিরত রাখে।
টুলের বিবরণ
এই টুলটি আপনাকে ইন্টারেক্টিভভাবে Linux ফাইল পারমিশন তৈরি এবং ডিকোড করতে দেয়। read, write এবং execute ফ্ল্যাগ সেট করতে owner, group এবং others-এর জন্য চেকবক্স টগল করুন এবং তাৎক্ষণিকভাবে octal ও symbolic উভয় নোটেশনে ফলাফল দেখুন। আপনি সরাসরি 755-এর মতো একটি octal মান বা rwxr-xr-x-এর মতো একটি symbolic string টাইপ করতে পারেন, এবং চেকবক্স ও ভিজ্যুয়াল আউটপুট স্বয়ংক্রিয়ভাবে আপডেট হয়। একটি রঙ-কোডেড ভিজ্যুয়াল ডিসপ্লে এক নজরে কোন পারমিশনগুলি সক্রিয় তা বুঝতে সহজ করে তোলে, এবং আপনার জন্য একটি ব্যবহারের জন্য প্রস্তুত chmod কমান্ড তৈরি করা হয়।
উদাহরণ
| Octal | Symbolic | অর্থ |
|---|---|---|
| 755 | -rwxr-xr-x | Owner: সম্পূর্ণ অ্যাক্সেস। Group এবং others: read ও execute। |
| 644 | -rw-r--r-- | Owner: read ও write। Group এবং others: শুধুমাত্র read। |
| 700 | -rwx------ | Owner: সম্পূর্ণ অ্যাক্সেস। Group বা others-এর কোনো অ্যাক্সেস নেই। |
| 777 | -rwxrwxrwx | সবার জন্য সম্পূর্ণ অ্যাক্সেস। |
| 1755 | -rwxr-xr-t | sticky bit সহ 755-এর মতো। |
| 4755 | -rwsr-xr-x | setuid bit সহ 755-এর মতো। |
বৈশিষ্ট্যসমূহ
- চেকবক্সের মাধ্যমে প্রতিটি গ্রুপের জন্য আলাদাভাবে read, write এবং execute পারমিশন টগল করুন
- সরাসরি octal (যেমন
755) বা symbolic (যেমনrwxr-xr-x) নোটেশন লিখুন এবং তাৎক্ষণিক রূপান্তর দেখুন - সক্রিয় পারমিশন দ্রুত চেনার জন্য রঙ-কোডেড ভিজ্যুয়াল ব্লক
- special পারমিশন bit-এর সমর্থন: setuid, setgid এবং sticky bit
- স্বয়ংক্রিয়ভাবে তৈরি
chmodকমান্ড টার্মিনালে কপি করে ব্যবহারের জন্য প্রস্তুত
ব্যবহারের ক্ষেত্র
- ওয়েব সার্ভার সেটআপ করা: Apache বা Nginx দ্বারা পরিবেশিত ফাইলের জন্য সঠিক পারমিশন সেট দ্রুত নির্ধারণ করুন, যেমন স্ট্যাটিক ফাইলের জন্য
644এবং এক্সিকিউটেবল স্ক্রিপ্টের জন্য755। - অ্যাক্সেস অস্বীকৃত ত্রুটি ডিবাগ করা:
ls -lআউটপুট থেকে পারমিশন string পেস্ট করুন এবং ভিজ্যুয়ালি বুঝুন কোন গ্রুপের অ্যাক্সেস নেই। - Linux পারমিশন শেখা: ইন্টারেক্টিভভাবে অন্বেষণ করুন কীভাবে পৃথক ফ্ল্যাগ টগল করলে octal ও symbolic উপস্থাপনা পরিবর্তন হয়।
এটি কীভাবে কাজ করে
প্রতিটি পারমিশন টাইপের একটি সংখ্যাসূচক ওজন আছে: read = 4, write = 2, execute = 1। একটি গ্রুপের জন্য octal সংখ্যা হলো সক্রিয় পারমিশন ওজনের যোগফল। উদাহরণস্বরূপ, read + execute = 4 + 1 = 5। সম্পূর্ণ octal নোটেশন owner, group এবং others-এর সংখ্যাগুলি একত্রিত করে — তাই rwxr-xr-x হয় 755।
Special bit একটি ঐচ্ছিক প্রথম সংখ্যা যোগ করে যা একইভাবে গণনা করা হয়: setuid = 4, setgid = 2, sticky = 1। 1755 মানে sticky bit (1) এবং owner=7, group=5, others=5।
বিকল্পগুলির ব্যাখ্যা
- Owner / Group / Others চেকবক্স: প্রতিটি পারমিশন গ্রুপের জন্য স্বাধীনভাবে read (r), write (w) এবং execute (x) টগল করুন।
- Setuid: একটি এক্সিকিউটেবলে সেট করা হলে, এটি আহ্বানকারী ব্যবহারকারীর পরিবর্তে ফাইল owner-এর সুবিধা নিয়ে চলে।
- Setgid: একটি ডিরেক্টরিতে, নতুন ফাইলগুলি ডিরেক্টরির গ্রুপ উত্তরাধিকার করে। একটি এক্সিকিউটেবলে, এটি ফাইল গ্রুপের সুবিধা নিয়ে চলে।
- Sticky bit: একটি ডিরেক্টরিতে, শুধুমাত্র ফাইল owner ভেতরের ফাইল মুছতে বা নাম পরিবর্তন করতে পারেন, এমনকি অন্যদের write পারমিশন থাকলেও।
- Octal ইনপুট: একসাথে সব পারমিশন সেট করতে একটি ৩-সংখ্যা বা ৪-সংখ্যার octal নম্বর টাইপ করুন।
- Symbolic ইনপুট: পারমিশন সেট করতে একটি ৯ বা ১০ অক্ষরের symbolic string (ঐচ্ছিক ফাইল টাইপ prefix সহ) টাইপ করুন।
সাধারণ জিজ্ঞাসা
chmod 777 মানে কী? এটি owner, group এবং অন্য সব ব্যবহারকারীকে read, write এবং execute পারমিশন দেয়। প্রোডাকশন সিস্টেমের জন্য এটি সাধারণত অনিরাপদ।
ছোট হাতের s এবং বড় হাতের S-এর মধ্যে পার্থক্য কী?
ছোট হাতের s মানে execute bit এবং special bit (setuid বা setgid) উভয়ই সেট আছে। বড় হাতের S মানে শুধুমাত্র special bit সেট আছে, execute পারমিশন ছাড়া।
Sticky bit কীসের জন্য ব্যবহৃত হয়?
Sticky bit সাধারণত /tmp-এর মতো শেয়ার করা ডিরেক্টরিতে সেট করা হয় যাতে ব্যবহারকারীরা একে অপরের ফাইল মুছতে বা নাম পরিবর্তন করতে না পারেন, যদিও তাদের সবার ডিরেক্টরিতে write অ্যাক্সেস আছে।