Chmod -u কি করে?


19

দুর্ঘটনাক্রমে আমি দৌড়ে গিয়েছিলাম chmod -u filenameএবং এটি আমার থাকা সমস্ত অনুমতি সরিয়ে দেয় filename

ম্যান পেজ কোনও -uবিকল্প উল্লেখ করে না । পরীক্ষা-নিরীক্ষা করে আমি এই সিদ্ধান্তে পৌঁছাতে সক্ষম হয়েছি যে এটি সমস্ত অনুমতিগুলি সরিয়ে দেয় না, কেবল লেখার অ্যাক্সেস অক্ষত রেখে কেবল অ্যাক্সেস পড়ুন এবং সম্পাদন করুন।

সুতরাং এই ঠিক কি করে?


আমার উপরোক্ত উপসংহারটি ভুল, আমি এখন ভাবি যে এটি যা করে তা হ'ল সমস্ত বিভাগ থেকে মালিকের অনুমতিগুলি সরিয়ে ফেলা।


আমি মনে করি যে আচরণটি অনুরূপ a=u, কেবল এটির -পরিবর্তে =এবং aযেমনটি করা যায় ঠিক তেমনি ফেলে দেওয়া যেতে পারে, উদাহরণস্বরূপ a+x,।


6
ম্যান পৃষ্ঠাতে নেই এমন একটি প্রাথমিক প্রশ্ন জিজ্ঞাসা করার জন্য +1

1
"একটি সিম্বলিক মোডের ফরম্যাট [ugoa...][[-+=][perms...]...], যেখানে perms সেট থেকে পারেন শূন্য বা তার বেশি বর্ণের হয় rwxXst, বা সেট থেকে একটি একক অক্ষরugo (গনুহ chmod মানুষ পৃষ্ঠা)"; পসিক্স মোটামুটি অস্পষ্ট, তবে একই প্রভাবের জন্য একটি "পার্মকপি" উত্পাদনের সংজ্ঞা দেয়।
মাইকেল হোমার

1
@ মিশেলহোমার এটি কী করে তা বলে না।
y_wc

1
@y_wc "এক বা এই চিঠি একাধিক পরিবর্তে, আপনি ঠিক বর্ণের এক নির্দিষ্ট করতে পারেন Ugo : অনুমতি ব্যবহারকারী ফাইল (মালিক মঞ্জুর u), অনুমতি অন্যান্য ব্যবহারকারি যারা ফাইলের গ্রুপ সদস্য মঞ্জুর ( g) , এবং পূর্ববর্তী দুটি বিভাগের ( o) দুটির মধ্যে নেই এমন ব্যবহারকারীদের জন্য অনুমোদিত অনুমতিগুলি । "
মাইকেল হোমার

1
হ্যাঁ, আমি এটি পড়েছি। আমি এটি দেখতে পাচ্ছি না যে এটি কী করে তা উল্লেখ করে। এটি বলে যে আমি সেই চিঠিগুলির মধ্যে একটি নির্দিষ্ট করতে পারি। উদাহরণস্বরূপ u, উল্লেখ করা হচ্ছে, আমি ফাইলটির মালিক ব্যবহারকারীকে প্রদত্ত অনুমতিগুলি উল্লেখ করব। তবে এটি কী করে তা বলে না। নির্দিষ্ট এমনকি কি মানে?
y_wc

উত্তর:


19

এটি কোনও বিকল্প নয়, তবে অনুমতিগুলি নির্দিষ্ট করার একটি মানক (তবে অস্বাভাবিক) উপায়। এটা তোলে (মুছে ফেলার জন্য অর্থ -ফাইল মালিক (সঙ্গে যুক্ত) অনুমতি u,) সকল ব্যবহারকারীর (কোন পূর্ববর্তী জন্য u, gঅথবা o)। এই হয় মানুষ পৃষ্ঠা থেকে নথিভুক্ত।

GNU chmod এর ম্যান পেজ এটিকে নথি করে:

প্রতীকী মোডের বিন্যাসটি হ'ল [ugoa...][[-+=][perms...]...], যেখানে permsসেট থেকে শূন্য বা আরও বেশি অক্ষর rwxXstবা সেট ইউগো থেকে একটি অক্ষর রয়েছে

এবং পরে

এর মধ্যে এক বা একাধিক অক্ষরের পরিবর্তে আপনি হুবহু বর্ণগুলির মধ্যে একটি নির্দিষ্ট করে নির্দিষ্ট করতে পারেন: ফাইলের মালিকানাধীন ব্যবহারকারীকে ( u) ফাইলের গ্রুপের সদস্য ( g) এবং অন্যান্য ব্যবহারকারীদের দেওয়া অনুমোদিত অনুমতিগুলি এবং পূর্ববর্তী দুটি বিভাগের মধ্যে নেই এমন ব্যবহারকারীদের জন্য অনুমোদিত অনুমতি ( o)

