"你应该可能使用 `chown` 命令来更改它们的所有者"

29

我刚刚安装了Homebrew。当我运行brew doctor时,出现了以下内容:

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/de

"你应该可能'chown'它们"的意思是什么?有人能解释一下Homebrew到底想让我做什么吗?"

1
chown 的意思是:改变所有权。 - bouscher
2
我真的不明白为什么这个问题被关闭了。它是关于Homebrew的,而Homebrew是程序员用来进行编程的软件包管理器。在我看来,它完全符合SO的范围。 - dB'
我认为这有点牵强,它并不真正涉及编程——更适合放在“超级用户”、“Unix&Linux”或“Ask Different”部分。 - vol7ron
4个回答

66

好的,chown是Unix命令,用于更改文件的所有权。

Homebrew要求我更改/usr/local/share/man/de的所有权,以便Homebrew可以对其进行写入。 Homebrew使用与我相同的权限运行,因此将文件所有者更改为我自己应该可以解决问题。

运行以下命令可解决问题:

sudo chown $(whoami) /usr/local/share/man/de

7
这句话的意思是建议使用sudo chown myusername /usr/local/share/man/de命令。该命令的作用是将"/usr/local/share/man/de"文件夹的所有权变更为当前用户(myusername)。 - andreimarinescu
2
节省1000毫秒的时间来编写您的用户名。 sudo chown $(whoami)/usr/local/share/whatever - Alon Amir
补充一点,如果您想递归更改它,即包括子文件夹和文件,请使用添加-R。 - Allen Johnson

4

检查所有者和权限:

ls -la /usr/local/share/man/ | grep de; ls -la /usr/local/share/man/de/ | grep man1

改变它:

/usr/bin/sudo /usr/bin/chgrp admin /usr/local/share/man/de /usr/local/share/man/de/man1

/usr/bin/sudo /bin/chmod g+rwx /usr/local/share/man/de /usr/local/share/man/de/man1

现在您可以毫无问题地使用brew了;-)
Your system is ready to brew.

3
事实上,一条简单的命令就能完成所有工作。
sudo chown $(whoami) /usr/local/share/man/*/man1它可以帮助你更改文件拥有者并让你能够在本地共享手册页。

2

chown 用于更改文件的所有权。在这种情况下,对 sudo 的引用意味着以超级用户身份安装的文件将无法被普通用户运行 homebrew 时访问,从而使这些选项无效,并且如果尝试访问此类文件,则很可能会导致错误或不良结果。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接