копирование файлов и наследование разрешений целевой папки

Когда я копирую файлы на USB-диск или в другую учетную запись на том же диске, разрешения не изменяются на целевую. Например, когда я копирую файлы из учетной записи X в папку учетной записи Y, права доступа к файлам все еще принадлежат учетной записи X.

Мне нравится копировать файлы и изменять разрешения для учетной записи Y.

Как мне это сделать?

1
задан 14 October 2013 в 08:41

2 ответа

Для этого вы можете использовать ACL и команду setfacl .

Записи ACL

Записи ACL состоят из пользователя (u), группы (g), других (o) и маски действующих прав (m). Эффективная маска прав определяет наиболее ограничивающий уровень разрешений. setfacl устанавливает разрешения для данного файла или каталога. getfacl показывает разрешения для данного файла или каталога.

Значения по умолчанию для данного объекта могут быть определены.

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

Это та часть, за которой вы находитесь:

Копирование ACL в ACL по умолчанию

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

getfacl -a /path/to/dir | setfacl -d -M- /path/to/dir

Вам необходимо добавить опцию acl при монтаже. В /etc/fstab добавьте acl к параметрам вашего диска. Убедитесь, что вы используете LABEL, а не UUID.

LABEL="ExternalUsbDisc"   /media/usb-disc     ext4   defaults,acl   0   2
0
ответ дан 14 October 2013 в 08:41

Во-первых, я думаю, что мы говорим о смене владельца, а не о разрешениях.

Когда вы копируете файл, он будет воссоздан в целевой папке. Вот почему файлы будут иметь вашу учетную запись в качестве владельца. Вы не можете создавать файлы с учетной записью X и владельцем Y.

Но вы, конечно, можете изменить владельца файлов после того, как скопировали их.

Как ваш пользователь X введите:
chown <accountY>:<accountY> /path/to/file.test

Или рекурсивно для изменения владельца папки и всех файлов в пределах:
chown -R <accountY>:<accountY> /path/to/folder

Это изменит владельца и группу файлов / папок.

0
ответ дан 14 October 2013 в 08:41

Другие вопросы по тегам:

Похожие вопросы: