Homebrew จะไม่เชื่อมโยงคอมไพล์


11

เมื่อผมติดตั้งคอมไพล์คอมไพล์หรืออัพเกรดผ่านทางฉันไม่สามารถเชื่อมโยงกับbrew brew link gitถ้าฉันลองsudo brew link gitฉันจะได้รับ:

ขี้ขลาดปฏิเสธที่จะเชื่อมโยงชง sudo

มันบอกว่าฉันต้องตรวจสอบสิทธิ์บน:

/usr/local/share/gitk/lib
/usr/local/share/git-gui/lib
/usr/local/share/git-core/templates
/usr/local/share/git-core/templates/hooks
/usr/local/share/git-core

ฉันchmodแก้ไขทุกอย่างเป็น 777 แต่ฉันไม่แน่ใจว่ามันดีหรือไม่

ตอนนี้ฉันสามารถเชื่อมโยงคอมไพล์ ฉันควรเปลี่ยนการอนุญาตเป็นการอนุญาตที่น้อยกว่าหรือไม่

คำตอบ:


5

การอนุญาต 777 ไม่จำเป็นต้องเลวร้ายที่นี่ - คุณอาจจะไม่เคยเจอปัญหาเรื่องการอนุญาตและมันไม่ใช่ปัญหาด้านความปลอดภัยขนาดใหญ่ที่ฉันพูด

อย่างไรก็ตามสิทธิ์ "ปกติ" ใน/usr/local/shareHomebrew ที่ต้องควรจะเป็น (ซ้ำ) 755 rwxr-xr-xจึง

chmod -R 755 /usr/local/share

อย่างน้อยbrewไม่ควรได้รับอนุญาต sudo เพื่อทำสิ่งใดในนั้น เพียง/usr/localเป็นเจ้าของrootแต่สามารถเขียนได้สำหรับstaffกลุ่มที่ผู้ใช้ของคุณควรจะอยู่ใน

สำหรับการแก้ไขการติดตั้ง Homebrew ที่มีอยู่ให้ตรวจสอบส่วนสำคัญนี้ซึ่งเป็นสคริปต์ที่จะพยายามแก้ไข/usr/localสิทธิ์ของคุณ


ตัวอย่างเช่นนี่คือรายการไดเรกทอรีของหนึ่งในการติดตั้ง Homebrew (ของฉัน) Homebrew ที่มีghostscriptข้อยกเว้นเพียงอย่างเดียวที่จำเป็นต้องมีsudo brew link:

aeneas:local werner$ ls -la /usr/local/share/
total 40
drwxr-xr-x  11 werner  staff  374 Mar  5 14:53 .
drwxrwxr-x  14 werner  staff  476 Feb 28 12:51 ..
drwxr-xr-x   6 werner  staff  204 Mar  5 14:54 aclocal
drwxr-xr-x   8 werner  staff  272 Mar  5 14:53 doc
lrwxr-xr-x   1 werner  staff   34 Feb  8 12:26 ffmpeg -> ../Cellar/ffmpeg/0.10/share/ffmpeg
drwxr-xr-x   4 werner  wheel  136 Apr 16  2010 ghostscript
lrwxr-xr-x   1 werner  staff   36 Mar  5 14:53 git-core -> ../Cellar/git/1.7.9.2/share/git-core
lrwxr-xr-x   1 werner  staff   35 Mar  5 14:53 git-gui -> ../Cellar/git/1.7.9.2/share/git-gui
lrwxr-xr-x   1 werner  staff   32 Mar  5 14:53 gitk -> ../Cellar/git/1.7.9.2/share/gitk
lrwxr-xr-x   1 werner  staff   34 Mar  5 14:53 gitweb -> ../Cellar/git/1.7.9.2/share/gitweb
drwxr-xr-x   9 werner  staff  306 Mar  5 14:53 man

brew doctorสำหรับขั้นตอนการวินิจฉัยเพิ่มเติมวิ่ง
slhck

น่าเสียดายที่หมอชงไม่ให้ข้อมูลที่เป็นประโยชน์ในกรณีนี้ กระทู้ที่กล่าวถึงนี้แก้ไขปัญหาที่คล้ายกันสำหรับฉันขอบคุณ :)
TheDeadSerious

เมื่อฉันติดตั้งชงฉันไม่จำเป็นต้องใช้ sudo สำหรับอะไรมาก บางทีคุณอาจจะทำอะไรบางอย่างที่คุณไม่ควรมีในเวลาที่ได้รับอนุญาตและหรือกรรมสิทธิ์จากการตี?
dstarh

@dstarh นั่นมักจะเป็นปัญหา ทุกวันนี้ Homebrew ไม่ควรทำอะไรเมื่อsudoใช้
slhck

ทำไม Homebrew ไม่อนุญาตให้เราใช้ sudo เราต้องยุ่งกับการอนุญาตของเราในการเชื่อมโยงสิ่งต่าง ๆ เมื่อมันควรปล่อยให้เราsudo brew link [package]เหมือนได้รับ apt-get ฉันเพิ่งคัดลอกห้องสมุดจากห้องใต้ดินตัวเองทุกครั้งที่ฉันต้องการอัปเดตบางสิ่งมากกว่าพยายามจัดการกับสิ่งนี้
sudo

0

ฉันยังไม่ได้ลองแก่นสาร แต่พยายามไปchmod 775ยังโฟลเดอร์ เนื่องจากroot:wheelไม่สามารถเปลี่ยนแปลงได้ ฉันอ้างอิงเว็บไซต์ญี่ปุ่น

sudo chown yourusername:admin -R /usr/local/share/ghostscript
brew link ghostscript
brew doctor

จากนั้นทำงานให้ฉันด้านบน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.