Как изменить настройки временной зоны из командной строки

У меня есть виртуальная машина, которая настроена на PST, которую несколько коллег имеют в разных часовых поясах. Если бы я хотел изменить часовой пояс на EST и GMT, что мне нужно сделать?

179
задан 31 August 2010 в 23:19

73 ответа

Использовать timedatectl

sudo timedatectl set-timezone <timeszone>

Лучшая часть - это не интерактивно как dpkg-reconfigure tzdata

, это не интерактивно

sudo timedatectl set-timezone EST

установить часовой пояс как UTC:

sudo timedatectl set-timezone UTC

установлен часовой пояс как UTC:

timedatectl list-timezones
173
ответ дан 26 May 2018 в 01:25
  • 1
    Не поклонник +1 комментариев, но я помещаю его здесь, так как это сработало для меня наилучшим образом. Я хотел, чтобы один однострочный инструмент командной строки изменил часовой пояс, вместо того, чтобы запускать какое-либо общее меню или программу gui (я не знаю, что делает tzdata, как это работает, но мне не нужно с помощью этой одной строки). Благодаря! – Phil Ryan 2 June 2015 в 02:21
  • 2
    работает как шарм;) – user332660 24 February 2016 в 14:01
  • 3
    Интересно, что он делает что-то немного отличное от tzdata. У меня возникла проблема с тем, что время Java отличается от системного времени после применения патча. Цдата не работал, чтобы решить проблему, но это произошло. – Daniel Bower 23 March 2016 в 19:54
  • 4
    это не сработало для меня; однако dpkg-reconfigure сделал трюк. – Antti Haapala 10 April 2016 в 14:39
  • 5
    @AnttiHaapala, на котором OS & amp; версия? – Jossef Harush 10 April 2016 в 14:40

Использовать timedatectl

sudo timedatectl set-timezone <timeszone>

Примеры:

Часовой пояс как EST sudo timedatectl set-timezone EST Часовой пояс как UTC sudo timedatectl set-timezone UTC Список всех действующих часовых поясов timedatectl list-timezones

Эта команда идеально подходит для сценариев автоматизации, поскольку она не требует какого-либо взаимодействия с пользователем по сравнению с другим заданным ответом на основе dpkg-reconfigure tzdata.

193
ответ дан 25 July 2018 в 23:15

Использовать timedatectl

sudo timedatectl set-timezone <timeszone>

Примеры:

Часовой пояс как EST sudo timedatectl set-timezone EST Часовой пояс как UTC sudo timedatectl set-timezone UTC Список всех действующих часовых поясов timedatectl list-timezones

Эта команда идеально подходит для сценариев автоматизации, поскольку она не требует какого-либо взаимодействия с пользователем по сравнению с другим заданным ответом на основе dpkg-reconfigure tzdata.

194
ответ дан 31 July 2018 в 11:28

Использовать timedatectl

  sudo timedatectl set-timezone & lt; timeszone & gt;   

Примеры:

  • Часовой пояс как EST sudo timedatectl set-timezone EST
  • Часовой пояс как UTC sudo timedatectl set-timezone UTC
  • Список всех действительных временных зон timedatectl list-timezones

Эта команда идеально подходит для сценариев автоматизации, поскольку она не требует какого-либо взаимодействия с пользователем по сравнению с другим данным, основанным на dpkg-reconfigure tzdata .

194
ответ дан 2 August 2018 в 04:32

Использовать timedatectl

  sudo timedatectl set-timezone & lt; timeszone & gt;   

Примеры:

  • Часовой пояс как EST sudo timedatectl set-timezone EST
  • Часовой пояс как UTC sudo timedatectl set-timezone UTC
  • Список всех действительных временных зон timedatectl list-timezones

Эта команда идеально подходит для сценариев автоматизации, поскольку она не требует какого-либо взаимодействия с пользователем по сравнению с другим данным, основанным на dpkg-reconfigure tzdata .

194
ответ дан 4 August 2018 в 21:06

Использовать timedatectl

  sudo timedatectl set-timezone & lt; timeszone & gt;   

Примеры:

  • Часовой пояс как EST sudo timedatectl set-timezone EST
  • Часовой пояс как UTC sudo timedatectl set-timezone UTC
  • Список всех действительных временных зон timedatectl list-timezones

