У меня есть простой скрипт, который распаковывает файл на установленный общий ресурс Windows. Обычно он запускается как псевдоним Postfix при поступлении нового сообщения электронной почты, но даже когда я запускаю его как root, я получаю отказ в разрешении на отказ.Perl-скрипт не может распаковать на установленный общий доступ к ОС Windows - разрешено разрешение
Скрипт делает это:
if (</tmp/*.zip>){
unzip '</tmp/*.zip>' => '</mnt/win/#1.txt>'
or die "unzip failed: $UnzipError\n";
}
Как корень я могу скопировать файлы в/мнт/выиграть без проблем, но когда этот скрипт запускается Postfix он терпит неудачу с разрешения отказано.
/и т.д./Fstab выглядит следующим образом:
//srvr1/tmp /mnt/win cifs credentials=/root/.smbcredentials,iocharset=iso8859-1,sec=ntlm 0 0
Ls -ld выглядит следующим образом:
drwxr-xr-x 2 root root 196608 Jul 15 17:24 /mnt/win
файлы, созданные с помощью сценария являются никто/nogroup, но я не знаю, как я могу изменить разрешения/mnt/win, чтобы никто/nogroup не читал/не писал.
cmhod -R ugo+RW /mnt/win
Также разрешено разрешение. Есть ли способ изменить разрешения в/etc/fstab, чтобы разрешить nobody/nogroup?
С какого модуля вы получаете 'unzip'? Вы действительно пытаетесь распаковать файл с именем ''? –
unzip происходит из 'IO :: Uncompress :: unzip' - и в этой команде есть параметр, который добавляет имя файла в конце. –