আমি কীভাবে ফোল্ডারে এবং আমার হোম ডিরেক্টরিতে ফোল্ডার যুক্ত বর্তমান ব্যবহারকারী হিসাবে মালিককে পরিবর্তন করব?


12

ব্যবহার করে sudo nautilusআমি কিছু ফোল্ডার তৈরি করেছি এবং আমি সেগুলির মধ্যে মূল অনুমতি থেকে মুক্তি পেতে চাই। তবে আমার অনেকগুলি রয়েছে এবং আমি এটি একটি সম্পূর্ণ ডিরেক্টরি এবং এটিতে থাকা ফোল্ডারগুলিতে করতে চাই।

তাহলে কীভাবে বাড়ির অভ্যন্তরে অবস্থিত একটি নির্দিষ্ট ডিরেক্টরিতে সমস্ত ফাইল এবং ফোল্ডারগুলিতে বর্তমান ব্যবহারকারীর পাঠ / লেখার অনুমতি দেওয়া যায়?

উত্তর:


14

ব্যবহার করে করা ক্ষতি ফিরিয়ে আনতে sudo nautilusআপনাকে নিজের দ্বারা রুট মালিকানাধীন যে কোনও ডিরেক্টরি (এবং তাদের বিষয়বস্তু) এর মালিক হওয়া উচিত।

আপনি এটি করতে ব্যবহার করতে পারেন find, কারণ এটিতে কোনও নির্দিষ্ট ব্যবহারকারীর মালিকানাধীন ফাইলগুলি অনুসন্ধান করার পরীক্ষা রয়েছে।

এটি আপনার বাড়ির সমস্ত ডিরেক্টরি মূলের মালিকানাধীন পাবেন:

sudo find ~ -type d -user root

তারপরে আপনি findকমান্ডটি পুনরাবৃত্তি করতে পারেন এবং আপনি যে ক্রিয়াটি করতে চান তা যুক্ত করতে পারেন - সমস্ত পাওয়া ডিরেক্টরি এবং তাদের সামগ্রীর মালিকানা পুনরায় ক্রমান্বয়ে বর্তমান ব্যবহারকারীর কাছে পরিবর্তন করুন:

sudo find ~ -type d -user root -exec sudo chown -R $USER: {} +

ব্যাখ্যা:

  • ~ হোম ডিরেক্টরি
  • -type d শুধুমাত্র ডিরেক্টরি খুঁজে
  • -user root মূলের সাথে সম্পর্কিত জিনিসগুলি সন্ধান করুন
  • -exec যা কিছু পাওয়া গেছে তার জন্য নিম্নলিখিত আদেশটি করুন
  • sudo chown -R পুনরাবৃত্তভাবে মালিক পরিবর্তন করুন
  • $USER বর্তমান ব্যবহারকারী
  • : নির্দিষ্ট ব্যবহারকারীকেও গ্রুপ পরিবর্তন করুন

আরো দক্ষতার সঙ্গে, আপনি বাদ পারে -type dরুট একাত্মতার কোনো ধরনের ফাইল খুঁজে পেতে, এবং এছাড়াও বাদ -Rযেমন findসমস্ত ফাইল অভিনয় দ্বারা আপনাকে জন্য recursion কি করতে হবে

sudo find ~ -user root -exec sudo chown $USER: {} +

সুরক্ষার সাথে-মালিকানাধীন সাব-ডাইরেক্টরিগুলি এবং তাদের অধীনে থাকা সমস্ত কিছু পরিদর্শন করতে আপনাকে অবশ্যই ( ) findদিয়ে চালাতে হবে । মেরামত জন্য Ditto। sudosudo find ...root0700
ওয়ালটিনেটর

"সম্ভাব্যতার বিরুদ্ধে রক্ষা করুন" বা "যা সম্ভব তার বিরুদ্ধে রক্ষা করুন"? তোমার পছন্দ.
ওয়ালটিনেটর

@ ওয়াল্টিনেটর নিশ্চিত :) এটি উল্লেখ করার জন্য ধন্যবাদ যাতে আমি উন্নতি করতে পারি। আমি কেবল sudoপ্রয়োজন না হওয়া পর্যন্ত ব্যবহার না করার চেষ্টা করছি
Zanna

10

জিইউআই সরঞ্জামগুলি চালনা করা, nautilusযেমন rootএই কারণে ক্ষতিকারক হিসাবে বিবেচিত হয়, অন্যদের মধ্যেও (লুকানো ফাংশন, কোথা থেকে কে জানেন, তার থেকে চুপি চুপি প্রোগ্রাম টুকরো চালানোর ক্ষমতা, ...)।

আপনার "অনুমতি" সমস্যা নেই, আপনার "মালিকানা" সমস্যা আছে have

মালিকানাধীন সমস্ত ফাইল root(অন্য কারও কাছে সত্যই মালিকানাধীন) অনুসন্ধান করতে, করুন:

sudo find $HOME \! -user $USER

আপনার কাছে আবার মালিকানা পরিবর্তন করতে আপনি পারলেন

sudo chown -R $(id -u):$(id -g) $HOME

তবে এতে এবং এর নীচে থাকা সমস্ত ফাইলের মালিকানা বদলে যাবে $HOME

sudo find $HOME \! -user $USER >/tmp/list-of-files
# edit the list of files, and delete file files you don't want to chown
nano /tmp/list-of-files 
xargs sudo chown $(id -u):$(id -g) </tmp/list-of-files

এক নয় এমন ব্যক্তিদের মালিকানাধীন ফাইলগুলির তালিকা সামঞ্জস্য করার সুযোগ দেয় যা তাদের মালিকানা আপনার কাছে ফিরে আসবে।


5

আপনাকে যা করতে হবে তা হ'ল ফোল্ডারের মালিকানা ব্যবহারকারী (এবং গোষ্ঠী) থেকে রুট করা অন্য ব্যবহারকারীর (এবং গোষ্ঠী) থেকে আপনি চাইছেন to

কল্পনা করুন আপনি / হোম / র্যান্ডমফোল্ডারে কাজ করতে চান এবং আপনি যে মালিকানাটি মালিকানা পরিচালনা করতে চান তা ভিজিটর-অ্যাবেলা , আপনাকে যা করতে হবে তা কেবল এটিকে মূল হিসাবে চালিত করা উচিত:

chown -R vitor-abella:vitor-abella /home/randomFolder

প্রচুর ফাইল এবং সাব-ফোল্ডার থাকলে কিছুক্ষণ সময় নিতে পারে তবে এর পরে আপনার ট্র্যাকের দিকে যাওয়া উচিত।

চিয়ার্স।


3
আমি $(id -u):$(id -g)ওপিকে কল্পনা করতে চেয়ে বরং ব্যবহার করি এবং $HOME/randomFolder
ওয়ালটিনেটর
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.