Установка времени и даты в linux: Команда date в Linux | Losst

Содержание

Команда date в Linux | Losst

Главное свойство утилит GNU/Linux — делать что-то одно, но эффективно. Яркий пример — команда date Linux, работающая с датой и временем. С её помощью можно извлекать любую дату в разнообразном формате, в том числе и рассчитывать прошлое и будущее время. Привилегированные пользователи могут перезаписывать системное время, используя её.

Утилита предустановлена во всех дистрибутивах GNU/Linux. В этой статье будут рассмотрены возможности date и способы применения этой команды.

Содержание статьи:

Синтаксис команды date

Программа может выполнятся от имени обычного пользователя. Стандартный синтаксис команды (квадратные скобки обозначают необязательное наличие):

date [ОПЦИИ] … [+ФОРМАТ]

Ниже представлена таблица с часто применяемыми опциями для date.

Опция Длинный вариант Значение
-d STRING —date=STRING Вывод даты по указанной строке (например ‘yesterday’, ‘tomorrow’, ‘last monday’).
-I —iso-8601[=FMT] Вывод даты в формате ISO 8601. FMT по умолчанию содержит ‘date’. Также может содержать ‘hourse’, ‘minutes’, ‘seconds’, ‘ns’ для отображения соответствующих значений и часовой пояс относительно UTC рядом с датой.
 —rfc-3339=FMT Вывод даты в формате RFC 3339. FMT по умолчанию содержит ‘date’. Также может содержать ‘seconds’ и ‘ns’ для отображения секунд или наносекунд.
 -r FILE —reference=FILE Вывод даты последней модификации указанного файла в формате по умолчанию.
-u —utc Вывод UTC-даты

Аргумент ФОРМАТ отвечает за форматирование вывода даты. Для его указания необходимо поставить знак «+» и написать нужную маску. Наиболее популярные форматы:

Формат Значение
%% Знак процента
%a День недели текущей локали в короткой форме («Чтв»)
%A День недели текущей локали в длинной форме («Четверг»)
%b Месяц года текущей локали в короткой форме в родительном падеже («янв»)
%B Месяц года текущей локали в длинной форме в родительном падеже («января»)
%c Дата и время текущей локали без указания часового пояса
Первые две цифры текущего года
%d Числовой день месяца с ведущим нулём
%D Дата в формате %m/%d/%y
%e День месяца; аналог %_d
%F Дата в формате %Y-%m-%d
%h Аналог %b
%H Часы (00.
.23)
%I Часы (01..12)
%j День года (001..366)
%m Месяц (01..12)
%M Минуты (00..59)
%n Новая строка
%q Квартал года
%S Секунды (00..59)
%t Знак табуляции
%T Время в формате %H:%M:%S
%u Числовой день недели; 1 — понедельник
%x Дата в локальном формате
%X Время в локальном формате
%Z Аббревиатура временной зоны

Примеры использования date

Введем команду без параметров.

date

Будет отображена текущая дата и время в соответствии с настройками локали системы.

Команда date без параметров по умолчанию применяет маску %a %b %d %X %Z. Поскольку все форматы должны быть переданы как один параметр (из-за принципа обработки данных командным интерпретатором Bash), пробелы между ними необходимо экранировать обратным слэшем (\) или взять в кавычки.

Особое внимание следует уделить параметру -d (—date). Его функциональность не слишком очевидна, но при этом наиболее обширна.

Пример 1. Вычисление даты по числу секунд, прошедших с 1 января 1970 года.

date --date='@1234567890'

Пример 2. Вычисление даты и времени следующего понедельника при указании часового пояса Нью-Йорка в 03:00.

date --date='TZ="America/New_York" 03:00 next mon'

Обратите внимание: указывать название дня недели или месяца можно в любом регистре, в короткой или длинной форме. Параметры next и last обозначают следующий и прошедший, соответственно, ближайшие дни недели.

Пример 3. Если текущий день месяца — последний, сформировать отчет о занятости дискового пространства корневого и домашнего каталога в файл report.

#!/bin/bash
if [[ $(date --date='next day' +%d) = '01' ]]; then
df -h / /home > report

Такой скрипт можно использовать для автоматизации работы с помощью демона crontab или anacron.

Выводы

Команда date Linux является эффективным инструментом работы с датой и временем, с широкой возможностью их расчёта для прошедших или будущих показателей. Также она применяется в написании сценариев в командном интерпретаторе Bash.


Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна.

Оцените статью:

Загрузка…

Linux установка даты и времени

Содержание статьи

Какие часы бывают в Linux

Немного теории. В любом компьютере есть два вида часов. Одни аппаратные (ЧРВ — часы реального времени или RTC — real time clock), которые работают даже при выключенном блоке питания, на это у них есть батарейка на материнской плате.

Другие программные, то есть часы операционной системы. Показания этих часов могут различаться. При этом программные часы опираются на показания аппаратных при старте операционной системы. А в дальнейшем могут синхронизироваться через интернет с эталонными и корректировать ход аппаратных.
В большинстве случаев если компьютер работает под управлением операционной системой Windows показания аппаратных и программных часов совпадают. В Linux же чаще всего аппаратные часы настраивают по гринвичу (времени нулевого меридиана), а программные по необходимому смещению для часового пояса где расположен сервер.
Абсолютное большинство программ (приложений и сервисов) в своей работе опираются на показания системных (программных) часов.

Установка времени в ОС Linux

Время от времени часы на компьютере могут сбиваться по различным причинам, время может быть установлено изначально неправильно или неправильно выбран часовой пояс. Хотя в системе по умолчанию настроена синхронизация времени с интернетом и я уже давно забыл что значит постоянно перенастраивать часы, если они отстают, такая необходимость может появиться. В этой статье мы рассмотрим как выполняется установка времени Linux различными способами, через терминал, графический интерфейс и так далее. Но сначала нам нужно понять как работает время.

Установка временной зоны (timezone)

Временная зона под Linuxом устанавливается через символическую ссылку, из /etc/localtime на файл из дирректории /usr/lib/zoneinfo(или /usr/share/zoneinfo), чем указывается в какой временной зоне вы находитесь. Например я живу в Киев (Киевский часовой пояс EET) я должен сделать ссылку /etc/localtime на файл /usr/lib/zoneinfo/Europe/Kiev. Для этого даем команду:

ln -sf ../usr/share/zoneinfo/Europe/Kiev /etc/localtime
Замените your/zoneна соответствующую вашему месту расположения зону, например Europe/Moscow или Australia/Perth. Чтобы узнать какие временные зоны доступны посмотрите в дирректорию /usr/lib/zoneinfo(или /usr/share/zoneinfo).

Как задать время через консоль в Linux?

Как задать время через консоль в Linux? Как установить дату в Linux?
Кроме графического интерфейса, у вас есть возможность делать все необходимые действия через терминал.

Для этого есть утилита date.
Самое первое, что может нам понадобиться — просмотр текущей даты и времени. Узнаём время с помощью команды
$ date
Втр Сен 17 12:36:46 UTC 2017
Linux установка даты
date +%Y%m%d -s "20170917"
Linux задать время из консоли
date -s "16:17:00"
Задать время и дату одновременно:
date -s "17 SEP 2017 16:17:00"
Если указать только дату без времени, то время будет установлено в 0 часов 0 минут:
date -s "17 SEP 2017"
Выдаст результат:
Вск Сен 13 00:00:00 UTC 2017
Однако, сразу после этих команд, стсемное время возвращается к предыдущему значению. Поэтому нужно вначале установить аппаратные часы. Узнать, сколько времени на аппаратных часах, можно командой:
hwclock
ранее эта команда называлась clock.
Установить аппаратные часы можно командой:
hwclock --set --date="2011-08-14 16:45:05"
После чего надо засинхронизировать системные часы с аппаратными:
hwclock -s
По идее, если временная зона настроена как локальная, после этой команды время на компьютере будет таким же как и на аппаратных часах.
Если вы сталкиваетесь с ошибкой:
date: cannot set date: Operation not permitted
Учтите, что время и дату имеет право изменять только root-пользователь. Поэтому задавайте время с sudo:
sudo date +%Y%m%d -s "20170917"
Текущее системное время отображается в строке Local Time. Чтобы изменить дату, используйте опцию -set-time. Синтаксис передаваемого ей параметра такой: ГГГГ-ММ-ДД ЧЧ:ММ:СС. Думаю тут понятно и без комментариев.
Дополнительную информацию вы можете получить командой
date --help

8 Примеров команды Date для начинающих в Linux

Во время работы в командной строке Linux, вы могли бы войти в ситуацию, когда вам нужно отобразить (или даже изменить) текущее системное время. Мало того, что, если вы работаете с членами в команде, которые находятся в разных часовых поясах, возможно, вы захотите, обновлять с течением времени информацию, касающейся зоны, в которых сидят другие члены.

Если вы ищете инструмент, который позволяет делать все это (и многое другое), вы будете рады узнать, что существует команда date. В этой статье мы обсудим основные команды «date», а также, как вы можете использовать ее. Но прежде чем мы это сделаем, стоит отметить, что все команды и инструкции, упомянутые здесь, были протестированы на Ubuntu 16,04 LTS.

Команда date в Linux

Вот общий синтаксис команды date:

date [OPTION]... [+FORMAT]

 

А вот что говорит страница man об этом:

date - вывод или установка даты и время системы 

Отображение текущего времени в данном формате, или установка системной даты.

 

Следующие примеры должны дать вам хорошее представление о том, как эта команда работает.

 

Q1. Как получить системную дату/время с помощью команды date?

Это поведение по умолчанию. Чтобы узнать дату и время вашей системы, все, что вам нужно сделать, это запустить программу следующим образом (да, любой вариант без):

date

 

Вот команда в действии:

date
Sun Jul  9 19:41:10 MSK 2017

 

Таким образом, вы можете видеть, что информация, как день, дата, время, часовой пояс, а также год был показан на выводе.

 

Q2. Как получить дату, соответствующую дню?

Чаще всего, мы смотрим на календари, чтобы знать дату в определенный день недели. Например, требование может быть такое, узнать дату «когда следующий вторник». Вы будете рады узнать, что это возможно с помощью команды «date».

-d или –date параметр командной строки будет помощью в этом случае:

date -d "next Tuesday"

 

Вот вышеприведенная команда в действии:

date -d "next Tuesday"
Tue Jul 11 00:00:00 MSK 2017

 

Итак, как вы можете видеть, команда показала, что следующий вторник 4 июля.

Входной параметр -d/–date может быть разных типов. Вот как man описывает эту команду:

--date = строка в основном свободный формат удобочитаемой строки даты, такие как 
«Sun, 09 Feb 2017 19:21:20 -1905» или «2017-02-09 19:21:20» или даже «в следующий четверг»,  

Строка даты может содержать элементы, указывающие на календарную дату, время суток, часовой пояс, день недели, 
относительное время, относительную дату и номер.  Пустая строка указывает на начало дня. 

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

 

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

info date

 

Q3. Как отображать информацию о дате/времени в формате ISO 8601?

В случае, если вы хотите, инструмент для отображения информации о дате/времени в формате ISO 8601, вы можете использовать параметр –iso-8601 командной строки. Эта опция требует, указать формат.

--iso-8601[=FMT]

 

Вот как страница man объясняет «format»:

FMT='date' только для даты (по умолчанию), 'hours', 'minutes', 'seconds', или 'ns' для даты и времени с 
указанной точностью. Пример: 2017-07-09T19:20:30-0600

 

Например, мы тестировали следующую команду:

date --iso-8601=seconds

 

На выходе было произведено:

2017-07-09T19:48:20+03:00

 

Q4. Как отображать дату/время в формате RFC 3339?

Как вы уже догадались, есть специальный параметр командной строки для этого: –rfc-3339. Как вариант, рассмотренный в предыдущем разделе, один также требует ввести формат.

Следующий пример показывает эту опцию в действии:

date --rfc-3339=seconds
2017-07-09 19:49:58+03:00

 

Кроме того, вы можете использовать –rfc-2822 для возможности выводить данные в этом формате.

Q5. Как использовать дату для отображения времени последнего изменения файла?

Вы можете также использовать команду date, чтобы отобразить время последнего изменения файла. Опция -r позволяет сделать это. Вот пример:

date -r file1

 

Вывод:

date -r file1
Tue Jul 09 19:53:10 MSK 2017

 

Q6. Как установить системную дату/время, используя команду date?

Для установки системной даты/времени на другое значение, используйте параметр -s командной строки. Эта опция требует строку, которая будет использоваться в качестве входных данных для установки системной времени/даты.

date -s STRING

 

Примечание:

Доступные опции, которые можно использовать в качестве строк уже объяснены в Q2 выше.

Вот пример того, как мы использовали параметр -s, чтобы установить дату и время в нашей системы:

date -s "2017-06-27 14:53:00"

 

Пожалуйста, обратите внимание, что вам, возможно, придется использовать «sudo» для опции -s.

 

Q7. Как отобразить текущее время в другом месте?

Для того, чтобы команда date отображала текущее время в другом месте – скажем, Мельбурн в Австралии – использовать ее надо следующим образом:

TZ="Australia/Melbourne" date

 

Вот вышеприведенная команда в действии:

TZ="Australia/Melbourne" date
Mon Jul 10 02:59:50 AEST 2017

 

Примечание:

Вы можете использовать команду «tzselect», чтобы найти значение, которое нужно для TZ.

 

Q8. Как распечатать или установить всеобщее Скоординированное время (UTC)?

Для этого используйте параметр -u командной строки. Например, следующая команда будет отображать информацию в формате UTC:

date -u

 

# date -u
Sun Jul  9 16:32:28 UTC 2017

 

Вывод

Как большинство из вас, согласитесь, команда date не трудно понять и использовать. Кроме того, тот факт, что она также может быть использована при работе с несколькими географическими местами делает ее важным инструментом командной строки. Мы обсудили большинство параметров командной строки здесь, так что просто попробуйте их на вашей системе.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Linux установка даты и времени в консоли

Linux установка даты и времени

Какие часы бывают в Linux

Немного теории. В любом компьютере есть два вида часов. Одни аппаратные (ЧРВ — часы реального времени или RTC — real time clock), которые работают даже при выключенном блоке питания, на это у них есть батарейка на материнской плате. Другие программные, то есть часы операционной системы. Показания этих часов могут различаться. При этом программные часы опираются на показания аппаратных при старте операционной системы. А в дальнейшем могут синхронизироваться через интернет с эталонными и корректировать ход аппаратных.
В большинстве случаев если компьютер работает под управлением операционной системой Windows показания аппаратных и программных часов совпадают. В Linux же чаще всего аппаратные часы настраивают по гринвичу (времени нулевого меридиана), а программные по необходимому смещению для часового пояса где расположен сервер.
Абсолютное большинство программ (приложений и сервисов) в своей работе опираются на показания системных (программных) часов.

Установка времени в ОС Linux

Время от времени часы на компьютере могут сбиваться по различным причинам, время может быть установлено изначально неправильно или неправильно выбран часовой пояс. Хотя в системе по умолчанию настроена синхронизация времени с интернетом и я уже давно забыл что значит постоянно перенастраивать часы, если они отстают, такая необходимость может появиться. В этой статье мы рассмотрим как выполняется установка времени Linux различными способами, через терминал, графический интерфейс и так далее. Но сначала нам нужно понять как работает время.

Установка временной зоны (timezone)

Временная зона под Linuxом устанавливается через символическую ссылку, из /etc/localtime на файл из дирректории /usr/lib/zoneinfo(или /usr/share/zoneinfo), чем указывается в какой временной зоне вы находитесь. Например я живу в Киев (Киевский часовой пояс EET) я должен сделать ссылку /etc/localtime на файл /usr/lib/zoneinfo/Europe/Kiev. Для этого даем команду:
ln -sf ../usr/share/zoneinfo/Europe/Kiev /etc/localtime
Замените your/zoneна соответствующую вашему месту расположения зону, например Europe/Moscow или Australia/Perth. Чтобы узнать какие временные зоны доступны посмотрите в дирректорию /usr/lib/zoneinfo(или /usr/share/zoneinfo).

Как задать время через консоль в Linux?

Как задать время через консоль в Linux? Как установить дату в Linux?
Кроме графического интерфейса, у вас есть возможность делать все необходимые действия через терминал. Для этого есть утилита date.
Самое первое, что может нам понадобиться — просмотр текущей даты и времени. Узнаём время с помощью команды
$ date
Втр Сен 17 12:36:46 UTC 2017
Linux установка даты
date +%Y%m%d -s «20170917»
Linux задать время из консоли
date -s «16:17:00»
Задать время и дату одновременно:
date -s «17 SEP 2017 16:17:00»
Если указать только дату без времени, то время будет установлено в 0 часов 0 минут:
date -s «17 SEP 2017»
Выдаст результат:
Вск Сен 13 00:00:00 UTC 2017
Однако, сразу после этих команд, стсемное время возвращается к предыдущему значению. Поэтому нужно вначале установить аппаратные часы. Узнать, сколько времени на аппаратных часах, можно командой:
hwclock
ранее эта команда называлась clock.
Установить аппаратные часы можно командой:
hwclock —set —date=»2011-08-14 16:45:05″
После чего надо засинхронизировать системные часы с аппаратными:
hwclock -s
По идее, если временная зона настроена как локальная, после этой команды время на компьютере будет таким же как и на аппаратных часах.
Если вы сталкиваетесь с ошибкой:
date: cannot set date: Operation not permitted
Учтите, что время и дату имеет право изменять только root-пользователь. Поэтому задавайте время с sudo:
sudo date +%Y%m%d -s «20170917»
Текущее системное время отображается в строке Local Time. Чтобы изменить дату, используйте опцию -set-time. Синтаксис передаваемого ей параметра такой: ГГГГ-ММ-ДД ЧЧ:ММ:СС. Думаю тут понятно и без комментариев.
Дополнительную информацию вы можете получить командой
date —help

Видео по теме: Linux установка даты и времени

источник

Настройка даты и времени в Linux – команда date

Как это часто бывает, всё самое важное скрывается за самыми простыми вещами. Так и в случае с установкой/настройкой даты и времени в системе. Некорректные значения этих параметров запросто ломают логику работы многих приложений, особенно это касается тех систем, где на этом построены целые сервисы, такие как интернет-магазины, SCADA-системы на производстве и т. д. Поэтому так важно следить за корректными настройками времени, даты, языковых форматов, а также уметь все эти параметры настраивать. В системах Linux всё это позволяет выполнять команда date.

Синтаксис и основные опции

Согласно официальной информации, доступной из справочного руководства (команда man date), синтаксис команды date следующий:

Если дать команду date без аргументов или если аргументы начинаются с символа «+», то по-умолчанию будет выведено текущие значения даты и времени. В ином случае производится установка даты и времени, передаваемые в аргументах в каком-либо из форматов. Например, для установки времени введите команду

MM — Месяц
DD — День,
hh — часы в 24-часовом формате,
mm — минуты,
YYYY — 4 цифры года,
ss — секунды.

Прежде чем установить время проверьте правильность установки временной зоны.

Ниже мы боле подробно рассмотрим параметры ввода даты и времени.

Следующая команда выводит информацию о текущих дате и времени в форматированном виде:

Как видно, символ «+» позволяет печатать установленные (текущие) значения, а следующее за ним выражение задаёт формат вывода этих значений. Шаблон подстановки «%n» здесь служит для переноса строки. Все остальные шаблоны подстановки используются для выборки соответствующих компонент времени: месяцы, дни, часы, минуты и т. д. Само же выражение должно заключаться в кавычках, если в нём присутствуют пробельные символы.

Параметры CC, YY и .ss в синтаксисе date означают две последние цифры года, век и секунды (от 0 до 59) соответственно. И эти параметры не являются обязательными. Для того, чтобы устанавливать дату и время с помощью команды date, необходимы права суперпользователя.

В следующей таблице приводится описание основных опций команды date:

Опция Значение
-d, —date=STRING Вычисляет день недели для заданной даты в качестве STRING. Дата задаётся в формате ггммдд.
-f, —file=DATEFILE То же самое, что и -d, но для исходных данных используется содержимое из файла FILE.
-r, —reference=FILE Определяет время последней модификации файла FILE.
-s, —set=STRING Устанавливает время/дату, заданные строкой STRING.
-u, —utc, —universal Использование формата

Форматы ввода/вывода даты и времени

Для формата ввода даты/времени предусматриваются специальные элементы записи того или иного компонента даты/времени. В следующей таблице приводится описание этих элементов записи в виде пар букв, которым соответствуют составляющие даты и времени:

Элемент Описание
mm Минуты — от 0 до 59.
hh Часы — от 0 до 23.
DD Дни — от 0 до 28, 29, 30 и 31.
MM Месяцы — от 01 до 12.

Как уже можно было видеть, возвращаемые командой данные из её вывода можно форматировать произвольным способом, используя для этого специальные шаблоны подстановки или параметры форматирования. Они служат, как уже было отмечено выше, для выборки требуемых компонентов данных даты/времени из вывода команды date. Список этих параметров довольно длинный, но при этом его легко запомнить, поскольку наименования параметров довольно логичны. Следующая таблица отражает самые основные и часто используемые параметры форматирования:

Узнать время последнего изменения какого-либо файла:

Узнать день недели по его дате:

Вообще, команду date очень активно используют программисты для написания программного кода приложений, работающих с датой/временем, а также при написании скриптов для автоматизации некоторых процессов. Например, для автоматического наименования фалов, в имени которых содержится подстрока с датой его создания:

В результате будет создана копия файла settings. php под именем settings.php_back-070319. В данном случае используется директива $( ) для задания имени файла. Нужно заметить, что данный приём — очень мощный инструмент при работе в командной оболочке Linux.

Заключение

В заключение следует отметить отличную гибкость и большие возможности простой консольной утилиты, доступной по команде date, которая на первый взгляд не представляется заслуживающей внимания. Однако, команда date – это яркий пример «маленькой, но очень эффективной программы» в UNIX-подобных системах.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

источник

Установка времени Linux

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

В этой статье мы рассмотрим как выполняется установка времени Linux различными способами, через терминал, графический интерфейс и так далее. Но сначала нам нужно понять как работает время.

Как работает время на компьютере?

Статья ориентирована на новичков, в первую очередь на них, потому что профессионалы уже и так знают как это сделать. Поэтому сначала рассмотрим как работает время в Linux. Когда компьютер работает часы идут, это ясно, но когда вы его отключаете, а затем включаете снова часы показывают не то время, на котором остановились, а правильное время. Это происходит потому, что часы на материнской плате идут постоянно. Таймер питается от той же батарейки, что и энергозависимая память BIOS.

Операционная система передает значение таймера в память BIOS при выключении и берет его оттуда при включении. Отсюда берутся проблемы со временем при двойной загрузке Windows и Linux, но эта тема раскрыта в другой статье — сбивается время в Ubuntu и Windows. Другая проблема почему может сбиваться время — это неверно установленный часовой пояс. Если вы установили часовой пояс linux неверно, то часы будут постоянно синхронизироваться через интернет и идти неверно.

Когда все проблемы с временем будут устранены, можно перейти установить нужное время и быть уверенным что оно не будет сбиваться. Дальше рассмотрим как это сделать.

Установка времени Linux

Вы можете видеть текущее время прямо на вашем рабочем столе, в KDE часы добавлены на панель, да и в Gnome, они размещены по центру панели по умолчанию:

Если навести курсор на время, вы увидите более подробную информацию, область уведомлений и календарь.

Но настроить время здесь уже не получится. Для этого нужно открывать настройки системы. Мы будем рассматривать настройки для Gnome. Откройте меню Dash и наберите в строке поиска «Параметры»:

Дальше откройте «Дата и время»:

Как видите, здесь уже установлено значение по умолчанию «Автоматическое определение даты и времени», а внизу есть пункт, который отвечает за часовой пояс.

Вы можете просто поменять часовой пояс чтобы время синхронизировалось правильно, если что-то не так. Также можно задать время вручную. Для этого сначала отключите автоматическую синхронизацию, а затем выберите дату и время:

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

Установка времени через терминал

Кроме графического интерфейса, у вас есть возможность делать все необходимые действия через терминал. Для этого есть утилита date. Сначала смотрим текущее время:

У утилиты есть множество опций отображения и настроек, но мы не будем их рассматривать. Есть еще одна команда, которая позволяет посмотреть системное время linux:

Чтобы установить время можно использовать ту же команду date. Для этого ей нужно передать строку со временем и датой, например:

В качестве строки можно брать ту, которую возвращает команда date без параметров, только она должна быть на английском, поэтому сразу смотрим:

sudo date —set «Wed Sep 6 20:43:36 EEST 2017»

Если у вас включена коррекция даты через интернет, то ее нужно отключить перед этим, потому что вы даже заметить изменений не успеете, как сервер времени linux установит правильное время. Можно сократить эту строку:

sudo date —set «Sep 6 20:43:36 2017»

Это даст тот же результат. Еще один вариант — указать формат данных, которые вы собираетесь передавать с помощью модификаторов, например, изменить время linux:

Здесь формат очень прост — часы:минуты:секунды. Можно давать время в 12 часовом формате, для этого добавьте модификатор %p:

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

Еще один новый инструмент от systemd для управления временем — timedatectl. С помощью него можно выполнить те же операции, сначала смотрим доступную информацию о времени:

Текущее системное время отображается в строке Local Time. Чтобы изменить дату, используйте опцию -set-time. Синтаксис передаваемого ей параметра такой: ГГГГ-ММ-ДД ЧЧ:ММ:СС. Думаю тут понятно и без комментариев. Например:

sudo timedatectl —set-time «2017-09-06 20:43:36»

Можно задать только время, тогда нужно использовать синтаксис времени ЧЧ:ММ:СС, например:

sudo timedatectl —set-time «20:43:36»

Еще раз говорю, что если включена синхронизация по сети, то вы не сможете изменить время. Но с помощью timedatectl ее можно отключить:

sudo timedatectl set-ntp no

sudo timedatectl set-ntp yes

C помощью этой же команды можно не только установить время linux, но и настроить часовой пояс, для этого используйте опцию set-timezone:

sudo timedatectl set-timezone ‘Russia/Moscov’

Вы можете посмотреть список доступных часовых поясов командой:

Видео о настройке времени с помощью timedatectl:

Выводы

Вот и все. Теперь вы знаете как выполняется установка времени linux. Как видите, это очень просто, вы можете использовать различные способы, в зависимости от того, что вам будет удобнее. Если у вас остались вопросы, спрашивайте в комментариях!

источник

Команда Date в Linux с примерами

В этой статье мы рассмотрим основы команды date в Linux.

Использование команды date в Linux

Синтаксис команды date следующий:

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

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

Параметры форматирования даты

Вывод date может быть отформатирован с помощью последовательности символов управления форматом, перед которой стоит знак +. Элементы управления форматом начинаются с символа % и заменяются их значениями.

Символ %Y будет заменен на год, %m на месяц и %d на день месяца:

Ниже приведен небольшой список некоторых наиболее распространенных символов форматирования:

  • %a – Сокращенное название дня недели (например, понедельник)
  • %A – Сокращенное полное название дня недели (например, понедельник)
  • %b – Сокращенное краткое название месяца (например, январь)
  • %B – Сокращенное длинное название месяца (например, январь)
  • %d – День месяца (например, 01)
  • %H – Час (00..23)
  • %I – Час (01.12.12)
  • %j – День года (001..366)
  • %m – Месяц (01.12.12)
  • %M – Минута (00..59)
  • %S – Секунда (00 .. 60)
  • %u – День недели (1..7)
  • %Y – Полный год (например, 2019)

Чтобы получить полный список всех параметров форматирования, запустите date –help или man date в своем терминале.

Дата строкой

Опция -d позволяет работать на конкретную дату. Вы можете указать дату в виде удобочитаемой строки даты, как показано ниже:

Использование пользовательского форматирования:

Строка даты также может принимать значения, такие как “tomorrow”, “friday”, “last friday” “next friday”, “next month”, “next week”… и т. д.

Вы также можете использовать параметр строки даты, чтобы показать местное время для разных часовых поясов. Например, чтобы показать местное время для 6:30 утра следующего понедельника по Московскому времени, введите:

Переопределить часовой пояс

Команда date использует системный часовой пояс по умолчанию . Чтобы использовать другой часовой пояс, установите переменную среды TZ в желаемый часовой пояс.

Например, чтобы показать время по Москве, введите:

Чтобы получить список всех доступных часовых поясов, вы можете либо перечислить файлы в каталоге /usr/share/zoneinfo, либо использовать команду timedatectl list-timezones.

Конвертер эпох

Команда date может быть использована в качестве преобразователя эпох. Время, или метки времени Unix, – это количество секунд, прошедших с 1 января 1970 года в 00:00:00 UTC.

Чтобы напечатать количество секунд от эпохи до текущего дня, используйте управление форматом %s:

Чтобы преобразовать секунды с начала эпохи в дату, установите секунды в виде строки даты с префиксом @:

Использование даты с другими командами

Команда date чаще всего используется для создания имен файлов, которые содержат текущее время и дату.

Команда ниже создаст файл резервной копии Mysql в следующем форматеdatabase_name-20190601.sql

Вы также можете использовать команду date в своих сценариях оболочки. В приведенном ниже примере мы присваиваем выход date к переменной date_now:

Показать время последнего изменения файла

Команда dateс c параметром -r показывает время последнего изменения файла. Например:

Если вы хотите изменить временную метку файла, используйте команду touch.

Установите системное время и дату

Установка системного времени и даты вручную с помощью dateкоманды обычно не рекомендуется, поскольку в большинстве дистрибутивов Linux системные часы синхронизируются с ntp помощью служб systemd-timesyncd.

Однако, если вы хотите установить системные часы вручную, вы можете использовать опцию –set=. Например, если вы хотите установить дату и время 12:54, 02 июня 2019 г., введите:

Заключение

К настоящему времени вы должны хорошо понимать, как использовать команду date в Linux.

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

источник

Как изменить дату и время в Linux Ubuntu!

Приветствую Всех!

В этой статье я расскажу как изменить дату и время в Linux Ubuntu. Сделать это мы сможем двумя способами.

Рассмотрим первый способ изменить дату и время.

Через панель быстрого запуска открываем «Параметры системы» и выбираем «Время и дата».


В открывшемся окне мы видим карту мира. На ней указанны часовые пояса. Кликнув левой кнопкой мыши по необходимому нам часовому поясу, он будет подсвечен, в поле «Местоположение» мы видим выбранный часовой пояс.


Время в Linux Ubuntu по умолчанию синхронизируется со специальными серверами точного времени. Подключение к данным серверам производится по протоколу сетевого времени NTP.
И в большинстве случаев самому менять ничего не надо. Если ваш компьютер подключен к сети Интернет, то операционная система сама подкорректирует дату и время.
Но если у вас появилась такая необходимость изменить дату и время, то указываем системе «Установить время» вручную и выбираем необходимые нам дату и время.


Второй способ изменить дату и время.

Рассмотрим как изменить часовой пояс. Откроем терминал и запустим следующую команду.

sudo dpkg-reconfigure tzdata


Для получения дополнительных привилегий необходимо ввести пароль пользователя и нажать на клавиатуре клавишу «Enter».


Выбираем географический район, в моем случае это «Европа» и нажимаем на клавиатуре клавишу «Enter».


В следующем окне выбираем часовой пояс. Я выбрал «Москва» и также нажимаем на клавиатуре клавишу «Enter».


В терминале видим установленную временную зону и текущее время


Для просмотра текущей даты и времени в терминале надо ввести следующую команду

data


А для того чтобы, например, установить дату 15 декабря 2015 года и время 20 часов 10 минут вводим команду

sudo data 201520102015.00


date MMDDhhmmCCYY.ss
MM — месяц, DD — день месяца, hh — часы, mm — минуты, CCYY — 4 цифры года, ss — секунды

Мы рассмотрели как можно изменить часовой пояс, а также изменить дату и время в Linux Ubuntu. И если остались непонятные вопросы по данной это теме и есть предложения, то прошу их писать в комментариях. Всем пока!

Команда date — Linux FAQ

Команда date позволяет задействовать одноименную утилиту, которая используется для двух целей. Обычно она используется для получения текущих даты и времени при необходимости в заданном формате, но при этом она также позволяет устанавливать их.

Стандартный синтаксис команды выглядит следующим образом:

$ date [описание времени или формата вывода]

Формат ввода даты и времени

Для начала рассмотрим вопрос установки текущих даты и времени, так как данное действие выполняется достаточно просто (единственная сложность связана с запоминанием формата даты и времени). Вы можете самостоятельно выполнить команду man date для того, чтобы уточнить формат даты и времени, используемый в вашей системе. В большинстве случаев он является следующим:

# date MMDDhhmm[[CC]YY][.ss]

Но все не так сложно, как кажется на первый взгляд. Параметры в квадратных скобках являются необязательными — вы можете как использовать их, так и отказаться от их использования. Каждая пара букв соответствует элементу записи даты или времени:

Элемент записи Назначение
MM Месяц (от 01 до 12)
DD День (от 01 до 28, 29, 30 или 31 в зависимости от месяца)
hh Часы (от 00 до 24)
mm Минуты (от 00 до 59)
YY Две последние цифры года (от 00 до 99, не обязательно)
CC Век (от 00 до 99, используется вместе с предыдущим элементом, не обязательно)
. ss Секунды (от 00 до 59 с символом точки, не обязательно)

Как утилита вычисляет век? В UNIX-подобных операционных системах время хранится в формате числа секунд, прошедших с 1 января 1970 года в часовом поясе GMT (также известном, как UTC). Из-за того, что с этой даты прошло достаточно много времени, а для хранения количества секунд в 32-битных системах используется 4-байтовое целочисленное значение, в 2038 году на этих системах должен произойти переход счетчика секунд через нулевое значение. Ввиду того, что подсчитывается лишь количество секунд, век попросту не принимается во внимание. Таким образом, на 32-битных системах значения года от 00 до 38 соответствуют 2000-м годам, а значения года от 70 до 99 — 1900 годам. Фактически, на 32-битных системах команда date не позволяет установить год, не входящий в приведенные выше диапазоны. В 64-битных системах все проще: для подсчета времени используется 8-байтовое целочисленное значение, поэтому имеется огромный запас по времени (292 миллиарда лет), доступен полный диапазон годов от 00 до 99, а век вычисляется обычным образом по количеству прошедших секунд.

Для установки текущих даты и времени необходимы права пользователя root, иначе вы получите аналогичное сообщение об ошибке:

date: невозможно установить дату: Операция не позволена

Формат вывода даты и времени

Команда date без параметров хороша в том случае, если вам нужно узнать текущие дату в время. Но функция вывода даты и времени в произвольном формате полезна при разработке сценариев командной оболочки. Иногда нужно использовать максимально краткую запись даты; иногда в сценарии нужно обрабатывать лишь время без даты; иногда дату и время приходится сравнивать с датой и временем из внешнего источника и это сравнение будет гораздо более простым в случае получения текущих даты и времени в том же формате, в котором передаются данные из внешнего источника.

Для форматирования текущих даты и времени в соответствии со своими предпочтениями пользователь должен передать утилите строку форматирования после символа +:

$ date +"<строка форматирования>"

Строка форматирования состоит из параметров форматирования, приведенных в таблице ниже.

Параметр форматирования Назначение Пример вывода
%a Сокращенное название дня недели Чт
%A Полное название дня недели Четверг
%b Сокращенное название месяца июн
%B Полное название месяца Июнь
%d Номер дня недели 08
%D Текущая дата в формате ММ/ДД/ГГ 06/08/17
%F Текущая дата в формате ГГГГ/ММ/ДД 2017-06-08
%H Часы в 24-часовом формате в диапазоне от 00 до 23 18
%l Часы в 12-часовом формате в диапазоне от 01 до 12  6
%j Номер дня года в диапазоне от 001 до 366 159
%m Номер месяца в диапазоне от 01 до 12 06
%M Минуты в диапазоне от 00 до 59 24
%S Секунды в диапазоне от 00 до 60 22

Установить время, часовой пояс даты в Linux из командной строки или Gnome

Написано Гильермо Гарроном
Дата: 2012-04-19 15:55:00 00:00


Наличие правильного времени и даты в Linux очень важно, от этого зависит многое. Не имеет значения, используете ли вы Linux для питания своего персонального компьютера или у вас есть сервер Linux. Серверные и системные часы должны быть вовремя.

Установить дату из командной строки

  дата +% Y% m% d -s "20120418"
  

Установить время из командной строки

  дата +% T -s "11:14:00"
  

Установить время и дату из командной строки

  дата -с "19 АПР 2012 11:14:00"
  

Дата проверки Linux из командной строки

  дата
  

покажет вам что-то вроде этого:

  Чт 19 апр, 15:17:34 BOT 2012
  

Установить аппаратные часы

Аппаратные часы — это часы, которые работают в аппаратном обеспечении вашего ПК, даже если вы отключите его от основного источника питания.Это потому, что в современных компьютерах есть литиевая батарея, а в старых — батарея другого типа.

Мы увидим разницу между аппаратными часами и системными часами

  hwclock - показать
  

выведет что-то вроде этого:

  Чт 19 апр 2012 15:23:05 BOT -0,785086 секунд
  

Теперь проверьте системные часы

  дата
  

выведет что-то вроде этого:

  Чт 19 апр, 15:26:41 BOT 2012
  

Установите аппаратные часы на местное время:

  hwclock --set --date = "2012-04-19 16:45:05" --localtime
  

Если вы хотите установить время в формате UTC, используйте:

  hwclock --set --date = "2011-04-19 20:45:05" --utc
  

Установить часовой пояс

Чтобы установить часовой пояс системных часов, выполните следующие действия:

  cp / usr / share / zoneinfo / America / La_Paz / etc / localtime
  

Выберите часовой пояс, подходящий именно вам.

Автоматическая настройка часов компьютера

Чтобы ваша система автоматически настраивала время, нам необходимо установить ntp . Получите это из вашего репозитория. После установки вы можете настроить его следующим образом:

Отредактируйте файл /etc/ntpd.conf . Это будет выглядеть так:

  # С настройками по умолчанию ниже, ntpd будет синхронизировать только ваши часы.
#
# Подробнее см .:
# - справочная страница ntp.conf
# - http://support.ntp.org/bin/view/Support/GettingStarted
# - https: // wiki.archlinux.org/index.php/Network_Time_Protocol_daemon

# Связь с общедоступными серверами пула NTP; см. http://www.pool.ntp.org/
сервер 0.pool.ntp.org
сервер 1.pool.ntp.org
сервер 2.pool.ntp.org

# Разрешить доступ только для чтения с localhost
ограничить noquery nopeer по умолчанию
ограничить 127.0.0.1
ограничить :: 1

# Расположение дрейфовых и журнальных файлов
дрифт-файл /var/lib/ntp/ntp.drift
файл журнала /var/log/ntp. log

# ПРИМЕЧАНИЕ: если вы запускаете dhcpcd и появляются такие строки, как 'restrict' и 'fudge'
# здесь обязательно добавьте '-Y -N' к переменным dhcpcd_ethX в / etc / conf.д / нетто
  

Обязательно запустите демон и заставьте его запускаться автоматически при загрузке системы.

В Arch Linux: /etc/rc.d/ntpd start в Debian и производных /etc/init.d/ntpd start

Обновление из командной строки для сервера времени

Вы можете обновить часы вручную без использования демона с помощью ntpdate

  ntpdate 129.6.15.28
  

Получится примерно так:

  19 апр, 15:45:23 ntpdate [10948]: шаг сервера 129.6.15.28 смещение -45.697084 сек
  

Бонус: установите время и дату в Gnome

Если вы используете Gnome, щелкните правой кнопкой мыши часы и выберите «Настроить» или перейдите по ссылке: Система> Администрирование> Время и дата (вас могут попросить ввести пароль root)

Вы увидите окно, подобное этому:


постоянная ссылка

Если вам понравилась статья, поделитесь ею

Так же можно подписаться разными способами


Установка времени и даты в системах Linux

Написано Гильермо Гарроном
Дата: 2007-08-18 10:36:30 00:00


Многие задачи вашей Linux-машины контролируются временем, такими как задания cron, дата электронной почты, даты файлов, поэтому очень важно, чтобы часы вашего компьютера были вовремя.

Ответственность системного администратора состоит в том, чтобы поддерживать часы на своих серверах Linux с максимальной точностью.

Из командной строки у нас есть множество утилит для настройки часов, установки даты в системе, установки даты на оборудовании или автоматического обновления времени с серверов времени в Интернете.

дата

Дата отображает дату и время системы, используется root, а также может использоваться для изменения даты и времени в системе.

Если вы просто введете:

  дата
  

Вы получите дату системы, например:

  Сб 18 августа 19:36:53 BOT 2007
  

Вы можете установить дату, введя (как root):

дата nnddhhmm [[cc] yy] [.ss]

Где

  • nn: месяц года (с 01 по 12)
  • дд: день месяца (с 01 по 31)
  • чч: час дня (с 00 до 23)
  • мм: минуты часа (от 00 до 59)
  • cc: Первые цифры года
  • yy: две последние цифры года
  • . ss: Секунды

hwclock

С помощью этой команды вы можете установить или получить время своих аппаратных часов, аппаратные часы — это часы, которые работают в вашем оборудовании ПК, даже если вы отключите его от основного источника питания, потому что в нем есть литиевая батарея. современные компьютеры и другой тип батареи в старых.

Использование

hwclock [функция] [опции ...]

Функции

  • –help: показать эту справку
  • –show: прочитать аппаратные часы и распечатать результат
  • –set: установить rtc на время, указанное с –date
  • –hctosys: установить системное время с аппаратных часов
  • –systohc: установить аппаратные часы на текущее системное время
  • –adjust: отрегулируйте rtc для учета систематического отклонения с момента последней установки или регулировки часов
  • –getepoch: распечатать значение эпохи аппаратных часов ядра –setepoch установить значение эпохи аппаратных часов ядра равным –epoch
  • –version: распечатать версию hwclock на стандартный вывод

Опции

  • –utc: аппаратные часы хранятся в скоординированном всемирном времени
  • –localtime: аппаратные часы хранятся в местном времени
  • –directisa: доступ к шине ISA напрямую вместо / dev / rtc
  • –badyear: игнорировать год rtc, потому что BIOS не работает
  • –date: указывает время, на которое устанавливаются аппаратные часы
  • –epoch = year: указывает год, который является началом значения эпохи аппаратных часов
  • –noadjfile: не обращаться к / etc / adjtime.Требуется использование –utc или –localtime

Если вы хотите установить аппаратные часы на ваше местное время, вы можете использовать эту команду:

  hwclock --set --date = '08 / 18/07 21:08:40 '--localtime
  

Это установит часы 8 августа 2007 года в 21:08 и сообщит вашим часам, что это местное время, вы можете использовать –utc вместо –localtime, чтобы установить часы на всемирное время (время по Гринвичу).

Если вы хотите прочитать, введите эту команду:

  hwclock - показать
  

Вы должны получить такой результат:

  Сб, 18 августа 2007 г., 21:19:03 BOT -0.677125 секунд
  

5 примеров команд сенсорного ввода Linux (как изменить временную метку файла)

Каждый файл в Linux связан с метками времени, которые определяют время последнего доступа, время последнего изменения и время последнего изменения.

Каждый раз, когда мы создаем новый файл или изменяем существующий файл или его атрибуты, эти временные метки будут обновляться автоматически.

Сенсорная команда используется для изменения этих отметок времени (время доступа, время модификации и время изменения файла).

1. Создайте пустой файл с помощью touch

С помощью сенсорной команды можно создать пустой файл. В следующем примере будет создан новый файл с нулевым байтом с именем tgs.txt.

 $ сенсорный tgs.txt 

Вы также можете использовать опцию -c, чтобы избежать создания новых файлов. Если вы используете опцию -c и файл не существует, касание не создаст файл.

 $ сенсорный -c a.txt 

Команды, такие как команда ls и команда find, используют эту информацию о временной метке для просмотра и поиска файлов.

Вы также можете создать более 1 файла с помощью одной сенсорной команды. В следующем примере будет создано 4 файла с именами a, b, c и d.

 $ сенсорный a b c d 

2. Измените время доступа к файлу с помощью -a

Мы можем изменить время доступа к файлу, используя параметр -a. По умолчанию он берет текущее системное время и обновляет поле atime.

Перед выполнением сенсорной команды:

 $ stat tgs.txt

  Файл: `tgs.текст'
  Размер: 0 Блоки: 0 Блок ввода-вывода: 4096 обычных пустых файлов
Устройство: 801h / 2049d Inode: 394283 Ссылки: 1
Доступ: (0644 / -rw-r - r--) Uid: (1000 / lakshmanan) Gid: (1000 / lakshmanan)
Доступ: 2012-10-18 23:58: 21.663514407 +0530
Изменить: 2012-10-18 23:58: 21.663514407 +0530
Изменение: 2012-10-18 23:58: 21.663514407 +0530 
 $ touch -a tgs.txt 

После указанной выше сенсорной команды (обратите внимание, что время доступа изменилось):

 $ stat tgs.текст

  Файл: `tgs.txt '
  Размер: 0 Блоки: 0 Блок ввода-вывода: 4096 обычных пустых файлов
Устройство: 801h / 2049d Inode: 394283 Ссылки: 1
Доступ: (0644 / -rw-r - r--) Uid: (1000 / lakshmanan) Gid: (1000 / lakshmanan)
Доступ: 2012-10-19 00: 08: 23.559514525 +0530
Изменить: 2012-10-18 23:58: 21.663514407 +0530
Смена: 2012-10-19 00: 08: 23.559514525 +0530 

3. Измените время модификации файла с помощью -m

Вы можете изменить время модификации файла с помощью опции -m.

 $ сенсорный -m * .o 

Вышеупомянутый метод может использоваться для изменения времени mtime всех файлов obj при использовании утилиты make.

ПРИМЕЧАНИЕ. Изменить ctime с помощью сенсорной команды

невозможно.

4. Явная установка времени доступа и модификации с помощью -t и -d

Вместо того, чтобы брать текущую отметку времени, вы можете явно указать время, используя параметры -t и -d.

Формат для указания -t: [[CC] YY] MMDDhhmm [.SS]

$ touch -t [[CC] YY] MMDDhhmm [.SS]
 

Следующее поясняет приведенный выше формат:

  • CC — указывает первые две цифры года
  • ГГ — указывает две последние цифры года. Если значение YY находится между 70 и 99, значение цифр CC предполагается равным 19. Если значение YY находится между 00 и 37, значение цифр CC принимается равным 20. Это невозможно установить дату после 18 января 2038 года.
  • MM — указывает месяц
  • DD — указывает дату
  • чч — указывает час
  • мм — указывает минуту
  • SS — указывает секунды

Например:

 $ сенсорный -a -m -t 203801181205.09 tgs.txt 