Эта команда идеально подходит для сценариев автоматизации, поскольку она не требует какого-либо взаимодействия с пользователем по сравнению с другим данным, основанным на dpkg-reconfigure tzdata .

194
ответ дан 6 August 2018 в 04:36

Использовать timedatectl

  sudo timedatectl set-timezone & lt; timeszone & gt;   

Примеры:

  • Часовой пояс как EST sudo timedatectl set-timezone EST
  • Часовой пояс как UTC sudo timedatectl set-timezone UTC
  • Список всех действительных временных зон timedatectl list-timezones

Эта команда идеально подходит для сценариев автоматизации, поскольку она не требует какого-либо взаимодействия с пользователем по сравнению с другим данным, основанным на dpkg-reconfigure tzdata .

194
ответ дан 7 August 2018 в 22:46

Использовать timedatectl

  sudo timedatectl set-timezone & lt; timeszone & gt;   

Примеры:

  • Часовой пояс как EST sudo timedatectl set-timezone EST
  • Часовой пояс как UTC sudo timedatectl set-timezone UTC
  • Список всех действительных временных зон timedatectl list-timezones

Эта команда идеально подходит для сценариев автоматизации, поскольку она не требует какого-либо взаимодействия с пользователем по сравнению с другим данным, основанным на dpkg-reconfigure tzdata .

194
ответ дан 10 August 2018 в 10:51

Использовать timedatectl

  sudo timedatectl set-timezone & lt; timeszone & gt;   

Примеры:

  • Часовой пояс как EST sudo timedatectl set-timezone EST
  • Часовой пояс как UTC sudo timedatectl set-timezone UTC
  • Список всех действительных временных зон timedatectl list-timezones

Эта команда идеально подходит для сценариев автоматизации, поскольку она не требует какого-либо взаимодействия с пользователем по сравнению с другим данным, основанным на dpkg-reconfigure tzdata .

195
ответ дан 13 August 2018 в 17:26
  • 1
    Не поклонник +1 комментариев, но я помещаю его здесь, так как это сработало для меня наилучшим образом. Я хотел, чтобы один однострочный инструмент командной строки изменил часовой пояс, вместо того, чтобы запускать какое-либо общее меню или программу gui (я не знаю, что делает tzdata , как это работает, но Мне не нужно с помощью этой одной строки). Благодаря! – Phil Ryan 2 June 2015 в 02:21
  • 2
    работает как шарм;) – user332660 24 February 2016 в 14:01
  • 3
    Интересно, что он делает что-то немного отличное от tzdata. У меня возникла проблема с тем, что время Java отличается от системного времени после применения патча. Цдата не работал, чтобы решить проблему, но это произошло. – Daniel Bower 23 March 2016 в 19:54
  • 4
    это не сработало для меня; однако dpkg-reconfigure сделал трюк. – Antti Haapala 10 April 2016 в 14:39
  • 5
    @AnttiHaapala, на котором OS & amp; версия? – Jossef Harush 10 April 2016 в 14:40
  • 6
    – Antti Haapala 10 April 2016 в 14:44

Выполните следующую команду:

 sudo dpkg-reconfigure tzdata

Необходимо запустить инструмент, основанный на меню, который позволит вам изменить часовой пояс.

207
ответ дан 26 May 2018 в 01:25
  • 1
    Стоит отметить, что не все службы будут использовать обновленный TZ (ex: cron), если это возможно, перезагрузите компьютер или, по крайней мере, вручную перезапустите службы, которые, как вам известно, должны будут использовать обновленную TZ. – Radu Maris 16 October 2014 в 00:21
  • 2
    Как мне передать часовой пояс? Я хочу изменить часовой пояс в скрипте, который ничего не может получить от пользователя. – SuB 16 January 2018 в 09:33

Также работают следующие. Для GMT:

ln -sf /usr/share/zoneinfo/GMT /etc/localtime

Для EST:

ln -sf /usr/share/zoneinfo/EST /etc/localtime
23
ответ дан 26 May 2018 в 01:25
  • 1
    Я думаю, что было бы лучше связать один из файлов города, а не GMT ​​или EST, так как тогда они будут отслеживать летнее время, тогда как связь (например, GMT) не изменит системное время, чтобы отражать, когда действует летнее сбережение в вашем городе. например: ln -sf /usr/share/zoneinfo/Europe/London /etc/localtime – Asfand Qazi 8 June 2015 в 12:19

Как root вы должны выполнить:

dpkg-reconfigure tzdata

Необходимо запустить инструмент, основанный на меню, который позволяет вам изменить часовой пояс.

16
ответ дан 26 May 2018 в 01:25

Самый простой способ, особенно для сервера, - перечислить часовые пояса:

timedatectl list-timezones

И выберите ваш, например:

timedatectl set-timezone Europe/Athens

Thats it! ,: -)

10
ответ дан 26 May 2018 в 01:25

Чтобы запустить одну программу с другим часовым поясом, установите переменную среды TZ, например. запустите TZ=Pacific/Kiritimati date, чтобы узнать, на какое время он находится на острове Рождества, или export TZ=Pacific/Kiritimati, чтобы установка была последней для сеанса оболочки.

4
ответ дан 26 May 2018 в 01:25

Отредактируйте файл timezone в папке /etc как:

Etc/GMT

Вы можете использовать следующий формат:

Region "/" City 

Пример /etc/timezone:

Europe/Athens

или

Europe/Paris
Europe/London

Вы можете поэкспериментировать с: dpkg-reconfigure tzdata и проверить cat файл часового пояса.

Вы должны перезагрузить или запустить снова услугу (а не службу ntp). Я не знаю, какой из них. Если кто-то знает, пожалуйста, поделитесь с нами. (Проверено на Ubuntu 15.10, это изменение учитывается мгновенно)

3
ответ дан 26 May 2018 в 01:25

cp -p / usr / share / zoneinfo / US / Pacific / etc / localtime

Я рекомендую СОГЛАСОВАТЬ ссылку, как упоминалось другими. Если какой-либо сценарий случайно записывает ваш файл / etc / localtime, он перезаписывает ваш файл часового пояса в Тихоокеанском регионе ... и это немного больно для его замены.

Просто скопируйте файл Pacific поверх файла localtime с командой выше.

0
ответ дан 26 May 2018 в 01:25

Я использую следующий скрипт, чтобы спросить пользователя, какой часовой пояс установить, а затем подтвердить, что он действительно был установлен:

#!/bin/sh
sudo timedatectl set-timezone $(tzselect)
echo
echo timedatectl says:
timedatectl

Я называю его tz-set.

0
ответ дан 26 May 2018 в 01:25

Самый простой способ, особенно для сервера, - перечислить часовые пояса:

timedatectl list-timezones

И выберите ваш, например:

timedatectl set-timezone Europe/Athens

Thats it! ,: -)

10
ответ дан 25 July 2018 в 23:15

Как root вы должны выполнить:

dpkg-reconfigure tzdata

Необходимо запустить инструмент, основанный на меню, который позволяет вам изменить часовой пояс.

18
ответ дан 25 July 2018 в 23:15

Чтобы запустить одну программу с другим часовым поясом, установите переменную среды TZ, например. запустите TZ=Pacific/Kiritimati date, чтобы узнать, на какое время он находится на острове Рождества, или export TZ=Pacific/Kiritimati, чтобы установка была последней для сеанса оболочки.

4
ответ дан 25 July 2018 в 23:15

cp -p / usr / share / zoneinfo / US / Pacific / etc / localtime

Я рекомендую СОГЛАСОВАТЬ ссылку, как упоминалось другими. Если какой-либо сценарий случайно записывает ваш файл / etc / localtime, он перезаписывает ваш файл часового пояса в Тихоокеанском регионе ... и это немного больно для его замены.

Просто скопируйте файл Pacific поверх файла localtime с командой выше.

1
ответ дан 25 July 2018 в 23:15
  • 1
    Это действительно сработало для меня. Я думаю, что есть ошибка с Докером, возможно (?). И timedatectl, и dpkg-reconfigure tzdata не удалось для меня. После того, как я скопировал, часовой пояс изменился с EST на PDT. – Sun 12 June 2018 в 18:25

