Problém: Nefunguje forward příchozí pošty do programu, každý pokus skončí s hlášením
----- The following addresses had permanent fatal errors -----
"|/usr/bin/vacation truhlik"
(expanded from: <truhlik@localhost>)
----- Transcript of session follows -----
sh: vacation not available for sendmail programs
554 "|/usr/bin/vacation truhlik"... Service unavailable
Odpověď: Váš sendmail používá smrsh, sendmail restricted shell, kdy nelze volat jiné programy než ty, které jsou vyjmenovány v /etc/smrsh. Obvykle se to dělá vytvořením symbolických odkazů používaných programů do tohoto adresáře, např.
ln -s /usr/bin/vacation /etc/smrsh
V /etc/sendmail.cf se u direktivy Mprog můžete dočíst: P=/usr/sbin/smrsh, tedy pro volání programů z .forward použít /usr/sbin/smrsh. Pokud vám to takto nevyhovuje a jste si jisti, že víte, co děláte, můžete direktivu změnit na volání běžného shellu /bin/sh, samozřejmě raději ve zdrojovém mc souboru než přímo v sendmail.cf (v rh systémech v adresáři /usr/share/sendmail-cf/cf).
V jiném než domácím prostředí to ale není moc dobrý nápad. Pokud uživatel potřebuje individuálně pracovat s příchozími dopisy, měl by využít možností lokálního doručovacího programu (MDA) procmail. Zkoušet sendmail z toho, co všechno dokáže sežrat, si nemůže dovolit každý.
Odkazy: