|
Компьютерный форум OSzone.net » Linux и FreeBSD » Программирование в *nix » [решено] Ошибка вызова route в скрипте, запущенном через crontab |
|
[решено] Ошибка вызова route в скрипте, запущенном через crontab
|
ИО Капитана Очевидности Сообщения: 5387 |
Добрый день.
Написал скрипт на Bash для автоматического переключения маршрутов, однако столкнулся со странной ошибкой При запуске скрипта через crontab в полученном по email отчёте вижу следующее Цитата:
## Функция проверки качества линии связи testroute() { route add -host $testserver gw $gateway metric 1 <--------------- строка 40. ошибка ping $testserver -c $countping 2>&1 | tee $testpingfile route del -host $testserver <--------------- строка 42. ошибка testpinglost=$(grep "packets transmitted" $testpingfile | sed 's/[^0-9 ]//g;q' | awk '{print $3;}') testpingtime=$(grep "rtt min/avg/max/mdev" $testpingfile | sed 's%\/%\ %g' | sed 's/[^0-9 ]//g;q' | awk '{print $2;}' ) if [[ $testpinglost -gt $maxpinglost ]] then echo "Обнаружено $testpinglost потерянных пакетов. Связь по данному каналу неустойчива." echo $(date +%F\ %T)": Потерянных пакетов - $testpinglost" >> $logfile elif [[ $testpingtime -gt $maxpingtime ]] then echo "Время прохождения пакетов по данному каналу $testpingtime превышает разрешённое $maxpingtime ." echo $(date +%F\ %T)": Время прохождения пакетов по данному каналу - $testpingtime" >> $logfile else goodlink=true echo "Канал связи работает" fi } Однако ошибка эта возникает, только если скрипт вызывается через crontab от имени root. Если запускать скрипт вручную, то команда route выполняется правильно (при запуске через sudo) или выдаёт ошибку о недостаточности прав доступа (при запуске без sudo) В чём может быть проблема? |
||
------- Отправлено: 08:09, 19-12-2011 |
Необычный Сообщения: 4463
|
Профиль | Сайт | Отправить PM | Цитировать El Scorpio, посмотреть пути команд PATH для root. Ассоциации команд.
И наверно самое правильное - указывать полные пути для команды. /usr/sbin/route например. |
------- Отправлено: 08:22, 19-12-2011 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
just mar Сообщения: 3904
|
Профиль | Отправить PM | Цитировать El Scorpio,
lxa85 совершенно прав: для cron-а требуются полные пути и при вызове скрипта, и в самом скрипте. Это такие классические грабли ![]() |
Отправлено: 09:11, 19-12-2011 | #3 |
Забанен Сообщения: 6158
|
Цитата El Scorpio:
Цитата lxa85:
|
||
Отправлено: 09:20, 19-12-2011 | #4 |
ИО Капитана Очевидности Сообщения: 5387
|
Профиль | Отправить PM | Цитировать Всем спасибо.
С кроном мало работал, посему об этом не знал Исправил проблему по методу, предложенному vadblm Всё работает |
|
------- Отправлено: 09:23, 19-12-2011 | #5 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Перезагрузка в WPI (ошибка в скрипте?) | denkosa | Автоматическая установка приложений | 1 | 16-11-2011 21:00 | |
VBS/WSH/JS - [решено] Ошибка в скрипте | Loran_rus | Скриптовые языки администрирования Windows | 3 | 26-08-2011 11:15 | |
VBS/WSH/JS - ошибка в скрипте | D_e_n_n | Скриптовые языки администрирования Windows | 3 | 12-08-2011 14:03 | |
[решено] Ошибка вызова preg_match в РНР | dmitryst | Вебмастеру | 8 | 17-09-2008 15:41 | |
Ошибка в скрипте поиска | shurovik | О сайте и форуме | 2 | 02-09-2004 13:05 |
|