При создании RPM файлы спецификации RPM имеют директиву %defattr. Я знаю, что он определяет атрибуты по умолчанию для файлов, установленных этим RPM. Если я напишу %defattr, как показано ниже, что это значит?
%defattr(-testuser, testuser)
Ответ 1
Указанный вами режим недействителен. % defattr принимает четыре аргумента
Директива% defattr позволяет устанавливать атрибуты по умолчанию для файлов и директив. % Defattr имеет аналогичный формат директивы% attr:
Разрешения по умолчанию или "режим" для файлов.
Идентификатор пользователя по умолчанию.
Идентификатор группы по умолчанию.
Разрешения по умолчанию или "режим" для каталогов.
Директива% attr имеет следующий формат:
% defattr (режим файла, пользователь, группа, режим dir)
Как и в случае% attr, если конкретный атрибут не требуется (обычно потому, что файл установлен с этим атрибут установлен правильно), то этот атрибут может быть заменен на тир. Кроме того, режим каталога может быть ограничен. % defattr имеет тенденцию будет использоваться в верхней части% файлов.
Ответ 2
Чтобы установить разрешения и владельцы в файле спецификации, обратитесь к каталогу, подобному файлу...
% defattr будет устанавливать все файлы без% attr (в этом случае rww owner apache group apache и установить каталоги до 755).