У меня есть два сервера, на одном из которых есть том другого, смонтированный как устройство NFS. У меня есть приложение на установке, которое создает файлы, которые затем должны обрабатываться приложением на установке.
Я сталкиваюсь со ВСЕМИ проблемами с разрешениями. У меня одни и те же пользователи и группы на обоих серверах, но идентификаторы не совпадают.
Когда приложение на установщике создает файл на устройстве NFS, кажется, что этот файл принадлежит монтировщику по некоторой длинной строке чисел.
Я не могу запустить команду chown с установочной машины, потому что приложение не запускается от имени пользователя root.
Может кто-нибудь помочь мне?
Вам нужен какой-то метод для синхронизации учетных записей / идентификаторов пользователей между вашими системами.
Это может быть достигнуто вручную путем (осторожного) создания учетных записей и последующей синхронизации баз данных паролей (например, / etc / passwd в Linux), но гораздо чаще достигается с помощью службы каталогов, такой как NIS или LDAP. Затем на каталог ссылаются все системы, которым требуется общая информация для аутентификации, что делает его гораздо более масштабируемым, чем создание учетных записей в каждой системе.
В зависимости от того, сколько пользователей вы должны поддерживать, первый метод или его производная может потребовать меньше усилий, чем создание каталога. Я видел несколько случаев (и сам делаю это в некоторых небольших развертываниях), где системы управления конфигурацией (например, Кукольный или Повар) используются для синхронизации локальных баз данных паролей в каждой системе - это дает то преимущество, что сохраняет авторитетный источник учетных данных, но позволяет избежать накладных расходов на обслуживание службы каталогов.
Укажите UID / GID во второй системе при создании учетной записи. (Или централизовать аутентификацию.)
Из man useradd
:
-u, --uid UID Числовое значение идентификатора пользователя. Это значение должно быть уникальным, если не используется опция -o. Значение не должно быть отрицательным. По умолчанию используется наименьшее значение идентификатора больше 999 и больше, чем у любого другого пользователя. Значения от 0 до 999 обычно зарезервированы для системных учетных записей.
Из man groupadd
:
-g, --gid GID Числовое значение идентификатора группы. Это значение должно быть уникальным, если не используется опция -o. Значение не должно быть отрицательным. По умолчанию используется наименьшее значение идентификатора больше 999 и больше, чем у любой другой группы. Значения от 0 до 999 обычно зарезервированы для системных учетных записей.