Nhiều năm trước, bạn có thể thoát khỏi việc chạy brewbằng root chỉ bằng cách truy cập brewvào root, nhưng họ đã loại bỏ tính năng đó. Vì vậy, trong Homebrew 1.1.6, tôi đã từng chỉnh sửa /usr/local/Homebrew/Library/Homebrew/brew.shđể xóa kiểm tra gốc (công cụ kiểm tra đó là "cực kỳ nguy hiểm") để tôi có thể chạy brewnhư root.
Phiên bản mới hơn của Homebrew vẫn hoạt động với điều đó nhưng vẫn hoàn nguyên lại brew.shtệp mỗi lần sau khi tôi chạy brew, ngay cả khi tôi chmod 500. Tôi có thể viết một kịch bản để thay đổi nó sau đó chạy brewtự động, nhưng tôi không chắc liệu nó có luôn hoạt động không và không muốn có cơ hội. Có ai tìm thấy một phương pháp khác để chạy Homebrew với quyền root không?
sudokhông chạy nó dưới quyền root và nó cũng gây ra lỗi "cực kỳ nguy hiểm" tương tự. Tôi muốn chạy với quyền root vì nó có vấn đề khi cài đặt các gói nhất định, đặc biệt là nếu mọi thứ được cài đặt không thông qua Homebrew (ví dụ thông qua pip). Tôi đã đi xuống tuyến đường đó nhiều lần. Thêm vào đó, nó không hoạt động đúng cho nhiều người dùng mà không có cách giải quyết khác trừ khi tôi cài đặt mọi thứ như root.
rootlà rủi ro. Ngay cả khi xây dựng gói mà không có trình quản lý gói, bạn sẽ xây dựng gói dưới dạng người dùng không có đặc quyền (bản thân) sau đó cài đặt gói như rootvới sudo. Các trình quản lý gói như Fink và MacPorts đều được xây dựng với người dùng không có đặc quyền của riêng họ sau đó cài đặt dưới dạng root. Homebrew không có cơ chế như vậy.
brew.shtệp đang được hoàn nguyên sau khi sửa đổi nó và sau đó chạy một brewlệnh. Vì vậy, tôi có thể chạy sudo brew whatevervà brew whateversong song tốt. brew --versionDo đó, đầu ra của tôi là: Homebrew 1.2.1-98-g803f9cbf7b-dirty Homebrew/homebrew-core (git revision d3d6; last commit 2017-05-28) FYI, tôi đã sửa đổi brew.shtệp của mình để nhận xét tất cả các dòng trong check-run-command-as-roothàm và đặt một returncâu lệnh ở đầu hàm thay thế.
brewbằng root? Ngoài ra,sudokhông đủ cho mục đích của bạn?