'Ls -al' এর ফলে "+ 3" এর অর্থ কী?


9

দুর্ঘটনাক্রমে, যখন একটি মাউন্ট ভলিউম সরানো, এবং টাইপ ll(এর জন্য ওরফে ls -laF)

:/media/username/DATA$ ll
total 153
drwxrwxrwx  1 username username  8192 Sep  1 20:32 ./
drwxr-x---+ 3 root     root      4096 Sep  3 08:14 ../
drwxrwxrwx  1 username username 12288 Jul 26 22:29 documents/
drwxrwxrwx  1 username username 16384 Sep  2 02:01 downloads/

আমি এই আকর্ষণীয় অংশ আছে: drwxr-x---+ 3

আমি অংশটি বুঝতে পারি drwxr-x---, তবে অন্য অংশটির + 3অর্থ কী?

PS: আমি উবুন্টু 16.04 x86 ব্যবহার করছি


1
আপনি বোঝাতে চেয়েছেন যে অনুমতিগুলির স্ট্রিং এবং মালিকের নামের মধ্যে সংখ্যাটি সম্পর্কে আপনি আগ্রহী?
বাইট কমান্ডার

4
অংশগুলি জন্য ls -lআউটপুট ব্যাখ্যা, দেখতে askubuntu.com/q/710905 , askubuntu.com/q/517229 বা unix.stackexchange.com/q/103114 দয়া করে।
বাইট কমান্ডার

উত্তর:


14

+স্বাভাবিক অনুমতি বিট পর ইঙ্গিত একটি বিশেষ অনুমতি ফাইল / ডিরেক্টরি কার্যকর হয়। বিশেষ অনুমতিটি হ'ল পসিক্স এসিএল (অ্যাক্সেস কন্ট্রোল লিস্ট)।

আপনি setfaclইতিমধ্যে সেট করা নিয়ম (গুলি) ব্যবহার করে এবং এটি দ্বারা একটি এসিএল বিধি সেট করতে পারেন getfacl

উদাহরণ:

% ls -l foo.sh
-rwxrwxr-x 1 foobar foobar 206 Aug 28 02:08 foo.sh

% setfacl -m u:spamegg:x foo.sh

% ls -l foo.sh                
-rwxrwxr-x+ 1 foobar foobar 206 Aug 28 02:08 foo.sh

% getfacl foo.sh
# file: foo.sh
# owner: foobar
# group: foobar
user::rwx
user:spamegg:--x
group::rwx
mask::rwx
other::r-x

পরীক্ষা করে দেখুন man getfaclএবং man setfaclআরো ধারণা পেতে।

একটি সাইড নোট হিসাবে, আপনি একটি দেখি .এর inplace +ফলে SELinux- র প্রসঙ্গ জন্য যে।


এবং 3তারপরে +ফাইলটির কতগুলি হার্ড লিঙ্ক রয়েছে তা নির্দেশ করে। হার্ডলিঙ্ক ফাইলের একটি নাম (ফাইলের ইনোড অবিকলভাবে) তাই হার্ড লিঙ্কগুলির সংখ্যা ফাইলটির নাম সংখ্যা নির্দেশ করে।

আপনার ক্ষেত্রে এন্ট্রিটি হ'ল:

drwxr-x---+ 3 root     root      4096 Sep  3 08:14 ../

এটি বর্তমান ডিরেক্টরি ( /media/username/DATA) এর ..পিতামহ নির্দেশকের জন্য , সুতরাং /media/usernameডিরেক্টরিকে নির্দেশ করে।

এখন, লিনাক্সে, প্রতিটি ডিরেক্টরিতে কমপক্ষে দুটি হার্ড লিঙ্ক থাকে, একটি হ'ল .(বর্তমান ডিরেক্টরি, নিজের সাথে লিংক) এবং অন্যটি এটি প্যারেন্ট ডিরেক্টরীতে প্রবেশ করা (নাম-ইনোড ম্যাপিং), এটি ইউনিক্স থেকে উত্তরাধিকার সূত্রে প্রাপ্ত হয়েছিল।

আপনার পক্ষে হার্ড লিঙ্কের গণনা 3 হিসাবে রয়েছে /media/usernameযার অর্থ /media/usernameএকটি উপ-ডিরেক্টরি আছে (ডিফল্ট 2 এবং ..উপ-ডিরেক্টরিতে প্রবেশের জন্য একটি)। যদি 2 টি উপ-ডিরেক্টরি থাকে তবে উভয় সাব-ডাইরেক্টরি ..প্যারেন্টে ম্যাপিংয়ের কারণে হার্ড লিঙ্কের গণনা 4 হবে ।


পরীক্ষা করে দেখুন man ls


1
এটি একটি ডিরেক্টরি, সুতরাং লিঙ্ক গণনা হ'ল সাব ডাইরেক্টরি সংখ্যা দুটি আরও।
কেভিন

@ কেভিন বিস্তারিত ব্যাখ্যা যুক্ত করেছেন।
হিমাইল

7

+অনুমতিগুলির শেষে স্ট্রিং একটি এসিএল ( অ্যাক্সেস কন্ট্রোল লিস্ট ) অনুমতিটি প্রকাশ করে। এটি ঠিক কী অনুমতিগুলি অনুমোদন করে এবং কোন ব্যবহারকারীদের সাথে তা দেখতে পাবেন

getfacl ../

বরং বা

getfacl /media/$USER

আমার ক্ষেত্রে:

$ getfacl /media/zanna
getfacl: Removing leading '/' from absolute path names
# file: media/zanna
# owner: root
# group: root
user::rwx
user:zanna:r-x
group::---
mask::r-x
other::---

এটি মালিক এবং গোষ্ঠী এবং তারপরে নামবিহীন "ব্যবহারকারী" (মালিক) গোষ্ঠী এবং বিশ্বের (অন্যদের) ব্যবহারকারীর জানার অতিরিক্ত প্রবেশের অনুমতি দিয়ে দেখায়। "মাস্ক" গ্রুপ এবং নামযুক্ত ব্যবহারকারীদের জন্য কার্যকর অধিকারকে সীমাবদ্ধ করে।

এসিএল হ'ল Linuxতিহ্যবাহী লিনাক্স অনুমতি সিস্টেমে একটি এক্সটেনশন যা সূক্ষ্ম নিয়ন্ত্রণের অনুমতি দিয়ে একক ব্যবহারকারী বা গোষ্ঠীর জন্য অনুমতি সেট করার অনুমতি দেয়। আপনি রুট এই মাউন্ট পয়েন্ট মালিক থাকার জন্য নিরাপত্তার কারণে এ ক্ষেত্রে ACL অনুমতি ব্যবহার সম্বন্ধে আরও পড়তে পারেন /mediaমধ্যে এই পোস্টে

এর 3সাথে সম্পর্ক নেই +। এটি ফাইলটিতে হার্ড লিঙ্কগুলির সংখ্যা নির্দেশ করে ।


2
এটি কেবল +তবুও ব্যাখ্যা করে , যা সিগন্যাল দেয় যে sতিহ্যবাহী অনুমতি সেটিংস ছাড়াও এসিএলগুলি এই প্রবেশের জন্য সক্রিয় রয়েছে। তবে এটি এর ব্যাখ্যা দেয় না 3
বাইট কমান্ডার

2
@ বাইটকম্যান্ডার হাহ এটা আমার কাছে ঘটেনি যে তারা 3 সম্পর্কে জিজ্ঞাসা করেছিল, ধন্যবাদ!
জান্না
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.