কেন chmod + w অন্যকে লিখিত অনুমতি দেয় না (ও)


18

আমি যখন চালনা chmod +w filenameকরি তখন এটি লেখার অনুমতি দেয় না other, এটি কেবল লেখার অনুমতি দেয় userএবং group

এই কমান্ড কার্যকর করার পরে

chmod +w testfile.txt

ls -l testfile.txtপ্রিন্ট চলমান

-rw-rw-r-- 1 ravi ravi 20 Mar 10 18:09 testfile.txt

তবে ক্ষেত্রে +rএবং +xএটি সঠিকভাবে কাজ করে।

আমি ব্যবহার করতে চাই না chmod ugo+w filename



1
আপনি যদি ব্যবহার করতে না চান তবে ugoব্যবহার করুন a
মারু

হ্যাঁ, তবে আমি কেন +wকাজ করছে না তা জানতে চাই ।
রবি সেভতা

এজন্য আমি দুটি মন্তব্য রেখেছি।
মুুরু

@muru। আপনি নিজের askubuntuউত্তরে দাবি করেছেন যে আপনি উপরে উল্লেখ করেছেন যে "এই আচরণটি পসিক্স-আদেশযুক্ত, এবং তাই, কোনও বাগ নয়"। অনুগ্রহ করে পরামর্শ দিন যে পসিএক্স অ্যাপ্লিকেশন ব্যবহারের পাঠ্যটি নন-আদর্শিক এবং সুতরাং পসিক্স কর্তৃক বাধ্যতামূলক নয়।
এফএমপুরফি

উত্তর:


26

আপনার নির্দিষ্ট পরিস্থিতি

আপনার নির্দিষ্ট পরিস্থিতিতে, আমরা অনুমান করতে পারেন যে আপনার বর্তমান umaskহয় 002(এই একটি সাধারণ ডিফল্ট মান হয়) এবং এই আপনার বিস্ময় ব্যাখ্যা করে।

সুনির্দিষ্ট পরিস্থিতিতে যেখানে umaskমান 002 (সমস্ত সংখ্যা অকটাল)।

  • +rমানে ugo+rকারণ 002 & 444হয় 000, যা সব বিট সেট হওয়ার দেয়
  • +xমানে ugo+xকারণ 002 & 111হয় 000, যা সব বিট সেট হওয়ার দেয়
  • কিন্তু +wউপায়ে ug+wকারণ 002 & 222হয় 002যা "o" এর বিট সেট হওয়ার বাধা দেয়।

অন্যান্য উদাহরণ

  • সাথে umask 022 +wমানে হবে u+w
  • সাথে umask 007 +rwxমানে হবে ug+rwx
  • সাথে umask 077 +rwxমানে হবে u+rwx

আপনার প্রত্যাশার সাথে কী মিল ছিল

আপনি যখন পরিবর্তন umaskকরেন 000, এক্সিকিউট করে

umask 000

আপনার টার্মিনালে, তারপর

chmod +w file

ugo + w এর জন্য অনুমতি সেট করবে।

সাইড নোট

ইল্কাচ্চুর পরামর্শ অনুসারে, নোট করুন এর umask 000অর্থ এই নয় যে প্রত্যেকে আপনার সমস্ত ফাইল পড়তে এবং লিখতে পারে।

তবে এর umask 000অর্থ আপনার মেশিনে যে কোনও ব্যবহারকারীর অ্যাকাউন্টে একরকম অ্যাক্সেস রয়েছে (যার মধ্যে রয়েছে সার্ভার পরিষেবাদি পরিচালিত প্রোগ্রামগুলি অন্তর্ভুক্ত থাকতে পারে) আপনি সেই মুখোশটি দিয়ে তৈরি সমস্ত ফাইল পড়তে এবং লিখতে পারেন এবং পরিবর্তন করতে পারবেন না (যদি এতে থাকা চেইন থাকে তবে মূল পর্যন্ত ডিরেক্টরিগুলি তাদের অনুমতি দেয়)।


4
umask 000 এর অর্থ প্রত্যেকটি যার কাছে আপনার মেশিনে কোনও একাউন্টে একরকম অ্যাক্সেস রয়েছে (যার মধ্যে রয়েছে সার্ভার পরিষেবাদি চালানো প্রোগ্রামগুলি অন্তর্ভুক্ত থাকতে পারে) সেই মুখোশটি সক্রিয় করে আপনার তৈরি করা সমস্ত ফাইল পড়তে এবং লিখতে পারে এবং পরিষ্কার হয় না
স্টারওয়েভার