Отредактируйте файл timezone в папке /etc как:

Etc/GMT

Вы можете использовать следующий формат:

Region "/" City

Пример /etc/timezone:

Europe/Athens

или

Europe/Paris Europe/London

Вы можете поэкспериментировать с: dpkg-reconfigure tzdata и проверить cat файл часового пояса.

Вы должны перезагрузить или запустить снова услугу (а не службу ntp). Я не знаю, какой из них. Если кто-то знает, пожалуйста, поделитесь с нами. (Проверено на Ubuntu 15.10, это изменение учитывается мгновенно)

3
ответ дан 25 July 2018 в 23:15

Я использую следующий скрипт, чтобы спросить пользователя, какой часовой пояс установить, а затем подтвердить, что он действительно был установлен:

#!/bin/sh sudo timedatectl set-timezone $(tzselect) echo echo timedatectl says: timedatectl

Я называю его tz-set.

0
ответ дан 25 July 2018 в 23:15

Также работают следующие. Для GMT:

ln -sf /usr/share/zoneinfo/GMT /etc/localtime

Для EST:

ln -sf /usr/share/zoneinfo/EST /etc/localtime
23
ответ дан 25 July 2018 в 23:15
  • 1
    Я думаю, что было бы лучше связать один из файлов города, а не GMT ​​или EST, так как тогда они будут отслеживать летнее время, тогда как связь (например, GMT) не изменит системное время, чтобы отражать, когда действует летнее сбережение в вашем городе. например: ln -sf /usr/share/zoneinfo/Europe/London /etc/localtime – Asfand Qazi 8 June 2015 в 12:19

Самый простой способ, особенно для сервера, - перечислить часовые пояса:

timedatectl list-timezones

И выберите ваш, например:

timedatectl set-timezone Europe/Athens

Thats it! ,: -)

10
ответ дан 31 July 2018 в 11:28

Как root вы должны выполнить:

dpkg-reconfigure tzdata

Необходимо запустить инструмент, основанный на меню, который позволяет вам изменить часовой пояс.

18
ответ дан 31 July 2018 в 11:28

Чтобы запустить одну программу с другим часовым поясом, установите переменную среды TZ, например. запустите TZ=Pacific/Kiritimati date, чтобы узнать, на какое время он находится на острове Рождества, или export TZ=Pacific/Kiritimati, чтобы установка была последней для сеанса оболочки.

4
ответ дан 31 July 2018 в 11:28

cp -p / usr / share / zoneinfo / US / Pacific / etc / localtime

Я рекомендую СОГЛАСОВАТЬ ссылку, как упоминалось другими. Если какой-либо сценарий случайно записывает ваш файл / etc / localtime, он перезаписывает ваш файл часового пояса в Тихоокеанском регионе ... и это немного больно для его замены.

Просто скопируйте файл Pacific поверх файла localtime с командой выше.

1
ответ дан 31 July 2018 в 11:28
  • 1
    Это действительно сработало для меня. Я думаю, что есть ошибка с Докером, возможно (?). И timedatectl, и dpkg-reconfigure tzdata не удалось для меня. После того, как я скопировал, часовой пояс изменился с EST на PDT. – Sun 12 June 2018 в 18:25

Отредактируйте файл timezone в папке /etc как:

Etc/GMT

Вы можете использовать следующий формат:

Region "/" City

Пример /etc/timezone:

Europe/Athens

или

Europe/Paris Europe/London

Вы можете поэкспериментировать с: dpkg-reconfigure tzdata и проверить cat файл часового пояса.

Вы должны перезагрузить или запустить снова услугу (а не службу ntp). Я не знаю, какой из них. Если кто-то знает, пожалуйста, поделитесь с нами. (Проверено на Ubuntu 15.10, это изменение учитывается мгновенно)

3
ответ дан 31 July 2018 в 11:28

Я использую следующий скрипт, чтобы спросить пользователя, какой часовой пояс установить, а затем подтвердить, что он действительно был установлен:

#!/bin/sh sudo timedatectl set-timezone $(tzselect) echo echo timedatectl says: timedatectl

Я называю его tz-set.

0
ответ дан 31 July 2018 в 11:28

Другие вопросы по тегам:

Похожие вопросы: