আমি সম্প্রতি ভাবছিলাম যে তিনটি এবং চার অঙ্কের সংখ্যা সংক্রান্ত ফাইল অনুমতিগুলির মধ্যে পার্থক্য কী। আমি চালিয়ে সংখ্যার অনুমতি stat --format "%a" $file_name
পেয়েছি। 0644 এবং 644 এর মধ্যে পার্থক্য কী?
আমি সম্প্রতি ভাবছিলাম যে তিনটি এবং চার অঙ্কের সংখ্যা সংক্রান্ত ফাইল অনুমতিগুলির মধ্যে পার্থক্য কী। আমি চালিয়ে সংখ্যার অনুমতি stat --format "%a" $file_name
পেয়েছি। 0644 এবং 644 এর মধ্যে পার্থক্য কী?
উত্তর:
চার-অঙ্কের অনুমতিতে প্রথম সংখ্যাটি সেট ব্যবহারকারী আইডি (4), সেট গ্রুপ আইডি (2) এবং স্টিকি (1) এর যোগফল । একটি তিন-অঙ্কের অনুমতি হ'ল প্রথম অঙ্কের শূন্যে সেট করা একটি চার-অঙ্কের অনুমতিের মতো। এভাবে:
যদি সেট ব্যবহারকারী আইডি সহ কোনও ফাইল নির্বাহ করা হয়, তবে এটি কার্যকর করা ব্যবহারকারীর চেয়ে ফাইলের মালিকের দ্বারা কার্যকর করা হয়। উদাহরণস্বরূপ, উদাহরণস্বরূপ, /bin/mount
সাধারণত মূলের মালিকানাধীন এবং 4745 টির অনুমতি রয়েছে যেখানে 4 এটি নির্দেশ করে যে কোনও সাধারণ ব্যবহারকারীর দ্বারা মৃত্যুদণ্ড কার্যকর করা হলেও, এটি মালিকের (মূল) সুবিধাগুলি দিয়ে চলবে।
ডিরেক্টরিতে গ্রুপ আইডি সেট করা ফাইল ভাগ করার জন্য কার্যকর।
স্টিকি বিটটি ডিরেক্টরিতে যেমন ব্যবহার করা হয় /tmp
যাতে সমস্ত ব্যবহারকারী ফাইল তৈরি করতে পারে তবে অ-মালিকদের অন্য ব্যক্তির ফাইল মুছতে বাধা দেয়। সুতরাং, এর অনুমতিগুলি /tmp
সাধারণত 1777 হয় যেখানে 1 ইঙ্গিত দেয় যে স্টিকি বিট সেট হয়েছে।
থেকে man chmod
:
একটি সংখ্যাসূচক মোড এক থেকে চারটি অষ্টাল অঙ্ক (0-7) থেকে শুরু হয়, 4, 2 এবং 1 এর মান সহ বিটগুলি যোগ করে উত্পন্ন অঙ্কগুলি অগ্রণী শূন্য বলে মনে করা হয়। প্রথম অঙ্কটি সেট ব্যবহারকারী আইডি (4) এবং গোষ্ঠী আইডি (2) সেট করে এবং মুছে ফেলা বা স্টিকি (1) বৈশিষ্ট্যগুলি সীমাবদ্ধ করে। দ্বিতীয় অঙ্কটি ফাইলটির মালিক যে ব্যবহারকারীর জন্য অনুমতিগুলি নির্বাচন করে: পড়ুন (4), লিখুন (2), এবং কার্যকর করুন (1); তৃতীয়টি একই মান সহ ফাইলের গ্রুপের অন্যান্য ব্যবহারকারীর জন্য অনুমতি নির্বাচন করে; এবং চতুর্থটি একই ব্যবহারকারীর সাথে ফাইলের গ্রুপে নেই অন্য ব্যবহারকারীদের জন্য।