В Linux владение и разрешения для каждого файла или папки обрабатываются отдельно от всех других папок и файлов -независимо от состояния родительских каталогов. Когда вы создаете новую папку (в любом месте ), она получает право собственности на пользователя, который ее создал. Это хорошо и важно для модели безопасности Linux.
Когда команда ls
дает вам «root :root», значит, root создал файл/папку (или кто-то сделал chown root:root
. Но видимо пользователь rslsync (или liam )не (и не должен )принадлежать к группе "root". Вот почему они не получают разрешения, указанные в поле «группа» флагов разрешений. Вместо этого они получают разрешения, указанные в поле «другие». А стандартные разрешения для этих полей вообще никакие разрешения...
это не связано с версией rpm
. При упаковке вам нужно решить, какими файлами и папками вы будете владеть. Если вы используете:
%files
/opt/manoj/*
, тогда вашему пакету будут принадлежать все файлы в каталоге /opt/manoj
, но не сам каталог /opt/manoj
. Затем вы должны использовать
%files
/opt/manoj
таким образом, чтобы ваш пакет владел каталогом /opt/manoj
(и всем, что ниже, рекурсивно ).