Как установить дату и время в формате Unix Epoch Format



Попробуйте наш инструмент устранения неполадок

Эпоха Unix началась в 00:00:00 UTC в четверг, 1 января 1970 года. С тех пор системы Unix отслеживают время, подсчитывая количество секунд с момента наступления этой даты. Unix и различные реализации, такие как Linux и FreeBSD, отслеживают время как буквальное количество секунд с тех пор минус количество произошедших дополнительных секунд.



Это не та концепция, с которой многие пользователи или даже программисты сталкиваются ежедневно. Тем не менее, если вы знаете количество секунд, прошедших с начала эпохи Unix, вы действительно можете установить время в своей системе на это значение. Вам нужно будет работать с интерфейсом командной строки, поэтому либо удерживайте Ctrl, Alt и F1-F6, чтобы перейти к виртуальному терминалу, либо нажмите Ctrl + Alt + T, чтобы получить графический терминал. Вы также можете найти слово «терминал» в Ubuntu Dash или запустить его из меню «Приложения», а затем из меню «Системные инструменты» в LXDE, KDE и вне меню «Whisker» в Xfce4.



Метод 1: использование инструмента даты GNU для установки времени Unix Epoch

Перед тем, как пытаться установить часы, рекомендуется убедиться, что строка даты правильно отформатирована. Тип date -d ‘@ 1501959335’ и нажмите Enter, чтобы преобразовать количество секунд с 1 января 1970 года в формат, предпочитаемый людьми. Вы можете заменить 1501959335 любой допустимой меткой времени эпохи Unix. Мы просто использовали это в качестве примера, потому что это была текущая эпоха Unix в какой-то момент при написании этой статьи.



Вы должны получить обычную дату и время, а также часовой пояс для вашего локального компьютера. Если вы уверены, что все в порядке, вы можете использовать команду date -s ‘@ 1501959335’ , чтобы установить часы на эту отметку времени. Если вы получаете сообщение об ошибке «дата: невозможно установить дату: операция запрещена», за которой следует текущая дата, значит, вы пытались запустить ее как пользователь. Тип sudo date -s ‘@ 1501959335’ и нажмите Enter, чтобы установить часы. Не забудьте использовать действительную метку времени Unix вместо цифр, которые мы использовали в нашем примере.

Естественно, вам будет предложено ввести пароль, прежде чем продолжить получать root-доступ.



Метод 2: использование программного обеспечения BSD date

Если вы используете любую из различных операционных систем * BSD, то вам действительно нужно будет использовать другой синтаксис, когда дело доходит до команды date. Это касается пользователей FreeBSD, OpenBSD, NetBSD и, возможно, некоторых реализаций Darwin. Пользователи Linux и других Unix-подобных операционных систем

Чтобы преобразовать секунды с начала эпохи 1 января 1970 года, введите в командной строке date -r 1501959335 и нажмите Enter. Еще раз, вы можете заменить 1501959335 любой допустимой меткой времени Unix.

Введите дату «$ (date -r 1501959335 +’% y% m% d% H% M.% S ’)» и нажмите Enter, чтобы установить дату с начала эпохи. В этих операционных системах на основе BSD это немного сложнее, так как вам нужно указать новый формат для даты и времени, но в конечном итоге он работает так же в конечном итоге. Вам, скорее всего, понадобится root-доступ, чтобы установить новую дату.

Метод 3: просмотр текущего времени Unix

Если вы хотите увидеть текущую временную метку эпохи Unix, запустите дата +% s из командной строки. Это выведет текущее время как количество секунд с начала эпохи Unix. Он будет вам быстро возвращен на следующей строчке.

Вы также можете получить графическое представление, если хотите. Тип xclock -d -utime в командной строке и нажмите Enter. Если у вас установлены классические приложения XFree86, вы увидите всплывающее над терминалом окно, в котором отображается текущее количество секунд.

3 минуты на чтение