Чи можна порушити файл, заснований на числовому UID, користувачеві, який ще не існує?


19

Наприклад, для управління розділом диска для іншої системи, де існує користувач. Я знаю, що можу просто створити користувача тимчасово, але мені це питання цікаве.

Відповіді:


22

Так, ви можете chownдо цифрового UID, у якого немає відповідного користувача.


Я тестував, перш ніж запитав: chown \#1005 fileповертається chown: invalid user: ‘#1005’.
голосно

5
Не використовуйте октоторп; це не число. Просто використовуйте число, наприклад sudo chown 1005 /path/to/file.
DopeGhoti

За цією логікою sudoвважає , що це число. Крім того, він вважає, що групи цифр, які не починаються зі знака числа , не є цифрами. :)
галасливий

1
Я спершу спробував chown 1005 file, до речі. Це не спрацювало з незв'язаної причини, але я звинувачував це у відсутньому знаку числа. Ви повинні принаймні використовувати ./file, мабуть, для chown, щоб можна було сказати, хто з двох є користувачем. Просто так ви (читач) знаєте.
голосно

2
@glarry я не повинен користуватися ./. Чи справді ім'я файлу file?
Hauke ​​Laging

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 повинен бути номером групи / id, яку ви хочете змінити, і встановлюється в /etc/groupта /etc/passwdабо будь-яка інша система, наприклад ldap, ви можете посилатися на команди типу gentent, щоб мати більше інформації про це.
Філіп Гачуд
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.