ОС: Solaris 9
есть такой вот скрипт:
# cat mail.sh
#/usr/bin/bash
TCP_HOST=172.16.10.20
TCP_PORT=25
NET_DEV=/dev/tcp
MAIL_FROM="root@sol1"
RCPT_TO="admin@d1.ru"
SUBJ="Report from sol1"
{ echo "HELO"; sleep 1;
echo "MAIL FROM: $MAIL_FROM"; sleep 1;
echo "RCPT TO: $RCPT_TO"; sleep 1;
echo "DATA"; sleep 1;
echo "From: $MAIL_FROM <$MAIL_FROM>"; sleep 1;
echo "To: $RCPT_TO <$RCPT_TO>"; sleep 1;
echo "Subject: $SUBJ"; sleep 1;
echo "Report:"; sleep 1;
metastat; sleep 1;
echo "."; sleep 1;
echo "QUIT";
} > $NET_DEV/${TCP_HOST}/${TCP_PORT}
когда я его запускаю из своего сеанса, т.е. в своем шелл, то скрипт отрабатывает без проблем, почта шлется. Когда я запихиваю его в cron, то получаю на рутовую почту следующее письмо:
Your "cron" job on sol1
/export/home/scripts/mail.sh
produced the following output:
/export/home/scripts/mail.sh: /dev/tcp/172.16.10.20/25: cannot create
я знаю, что в cron нету своих переменных среды, поэтому я пробовал добавлять в скрипт все переменные которые были в моем сеансе:
PWD=/export/home/scripts
TZ=Europe/Moscow
HZ=
HOSTNAME=sol1
MACHTYPE=sparc-sun-solaris2.9
MAIL=/var/mail/root
OLDPWD=/var/cron
EDITOR=vi
LOGNAME=root
SHLVL=1
SHELL=/sbin/sh
HOSTTYPE=sparc
OSTYPE=solaris2.9
HOME=/
TERM=xterm
PATH=/usr/sbin:/usr/bin:/usr/dt/bin:/usr/openwin/bin:/bin:/usr/ucb:/opt/sfw/gcc-3/bin
_=/usr/bin/env
и это тоже не помогло.
Почему не срабатывает скрипт по крону?
спасибо заранее!
Проблема с /dev/tcp в задании скрипта по cron
Модераторы: Trinity admin`s, Free-lance moderator`s
Re: Проблема с /dev/tcp в задании скрипта по cron
Здесь пропущен !:WeiH писал(а): #/usr/bin/bash
Код: Выделить всё
#!/usr/bin/bash
на что люди не идут лишь бы sendmail не настроить.WeiH писал(а): { echo "HELO"; sleep 1;
} > $NET_DEV/${TCP_HOST}/${TCP_PORT}
Дело не в переменных, дело в шелле: если не указано #!/bin/blahabla скрипт запускается через обычный шелл, который /dev/tcp не поддурживает.WeiH писал(а): я знаю, что в cron нету своих переменных среды, поэтому я пробовал добавлять в скрипт все переменные которые были в моем сеансе:
btw, для мониторинга метадевайсов лучше юзать скрипт metacheck, чем постоянно присылать вывод metastat. От него у операторов глаз замылиывается и они не видят проблем. Был опыт.
http://docs.sun.com/app/docs/doc/816-45 ... epg?a=view
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя