LINUX.ORG.RU

Crontab и VPNC

 , , ,


0

3

Добрый день. Не получается настроить восстановление VPNC из crontab. Пробую через .sh скрипт.

Скрипт vpnccall.sh (для возобновления работы vpnc)

#!/bin/bash
vpnc default.conf

Запись в crontab:

*/2 * * * * /home/root/vpnccall.sh
(Каждые две минуты вызываем скрипт vpnccall.sh, лежит в /home/root/).

В итоге в ответ получаю:

/bin/sh: /home/root/vpnccall.sh
: No such file or directory

Непонятно почему, файл существует, директория тоже

Ответ на: комментарий от f1u77y

Не, точно /home/root/ Сам создавал. Права выставлял. (Ну на всякий случай попробовал, тот же ответ, только без home).

nikola_blin
() автор топика

ls -l /home/root/vpnccall.sh покажи.

И еще, default.conf у тебя где лежит? Укажи в скрипте полный путь до него.

Deleted
()
Последнее исправление: MyLittleLoli (всего исправлений: 1)
Ответ на: комментарий от Deleted

эм. по ls:

-rw-r--r--. 1 root root 30 Feb 14 19:58 /home/root/vpnccall.sh

По полному пути - особо не зароляло. Он не видит мой файл скрипта почему-то.

nikola_blin
() автор топика

Перенос строк в сообщении обо ошибках из-за движка ЛОР'а, или там действительно вторая строка начинается с двоеточия?

Можете посмотреть audit.log, если SeLinux включён и файл вы создавали какими-нибудь сложными копированиями.

mky ★★★★★
()
Ответ на: комментарий от mky

Вторая строка действительно начинается с двоеточия. В audit.log огромное количество информации, не совсем понятной.

nikola_blin
() автор топика
Ответ на: комментарий от alozovskoy

Кстати, созданный testfile удалить из ftp не могу.

rm /home/root/testfile: no such file or directory

nikola_blin
() автор топика
Ответ на: комментарий от nikola_blin

Есть в нём вобще упоминание про ″vpnccall.sh″, думаю, что другого такого файла у вас в системе нет, так что можно просто грепнуть.

И vpnc есть в пути, может лучше прописать в скрипт полное имя?

mky ★★★★★
()
Ответ на: комментарий от mky

грепом посмотрел - никакого упоминания о файле, да и в принципе о vpnc.

Полное имя - ты имеешь в виду полный путь до команды vpnc прописать?

nikola_blin
() автор топика

Вообще, попробуй без скрипта, в кронтабе:

*/2 * * * * /путь/до/vpnc /путь/до/default.conf
Путь до vpnc можешь с помощью which vpnc посмотреть.

Deleted
()
Ответ на: комментарий от Deleted

Попробовал так:

*/2 * * * * /sbin/vpnc /etc/vpnc/default.conf

Судя по ответу:

/sbin/vpnc: couldn't open `/etc/vpnc/default.conf
.conf': No such file or directory
не может словить default.conf

Путь до default.conf искал через find / -name

nikola_blin
() автор топика
Ответ на: комментарий от Deleted

Я создал в home папку root. Там создал файлик с кронтабом (test):

*/2 * * * * /sbin/vpnc /etc/vpnc/default.conf

В терминале добавил этот файл в крон:

crontab /home/root/test

Ну и проверил его:

crontab -l

Вроде все как нужно.

nikola_blin
() автор топика
Ответ на: комментарий от Deleted
*/2 * * * * /sbin/vpnc /etc/vpnc/default.conf

Все делается под root'ом

nikola_blin
() автор топика
Ответ на: комментарий от nikola_blin

/sbin/vpnc: couldn't open `/etc/vpnc/default.conf

.conf': No such file or directory

Мне кажется у тебя с shell'ом что-то. Я, конечно, диванный, но такое поведение нормальным мне не кажется.

alozovskoy ★★★★★
()
Ответ на: комментарий от nikola_blin

Да, а почему в кроне то так? Попробуй в крон дописать в самом начале

SHELL=/bin/bash
alozovskoy ★★★★★
()
Последнее исправление: alozovskoy (всего исправлений: 1)
Ответ на: комментарий от nikola_blin

Ну тогда не знаю, сделай setenforce 0, и посмотри, будет ли после этого работать.

И ls -lZ /etc/vpnc/default.conf покажи.

Deleted
()
Последнее исправление: MyLittleLoli (всего исправлений: 1)
Ответ на: комментарий от Deleted

да в общем, хрень какая-то получается.

Временно решил вопрос тем, что кроном пингую нужный адрес каждые две минуты, vpnc не падает.

Но, блин, после включения vpnc перестал работать сервис soap на сервере.

nikola_blin
() автор топика
Ответ на: комментарий от nikola_blin

Кстати, а чего у тебя vpnc-то падает? Там какая-то проблема есть с pass-phase (или что-то такое), я давно с vpnc перелез на ike, может лучше его взять?

alozovskoy ★★★★★
()
Ответ на: комментарий от alozovskoy

Да я, если честно, без понятия. Админы нашей компании протянули VPN-туннель к внутреннему серверу банка, через их прокси мы добираемся до сервиса одного внешнего (напрямки нельзя, там авторизация банка требуется).

Я особо повлиять не могу на их решения - что тянуть и как. У меня задача - сервис опросить, получить от него ответ и все.

Но что-то админы проблемы решать не торопятся, а сроки горят, вот и пытаюсь детали эти с падениями своими костылями заделать.

nikola_blin
() автор топика
Ответ на: комментарий от nikola_blin

Файл для cron'а создавался в нормальном редакторе или он у вас с виндозными концами строк?

Смотрите в mc'шке файл /var/spool/cron/root, нажимаете там F4 и смотрите, что там в конце вашей строки после ″conf″, 0A или 0D.

mky ★★★★★
()
Ответ на: комментарий от mky

Файл создавал в notepad++ (utf без бома). Проверял в терминальном редакторе (vi вроде).

Сейчас поставил mc, поглядел там. В файле:

*/2 * * * * /sbin/vpnc /etc/vpnc/default.conf^M (после conf - 0D)

nikola_blin
() автор топика
Ответ на: комментарий от mky

если честно, каким-то ... все начало работать по простейшему пути:

*/8 * * * * /sbin/vpnc-disconnect
*/8 * * * * /sbin/vpnc default.conf
*/8 * * * * ping -c 5 192.168.0.19
nikola_blin
() автор топика
Ответ на: комментарий от nikola_blin

Дело ваше, конечно. Но, cron, ЕМНИП, не гарантирует очерёдность выполнения заданий, то есть когда-нибудь ″vpnc-disconnect″ может выполнится после ″/sbin/vpnc default.conf″.

mky ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.