Предоставить пользователю доступ к папке без смены владельца?

11

У меня есть скрипт, который работает с /etc/NetworkManager:

drwxr-xr-x   6 root root    4096 Apr  3  2017 NetworkManager/

Я хочу дать пользователю право на programXзапись в эту папку без смены владельца.

Возможно ли это или мне придется сменить владельца?

Филип Киркбрайд
источник
1
chmod o+w /etc/NetworkManagerдолжно быть достаточно, но нарушит всю безопасность, так как эта папка будет доступна для записи всем пользователям. Добавление этого пользователя в группу также rootне является хорошим вариантом. Что делает твой сценарий? Может быть, есть способ сделать ваш сценарий более интегрированным, например, добавление programXв группу, netdevили это networkможет быть жизнеспособным решением
@nwildner это редактирует/etc/NetworkManager/NetworkManager.conf
Филип Киркбрайд

Ответы:

14

Для этого предназначены списки контроля доступа.

setfacl -m 'u: programX: rwx' / etc / NetworkManager
Учетная запись пользователя programXтеперь имеет доступ для чтения, записи и прохождения к каталогу, но не имеет права владения.

Бонусный способ сделать это на FreeBSD с его NFS ACL:

setfacl -m 'u: programX: rwxD :: allow' / etc / NetworkManager

дальнейшее чтение

JdeBP
источник
2

Вы можете использовать ACL для этого, прежде всего убедитесь, что пакет acl установлен.

После этого вы можете запустить

setfacl -m u:programX:rw NetworkManager/
Matt
источник