我在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
没有用户777
grep pippo /etc/passwd echo $? 1 chown pippo file chown: invalid user: `pippo'
但是,如果我使用不存在的用户,我得到一个错误。
为什么我可以使用数字不存在的用户与chown,但不是与名称?
为什么我可以使用数字不存在的用户与chown,但不是与名称?
由于用户名必须parsing为UID,因此如果用户不存在,则不会发生parsing,而UID是终止types(它自己描述自己而没有parsing)。
从技术上讲,操作系统的所有chown请求都必须针对UID进行。 用户名是为了您的利益,而不是操作系统。