Як змінити часовий пояс у центрі 6,2?


32

Ось результат моєї dateкоманди:

[root@r1304 ~]# date
Wed Apr 18 15:43:28 GST 2012

Я хочу змінити часовий пояс системи за замовчуванням на Азію / Дубай. Я дотримувався підручника і робив це:

ln -sf /usr/share/zoneinfo/Asia/Dubai /etc/localtime

Але без ефекту. Здається, що це робиться по-різному в CentOS 6. Як змінити часовий пояс?


Це не повинно бути таким складним ...
ewwhite

Відповіді:


41

Схоже, що у CentOS 6.2 немає в ньому рядка годинника /etc/rc.sysinit, тому зміни /etc/sysconfig/clockне працюватимуть.

спробувати tzselectабо використовувати ln -s /usr/share/zoneinfo/xxxx /etc/localtime


5
Дякую, що працювало на мене. Моє рішення було rm /etc/localtime && ln -s /usr/share/zoneinfo/America/New_York /etc/localtime.
Банджер

Що для цього краще використовувати - lnчи cp?
XåpplI'-I0llwlg'I -

У цьому випадку використання символьної посилання, ймовірно, краще, ніж копіювання файлу
JDS,

2
Зробіть це, але також переконайтесь, що оновіть /etc/sysconfig/clockправильний часовий пояс, оскільки оновлення можуть змінити місцеве час назад до того, що є в годиннику.
Джастін

ln -sце краще, ніж cpтому, що якщо пакет tzdata оновить файл зони для вашого регіону, ви побачите зміни, не копіюючи їх знову.
Девід Пердю

9

Спочатку використовуйте tzselect, щоб дізнатися, який ваш часовий пояс. Кінцевий вихід tzselect буде приблизно таким:

Here is that TZ value again, this time on standard output so that you
can use the /usr/bin/tzselect command in shell scripts:
America/New_York

Останній рядок - це назва вашого файлу zoneinfo.

Тепер створіть символьне посилання з / etc / localtime до правильного файлу zoneinfo, наприклад:

ln -sf /usr/share/zoneinfo/America/New_York /etc/localtime 

Прапор -f потрібен для заміни існуючого / etc / localtime.

Примітка. Запуск tzselect нічого не торкнеться вашої системи, він просто виведе деякий текст. "Або" у відповіді caojun вводить в оману. Ви повинні використовувати tzselect AND ln. З манстрації tzselect: "[tzselect] виводить отриманий опис часового поясу на стандартний вихід".


4

Відредагуйте файл /etc/sysconfig/clockвідповідно до ваших потреб.


1
Це не повне рішення. Потрібно встановити зміщення часового поясу.
ewwhite

5
хоча це не є повною відповіддю, цей крок є досить важливим. без оновлення sysconfig / clock (те, що ми не робили при зміні часових поясів) ... запуск певних оновлень / інсталяцій yum (не впевнених, які з них) призведе до повернення часового поясу до зазначеного в sysconfig / clock ... незалежно від того, що / etc / localtime було замінено на. так що так ... не забудьте оновити sysconfig / clock, щоб змінити часовий пояс.
анонімний-один

1
Оновлення Yum може спричинити катастрофу у випадку, коли / etc / localtime та / etc / sysconfig / clock вказано на два різних часових пояса. Наприклад, оновлення mysql може спричинити приємний зсув часу у всіх датах.
elbuild

2

Після зміни часового поясу слід перезапустити rsyslogd, щоб новий часовий пояс відобразився в журналах.

Зробіть це за допомогою служби перезапуску rsyslog


1

Простий підручник, спробуйте це ..

[root@dlp ~]# vi /etc/sysconfig/clock

# change to your location
ZONE="Asia/Tokyo"

[root@dlp ~]# source /etc/sysconfig/clock # reload
# copy your timezone file under the "/usr/share/zoneinfo" like follows
[root@dlp ~]# cp -p /usr/share/zoneinfo

це працювало для мене, інші варіанти не були
Bokw

1
Якщо ці інструкції взагалі працюють, було б добре пояснити, чому ... я не бачу жодної причини, чому джерело /etc/sysconfig/clockне матиме жодного впливу на наступну cpпрограму (або, справді, на будь-яку наступну програму)
offby1
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.