Можно ли привязать файл, основанный на числовом UID, к пользователю, которого еще не существует?

19

Например, для управления разделом диска для другой системы, где существует пользователь. Я знаю, что могу временно создать пользователя, но нахожу этот вопрос интересным.

glarry
источник

Ответы:

22

Да, вы можете chownиспользовать числовой UID, у которого нет соответствующего пользователя.

DopeGhoti
источник
Я проверил, прежде чем я спросил: chown \#1005 fileвозвращается chown: invalid user: ‘#1005’.
Глэри
5
Не используйте восьмигранник; это не число. Просто используйте номер, например sudo chown 1005 /path/to/file.
DopeGhoti
Согласно этой логике, sudoдумает , что это число. Кроме того, он думает, что группы цифр, которые не начинаются со знака числа , не являются числами. :)
glarry
1
Я впервые попробовал chown 1005 file, кстати. Это не сработало по несвязанной причине, но я обвинил это в пропущенном числе. Вы должны по крайней мере использовать ./file, по-видимому, для chown, чтобы иметь возможность сказать, кто из них является пользователем. Просто, чтобы вы (читатель) знали.
Глэри
2
@glarry мне не нужно использовать ./. Имя файла действительно file?
Хауке Лагинг
11

chown UID:GID fileName может быть сделано либо с номерами или именем пользователя или группы

пример: chown 1000:1000 dirnameдействителен

вам, возможно, придется сбросить права доступа к каталогу, chmod 755например, после этого, чтобы получить к нему доступ

Советы

  • Вы можете проверить идентификатор пользователя с id someUsername
  • Вы можете проверить идентификатор группы с gid someUsername
  • Вы можете изменить разрешения только для каталогов с find someLocation -type d -exec chown 1000:1000 {} \;
Филипп Гачу
источник
Использование переменных chown -R $HOST_USER_ID:$HOST_GROUP_ID /usr/bin/mariadb/install/dataдает мне ошибку chown: invalid spec: '1000:'sous `Lubuntu 16/04
Стефан
Я мог бы обойти эту проблему, выполнив две разные командыchown -R $HOST_USER_ID /usr/bin/mariadb/install/data; chgrp -R $HOST_GROUP_ID /usr/bin/mariadb/install/data;
Стефан
@Stephane ваш UID и GID должен быть номер группы / ид вы хотите изменить, и выставиться в /etc/groupи /etc/passwdили любой другой системой , как LDAP, вы можете обратиться к командам , как gentent иметь более подробная информация об этом.
Филипп Гачу