Строка
FILE=$(basename "${1/%.jpeg/.jpg}")
может быть сокращен и сделан более портативным с
FILE=$(basename "${1%.jpeg}.jpg")
Я нашел решение на этом веб-сайте. NTPdate пытался обновить дату каждый раз, когда интерфейс повысился, который в моем случае был три раза во время процесса начальной загрузки. Таким образом, я изменил /etc/network/if-up.d/ntpdate
только работать ntpdate
если eth0
повышается путем добавления следующего к верхней части сценария:
# Only update the date if eth0 goes up.
if [ "$IFACE" != eth0 ]; then
exit 0
fi
[очень поздний ответ, но добавлен для других, которые могут последовать]
, ограничение того, для каких интерфейсов вы запускаете ntpdate, может быть полезным, но звучит так, как будто ваша главная проблема - это отсутствие функционирующего аппаратного обеспечения часов реального времени, отсюда и огромное начальное смещение.
Я предлагаю вам заглянуть в пакет fake_hwclock. Из описания пакета :
Пакет: fake-hwclock (0.5)
Save/ restore system clock on machines without working RTC hardware
Некоторые машины не имеют работающего аппаратного обеспечения часов реального времени (RTC), или нет драйвера для существующего аппаратного обеспечения. fake-hwclock - это простой набор скриптов для периодического сохранения текущих часов ядра (в том числе и при выключении) и их восстановления при загрузке так, чтобы системные часы находились, по крайней мере, близко к реальному времени. Это остановит некоторые проблемы, которые могут быть вызваны системой, считающей, что она путешествовала в далеком 1970 году, например, необходимость выполнять проверку файловой системы при каждой загрузке.
Кроме того, рекомендуется использовать NTP для борьбы с "дрейфом" фальшивых часов во время остановки или перезагрузки оборудования.
ntpdate
запросы должны быть безопасными. Безумно большое смещение, которое Вы видите (67 с лишним лет, приблизительно 71,5 дня за исключением 2 ³ ¹ секунды) не нормально. – Gilles 'SO- stop being evil' 18.11.2011, 03:14