Сделать каждый файл в каталоге исполняемым по умолчанию?

Они оба доступны на Buster (Testing)https://packages.debian.org/search?keywords=python3.7

Вы должны иметь возможность обратного переноса их из Testing в Stablehttps://backports.debian.org/Instructions/

1
19.08.2020, 11:33
1 ответ

Чтобы права применялись к новым файлам, вам нужен список управления доступом (ACL ). Основным инструментом для этого является setfacl.

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

Это можно сделать с помощью:

sudo setfactl -Rm d:u::rwx dir

Это означает «рекурсивно установить права пользователя по умолчанию как rwx для новых файлов». Когда я экспериментирую, я получаю это:

$ mkdir dir
$ getfacl dir
user::rwx
group::r-x
other::r-x
$ setfacl -Rm d:u::rwx dir
$ getfacl dir
user::rwx
group::r-x
other::r-x
default:user::rwx
default:group::r-x
default:other::r-x

Круто, мы добавили несколько строк default:, которые теперь говорят, что к новым файлам в этом каталоге будут применяться эти особые разрешения. Но когда я touchновый файл мы видим:

touch dir/file
ls -l dir
-rw-r--r-- 1 usr grp 0 Aug 19 10:57 file

Это не пользовательский -исполняемый файл!На справочной странице говорится:

The perms field is a combination of characters that indicate the read (r), write (w), execute (x) permissions. Dash characters in the perms field (-) are ignored. The character X stands for the execute permission if the file is a directory or already has execute permission for some user. Alternatively, the perms field can define the permissions numerically, as a bit-wise combination of read (4), write (2), and execute (1). Zero perms fields or perms fields that only consist of dashes indicate no permissions.

Я выделил соответствующую часть этого полужирным . Мы можем установить xACL так, чтобы новые файлы были исполняемыми, НО это будет применяться только в том случае, если файл уже имеет разрешения на выполнение для какого-либо пользователя.

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

Чтобы продемонстрировать, как с помощью ACL можно сделать что-то подобное, я покажу другой пример.:

setfacl -Rm d:g::rw dir
touch dir/file1
ls -l dir/file1
-rw-rw-r-- 1 usr grp 0 Aug 19 11:00 dir/file1

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

0
18.03.2021, 23:11

Теги

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