যদি আমার কাছে কিছু সীমাবদ্ধ অনুমতি সহ একটি রুট ফোল্ডার থাকে তবে আসুন 600 বলুন এবং চাইল্ড ফোল্ডার / ফাইলগুলির 777 এর অনুমতি থাকলে প্রত্যেকেরই কি চাইল্ড ফাইলটি পড়তে / লিখতে / চালাতে সক্ষম হবে যদিও মূল ফোল্ডারে 600 আছে?
যদি আমার কাছে কিছু সীমাবদ্ধ অনুমতি সহ একটি রুট ফোল্ডার থাকে তবে আসুন 600 বলুন এবং চাইল্ড ফোল্ডার / ফাইলগুলির 777 এর অনুমতি থাকলে প্রত্যেকেরই কি চাইল্ড ফাইলটি পড়তে / লিখতে / চালাতে সক্ষম হবে যদিও মূল ফোল্ডারে 600 আছে?
উত্তর:
সুনির্দিষ্ট নিয়মটি হ'ল: আপনি যদি কোনও ডিরেক্টরিতে এর অনুমতি কার্যকর করেন তবেই আপনি কোনও ডিরেক্টরি ট্র্যাভার করতে পারেন।
সুতরাং অ্যাক্সেস করতে উদাহরণস্বরূপ dir/subdir/file
, আপনি অনুমতি চালানো প্রয়োজন dir
এবং dir/subdir
, প্লাস অনুমতি file
অ্যাক্সেসের প্রকার যদি আপনি চান জন্য। কোণার কেসগুলিতে প্রবেশ করা, আমি নিশ্চিত নই যে এটি সর্বজনীন যে কোনও আপেক্ষিক পথের মাধ্যমে কোনও ফাইল অ্যাক্সেস করার জন্য আপনার বর্তমান ডিরেক্টরিতে অনুমতি নির্ধারণের প্রয়োজন (আপনি লিনাক্সে যা করেন) whether
আপনি যেভাবে কোনও ফাইল অ্যাক্সেস করেন তা গুরুত্বপূর্ণ। উদাহরণস্বরূপ, আপনার যদি অনুমতিগুলি চালু থাকলেও /foo/bar
চালু থাকে /foo
তবে আপনার বর্তমান ডিরেক্টরিটি হল /foo/bar
, আপনি /foo/bar
কোনও আপেক্ষিক পথ দিয়ে ফাইলগুলি অ্যাক্সেস করতে পারবেন তবে কোনও পরম পথ দিয়ে নয়। আপনি /foo/bar
এই পরিস্থিতিতে পরিবর্তন করতে পারবেন না ; সুবিধাবঞ্চিত প্রক্রিয়াটি cd /foo/bar
অনিরাপদ হওয়ার আগেই সম্ভবত সম্পন্ন হয়েছে । যদি কোনও ফাইলে একাধিক হার্ড লিঙ্ক থাকে, আপনি এটি অ্যাক্সেস করতে যে পথটি ব্যবহার করেন তা আপনার অ্যাক্সেসের সীমাবদ্ধতাগুলি নির্ধারণ করে।
প্রতীকী লিঙ্কগুলি কিছুই পরিবর্তন করে না। কার্নেল কলিং প্রসেসের অ্যাক্সেস রাইটগুলি তাদের অতিক্রম করতে ব্যবহার করে। উদাহরণস্বরূপ, যদি sym
ডিরেক্টরিটিতে একটি প্রতীকী লিঙ্ক হয় তবে অ্যাক্সেসের জন্য dir
আপনার চালনার অনুমতি প্রয়োজন । সিএমলিংকের অনুমতি নিজেই ওএস এবং ফাইল সিস্টেমের উপর নির্ভর করে বা বিষয়টি বিবেচনা করতে পারে (কিছু তাদের সম্মান করে, কিছু তাদের এড়িয়ে চলে)।dir
sym/foo
রুট ডিরেক্টরি থেকে কার্যকর করার অনুমতি অপসারণ কার্যকরভাবে একটি ব্যবহারকারীর ডিরেক্টরি গাছের একটি অংশে সীমাবদ্ধ করে (আরও বেশি সুবিধাপ্রাপ্ত প্রক্রিয়াতে এটি অবশ্যই রূপান্তরিত হয়)। এটির কোনও ব্যবহারের জন্য অ্যাক্সেস নিয়ন্ত্রণ তালিকার প্রয়োজন। উদাহরণস্বরূপ, যদি /
এবং /home
অফ সীমা হয় joe
( setfacl -m user:joe:0 / /home
) এবং /home/joe
হয় joe
এর বাড়ি ডিরেক্টরি, তারপর joe
(সঙ্গে শেল স্ক্রিপ্ট চলমান সহ সিস্টেম বাকি অ্যাক্সেস করতে সক্ষম হবেন না /bin/sh
বা পরিবর্তনশীল লিঙ্ক বাইনেরিতে ব্যবহার করার দরকার যে /lib
আপনি এখন, ' d ব্যবহারিক ব্যবহারের জন্য আরও গভীরতর হতে হবে, যেমন setfacl -m user:joe:0 /*; setfacl -d user:joe /bin /lib
)।
কোনও ডিরেক্টরিতে পড়ার অনুমতি এন্ট্রিগুলি গণনার অধিকার দেয়। পড়ার অনুমতি না দিয়ে মৃত্যুদন্ড কার্যকর করার অনুমতি দেওয়া মাঝে মাঝে দরকারী: এন্ট্রিগুলির নামগুলি অ্যাক্সেসের জন্য পাসওয়ার্ড হিসাবে কাজ করে। অনুমতি কার্যকর না করে কোনও ডিরেক্টরিতে পড়া বা লেখার অনুমতি দেওয়ার ক্ষেত্রে আমি কোনও ব্যবহারের কথা ভাবতে পারি না।
আপনি চাইল্ড ডিরেক্টরিকে লিখিতযোগ্য করে তুলতে পারেন এমনকি পিতামহুল ডিরেক্টরিও নয়। আমি দলগতভাবে এটি করি।
উদাহরণস্বরূপ: প্যারেন্ট ডিরেক্টরিটি গ্রুপ কোডারের মালিকানাধীন
drwxr-sr-x
শিশু ডিরেক্টরি
drwxrwsr-x
আপনি (কোডার গ্রুপের যে কোনও সদস্য) এখনও চাইল্ড ডিরেক্টরিতে লিখতে পারেন তবে পিতামাতার ডিরেক্টরিতে নয়।