Что бы вы ни делали, chmod 777
настолько неправильно направлен, что лишает вас прав на управление компьютером. Это серьезная проблема безопасности, когда файлы доступны для записи и выполнения всем пользователям.
Вероятно, вы ищете переменную UMASK
Procmail. Если разрешения слишком жесткие, установите более мягкий UMASK
перед доставкой. Пример:
:0
* some conditions
{
UMASK=003
:0
| uudeview --whatever
}
Системный вызов umask
может только лишить разрешений, но не добавлять их. Как правило, программа на C пытается создать файл данных, используя режим 0666
, а затем применяется umask
, часто получая что-то вроде 0644
(это означает, что эффективный umask
был чем-то вроде 0022
или 0033
). В Linux разрешения каталога также в некоторой степени влияют на разрешения. вновь созданных файлов. Но здесь мы выходим за пределы Procmail. Возможно, вы сможете добиться требуемого конечного результата, объединив UMASK
средства Procmail с правами доступа к каталогам.
Если «вложения», которые вы извлекаете, не являются вложениями MIME, а фактическими uuencode
, обратите внимание также на то, что кодировка задает разрешения для каждого закодированный файл. Если в строке begin
написано 644
, возможно, вам придется изменить это. Procmail снова спешит на помощь!
:0
* some conditions
{
UMASK=003
| sed 's/^begin [0-7][0-7][0-7][0-7]* /begin 664 /' | uudeview --whatever
}
В конце концов, если даже это не поможет, то можно свести к модификации uudeview
, возможно, подправив его исходный код, или создав оболочку, которая исправляет права после записи.
person
tripleee
schedule
11.03.2014