কেন getfacl অগ্রণী / পরম পথের নামগুলি থেকে সরায়?


10

আমি সেন্টোস / রেড হ্যাট 6 এর জন্য এসিএল সম্পর্কে জানার মাঝে আছি; আমি যখন getfaclএকটি নিখুঁত পথ ব্যবহার করে দৌড়ান, তখন আমি আউটপুটটি পেয়ে যাই:

getfacl: নিখুঁত পাথের নাম থেকে নেতৃস্থানীয় '/' সরানো

কেন এটি করা দরকার? কোন পরিস্থিতিতে আপনার -pবা --absolute-namesসুইচটি ব্যবহার করা দরকার ?

ওয়াল সোইঙ্কা এবং মাইকেল জ্যাংয়ের আমার বইগুলি এগুলির একটি উত্তীর্ণ উল্লেখও করে না, আমি ম্যান পৃষ্ঠায় কোনও চিহ্ন খুঁজে পাচ্ছি না, এবং এই সতর্কতার বিষয়টি সরাসরি সম্বোধন করে এমন কোনও সাইট আমি খুঁজে পাচ্ছি না।



আমাকে এটি দেখার জন্য এবং লিঙ্কটির জন্য ধন্যবাদ। আমার প্রোগ্রামিং দক্ষতা এই মুহুর্তে কিছুটা উত্সাহী, তবে আমি যখন আমার গ্যাডিস বইয়ের সাহায্যে সি / সি ++ নিয়ে কাজ শুরু করি তখন ফাইলটি সংরক্ষণ করেছি।
সানানিগ্যান্স

উত্তর:


6

ম্যান পেজ থেকে getfacl:

-p, --absolute-names
       Do not strip leading slash characters (`/'). The  default  behavior
       is to strip leading slash characters.

আপনি যখন -pস্যুইচ ব্যবহার না করে পরম পাথ সরবরাহ করেন তখন একটি সতর্কতা বার্তা প্রস্থান করা হয় ।

getfaclকমান্ডে পরম পাথ দেওয়া হলে ফলাফলগুলি আলাদা হয় ।

-pসুইচ ছাড়াই :

$ getfacl /path/foo/bar
getfacl: Removing leading '/' from absolute path names
# file: path/foo/bar
[Output truncated...]

-pস্যুইচ ব্যবহার করা হয় কেবল তখনই ফাইল পাথের শীর্ষস্থানীয় স্ল্যাশগুলি নোট করুন ।

$ getfacl -p /path/foo/bar
# file: /path/foo/bar
[Output truncated...]

-p আপনি আরও প্রক্রিয়াজাতকরণের জন্য আউটপুটটি পাইপ করলে অগ্রণী স্ল্যাশ রাখতে দরকারী keep

getfaclকমান্ডের ক্ষেত্রে আপেক্ষিক পথটি দেওয়া হলে ফলাফলগুলি সমান হয় ।

$ getfacl bar
# file: bar
[Output truncated...]

পরিবর্তন নেই:

$ getfacl -p bar
# file: bar
[Output truncated...]

আমাকে ক্ষমা করুন, যেমন আমি লিনাক্সের তুলনায় তুলনামূলকভাবে নতুন, তবে এটি বেশ অতিরিক্ত অতিরিক্ত অতিরিক্ত সুইচের মতো বলে মনে হয়, যেহেতু আপনি যদি অন্য প্রোগ্রামে আউটপুটটি পাইপ করছিলেন, তবে আপনাকে প্রথমে আউটপুটটির সেই অংশটি ধরার জন্য প্রবাহটি সম্পাদন করতে হবে জায়গা, আমি কি সঠিক? একটি উদাহরণস্বরূপ ক্ষেত্রে কী হতে পারে যেখানে অগ্রণী স্ল্যাশ ফেলা কার্যকর হবে? যেহেতু এটি একটি নিখুঁত পথ, এটি প্রথম স্থানে ফেলা কিছুটা নির্বোধ বলে মনে হয়।
সানানিগ্যানস

2
অন্যান্য ডিস্ট্রোজে (যেমন ফ্রিবিএসডি) এ এই স্যুইচটির অস্তিত্ব নেই। আরএইচইএল এসিএল প্যাকেজের উত্সটি দেখে মনে হয় যে --absolute-namesকেবল আউটপুট স্ট্রিং - "# ফাইল:" নিয়ে কাজ করে তবে যুক্তির পিছনে নয়। প্রথমে আমি অনুমান করি এটি কোনও সুরক্ষা বৈশিষ্ট্য হতে পারে। তবুও, স্যুইচটি বিদ্যমান নেই setfacl। আমার শেষ অনুমানটি হ'ল লেখকটি tarআচরণটি অনুকরণ করতে চান যদিও -pস্যুইচটির ব্যবহার getfaclঅনর্থক হতে পারে।
ইভান চাউ

9
এটি যদিও এর উত্তর দেয় না। কেন নেতৃত্বাধীন স্ল্যাশগুলি ডিফল্টরূপে ছিনিয়ে নেওয়া হয়, কীভাবে এটি কখনও সহায়তা করে ??
সেগফাল্ট
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.