কম্পিউটার টিউটোরিয়াল

লিনাক্স chmod মাস্টার করুন: রিকার্সিভলি ফাইল পারমিশন পরিবর্তন করুন সহজে

লিনাক্স chmod কমান্ড দিয়ে আমরা সকল ফাইল ও ডিরেক্টরির ফাইল পারমিশন রিকার্সিভলি পরিবর্তন করতে পারি। এই গাইডে ব্যাখ্যা করা আছে কিভাবে।

আপনি সম্ভবত নিচের এররগুলো আগে দেখেছেন:

111 [Permission Denied] "Linux-Screw" [Permission Denied] "Linux-Screw" [readonly]

সিস্টেম ফাইলগুলোর জন্য, sudo ব্যবহার করা ফাইল এডিট করার প্রিয়ারিটাই মেথড। এটি আপনাকে সকল সিস্টেম কনটেক্সট রাখতে দেয়। প্রতিদিনের ইউজার ফাইলের জন্য, পারমিশন পরিবর্তন করা ভালো। chmod আমাদের সেটি করতে দেয়। এটি আমাদের পারমিশন এস্ক্যালেশন থেকে বাঁচায় এবং দরকার হলে অ্যাক্সেস দেয়।

chmod কী? chmod, বা চেঞ্জ মোড, একটি দেওয়া ফাইলের ফাইল মোড বিটস পরিবর্তন করে। আপনি এটিকে সিম্বলিকলি বা অক্টাল নাম্বার রিপ্রেজেন্টেশন দিয়ে পরিবর্তন করতে পারেন।

chmod সিনট্যাক্স

chmod [OPTION] MODE FILE Or chmod [OPTION] OCTAL-MODE FILE Options: [-c], --changes Verbose-mode, but only for changes [-f], --silent, --quiet Suppress most error messages [-v], --verbose Output a diagnostic for every file processed [-R], --recursive Change files and directories recursively

এই হল উপলব্ধ অপশন। মোড বলতে সিম্বলিক রেফারেন্সিং বোঝায়। আমি যদি একটি ফাইলে এক্সিকিউটেবল পারমিশন যোগ করতে চাই, তবে লিখব:

chmod +x [FILE]

এটি এক্সিকিউটেবল পারমিশন যোগ করবে। বেসিক গুলো কভার করলাম, এখন একটি ফোল্ডার স্ট্রাকচার ফিক্স করি এবং আমাদের জন্য উপলব্ধ করি।

chmod রিকার্সন

প্রায়শই যখন আপনি একটি ফোল্ডার ডিরেক্টরিতে কাজ করেন, আপনাকে একটি সিঙ্গেল ফাইলের পারমিশন পরিবর্তন করতে হয় না। আপনাকে সেই ফাইল, কারেন্ট ফোল্ডারের সকল ফাইল, এবং সকল সাবডিরেক্টরির পারমিশন পরিবর্তন করতে হয়।

সৌভাগ্যtois, chmod -R আমাদের সকল ফাইল রিকার্সিভলি পরিবর্তন করতে দেয়।

chmod -R 755 * ls -altrR

আমরা পারমিশন পরিবর্তন করার পর নিচের আউটপুট পাই:

লিনাক্স chmod মাস্টার করুন: রিকার্সিভলি ফাইল পারমিশন পরিবর্তন করুন সহজে

chmod -R

আপনি যদি জানতে চান -altrh কেন আমার ডিফল্ট এবং প্রিয়ারিটি সেট অপশন, আমার нещодавно ls-এর আর্টিকেল দেখুন।

ঠিক আছে, হয়েগেলো। উপরে আমরা দেখি আমাদের ডিরেক্টরি ও ফাইলগুলো 755, বা rwx r-x r-x-এ পরিবর্তন হয়েছে। সেই ডিরেক্টরিটি এখন আমাদের কাছে উপলব্ধ যেহেতু আমরা সেই গ্রুপে (ইউজার গ্রুপ) থাকি। এটি আমাদের কাছে উপলব্ধও যেহেতু আমরা ইউজার। আপনি যদি পূর্ববর্তী ইউজারের ফোল্ডার ক্লিন আপ করেন তবে chown দিয়ে ফাইল ওনারশিপ পরিবর্তন করতে পারেন।

এটি আপনাকে ইউজার হিসেবে উপলব্ধ করে। তবে উপরের chmod-এ একটি ইশু আছে। আপনি যখন আপনার umask কিচু 0022 এর মত সেট করেন, ডিফল্ট পারম, ডিরেক্টরি এবং ফাইল ভিন্ন হয়। ডিরেক্টরি তৈরি হয় 755-এ। যা cd, চেঞ্জ ডিরেক্টরি, কমান্ডকে সঠিকভাবে ফাংশন করতে দেয়। ফাইল তৈরি হয় 644-এ, ডিরেক্টরির চেয়ে এক কম। কারণ নরম্যাল ফাইলগুলোর এক্সিকিউশন পারমিশন দরকার নেই। ডিরেক্টরির দরকার, cd-র জন্য। তাই find এবং -exec দিয়ে এটিকে ফিক্স করি।

Find দিয়ে chmod রিকার্সিভলি

find  -type d -exec chmod 755{} \; find  -type f -exec chmod 644 {} \;
লিনাক্স chmod মাস্টার করুন: রিকার্সিভলি ফাইল পারমিশন পরিবর্তন করুন সহজে

chmod Recursively with Find

হয়েগেলো, সবকিছু ডিফল্ট umask-এ সেভ এবং আঞ্চলিক রাখা হয়েছে। কোনো এক্সিকিউটেবল ফাইল নেই, এবং এক্সিকিউটেবল ডিরেক্টরি আছে।

উপসংহার

ফাইল পারমিশন ঝামেলাদার হতে পারে, কিন্তু chmod আমাদের সেটি ফিক্স করতে সাহায্য করে। এখন আপনি জানেন পারমিশন কীভাবে পরিবর্তন করতে হয়, আপনি সত্যিকারের মানে আপনার ডিরেক্টরি ও ফাইলগুলোর ওনারশিপ নিতে পারেন। লিনাক্স ইনফ্রাস্ট্রাকচার শেল কমান্ড দিয়ে নেভিগেট করার আরও টিউটোরিয়াল পড়ুন।

  1. লিনাক্সে Find কমান্ড ব্যবহার করে ফাইল খুঁজে বের করার পদ্ধতি

  2. লিনাক্সে জিপ ফাইল এক্সট্র্যাক্ট করার পদ্ধতি

  3. chmod 777 বুঝুন: এর অর্থ এবং লিনাক্স পারমিশনে এর প্রভাব

  4. উইন্ডোজ ১০-এ ফাইল পারমিশন আয়ত্ত করা: প্রশাসকদের জন্য ধাপে ধাপে গাইড