Linux はログイン時にネットから時間を設定します

Linux はログイン時にネットから時間を設定します

私のUbuntu 10.04ボックスでは、(rootではなくユーザーとして)

sudo net time set

そしてそれはうまく機能します。

私は、ボックスがもっと定期的に、または少なくともログインするたびにネット時間を取得することを望みます。そこで、ネットタイムセット/etc/プロファイル失敗しました。次のような節を追加しました

user ALL=(ALL) NOPASSWD: /usr/bin/net

/etc/sudoers(使用ビズド)。役に立ちませんでした。

一度も触ったことがないクローンそのため、chron タブを追加する方法がわかりません。(システム時間をリセットするためにシステム時間に依存するのは矛盾しているように思えます。)

  1. これを行う最善の方法は何ですか?
  2. cron ジョブの場合は、簡単な例を教えていただければ幸いです。
  3. 同じ質問ですが、コマンドについてですサービスdhcp3-serverを再起動?

(はい、私のボックスは DHCP によってアドレスを取得しますが、DHCP サーバーは高速カメラに接続された 4 つのギガビット ENET カードを制御します。ログイン時や起動時に、DHCP サーバーによってカメラが 1 台しか表示されないことがあります。)

前もって感謝します。

答え1

(はい、2番目の回答を追加します。)

説明によると、 に適切な行を追加しましたが、で を/etc/sudoers呼び出していません。sudo/etc/profile

コマンドは/etc/profile次のようになります。

sudo net time set

これは、どのアカウントがログインするたびに実行されることに注意してください。これが必要な操作ですか、それともコマンドを に入れる方が意味がありますか$HOME/.profile?

これを cron ジョブにするには、次のようなものを追加します。

0 * * * * *      sudo net time set

と入力すると、 になります。foo.txtその後crontab foo.txtcrontab -l現在の cron ジョブが表示されます。指定されたパラメータでジョブは 1 時間に 1 回実行され、man 5 crontab必要に応じて調整されます。かもしれない/usr/bin/netcron ジョブは最小限の環境で実行されるため、いくつかの問題が発生する可能性がありますが、環境変数に依存するとは思いません。

とは異なりntpd、これによりシステムのクロックが逆戻りし、問題が発生する可能性があることに注意してください。

答え2

気にしないでください。

システム クロックを同期させる通常の方法は ですntpd。Ubuntu ではデフォルトでインストールされ、設定されているはずです。プロセスが実行されていますかntpd? システムのクロックが間違っていませんか?

編集 :

私の他の回答に対するコメントから判断すると、使用できる NTP サーバーをお持ちのようです。

ntpシステムには すでにソフトウェアがインストールされているはずです。dpkg -l ntp確認するには。ntpdデーモンはすでに実行されている可能性がありますが、どのサーバーと通信すればよいかわからないため動作しませんps -ef | grep ntpd。確認するには。

/etc/ntp.confntp の設定ファイルです。デフォルトのバージョンには次のものがあります:

server 0.ubuntu.pool.ntp.org
server 1.ubuntu.pool.ntp.org
server 2.ubuntu.pool.ntp.org
server 3.ubuntu.pool.ntp.org

これらの行をコメントアウトして、以下を追加します。

server your.ntp.server

次に以下を実行します:

sudo /etc/init.d ntp restart

man ntpd詳細については、こちらをご覧ください。ただし、これで十分でしょう。

関連情報