2

Я устанавливаю некоторые пользовательские программы в качестве пользователя root (необходимость в этой ситуации).

Я установил для владельца / группы значение user1:user1 и предварительно установил все файлы на 644 в оболочке, затем скопировал и развернул с помощью ant.

Однако, когда файлы копируются из каталога развертывания, правообладатель снова становится корневым, и все файлы устанавливаются с разрешениями 666 .

Похоже, это происходит независимо от того, был ли файл перезаписан или создан заново. Я считаю, что есть способ установить параметр в командах cp , mv для сохранения разрешений, но это было бы много команд для изменения. Как я могу это исправить?

Есть ли какие-либо настройки, которые я могу временно изменить для пользователя root, чтобы при установке всегда сохранялись права доступа к файлу?

2 ответа2

2

cp -p сохранит ваши разрешения. Если вы хотите, чтобы копия была как можно ближе, вы можете просто использовать опцию "архив": cp -a . Из cp --help вы можете проверить это дважды:

-a, --archive                same as -dR --preserve=all

-p                           same as --preserve=mode,ownership,timestamps
  --preserve[=ATTR_LIST]   preserve the specified attributes (default:
                             mode,ownership,timestamps), if possible
                             additional attributes: context, links, xattr,
                             all
0

Нет. Но вы должны использовать вместо этого install , которая позволяет вам явно указать все это.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .