Date, time, timezone, ntp

show

date – показывает дату и время. Вывод для удобства можно редактировать. Делал так для скрипта, который кладет логи в папку, чтобы можно было опрашивать просто по нужной дате и сортировать тупо-по имени без даты.

[root@host1 ~]# date
Tue Aug 2 12:31:11 MSK 2016
[root@host1 ~]# date "+%Y-%m-%d"
2016-08-02

Работа с датой:

date --date "-3 day" - дата 3 дня от текущей
date --date="255 days ago" - дата 255 дней от текущей
date -d "24 Oct 2017" "+%s" - получаем дату в секундах с 1970 года (epoch date). Дату можно вставить в разных форматах - 24 Oct 2017, 2017-10-24, 20171024. Далее можно оперировать этой датой в скриптах.

timedatectl – в отличии от date, timedatectl показывает timezones. Можно посмотреть все таймзоны timedatectl list-timezones.

[user1@host1 ~]$ timedatectl
 Local time: Чт 2016-07-28 10:45:31 MSK
 Universal time: Чт 2016-07-28 07:45:31 UTC
 RTC time: Чт 2016-07-28 07:45:31
 Time zone: Europe/Moscow (MSK, +0300)
 NTP enabled: yes
NTP synchronized: yes
 RTC in local TZ: no
 DST active: n/a

[root@host1 ~]# timedatectl list-timezones | grep Moscow
Europe/Moscow
change

sudo date |date-time| – устанавливаем вручную дату и время.

[root@host1 ~]# sudo date 07131821
Wed Jul 13 18:21:00 MSK 2016
[root@host1 ~]# date
Wed Jul 13 18:21:01 MSK 2016

sudo date -s |STRING| – устанавливаем вручную дату/время в произвольном формате.

The --date=STRING is a mostly free format human readable date string such as "Sun, 29 Feb 2004 16:21:42 -0800" or "2004-02-29 16:21:42" or even "next Thursday". A date string may contain items indicating calendar date, time of day, time zone, day of week, relative time, relative date, and numbers. An empty string indicates the beginning of the day. The date string format is more complex than is easily documented here but is fully described in the info documentation.
[root@host1 ~]# date -s 20:02
Wed Aug 17 20:02:00 MSK 2016

timedatectl set-time 2015-08-12 – меняем текущую дату на August 12, 2015

[root@host1 ~]# timedatectl set-time 2015-08-12
[root@host1 ~]# date
Ср. авг. 12 00:00:01 MSK 2015

timedatectl set-time 11:00 – Меняем время на 11:00

[root@host1 ~]# timedatectl set-time 11:00
[root@host1 ~]# date
Ср. авг. 12 11:00:00 MSK 2015
Timezone

timedatectl set-timezone Europe/Moscow – меняем таймзону на Europe/Moscow

NTP

ntpdate |server-ip| – синхронизируем время с NTP сервером разово.

[root@host1 ~]# date
Wed Jul 13 18:23:08 MSK 2016
[root@host1 ~]# ntpdate ntp.corbina.net
 2 Aug 12:48:28 ntpdate[29563]: step time server 195.14.40.141 offset 1707901.165532 sec
[root@host1 ~]# date
Tue Aug 2 12:48:30 MSK 2016

timedatectl set-ntp yes/no – включаем/отключаем постоянную синхронизацию с NTP.

[root@host1 ~]# timedatectl set-time 2017-01-13
Failed to set time: Automatic time synchronization is enabled
[root@host1 ~]# timedatectl set-ntp no
[root@host1 ~]# timedatectl set-time 2017-01-13
[root@host1 ~]# date
Fri Jan 13 00:00:02 MSK 2017

Leave a Reply

Your email address will not be published. Required fields are marked *