c4f*_*t0r 4 linux debian fedora sles
我在 Opensuse 12 和 Fedora 17 上试过这个,我使用以下命令
touch file
chown 777 file
ls -l file
-rw-r--r-- 1 777 root 0 Oct 9 21:43 file
grep 777 /etc/passwd
echo $?
1
Run Code Online (Sandbox Code Playgroud)
没有用户 777
grep pippo /etc/passwd
echo $?
1
chown pippo file
chown: invalid user: `pippo'
Run Code Online (Sandbox Code Playgroud)
但是,如果我使用不存在的用户,则会出现一个错误。
为什么我可以将不存在的数字用户与 chown 一起使用,而不能与名称一起使用?
Mat*_*Ife 10
为什么我可以将不存在的数字用户与 chown 一起使用,而不能与名称一起使用?
因为用户名必须解析为 UID,所以如果用户不存在,则无法进行解析,而 UID 是终止类型(它描述自己没有解析)。
从技术上讲,操作系统的所有 chown 请求都必须针对 UID 完成。用户名是为了您的利益,而不是操作系统。