Arch Linuxで時間を修正する方法

Arch Linuxで時間を修正する方法

私は現在、デスクトップでArch Linuxをオペレーティングシステムとして使用しています。時間を見ると22時38分なのに時間はきっと17時8分くらいだった。コマンドを呼び出すと、timedatectl次のようになります。

Local time: Wed 2017-01-11 22:37:43 IST
Universal time: Wed 2017-01-11 17:07:43 UTC
    RTC time: Wed 2017-01-11 17:07:41
    Time zone: Asia/Kolkata (IST, +0530)
Network time on: yes
NTP synchronized: no
RTC in local TZ: no

修正する

私が実行すると、sudo systemctl status systemd-timesyncd次のようになります。

● systemd-timesyncd.service - Network Time Synchronization
   Loaded: loaded (/usr/lib/systemd/system/systemd-timesyncd.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2017-01-11 00:49:36 IST; 1 day 1h ago
     Docs: man:systemd-timesyncd.service(8)
 Main PID: 31123 (systemd-timesyn)
   Status: "Idle."
    Tasks: 2 (limit: 4915)
   CGroup: /system.slice/systemd-timesyncd.service
           └─31123 /usr/lib/systemd/systemd-timesyncd

Jan 12 01:39:42 sharan-pc systemd-timesyncd[31123]: Timed out waiting for reply from 5.9.78.71:123 (1.arch.pool.ntp.org).
Jan 12 01:39:53 sharan-pc systemd-timesyncd[31123]: Timed out waiting for reply from 192.53.103.108:123 (1.arch.pool.ntp.org).
Jan 12 01:40:03 sharan-pc systemd-timesyncd[31123]: Timed out waiting for reply from 139.59.19.184:123 (2.arch.pool.ntp.org).
Jan 12 01:40:13 sharan-pc systemd-timesyncd[31123]: Timed out waiting for reply from 139.59.45.40:123 (2.arch.pool.ntp.org).
Jan 12 01:40:24 sharan-pc systemd-timesyncd[31123]: Timed out waiting for reply from 123.108.200.124:123 (2.arch.pool.ntp.org).
Jan 12 01:40:34 sharan-pc systemd-timesyncd[31123]: Timed out waiting for reply from 125.62.193.121:123 (2.arch.pool.ntp.org).
Jan 12 01:40:44 sharan-pc systemd-timesyncd[31123]: Timed out waiting for reply from 139.59.45.40:123 (3.arch.pool.ntp.org).
Jan 12 01:40:55 sharan-pc systemd-timesyncd[31123]: Timed out waiting for reply from 123.108.200.124:123 (3.arch.pool.ntp.org).
Jan 12 01:41:05 sharan-pc systemd-timesyncd[31123]: Timed out waiting for reply from 139.59.19.184:123 (3.arch.pool.ntp.org).
Jan 12 01:41:15 sharan-pc systemd-timesyncd[31123]: Timed out waiting for reply from 125.62.193.121:123 (3.arch.pool.ntp.org).

追跡パス

私もコマンドを試してみましたtraceroute -U -p ntp pool.ntp.org

traceroute to pool.ntp.org (139.59.19.184), 30 hops max, 60 byte packets
 1  10.114.1.1 (10.114.1.1)  1.713 ms  2.020 ms  2.343 ms
 2  10.10.2.41 (10.10.2.41)  1.123 ms  2.580 ms  2.836 ms
 3  cyberoam.iisc.ac.in (10.10.1.98)  0.553 ms  0.806 ms  0.813 ms
 4  * * *
 5  * * *
 6  * * *
 7  * * *
 8  * * *
 9  * * *
10  * * *
11  * * *
12  * * *
13  * * *
14  * * *
15  * * *
16  * * *
17  * * *
18  * * *
19  * * *
20  * * *
21  * * *
22  * * *
23  * * *
24  * * *
25  * * *
26  * * *
27  * * *
28  * * *
29  * * *
30  * * *

どうすれば解決できますか?私も試しましたtimedatectl set-ntp true。適用するには再起動する必要がありますか?

ベストアンサー1

systemd-timesyncd では再起動は不要です。私のシステムでtimedatectlをテストしました。接続が確立されるまでに最大1分かかることがあります。

手動時刻と日付制御

状態

ネットワーク時刻同期がオンになっているかどうかなど、システムクロックとRTCの現在の設定を表示します。ネットワーク時間同期がオンになっているかどうかは、systemd-timesyncd.serviceデバイスが有効になっているかどうかのみ反映されます。このコマンドがオフ状態を示していても、他のサービスはまだ時計をネットワークと同期している可能性があります。

$ timedatectl status
      Local time: Wed 2017-01-11 13:45:07 GMT
  Universal time: Wed 2017-01-11 13:45:07 UTC
        RTC time: Wed 2017-01-11 13:45:07
       Time zone: Europe/London (GMT, +0000)
 Network time on: yes
NTP synchronized: yes
 RTC in local TZ: yes

timedatectlのマニュアルページは私のシステムにあります。 Fedoraが実装をパッチしましたが、マンページはパッチしなかった可能性があります。どのサービスが使用されているかを問い合わせる方法がわかりません。私のシステムでchronydを使用するようになりました。 ntp/ntpdを使うことも可能だと思います。

しかし、あなたの場合、Archはtimesyncdの上流のデフォルト値を使用していると確信しています。

$ systemctl status systemd-timesyncd
● systemd-timesyncd.service - Network Time Synchronization
   Loaded: loaded (/usr/lib/systemd/system/systemd-timesyncd.service; disabled; 
   Active: inactive (dead)
     Docs: man:systemd-timesyncd.service(8)

$ systemctl status chronyd
● chronyd.service - NTP client/server
   Loaded: loaded (/usr/lib/systemd/system/chronyd.service; enabled; vendor pres
   Active: active (running) since Mon 2017-01-09 19:09:39 GMT; 1 day 18h ago
 Main PID: 928 (chronyd)
    Tasks: 1 (limit: 4915)
   CGroup: /system.slice/chronyd.service
           └─928 /usr/sbin/chronyd

ステータスの下にエラーを記録できます。systemctlたとえば、システムログへのアクセス権を持つユーザーとして実行する必要がありますsudo

chronydとは異なり、「NTP sync:no」以外の項目をchronyc照会する文書化された方法はありません。systemd-timesyncd役に立つログがありますように!

目標としてお勧めします

  1. pool.ntp.orgシステムで使用したいよく知られているエイリアスを確認してください。
  2. たとえば、エイリアスをテストしますntpdate -q arch.pool.ntp.org
  3. tracerouteエイリアスを見て、近くにアクセスをブロックするブロック(ファイアウォールなど)があることを確認してください。いつものように、ping結果をより早く取得するには、最初に使用するか(間違って解釈する可能性が低い)mtrTracerouteバージョンを使用します(これはまた、マルチパスネットワークからの多くの出力を防ぐICMP Tracerouteにデフォルト値が設定されています)。最終的には、traceroute -U -p ntp pool.ntp.orgNTPと同じUDPポートを使用して同様のものが欲しいです。

編集する:この回答の以前のバージョンは、systemd-timesyncdのネイティブNTPサーバーを混同しました。ではコメント化(無効化)されていますが、timesyncd.confサーバーを変更する必要がある場合にのみ、この行のコメント化を解除できます。デフォルトはコンパイル時にtimesyncdに組み込まれています。これはすべての文書で言及されています。

https://www.cyberciti.biz/faq/linux-unix-bsd-is-ntp-client-working/

https://wiki.archlinux.org/index.php/Systemd-timesyncd

おすすめ記事