ডিরেক্টরিতে সমস্ত ফোল্ডার / ফাইলগুলির জন্য ডিফল্ট ফাইল অনুমতিগুলি কীভাবে সেট করবেন?


254

আমি একটি ফোল্ডার সেট করতে চাই যে এর মধ্যে যে কোনও কিছু তৈরি করা (ডিরেক্টরি, ফাইল) ডিফল্ট অনুমতি এবং গোষ্ঠীর উত্তরাধিকারী।

গ্রুপটিকে "মিডিয়া" কল করতে দিন। এছাড়াও, ডিরেক্টরিগুলির মধ্যে তৈরি ফোল্ডার / ফাইলগুলির স্বয়ংক্রিয়ভাবে g + rw হওয়া উচিত।


1
ব্যবহারকারী কী নতুন ফাইল / ফোল্ডার তৈরি করে এবং তার উমাস্ক দ্বারা নিয়ন্ত্রিত হয় না?
ওয়াদিহ এম।

উমাস্ক অনুমতিগুলির সাথে সম্পর্কিত তবে আমি বিশ্বাস করি না যে এটি কোনও ডিফল্ট গোষ্ঠী নির্ধারণের মাধ্যমে এমন কোনও কিছু করে যা ব্যবহারকারী তার / সে নয়।
ক্রিস

1
কি ওএস? ট্যাগ দরকার। setfaclএবং এআইএক্স এ ডিফল্ট এসিএল বিদ্যমান নেই।
অমিত নাইডু

উত্তর:


269

আমি এটি পেয়েছি: ডিফল্ট অনুমতি প্রয়োগ করা

নিবন্ধ থেকে:

chmod g+s <directory>  //set gid 
setfacl -d -m g::rwx /<directory>  //set group to rwx default 
setfacl -d -m o::rx /<directory>   //set other

পরবর্তী আমরা যাচাই করতে পারি:

getfacl /<directory>

আউটপুট:

# file: ../<directory>/
# owner: <user>
# group: media
# flags: -s-
user::rwx
group::rwx
other::r-x
default:user::rwx
default:group::rwx
default:other::r-x

5
হ্যাঁ স্টিকি বিটের জন্য!
গ্যাবে

22
গিডিটিকে স্টিকি বিট দিয়ে বিভ্রান্ত করতে দেয় না।
অমিত নাইডু

10
জি + এস নিশ্চিত করবে যে ডিরেক্টরিতে থাকা নতুন বিষয়বস্তু গ্রুপের মালিকানার উত্তরাধিকারী হবে। সেটফ্যাকল কেবল chmod পরিবর্তন করে, আপনার ক্ষেত্রে o = rx এর অনুমতি নির্ধারণ করে
স্টেইন শ্যাট

10
নোট করুন যে উত্তরাধিকার সূত্রে প্রাপ্ত ফাইল অনুমতিগুলির জন্য এসিএলকে অবশ্যই সক্ষম করা (মাউন্ট করা ফাইল সিস্টেমের মাউন্ট বিকল্পগুলির একটি হিসাবে অন্তর্ভুক্ত) থাকতে হবে।
স্যাজ 23

11
পরিবর্তে আপনি 'এক্স' ব্যবহারের বিষয়টি বিবেচনা করতে চাইতে পারেন তবে এটি কেবল ফাইল নয় ডিরেক্টরিতে এক্সিকিউটিভ অনুমতি সেট করবেsetfacl -d -m g::rwX /<directory>
অ্যাড্রিয়ান গুণওয়ান

27

এটি ক্রিসের উত্তরের একটি সংযোজন, এটি আমার আর্চ লিনাক্স রিগ সম্পর্কিত আমার অভিজ্ঞতার ভিত্তিতে।

ডিফল্ট সুইচ (-d) এবং পরিবর্তিত সুইচ (-m) ব্যবহার করা কেবলমাত্র ডিফল্ট অনুমতিগুলি সংশোধন করে তবে বিদ্যমান বিদ্যমান অক্ষত রেখে দেয়:

setfacl -d -m g::rwx /<directory>

যদি আপনি বিদ্যমানগুলি সহ ফোল্ডারের সম্পূর্ণ অনুমতি কাঠামো পরিবর্তন করতে চান (আপনাকে একটি অতিরিক্ত লাইন করতে হবে এবং এটি পুনরাবৃত্ত করতে হবে - আর:

setfacl -R -m g::rwx /<directory>

যেমন।

setfacl -R -m g::rwx /home/limited.users/<directory> // gives group read,write,exec permissions for currently existing files and folders, recursively
setfacl -R -m o::x /home/limited.users/<directory> //revokes read and write permission for everyone else in existing folder and subfolders 
setfacl -R -d -m g::rwx /home/limited.users/<directory> // gives group rwx permissions by default, recursively
setfacl -R -d -m o::--- /home/limited.users/<directory> //revokes read, write and execute permissions for everyone else. 

( সমস্ত সুবিধাগুলি লাইন প্রত্যাহারের সিনট্যাক্সের জন্য মন্তব্যে মার্কডওয়াইটে ক্রেডিট করুন )


2
গোষ্ঠী সুবিধাগুলি প্রত্যাহার করতে (উদাহরণস্বরূপ): sudo setfacl -d -mg :: --- / path
মার্কডহাইট

1
এটি কি কেবল একটি টাইপো setfacl -R -m g::rwx /<directory>যা আপনার উত্তরে দু'বার নির্দিষ্ট করে?
শেন রোওয়াত

0

নিজেকে www- ডেটা গ্রুপে / লগড ব্যবহারকারীর সাথে যুক্ত করুন, তাই আমরা www-ডেটা সার্ভারের তৈরি ফাইলগুলির সাথে কাজ করতে পারি

sudo usermod -a -G www-data $USER

পুনঃসূচনা / পুনরায় চালু করার প্রয়োজন তাই নতুন যুক্ত হওয়া গোষ্ঠীটি কার্যকর হয়

cd /var/www

এইচটিএমএল ফোল্ডারের গ্রুপ সদস্য হিসাবে www-ডেটা এবং আপনার ব্যবহারকারীর মালিক হিসাবে যুক্ত করুন, সুতরাং আমরা এটির পাশাপাশি একটি গ্রুপ সদস্যও থাকি

sudo chown -R $USER:www-data html

আপনার ব্যবহারকারীর নামটি USER- এর জায়গায় রাখুন

প্রয়োজনীয় হিসাবে পড়ুন, লিখুন, অনুমতি কার্যকর করুন, (ugo) ইউ = ব্যবহারকারী, জি = গ্রুপ, ও = অন্যদের সেট করুন

sudo chmod 750 html

এইচটিএমএল-এর জিআইডি সেট করুন, এখন, এইচটিএমএলে নতুন নির্মিত ফাইলগুলি মালিকানার অনুমতিগুলির উত্তরাধিকারী হবে:

sudo chmod g+s html

এটি এইচটিএমএল ডিরেক্টরি এবং উপ ডিরেক্টরিতে নতুন তৈরি করা ফাইল / ডিআর জন্য ডিফল্ট নিয়ম তৈরি করে।

sudo setfacl -R -d -m u::rwX -m g::rX -m o::000 html

যদি ইনস্টল করা থাকে তবে সেলইনাক্স তৈরি করুন, www-ডেটা প্রসঙ্গে প্রয়োজনীয়তা উপেক্ষা করুন যাতে এটি লেখার অনুমতি দেয়

sudo setsebool -P httpd_unified 1

নতুন ডিরেক্টরি প্রয়োগ করার জন্য তালিকা ডিরেক্টরি

ls -ld html

এটি ফেরত দেয়

drwxrwsr-x+   3 html www-data

ট্রেইলিং + নির্দেশ করে যে ACL, অ্যাক্সেস কন্ট্রোল তালিকাটি ডিরেক্টরিটিতে সেট করা থাকে।

তথ্যসূত্র : ফোরামে লিঙ্ক


-2

নিম্নলিখিত কমান্ডটি ব্যবহার করে আপনি কোনও ফাইলে ডিফল্ট অনুমতি সেট করতে পারেন:

chacl -R filename

3
অন্যান্য উত্তর থেকে এটি কীভাবে আলাদা? এবং কয়েকটি উদাহরণ দিন
রোমিও নিনভ

3
আপনি কি নিশ্চিত যে এটি কি করে? linux.die.net/man/1/chacl ইঙ্গিত করে যে এটি একটি এসিএল অপসারণ করবে ।
জেফ শ্যাচলার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.