URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 90235
[ Назад ]

Исходное сообщение
"Fetch proxy и cron"

Отправлено zandyg , 08-Ноя-10 14:26 
Доброго дня всем!
Помогите советом!
Имею FreeBSD 8.1 за прокси сервером. Чтобы fetch ходил в интернет через прокси с авторизацией, в make.conf прописал:
FETCH_ENV=FTP_PROXY=http://USER:PASS@IP_Proxy:Port_Proxy
FETCH_ENV=HTTP_PROXY=http://USER:PASS@IP_Proxy:Port_Proxy
Всё работает. Сделал скрипт, который испольует fetch и запускается через cron.При выполнении
скрипта не из cron-а, тоже все нормально. А вот если этот скрипт поставить в cron,  то fetch
выйти в интернет через прокси уже не может.
Подскажите, как еще можно передать FETCH_ENV для fetch в самом скрипте, так как make.conf в данном случае видимо не используется.


Содержание

Сообщения в этом обсуждении
"Fetch proxy и cron"
Отправлено lavr , 09-Ноя-10 12:08 
>[оверквотинг удален]
> Имею FreeBSD 8.1 за прокси сервером. Чтобы fetch ходил в интернет через
> прокси с авторизацией, в make.conf прописал:
> FETCH_ENV=FTP_PROXY=http://USER:PASS@IP_Proxy:Port_Proxy
> FETCH_ENV=HTTP_PROXY=http://USER:PASS@IP_Proxy:Port_Proxy
> Всё работает. Сделал скрипт, который испольует fetch и запускается через cron.При выполнении
> скрипта не из cron-а, тоже все нормально. А вот если этот скрипт
> поставить в cron,  то fetch
> выйти в интернет через прокси уже не может.
> Подскажите, как еще можно передать FETCH_ENV для fetch в самом скрипте, так
> как make.conf в данном случае видимо не используется.

man 3 fetch

далее зависит от используемого SHELL, например для Bourne-SHELL

#!/bin/sh

FTP_PROXY=http://USER:PASS@IP_Proxy:Port_Proxy
HTTP_PROXY=http://USER:PASS@IP_Proxy:Port_Proxy

export FTP_PROXY HTTP_PROXY

echo $FTP_PROXY $HTTP_PROXY | /usr/bin/mail -s fetch_env_for_cron user@domain

проверяете работу через cron, если все устраивает, удаляете echo и дописываете
свое.


"Fetch proxy и cron"
Отправлено zandyg , 09-Ноя-10 14:13 
> man 3 fetch
> далее зависит от используемого SHELL, например для Bourne-SHELL
> #!/bin/sh
> FTP_PROXY=http://USER:PASS@IP_Proxy:Port_Proxy
> HTTP_PROXY=http://USER:PASS@IP_Proxy:Port_Proxy
> export FTP_PROXY HTTP_PROXY
> echo $FTP_PROXY $HTTP_PROXY | /usr/bin/mail -s fetch_env_for_cron user@domain
> проверяете работу через cron, если все устраивает, удаляете echo и дописываете
> свое.

Спасибо.

Выяснилось, что можно просто добавить в /etc/crontab строки:
HTTP_PROXY=http://IP_Proxy:Port_Proxy
HTTP_PROXY_AUTH=basic:*:<USER>:<PASS>

и всё работает.



"Fetch proxy и cron"
Отправлено lavr , 09-Ноя-10 17:33 
>[оверквотинг удален]
>> HTTP_PROXY=http://USER:PASS@IP_Proxy:Port_Proxy
>> export FTP_PROXY HTTP_PROXY
>> echo $FTP_PROXY $HTTP_PROXY | /usr/bin/mail -s fetch_env_for_cron user@domain
>> проверяете работу через cron, если все устраивает, удаляете echo и дописываете
>> свое.
> Спасибо.
> Выяснилось, что можно просто добавить в /etc/crontab строки:
> HTTP_PROXY=http://IP_Proxy:Port_Proxy
> HTTP_PROXY_AUTH=basic:*:<USER>:<PASS>
> и всё работает.

возможно, все зависит от того что и как запускать из под cron'а,
есть гарантированные переменные, см man 5 crontab, а остальное не факт, но
факт что в скрипте переменные будут работать.