ফাইল পারমিশন এবং chmod এর ব্যবহার
UNIX এবং LINUX সিস্টেমে ফাইল পারমিশন ব্যবহারকারী এবং গ্রুপের জন্য ফাইল বা ডিরেক্টরির অ্যাক্সেস নিয়ন্ত্রণ করতে ব্যবহৃত হয়। ফাইল পারমিশন ঠিকমতো কনফিগার করা না থাকলে নিরাপত্তা সমস্যা হতে পারে, কারণ এটি ফাইলের অ্যাক্সেস বা পরিবর্তন সীমাবদ্ধ করতে সাহায্য করে।
ফাইল পারমিশন কী?
ফাইল পারমিশন হল সিস্টেমের মধ্যে ফাইল বা ডিরেক্টরি কারা পড়তে, লিখতে বা এক্সিকিউট করতে পারবে তা নির্ধারণ করে। UNIX এবং LINUX সিস্টেমে তিনটি ধরনের পারমিশন থাকে:
- রিড (Read) –
r: ফাইলের বিষয়বস্তু পড়া যাবে। - ওয়্রাইট (Write) –
w: ফাইলের বিষয়বস্তু পরিবর্তন বা লিখা যাবে। - এক্সিকিউট (Execute) –
x: ফাইলটি চালানো যাবে (যদি এটি একটি প্রোগ্রাম বা স্ক্রিপ্ট হয়)।
এই পারমিশনগুলি তিনটি ভিন্ন শ্রেণীতে ভাগ করা হয়:
- Owner (স্বত্বাধিকারী): ফাইলের মালিক।
- Group (গ্রুপ): ফাইলের মালিকের সাথে একই গ্রুপে থাকা অন্য ব্যবহারকারীরা।
- Others (অন্যান্য): সিস্টেমের অন্যান্য ব্যবহারকারীরা।
ফাইল পারমিশন এর উদাহরণ:
-rwxr-xr--- প্রথম চরিত্র
-নির্দেশ করে এটি একটি ফাইল (ডিরেক্টরি হলে প্রথম চরিত্রটিdহবে)। - পরবর্তী তিনটি চরিত্র
rwxহল owner (স্বত্বাধিকারী) এর পারমিশন, অর্থাৎ ফাইলটি পড়া, লেখা, এবং এক্সিকিউট করা যাবে। - পরবর্তী তিনটি চরিত্র
r-xহল group (গ্রুপ) এর পারমিশন, অর্থাৎ ফাইলটি পড়া এবং এক্সিকিউট করা যাবে, কিন্তু লেখা যাবে না। - শেষের তিনটি চরিত্র
r--হল others (অন্যান্য) এর পারমিশন, অর্থাৎ তারা শুধুমাত্র পড়তে পারবে, লিখতে বা এক্সিকিউট করতে পারবে না।
chmod কমান্ড কী?
chmod (Change Mode) কমান্ডটি ফাইল বা ডিরেক্টরির পারমিশন পরিবর্তন করার জন্য ব্যবহৃত হয়। আপনি এই কমান্ডটি ব্যবহার করে ফাইলের মালিক, গ্রুপ, এবং অন্যান্যদের জন্য পারমিশন সেট করতে পারেন। chmod কমান্ডের দুটি মডেল থাকে:
- সিম্বলিক মডেল (Symbolic Mode)
- নিউমেরিক মডেল (Numeric Mode)
১. সিম্বলিক মডেল (Symbolic Mode)
সিম্বলিক মডেলে, আপনি r, w, এবং x দিয়ে পারমিশন সেট করবেন, এবং +, -, এবং = দিয়ে পারমিশন অ্যাড, রিমুভ বা সেট করবেন। এখানে কিছু সাধারণ ব্যবহার:
+: পারমিশন যোগ করা-: পারমিশন সরিয়ে ফেলা=: নির্দিষ্ট পারমিশন সেট করা
ব্যবহার:
chmod [user/group/others] [operation] [permission] <filename>উদাহরণ:
পারমিশন যোগ করা:
chmod u+x file.txtএই কমান্ডটি ফাইলের মালিকের (user) জন্য এক্সিকিউট পারমিশন যোগ করবে।
পারমিশন সরানো:
chmod g-w file.txtএই কমান্ডটি ফাইলের গ্রুপের (group) লেখার পারমিশন সরিয়ে ফেলবে।
পারমিশন সেট করা:
chmod u=rwx file.txtএই কমান্ডটি ফাইলের মালিকের (user) জন্য রিড, রাইট এবং এক্সিকিউট পারমিশন সেট করবে।
সব ব্যবহারকারীর জন্য পারমিশন যোগ করা:
chmod a+x file.txtএই কমান্ডটি সব ব্যবহারকারীর (owner, group, এবং others) জন্য এক্সিকিউট পারমিশন যোগ করবে।
২. নিউমেরিক মডেল (Numeric Mode)
নিউমেরিক মডেলে, প্রতিটি পারমিশনকে একটি সংখ্যা দিয়ে প্রতিনিধিত্ব করা হয়। তিনটি পারমিশনের জন্য একটি তিন ডিজিটের সংখ্যা ব্যবহৃত হয়:
- Read (r): 4
- Write (w): 2
- Execute (x): 1
এই সংখ্যা গুলো যোগ করে আপনি একটি ফাইলের জন্য পারমিশন নির্ধারণ করতে পারেন।
| পারমিশন | মালিক (Owner) | গ্রুপ (Group) | অন্যান্য (Others) |
|---|---|---|---|
rwx | 7 (4+2+1) | 7 (4+2+1) | 7 (4+2+1) |
rw- | 6 (4+2) | 6 (4+2) | 6 (4+2) |
r-- | 4 (4) | 4 (4) | 4 (4) |
--- | 0 (none) | 0 (none) | 0 (none) |
ব্যবহার:
chmod <permission> <filename>উদাহরণ:
ফাইলের মালিকের জন্য পূর্ণ পারমিশন এবং গ্রুপ ও অন্যান্যদের জন্য শুধুমাত্র পড়ার পারমিশন:
chmod 744 file.txtএই কমান্ডটি ফাইলের মালিকের জন্য rwx (7), গ্রুপের জন্য r-- (4), এবং অন্যান্যদের জন্য r-- (4) পারমিশন সেট করবে।
সব ব্যবহারকারীর জন্য পূর্ণ পারমিশন:
chmod 777 file.txtএই কমান্ডটি ফাইলের মালিক, গ্রুপ এবং অন্যান্যদের জন্য rwx (7) পারমিশন সেট করবে।
ফাইলের মালিক এবং গ্রুপের জন্য পূর্ণ পারমিশন এবং অন্যান্যদের জন্য শুধুমাত্র পড়ার পারমিশন:
chmod 775 file.txtএই কমান্ডটি ফাইলের মালিক এবং গ্রুপের জন্য rwx (7) এবং অন্যান্যদের জন্য r-x (5) পারমিশন সেট করবে।
সারসংক্ষেপ
chmodকমান্ড ব্যবহার করে আপনি ফাইল বা ডিরেক্টরির পারমিশন পরিবর্তন করতে পারেন।- সিম্বলিক মডেল (Symbolic Mode) দিয়ে আপনি পারমিশন যোগ বা সরাতে পারেন এবং নির্দিষ্ট পারমিশন সেট করতে পারেন।
- নিউমেরিক মডেল (Numeric Mode) দিয়ে আপনি পারমিশন সংখ্যা দিয়ে সেট করতে পারেন, যেমন 7 (rwx), 6 (rw-), 4 (r--), ইত্যাদি।
- সঠিক ফাইল পারমিশন সেট করার মাধ্যমে আপনি নিরাপত্তা এবং অ্যাক্সেস নিয়ন্ত্রণ নিশ্চিত করতে পারেন।
Read more