সুতরাং -u( -) বর্তমানে uপ্রত্যেকের জন্য মালিকের ( ) সমতুল্য a-u, বর্তমান উমাস্ককে সম্মানিত করা ছাড়া ) যে কোনও অনুমতি সক্রিয় করা হয়েছে তা ( ) সরিয়ে ফেলার অর্থ । যদিও এটি প্রায়শই খুব কার্যকর হয় chmod +uনা, উদাহরণস্বরূপ, পুনরাবৃত্তভাবে পরিচালনা করার সময় মালিকের কাছ থেকে অনুমতিগুলি অন্যের কাছে অনুলিপি করা অনাদৃশ্য হতে পারে।


এটি পসআইএক্স-তেও নথিভুক্ত করা হয়েছে , তবে আরও অস্পষ্টভাবে সংজ্ঞায়িত করা হয়েছে: অনুমতিের স্পেসিফিকেশনটি বিস্তৃতভাবে who[+-=]perms(বা একটি সংখ্যা), এবং এর প্রভাবগুলি আরও নির্দিষ্ট করা হয়েছে:

পার্ককপি প্রতীক u, gএবং oব্যবহারকারী মোড, ফাইল এবং ফাইল মোড বিটের অন্যান্য অংশগুলির সাথে যথাক্রমে বর্তমান অনুমতিগুলি উপস্থাপন করবে। এই বিভাগের বাকী permঅংশগুলির জন্য, অ-টার্মিনালগুলি permএবং permcopyব্যাকরণগুলিকে বোঝায় ।

এবং তারপর

-

... যদি যারা নির্দিষ্ট করা না থাকে, ফাইল মোড বিট মালিক, গ্রুপ, এবং অন্যান্য অনুমতি, আবাহন প্রক্রিয়ার ফাইল মোড সৃষ্টি মাস্ক সংশ্লিষ্ট বিট যাদের ছাড়া জন্য স্থায়ী ঢেউ তোলা প্রতিনিধি সাফ করা হবে।


ধন্যবাদ, মাইকেল পসিক্স ডকুমেন্টেশন বিশ্বাসযোগ্য। জিএনইউ তবে ... আমার এই মন্তব্য দেখুন । "সো" এর পরে কী ঘটে তা আগে যা আছে তা অনুসরণ করে দেখছি না। permsহতে পারে u, যে আমি পেয়েছিলাম। হ্যাঁ, uঅনুমতি বা মালিক নির্দিষ্ট করে। তবে এটি কীভাবে অনুসরণ করবে যে সমস্ত ব্যবহারকারীর থেকে -uমালিকের (মডুলাস umask) অনুমতিগুলি সরিয়ে দেয়?
y_wc

কারণ এটি -সর্বদা যা করে: এটি ব্যবহারকারীদের নির্দিষ্ট শ্রেণীর থেকে নির্দিষ্ট অনুমতিগুলি সরিয়ে দেয়। -uএর সাথে একেবারে অনুরূপ -wবা (কাছাকাছি) ugo-u
মাইকেল হোমার

আমি বলছিলাম যে আমি এখানে ডকুমেন্টেশন নিয়ে আলোচনা করতে আসিনি এবং আমি কী চলছে তা বুঝতে পেরে খুশি হয়েছি, তবে ডকগুলি কেবল ক্লিক করেছে। ধন্যবাদ।
y_wc

আমি আপনাকে অন্য chmodডকুমেন্টেশন প্রশ্নে ঝামেলা করতে পারি ? আপনি যদি মনে করেন এটি একটি পৃথক প্রশ্নের দাবি করে তবে আমাকে জানান। "এবং = এগুলিকে যুক্ত করার কারণ হিসাবে এবং ডিরেক্টরিগুলির নিরীক্ষিত সেট ব্যবহারকারী এবং গোষ্ঠী আইডি বিটগুলি প্রভাবিত না করে ব্যতীত নিরবিচ্ছিন্ন বিটগুলি সরানোর কারণ ঘটায়" "এটি আমার কাছে বলছে, এমন একটি ডিরেক্টরি দেওয়া হয়েছে যার মালিকের কেবল লেখার অ্যাক্সেস রয়েছে, chmod u=rx directoryযেমন মালিকের অনুমতি হিসাবে ছেড়ে দেবে rwx। তবে যা হয় তা নয়, পরিবর্তে তারা প্রত্যাশায় পরিণত হয় r-x। আমি কি কিছুটা ভুল ব্যাখ্যা করছি?
y_wc

এটি বলছে যে সেটুইড / সেটজিড ( s) বিটগুলি যদি আপনি উল্লেখ না করেন তবে একা বাকি থাকে এবং আপনি যা নির্দিষ্ট করেন নি সেগুলি সরিয়ে দেওয়া হয়।
মাইকেল হোমার

2

উত্তর সামান্য বিট অনুরূপ /unix//a/429424/255251

chmod -u file_name

সমস্ত অনুমতি সরিয়ে দেয় না, তবে এটি umaskমান বিবেচনা করে।

umask
0022
ls -l file
-rwxrwxrwx 1 user user 4 Feb 25 15:17 file
chmod -u file
chmod: file: new permissions are ----w--w-, not ---------
ls -l file
-----w--w- 1 user user 4 Feb 25 15:17 file

এখন umask মান পরিবর্তন করুন

umask 777
chmod 777 file
chmod -u file
chmod: file: new permissions are rwxrwxrwx, not ---------
ls -l file
-rwxrwxrwx 1 user user 4 Feb 25 15:17 file

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