Проверьте указанное выше изменение с помощью команды stat:

 $ stat tgs.txt
  Файл: `tgs.txt '
  Размер: 3 Блоки: 8 Блок ввода-вывода: 4096 обычных файлов
Устройство: 801h / 2049d Inode: 394283 Ссылки: 1
Доступ: (0644 / -rw-r - r--) Uid: (1000 / lakshmanan) Gid: (1000 / lakshmanan)
Доступ: 2038-01-18 12: 05: 09.000000000 +0530
Изменить: 2038-01-18 12: 05: 09.000000000 +0530
Изменение: 2012-10-19 00: 40: 58.763514502 +0530 

Вы также можете использовать строку для изменения времени

Другой пример:

 $ touch -d "2012-10-19 12:12:12.000000000 +0530 "tgs.txt 

Для разработчиков команда touch будет действительно полезна при работе с Makefiles

5. Скопируйте отметку времени из другого файла с помощью -r

Вы также можете взять файл в качестве ссылки и обновить время для других файлов, чтобы оба файла сохраняли одинаковое время.

В следующем примере сенсорной команды метка времени файла a.txt обновляется меткой времени файла tgs.txt.

 $ touch a.txt -r tgs.txt 

Если вам понравилась эта статья, вам тоже может понравиться..



Изменение часового пояса, даты и времени в Linux


Установка часового пояса

В / etc файл, localtime , представляет собой ссылку или копию файла, содержащего информацию о вашем часовом поясе. Файлы информации о зоне обычно находятся в каталоге / usr / share / zoneinfo , но это зависит от вашего дистрибутива. Итак, если ваш файл localtime указывает на файл информации о зоне, который не является вашим часовым поясом, вы можете изменить его, просмотрев каталоги в / usr / share / zoneinfo , чтобы найти свою страну, а затем найдите свой город или город в тот же часовой пояс и свяжите с ним localtime .
    $ ln -sf / usr / share / zoneinfo / America / Los_Angeles / etc / localtime
Некоторые приложения могут использовать файл конфигурации / etc / sysconfig / clock для определения текущего часового пояса, поэтому рекомендуется установить запись ZONE (например, «America / Los_Angeles»).

Изменение даты и времени

Для изменения даты и времени требуется два шага. Сначала необходимо изменить дату и время Linux, а затем новое время нужно записать в аппаратные часы.
Команда date может использоваться как для просмотра, так и для изменения даты и времени.
Чтобы изменить время, используйте дату , дату , за которой следует месяц, день, час, минута и год, все числами и без пробелов. Итак, чтобы установить дату и время на 2 ноября 2003 г. 12:57
Аппаратные часы можно обновить в формате UTC (всемирное координированное время) или по вашему местному времени. Стандартно обновлять его в формате UTC.
Чтобы обновить его до местного времени, оставьте —utc или добавьте —localtime и оставьте —utc .
Альтернативно
Дату и время можно изменить напрямую на аппаратные часы, а затем использовать их для обновления системных часов.

Использование NTP (протокол сетевого времени)

NTP подключится к серверу, чтобы получить атомное время. Его можно скачать с www.ntp.org/downloads.html. Чтобы начать работу с NTP, просто загрузите его, установите, используйте команду ntpdate , за которой следует общедоступный сервер времени, и обновите свои аппаратные часы.
    $ ntpdate «DNS-имя или IP-адрес сервера»
    4 ноября, 22:31:28 ntpdate [26157]: шаг сервера 209.81.9.7 смещение 22317290.440932 сек
    $ hwclock —systohc
Общедоступный сервер времени можно найти по адресу http://support.ntp.org/bin/view/Servers/WebHome.

Чтобы ваше время было точным, вы можете создать задание cron, которое будет выполнять:
(параметр -w аналогичен —systohc)

    ntpdate «имя сервера» && hwclock -w

Чтобы оставаться независимым от конкретного сервера, вы можете использовать 0.pool.ntp.org (0, 1 или 2) в качестве имени сервера. Этот домен использует циклический перебор DNS, чтобы время от времени выбирать разные серверы времени. Это предохраняет определенные серверы имен от высоких нагрузок. Единственный недостаток — повышенный потенциал обновления времени с сервера имен, который находится в пуле, но имеет неверные настройки времени.

Это добровольные общедоступные серверы, так что будьте вежливы, , не обращайтесь постоянно к общедоступным серверам, используйте только общедоступные серверы (не частные), а если у вас несколько машин, настройте сервер ntp и пусть другие машины извлекают время с вашего локальный сервер.Подробные правила см. На http://www.eecis.udel.edu/~mills/ntp/servers.html.

Использование rdate

rdate — это другой пакет, который используется так же, как ntpdate. Он не поддерживает запуск вашего собственного сервера времени, как NTP, но может обращаться к тем же серверам времени.
    rdate «имя сервера» && hwclock -w

Ссылки

Официальное время в NIST / Министерстве торговли США — который час?
Прогулка по времени — Интересная информация об истории отслеживания времени.

Взносы

Спасибо Майклу Барнсу за обновленную ссылку для серверов времени.
Спасибо Austin Duncan за информацию о pool.ntp.org.
Спасибо Evan Davey за информацию о записи ZONE.

Исправления, комментарии, вопросы по электронной почте [email protected]
Начало страницы

Время — ArchWiki

  • Домашняя страница
  • Пакеты
  • Форумы
  • Wiki
  • Ошибки
  • Безопасность
  • AUR
  • Скачать

Из ArchWiki

Перейти к навигации Перейти к поиску

Время может относиться к:

  • время (1) команда
  • Системное время
Получено с https: // wiki.archlinux.org/index.php?title=Time&oldid=550799 » Категория:
  • Значения страниц

Меню навигации

Персональные инструменты

  • Создать аккаунт
  • Войти

Пространства имен

  • Страница
  • Обсуждение

Варианты

    Просмотры

    • Читать
    • Просмотреть источник
    • Просмотреть историю

    Подробнее

      Поиск

      Навигация

      • Главная страница
      • Содержание
      • Участие
      • Новости вики
      • Случайная страница

      Взаимодействие

      • Справка
      • Содействие
      • Последние изменения
      • Недавние обсуждения
      • Новые страницы
      • Статистика
      • Запросы

      Инструменты

      • Какие ссылки здесь
      • Связанные изменения
      • Специальные страницы
      • Версия для печати
      • Постоянная ссылка
      • Информация о странице
      • Последний раз эта страница была отредактирована 24 октября 2018 в 16:00.
      • Контент
      • доступен по лицензии GNU Free Documentation License 1.3 или более поздней, если не указано иное.
      • Политика конфиденциальности
      • Об ArchWiki
      • Заявление об отказе от ответственности

      Как установить дату, время / NTP и часовой пояс с помощью timedatectl — The Geek Diary

      RHEL 7 предлагает другую утилиту для настройки и отображения информации о дате и времени, timedatectl .Эта утилита является частью системы systemd и диспетчера служб. С помощью команды timedatectl вы можете:

      • Изменить текущую дату и время
      • Установить часовой пояс
      • Настроить NTP

      Если вы запустите timedatectl без каких-либо параметров, вы получите результат, аналогичный приведенному ниже:

       # timedatectl
            Местное время: вс 2017-09-24 13:16:39 IST
        Мировое время: вс 24.09.2017 07:46:39 UTC
              Время RTC: Вс 2017-09-24 07:46:39
             Часовой пояс: Азия / Калькутта (IST, +0530)
           NTP включен: нет
      NTP синхронизирован: да
       RTC в местной ТЗ: нет
            Летнее время активно: нет данных 

      Приведенные выше выходные данные показывают — местное время, всемирное время, время RTC, часовой пояс, конфигурацию NTP и летнее время (DST)

      Изменить текущую дату и время

      Используйте аргумент set-time , чтобы изменить текущую дату и текущее время.

      1. Чтобы изменить дату, используйте следующий синтаксис:

       # timedatectl set-time [ГГГГ-ММ-ДД] 

      2. Чтобы изменить текущее время, используйте следующий синтаксис. Введите час в 24-часовом формате.

       # timedatectl set-time [ЧЧ: ММ: СС] 

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

       # timedatectl set-local-rtc да 

      4. Чтобы настроить систему на использование UTC, используйте следующую команду:

       # timedatectl set-local-rtc № 

      Изменить часовой пояс

      Используйте следующую команду для вывода списка всех доступных часовых поясов:

       # timedatectl list-timezones
      Африка / Абиджан
      Африка / Аккра
      Africa / Addis_Ababa
      Африка / Алжир
      Африка / Асмэра
      Африка / Бамако
      ..... 

      Используйте аргумент set-timezone , чтобы изменить часовой пояс. В следующем примере часовой пояс изменяется на Asia / Kolkata :

       # timedatectl set-timezone Asia / Kolkata 

      Настройка NTP

      Используйте аргумент set-ntp, чтобы включить или отключить автоматическую синхронизацию системных часов с удаленным сервером по протоколу сетевого времени (NTP).

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *