Назад | Перейти на главную страницу

chown с числовыми аргументами

Я пробовал это на 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, но не с именами?

Поскольку имя пользователя должно быть разрешено в UID, поэтому, если пользователь не существует, разрешение не может произойти, тогда как UID является завершающим типом (он описывает себя без разрешения).

Технически все запросы chown операционной системой должны выполняться с использованием UID. Имя пользователя предназначено для вас, а не для операционной системы.