मैक ओएस एक्स 10.13 हाई सिएरा में होमब्रेव के लिए चॉइस / यूएसआर / लोकल नहीं कर सकते


118

Homebrew / usr / लोकल में अनुमतियों की आवश्यकता है और चूंकि कोई भी मेरे लैपटॉप का उपयोग नहीं करता है जो मैंने हमेशा बस किया है

sudo chown -R $(whoami) $(brew --prefix)

लेकिन उच्च सिएरा में, यह देता है

chown: /usr/local: Operation not permitted

क्या है फिक्स?


इसके साथ हल किया गया: sudo chown -R "$ USER": एडमिन / usr / लोकल / *
Marcelo Campusano

जवाबों:


218

समस्या बनी रही ... गहरी खुदाई करने के बाद मैंने पाया कि केवल होमब्रे को अनइंस्टॉल करना और फिर इसे स्थापित करना इस मुद्दे को हल करता है।

स्थापना रद्द करें

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"

फिर इसे फिर से स्थापित करें:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

4
यह "हाई" सिएरा अपग्रेड के बाद मेरे होमब्रे को ठीक करने का एकमात्र तरीका था। मेरी त्रुटि थी: gh4x-mbpr:~ gh4x$ brew link git Linking /usr/local/Cellar/git/2.15.0... Error: Permission denied @ dir_s_mkdir - /usr/local/lib और sudo chown -R $(whoami) $(brew --prefix)/* सहायता नहीं की ...
gh4x

अविश्वसनीय। पहली बार विफल, स्क्रिप्ट की स्थापना रद्द करने में विफल रहा, दूसरा इंस्टॉल काम किया।
ग्रीनएजजेड

आप brew listपहले एक फ़ाइल के आउटपुट को सहेजना पसंद कर सकते हैं , जो पैकेज स्थापित किए गए थे उसका रिकॉर्ड होना चाहिए।
जाइल्स गार्डम

1
अन्य विभिन्न Mojave homebrew सुधारों में से कोई भी मेरे सिस्टम पर काम नहीं करेगा। अनइंस्टॉल / रीइंस्टॉल ने पूरी तरह से काम किया।
pkamb

2
कैटालिना के साथ भी काम करता है
जिफिल्टे फिश

52

दुर्भाग्य से आप /usr/localहाई सिएरा में नहीं रह सकते हैं । वर्कअराउंड है sudo mkdir /usr/local/includeऔर /usr/local/Frameworksयदि वे मौजूद नहीं हैं, और

sudo chown -R $(whoami) $(brew --prefix)/*

इस सरल समाधान के लिए और अद्भुत होमब्रेव के लिए ilovezfs का धन्यवाद!


9
अभी भी काम नहीं कर रहा है। $ काढ़ा अद्यतन त्रुटि: / usr / स्थानीय निर्देशिका लिखने योग्य नहीं है।
लारेंस कोप

स्थापना रद्द करने और पुनः स्थापित करने की कोशिश करें Homebrew: stackoverflow.com/questions/46459152/…
Ruggershawn

जैसा कि मैंने कहीं और टिप्पणी की, स्थापना रद्द करना आपके सभी काढ़ा पैकेज को हटा देता है
jaydel

$(brew --prefix)/usr/local/मुझे विश्वास करना चाहिए ।
जॉर्डन स्टीवर्ट

33

आप /usr/localस्वयं के लिए अनुमति नहीं बदल सकते हैं , लेकिन आप नीचे दिए गए फ़ोल्डरों के लिए सही अनुमति को बदल सकते हैं, इसलिए यह निर्धारित किया गया है
sudo chown -R $(whoami) /usr/local/*


1
एक ही मुद्दा अभी भी प्राप्त करें
लारेंस कोप

2
MacOS हाई सिएरा पर चल रहा है। काम किया। धन्यवाद।
प्रिंस ओडेम

2
मेरे लिए काम किया: macOS हाई सिएरा 10.13.6
गेल पारसलो

8

मैं इसके बाद यह लेकिन समस्या अभी भी जारी रहती है।
इसलिए, मैंने पिछले एक की स्थापना रद्द किए बिना होमब्रेव को फिर से इंस्टॉल किया । अब यह काम कर रहा है!
(मुझे नहीं पता कैसे)


3
मैं होमब्रे को पूरी तरह से अनइंस्टॉल करने की सलाह देता हूं और फिर इसे फिर से इंस्टॉल करता हूं।
k1r8r0wn

एकाधिक स्थापित काम किया, जब तक मैं अनइंस्टॉल नहीं किया, मैं इसे ठीक करने में सक्षम नहीं था।
cbowns

अनइंस्टॉल करने से सबकुछ चौपट हो जाएगा। मेरे पास कई टन पैकेज स्थापित हैं और उन्हें फिर से स्थापित करना होगा। अफसोस की बात है कि यह सब पहले काम किया क्योंकि मैं उन संकुल है।
jaydel


3

सिस्टम इंटीग्रिटी प्रोटेक्शन को अक्षम करने का प्रयास करें । प्रलेखन से:

सिस्टम इंटीग्रिटी प्रोटेक्शन को csrutil (1) कमांड का उपयोग करके कॉन्फ़िगर किया जा सकता है।

आप देख सकते हैं कि वर्तमान में टर्मिनल में निम्नलिखित कमांड चलाकर सिस्टम इंटीग्रिटी प्रोटेक्शन आपके सिस्टम पर सक्षम है या नहीं:

$ csrutil status
System Integrity Protection status: enabled.

सिस्टम इंटीग्रिटी प्रोटेक्शन को सक्षम या अक्षम करने के लिए, आपको रिकवरी ओएस को बूट करना होगा और टर्मिनल से सीएसआरुटिल (1) कमांड चलाना होगा।

रिकवरी ओएस को बूट करें अपनी मशीन को पुनरारंभ करके और स्टार्टअप पर कमांड और आर कुंजी दबाए रखें। यूटिलिटीज मेनू से टर्मिनल लॉन्च करें। निम्नलिखित कमांड दर्ज करें: $ csrutil enable

किसी मशीन पर सिस्टम इंटीग्रिटी प्रोटेक्शन को सक्षम या अक्षम करने के बाद, रिबूट की आवश्यकता होती है।


जब भी यह सैद्धांतिक रूप से प्रश्न का उत्तर दे सकता है, तो उत्तर के आवश्यक भागों को शामिल करना और संदर्भ के लिए लिंक प्रदान करना बेहतर होगा
जेक साइमन

3
यह एक छोटा सा है जैसे कि आपकी टेबल आरा से गार्ड को हटाना। यह काम करता है, और यह कभी-कभी आवश्यक हो सकता है, लेकिन यह सुरक्षित है अगर आपको ऐसा करने की आवश्यकता नहीं है। अपने आप को / usr / स्थानीय के मालिक के रूप में होमब्रेव काम करने के लिए सेट करना हमेशा एक हैक की तरह लगता था।
कालेब

3
यह बहुत हतोत्साहित है! यह बेहद खतरनाक है जब तक कि उपयोगकर्ता वह / वह नहीं कर रहा है।
अबु शमोन

@oligofren: D: D: D मनुष्य पर आते हैं। आराम से, यह एक अंग्रेजी word in contextप्रतियोगिता नहीं है। : D: D ध्वज को उपयोगकर्ता को चेतावनी देने के लिए। लेकिन ठीक है, आप मेरे लिए शब्दांकन उठाएँ: p: p
अबू शमोन

1

यदि आप zsh का उपयोग कर रहे हैं क्योंकि आप बैश से आते हैं तो आपको अपना $ PATH बदलना पड़ सकता है। आपको export PATH=$HOME/bin:/usr/local/bin:$PATH .zshrc में जोड़ना चाहिए

तो यह काम करना चाहिए, इस समस्या को मेरे मैक में इस तरह से हल किया।


1

मैं 10.13 हाई सिएरा पर भी हूं। मैंने पिछले सुझावों की कोशिश की; कुछ भी काम नहीं किया। अंततः मैंने पहले कमांड-लाइन टूल्स स्थापित करने की कोशिश की :

xcode-select --install

और फिर बाद में (फिर से) काढ़ा स्थापित कमांड चलाया:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

और यह अंत में काम किया।


0

सुनिश्चित करें कि आपके पास घर के फ़ोल्डर या किसी भी फ़ोल्डर में लॉक सेट नहीं है, जिसे इंस्टॉल करने की आवश्यकता है।

भले ही अनुमतियाँ और स्वामित्व सही तरीके से सेट किए गए हों और आप वर्तमान में एक सही उपयोगकर्ता / या रूट उपयोगकर्ता के साथ लॉग इन हैं, यह आपको नए फ़ोल्डर या निर्देशिका बनाने की अनुमति नहीं देगा।


0

मेरे पास / उपयोगकर्ता / स्थानीय / फ्रेमवर्क फ़ोल्डर नहीं था, इसलिए इसने मेरे लिए इसे निर्धारित किया

sudo mkdir -p /usr/local/Frameworks
sudo chown -R $(whoami) /usr/local/Frameworks

मेरे पास OSX हाई सिएरा है


0

यह कौशिक है। मैं मैकबुक प्रो macOS कैटालिना 10.15.4 का उपयोग कर रहा हूं। मैंने एक नया व्यवस्थापक खाता बनाया, लेकिन काढ़ा त्रुटि फेंक रहा था। इसलिए, मैंने इस पोस्ट से एक कदम आगे बढ़ाया। क्या काम किया है:

sudo chown -R $ (whoami) $ (काढ़ा - उपसर्ग) / *

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.