linux - 尝试更改符号链接(symbolic link)的权限会导致更改其目标的权限

标签 linux shell chown

我正在尝试更改指向另一个目录的符号链接(symbolic link) (jakarta) 的所有权,但是当我运行时

$ chown user1 jakarta

它更改了 jakarta 指向的目录的所有权。为什么?

$ chown -h user1 jakarta
ownership of `jakarta' retained as user1

最佳答案

您正在尝试更改符号链接(symbolic link)的所有权,但是,链接本身的权限并不重要 - 链接指向的目标的权限是什么映射器。如果您这样做,无论出于何种原因,想要更改实际符号链接(symbolic link)的所有权,您可以使用 chown -h:

$ ll
total 4.0K
lrwxrwxrwx 1 root root    3 Mar 25 08:18 bar -> foo/
drwxrwxr-x 2 root root 4.0K Mar 25 08:18 foo/

$ chown -v quux:quux bar
changed ownership of `bar' from root:root to quux:quux

注意它实际上是如何改变目标的(foo):

$ ll
total 4.0K
lrwxrwxrwx 1 root root    3 Mar 25 08:18 bar -> foo/
drwxrwxr-x 2 quux quux 4.0K Mar 25 08:18 foo/

$ chown -vh quux:quux bar
changed ownership of `bar' from root:root to quux:quux

$ ll
total 4.0K
lrwxrwxrwx 1 quux quux    3 Mar 25 08:18 bar -> foo/
drwxrwxr-x 2 quux quux 4.0K Mar 25 08:18 foo/

关于linux - 尝试更改符号链接(symbolic link)的权限会导致更改其目标的权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22627033/

相关文章:

python - crontab不会执行python

regex - 在标记字符之后选择具有 n 个相同字段的行

windows - 当不区分大小写的客户端联系和网络服务器时会发生什么?

linux - Bash 为带有反引号/可执行部分的命令设置别名(转义反引号)

c++ - 如何使用 boost 库更改文件所有权?

linux - 如何在 ARCH Linux arm LAMP 服务器(PogoPlug)上安装 VNC?

bash - ∴ 字符在 bash shell 中有什么作用?

linux - Windows shell 脚本中的 echo %ERRORLEVEL% 与 echo $?在Linux中: are there any differences in behavior?

linux - 为什么我的 dirs 继承组权限不起作用?

linux - 将文件所有权更改为 root 但原始用户仍然可以编辑该文件?