হোমব্রিউয়ের জন্য ফাইলগুলিকে us / usr / local` এ লিখুন Make


35

আমি হোমব্রিউটি সুন্দরভাবে কাজ করার চেষ্টা করছিলাম তবে এটি ভিতরে উপস্থিত সমস্ত /usr/localকিছুই রচনাযোগ্য নয় এবং সমস্ত কিছুতেই পড়ে যায় appears

এটি আমাকে পুনরাবৃত্তির জন্য বলতে থাকে chown /usr/local, এবং আমি এটি চেষ্টা করেছিলাম। অপারেশন অস্বীকার করা হয়েছে, তাই আমি এটিকে আরও ঘৃণা করি। দেখে মনে হচ্ছে এটি কাজ করেছে, তবে আমি যে উদ্ভট নীরবতা শুনেছি তা ইউনিক্সে ভদ্র বলে বিবেচিত হয়। দুর্ভাগ্যক্রমে, brew updateত্রুটির একই কাকফোনির সাথে মিলিত হওয়ার যে কোনও সফল প্রচেষ্টা attempts

আমি কমান্ডটি পুনরায় পুনর্বিবেচনা করেছি -vএবং দেখে মনে হচ্ছে অভ্যন্তরের কোনও কিছুর জন্য অপারেশন অনুমোদিত নয়।

উত্তরটি যতটা সম্ভবত সম্ভবত "ইউনিক্স শিখুন" তেমনই আমি রুবির উপর একটি টিউটোরিয়ালের জন্য এখানে কিছু কাজের প্রয়োজনীয়তা মেনে চলার চেষ্টা করছি, সুতরাং আমি বর্তমানে যেখানে রয়েছি তার উপরে কয়েক ধাপ।

brew doctor:

Warning: /usr/local/Frameworks isn't writable.

This can happen if you "sudo make install" software that isn't managed by
by Homebrew. If a formula tries to write a file to this directory, the
install will fail during the link step.

You should probably `chown` /usr/local/Frameworks
Warning: /usr/local/Cellar isn't writable.
You should `chown` /usr/local/Cellar
Warning: /usr/local/etc isn't writable.

This can happen if you "sudo make install" software that isn't managed by
by Homebrew. If a formula tries to write a file to this directory, the
install will fail during the link step.

You should probably `chown` /usr/local/etc
Warning: /usr/local/include isn't writable.

This can happen if you "sudo make install" software that isn't managed by
by Homebrew. If a formula tries to write a file to this directory, the
install will fail during the link step.

You should probably `chown` /usr/local/include
Warning: /usr/local/lib isn't writable.

This can happen if you "sudo make install" software that isn't managed by
by Homebrew. If a formula tries to write a file to this directory, the
install will fail during the link step.

You should probably `chown` /usr/local/lib
Warning: /usr/local/lib/pkgconfig isn't writable.

This can happen if you "sudo make install" software that isn't managed by
by Homebrew. If a formula tries to write a file to this directory, the
install will fail during the link step.

You should probably `chown` /usr/local/lib/pkgconfig
Warning: /usr/local/opt isn't writable.
You should `chown` /usr/local/opt
Warning: /usr/local/share isn't writable.

This can happen if you "sudo make install" software that isn't managed by
by Homebrew. If a formula tries to write a file to this directory, the
install will fail during the link step.

You should probably `chown` /usr/local/share
Warning: Some directories in /usr/local/share/man aren't writable.
This can happen if you "sudo make install" software that isn't managed
by Homebrew. If a brew tries to add locale information to one of these
directories, then the install will fail during the link step.
You should probably `chown` them:

    /usr/local/share/man
    /usr/local/share/man/man1
    /usr/local/share/man/man3
    /usr/local/share/man/man5
    /usr/local/share/man/man7
    /usr/local/share/man/man8
Warning: /usr/local/var isn't writable.

This can happen if you "sudo make install" software that isn't managed by
by Homebrew. If a formula tries to write a file to this directory, the
install will fail during the link step.

You should probably `chown` /usr/local/var

না brew doctorআপনি কিছু দরকারী বলুন? আউটপুট এখানে পোস্ট করুন।
আয়ান সি

@IanC। এটি মদ্যপান সম্পর্কিত সমস্ত কিছু লিখিত না হওয়ার দীর্ঘ তালিকা। স্ট্যাকেক্সচেঞ্জ পেস্টবিন ইউটিলিটি আছে কি? এটি একটি ভয়ঙ্কর অনেক আছে ।
টিগট

ঠিক আছে, এটা অদ্ভুত। এখনকার তুলনায় এটি এখন অনেক কম ছিল।
Tigt

জাস্ট এফআইআই: আমি সবেমাত্র দৌড়ে গিয়ে brew updateআবিষ্কার করেছি যে "হোমব্রিউয়ের আর / ইউএসআর / স্থানীয় মালিকানার প্রয়োজন নেই।" এই প্রশ্নে আরও তথ্য । স্পষ্টতই এই পয়েন্টে
পৌঁছানোর

উত্তর:


26

নিম্নলিখিত ডিরেক্টরিতে ডিরেক্টরিটির অনুমতিগুলি পরিবর্তন করে এটি সমাধান করা উচিত:

$ cd /usr/local
$ sudo chown -R <your-username>:<your-group-name> *

আপনি যদি নিজের গ্রুপটি না জানেন তবে কেবল টাইপ করুন id -g


গুরুত্বপূর্ণ অংশটি -Rএটি পুনরাবৃত্তি করা হয়। এবং আপনি সম্ভবত chownব্যবহার করতে হবে sudo। ব্যবহারকারীর গোষ্ঠীর জন্য, আমি সাধারণত staffওএস এক্স ব্যবহার করি
nwinkler

মজাদার. গোষ্ঠীটি কেন কেবল ব্যবহারকারীর থেকে আলাদা?
টিগট

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

1
আমি বিশ্বাস করি এটি বিপজ্জনক কারণ এটি 'স্টাফ' গ্রুপ নির্বাচন করে, যার অর্থ OS এর প্রতিটি ব্যবহারকারী তারপরে / usr / এর বিষয়বস্তু পরিবর্তন করতে পারে। আপনার সম্ভবত 'অ্যাডমিন' এ স্যুইচ করা উচিত।
ইন্ডোলারিং

1
@ ডিফ্র্যাঙ্কো হ্যাঁ, এটি হোমব্রিউয়ের একটি ভুল। তারা একই চিন্তা করেনি যে একই মেশিনে দু'জন ব্যবহারকারী থাকলে কী হয়।
পোয়েজ

22

আপনাকে উন্নত প্রিলাগুলি সহ কমান্ডটি চালাতে sudo ব্যবহার করতে হবে :

sudo chown -R `whoami` /usr/local

আমি করেছিলাম. "অপারেশন অস্বীকার করা হয়েছে, তাই আমি এটি করলাম।"
Tigt

1
ফিশ শেল ব্যবহারকারীদের জন্য এটি হবেsudo chown -R (whoami) /usr/local
কিবিন

10

গতকাল আমি ম্যাকোস 10.13.4 নিয়ে এই সমস্যার মুখোমুখি হয়েছি এবং চেষ্টা করেছি sudo chgrp -R admin /usr/localবা ব্যবহার করার পরেও ত্রুটি sudo chown -R <your-username>:<your-group-name> /usr/localপেতে পারিOperation not permittedsudo

সুতরাং আমি কেবলমাত্র সম্পর্কিত ফোল্ডারের chgrpজন্য চেষ্টা করেছি (আমার ব্যবহারকারী গ্রুপে রয়েছে, আপনি যে ব্যবহার করছেন তার উপর নির্ভর করে, আপনি আলাদা গ্রুপে পরিবর্তন আনতে পারেন) এবং এই আদেশগুলি ব্যবহার করে গ্রুপটি সেই ফোল্ডারে অ্যাক্সেস মঞ্জুর করেHomebrewadminadminadmin

sudo chgrp -R admin /usr/local/Homebrew/
sudo chmod -R g+w /usr/local/Homebrew/
sudo chgrp -R admin /usr/local/var/homebrew/
sudo chmod -R g+w /usr/local/var/homebrew/

এই কমান্ডগুলি চালনার পরে, আমি কোনও সমস্যা ছাড়াই একটি নতুন প্যাকেজ ইনস্টল করতে সক্ষম হয়েছি। আপনি যদি কোনও অনুমতি ইস্যুতে আবার আঘাত করেন তবে আপনি প্রথমে দুটি কমান্ড চালনার চেষ্টা করুন ফোল্ডারের নামটি যেটি আপনি অনুমতি নিয়েছেন সেটির পরিবর্তে name

আশা করি এটি ম্যাকোস 10.13 এর সাহায্যে অন্যান্য ব্যবহারকারীদের সহায়তা করবে।

দ্রষ্টব্য: /usr/localগোষ্ঠীটির জন্য মালিক পরিবর্তন করা বা আপনার গোষ্ঠীটির জন্য /usr/localঅ্যাক্সেস মঞ্জুর করার সুযোগ থাকলেও, আপনি অন্য সম্পর্কযুক্ত ফোল্ডারটিও যেমন পরিবর্তন করছেন তেমন কখনও আপনার করা উচিত নয়। আপনার যে ফোল্ডারটি প্রয়োজন সেটি পরিবর্তন করা অনেক বেশি সুরক্ষিত।


এটা সত্যিই আমার জন্য ভাল যায়! <3 ধন্যবাদ
দারিয়সভি

এটি সঠিক উত্তর হিসাবে ভোট দেওয়া উচিত! আপনার সাহায্যের জন্য ধন্যবাদ!
যিনি

2

ডিরেক্টরিগুলিতে অনুমতি সংক্রান্ত সমস্যাগুলি সমাধান করার জন্য আমরা নিম্নলিখিত কমান্ডটি সম্পাদন করতে পারি:

brew prune


0

মধ্যে রেজা দ্বারা উত্তর এই প্রশ্ন আমার জন্য কাজ:

sudo chown -R $(whoami) /usr/local/*

আপনি নিজে / usr / স্থানীয় জন্য অনুমতি পরিবর্তন করতে পারবেন না, তবে আপনি নীচে ফোল্ডারগুলির জন্য সঠিক অনুমতি পরিবর্তন করতে পারেন

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