当我尝试在/ usr / bin文件夹中对二进制文件进行符号链接时,出现操作不允许错误:
sudo ln -s /usr/bin/python2.7 /usr/bin/python2
ln: /usr/bin/python2: Operation not permitted
即使是sudo,我也会收到此错误。
当我尝试在/ usr / bin文件夹中对二进制文件进行符号链接时,出现操作不允许错误:
sudo ln -s /usr/bin/python2.7 /usr/bin/python2
ln: /usr/bin/python2: Operation not permitted
即使是sudo,我也会收到此错误。
Answers:
/usr/bin
?El Capitan的新系统完整性保护功能可以防止对OS X的几个核心部分进行更改,包括大部分更改/usr/
,即使是root用户也可以更改。
/usr/local
而是使用本地自定义项(例如您所做的工作)。该路径/usr/local/bin
默认情况下不存在,但是您可以创建该路径并将自定义二进制文件(和符号链接)放入其中:
sudo mkdir -p /usr/local/bin
sudo ln -s /usr/bin/python2.7 /usr/local/bin/python2
请注意,虽然/usr/local/bin
默认情况下不存在的,它是在默认路径,所以只要你创建它,它会被搜索的命令。
也可以禁用系统完整性保护,但是通常最好将其保留并在更合适的位置进行自定义。关于Apple Stack Exchange的问题,有更多详细信息:El-Captain中的无根功能到底是什么?。
我在Mac OS High Sierra中为Sublime Text 3创建了符号链接,如下所示:
sudo ln -s /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/local/bin/
我还试图在“ / usr / bin”中创建符号链接,并得到“不允许操作”。
然后,我在“ / usr / local / bin”中创建了符号链接,没有错误。符号链接可以正常工作。只需确保路径中有“ / usr / local / bin”即可。
因此,似乎对“ / usr / bin”的访问受到限制。
重新启动系统- >长按在cmd + R。从实用程序菜单中选择一个终端,键入以下命令csrutil disable 关闭终端并重新启动系统。
sudo
。
1. Create a symbolic link to psql in usr/bin (for mac only)
command: sudo ln -s /Applications/Postgres.app/Contents/Versions/latest/bin/psql /usr/bin/psql
如果由于权限问题而无法创建符号链接,则归因于“ csrutil”。禁用csrutil后,您可以创建符号链接。请按照以下步骤禁用CSRUtill:
重新启动Mac。在OS X启动之前,按住Command-R并按住不放,直到看到Apple图标和进度条。释放。这会引导您进入恢复状态。从实用程序(在顶部栏)菜单中,选择终端。在提示符下,键入以下内容,然后按Return键:csrutil disable终端应显示一条消息,指出SIP已被禁用。从the菜单中,选择重新启动。