4
"+ আর এর অর্থ উগো = আর" - না, এটি নয়, এর অর্থ rউমাস্ক যেখানে অনুমতি দেয় সেখানে পক্ষগুলির জন্য কিছুটা সেট করে set এটি যেমন GNU chmod এবং FreeBSD chmod এর ম্যানুয়ালগুলিতে স্পষ্টভাবে বলা হয়েছে, পাশাপাশি মান হিসাবেও রয়েছে। একই জন্য +x। জন্য +wআপনি যে বিশেষ umask ক্ষেত্রে জন্য ঠিক।
ইল্কাচ্চু

4
এছাড়াও, উমাস্কটি সেট করার অর্থ 0 এই নয় যে প্রত্যেকে আপনার সমস্ত ফাইল পড়তে এবং লিখতে পারে , যেহেতু অনেকগুলি অ্যাপ্লিকেশন এমন ফাইল তৈরি করে যা বিশেষত মোডের সাথে প্রাইভেট থাকে 0600, যার অর্থ গ্রুপটি এবং অন্যরা উমাস্ক নির্বিশেষে কোনও অ্যাক্সেস পায় না।
ইল্কাচ্চু

@ ইল্ক্কাছু + আর এর অর্থ উগো = আর, এটি প্রশ্নের সাথে বর্ণিত পরিস্থিতির সাথে সম্পর্কিত ছিল। এটি সাধারণ ছিল না।
প্রাইভেট_যাদভ

2
@ ডেবিয়ান_ ইয়াদভ, ঠিক এটিই মূল বিষয়: এটি umaskকীভাবে +rআচরণ করে তার একটি গুরুত্বপূর্ণ অংশ , একটি সিডেনোট নয়। এছাড়া, এমনকি umask অভিমানী 002, chmod +rনা মানে chmod ugo=rতার মানেchmod ugo+r
ilkkachu

24

সঙ্গে:

chmod +<perms>

অনুমতিগুলি ব্যবহারকারী , গোষ্ঠী এবং অন্যান্যগুলিতে যোগ করা হয়েছে তবে উমাস্ক এখনও প্রয়োগ করছে। এটি নিশ্চিত করে যে কোনও নতুন তৈরি করা ফাইলের চেয়ে ফাইলটিকে বেশি অনুমতি দেওয়া হয়নি।

আপনি যদি উমাস্ক নির্বিশেষে ব্যবহারকারী , গোষ্ঠী এবং অন্যান্যগুলিতে অনুমতিগুলি যুক্ত করতে চান তবে ব্যবহার করুন

chmod a+<perms>

যা সংক্ষিপ্ত

chmod ugo+<perms>

এর অর্থ হল যে + x এবং a + x সমান নয়।
প্রাইভেট_যাদভ

1
আমি লিঙ্কগুলি রাখতে চাই: man7.org/linux/man-pages/man1/chmod.1.html these এগুলির কোনওটি দেওয়া না হলে, প্রভাবটি যেমন (ক) দেওয়া হয়েছিল, তবে উমাস্কে সেট করা বিটগুলি প্রভাবিত হয় না “"
তেহনিকিকার্গ

0

কাকে আপনি অনুমতি দিচ্ছেন তা যেমন আপনাকে otherব্যবহারের মাধ্যমে নির্দিষ্ট করা দরকারchmod o+w testfile.txt


1
হ্যাঁ, তবে আমি মনে করি +wসকলকে (ব্যবহারকারী, গোষ্ঠী এবং অন্যান্য) অনুমতি দেয়।
রবি সেবতা

সমস্ত ব্যবহারকারীর অনুমতি দেওয়ার জন্য, ব্যবহার করুন chmod a+w testfile.txt। ব্যবহার করুন uব্যবহারকারীর জন্য, gদলের জন্য, oঅপরের জন্য, এবং aসব জন্য।
জাকেন 551 13

যদি chmod a+w filename, chmod +w filenameএবং chmod ugo+w filenameএকে অপরের বিকল্প হয় তবে কেন কেবল ব্যবহার করবেন না+w
রবি সেবতা
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.