Содержание
На прошлой неделе, во время инициализации нового экземпляра EC2 на веб-сервисах Amazon с Ubuntu и установки Plesk, панель управления веб-хостинга в этом случае привела меня к довольно странной проблеме, вызванной часовым поясом системы, который даже не был доступно в системе.
После загрузки установщика plesk через SSH и запуска установки, было сгенерировано исключение во время установки:
***** problem report *****
There is no /etc/localtime file in system.
Run tzsetup as root to set up your timezone
Это сделало невозможным установку plesk до решения этой проблемы. После некоторых исследований я обнаружил, что пакет tzdata не был установлен в Ubuntu по неизвестной причине. Общедоступная база данных часовых поясов (tzdata) содержит код и данные, которые представляют историю местного времени для многих репрезентативных местоположений по всему миру.
Если вы столкнетесь с этой ошибкой во время установки какого-либо пакета, например plesk, я покажу вам, как предотвратить появление этого исключения.
A. Проверьте, установлен ли пакет tzdata
Решение, которое сразу же сработало для меня, заключалось в простой установке tzdata в систему, поскольку она не была установлена и привела к исключению. Перед установкой вы можете проверить, установлен ли пакет, с помощью следующей команды:
dpkg -l tzdata
Это выведет, если пакет существует или нет. Если он не существует, вы получите вывод: «dpkg-query: не найдено пакетов, соответствующих tzdata». Если он не установлен, вы можете приступить к установке пакета с помощью следующей команды:
sudo apt-get install tzdata
Заметка
Во время установки программа установки запросит ваш часовой пояс, в моем случае часовой пояс региона будет America/Bogota
(во время настройки вы сначала выберете континент, а затем регион).
После установки, если вы попытаетесь снова проверить, был ли установлен пакет или нет, вы получите вывод, подобный следующему:
Наконец, если вы продолжите установку пакета, с которым у вас возникли проблемы, исключение локального времени больше не должно появляться.
B. Исправить отсутствующий или сломанный файл / etc / localtime
В случае, если tzdata был установлен и исключение все еще появляется, вам нужно будет проверить, существует ли файл localtime или он поврежден. В качестве первого шага вы должны проверить, действительно ли существует файл локального времени, с помощью следующей команды:
ls -la /etc/localtime
Эта команда выведет, если в каталоге есть такой файл. Если он не существует, перейдите к созданию символической ссылки из папки zoneinfo tzdata на файл:
ln -s /usr/share/zoneinfo/GMT /etc/localtime
После создания символической ссылки вы можете еще раз проверить, существует ли файл (как символическая ссылка), с помощью следующей команды:
ll /etc/localtime
Теперь вы сможете продолжить установку пакета, который выдавал исключение в вашей системе.
Удачного управления сервером!