КРОН действительно имеет свою собственную среду.
Вы устанавливали задание с crontab-e как пользователь, выполняющий задание? Как задание было добавлено?
Кроме того, немного восстановления сценария, с цикличным выполнением; это должно работать хорошо над Вашей установкой.
#!/bin/sh
### internal variable definitions
dvar=`date +"%m\/%d\/%y"`
filedate=`date +%b%d%Y`
# add the prefix of new hosts into the string below,
# which will be expanded later into GVE{whatever} while looping
HOSTLIST="DSS1 CMX1 CMX2 XIS1 XIS2"
# main processing loop
for SUFFIX in $HOSTLIST
do
echo $SUFFIX >> serverlog_${filedate}.txt
ssh GVE$SUFFIX grep "^$dvar" /home/gve/log/oasErrLog \
>> serverlog_${filedate}.txt
done
scp serverlog_${filedate}.txt \
"GVEXOSR2:C:/Documents\ and\ Settings/gve/Desktop/logs"
Продолжение 2-й попытки:
Хорошо, таким образом, что-то определенно horked. То, что Вы добрались 2x XIS1, является хорошим признаком, что или буферы не пишутся правильно, или сама оболочка является преступником. Цикл должен изолировать каждый хост, когда он работает, поэтому если у Вас нет невспыхнувшего pipes/buffers/what-have-you, лежащего вокруг, он не должен показывать XIS1 два раза подряд. Попытка явно с помощью #!/bin/bash
как оболочка вместо sh, иногда поставщики повторно сцепляют sh с чем-то другим, чем удар (и цикл является измом удара, таким образом, это могло вызвать проблемы). Кроме того, помещенный a sync
незадолго до done
в сценарии, чтобы видеть, является ли это проблема буферизации.
Я сбросил бы Windows Socket с командой
netsh winsock reset
выполняемый в cmd с правами администратора.
Если бы это не работает, я проверил бы, существуют ли бесплатные IP-адреса, маршрутизатор может присвоиться или если все адреса были присвоены клиентам?
Кроме того, Вы могли загрузиться с живым CD Linux или использовать другой маршрутизатор, чтобы проверить, являются ли Windows, Ваш NIC или маршрутизатор источником Вашей проблемы.
Это могла бы быть проблема с брандмауэром, которая блокирует DHCP - Вы могли попробовать
при выключении брандмауэра кратко в течение нескольких секунд, чтобы видеть, фиксирует ли это его (если Вы параноики, разъедините свое интернет-соединение от Вашего маршрутизатора),
установка Microsoft Network Monitor и наблюдение, какие пакеты отправляются / полученные
Можно заставить DHCP пытаться получить арендный договор путем открытия командной строки (как Администратор) и использования команд
ipconfig /release
ipconfig /renew