apt-get install tzdata неинтерактивный
Когда я пытаюсь
apt-get install -y tzdata
появляется опция командной строки для выбора часового пояса. Я пытаюсь использовать это в скрипте для выполнения некоторых настроек, как я могу сделать запуск apt-get без ввода пользователем?
Я знаю, чтобы переконфигурировать tzdata, которую я могу сделать
echo "America/New_York" > /etc/timezone
dpkg-reconfigure -f noninteractive tzdata
Но при установке мне нужно, чтобы он работал полностью, даже если он не устанавливает правильный часовой пояс, я всегда могу его перенастроить.
Я старался
echo 5 | apt-get install -y tzdata
но он работает не так, как ожидалось.
Ответы
Ответ 1
Это сценарий, который я использовал
(Обновленная версия с вкладом @elquimista из комментариев)
#!/bin/bash
export DEBIAN_FRONTEND=noninteractive
ln -fs /usr/share/zoneinfo/America/New_York /etc/localtime
apt-get install -y tzdata
dpkg-reconfigure --frontend noninteractive tzdata
Кажется, работает нормально.
Ответ 2
Все кредиты для этого должны идти в @PYA, но правильный порядок должен быть:
ln -fs /usr/share/zoneinfo/America/New_York /etc/localtime
export DEBIAN_FRONTEND=noninteractive
apt-get install -y tzdata
dpkg-reconfigure --frontend noninteractive tzdata
Ответ 3
Если кто-то хочет достичь этого в Dockerfile
, используйте, как показано ниже.
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get -y install tzdata