エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


CentOS環境に ntpdをインストールして自動的に時刻を取得して合わせる設定にする

      2019/03/02

CentOS環境に ntpdをインストールして自動的に時刻を取得する

 

VirtualBoxに LAMP環境を作ったけど時刻がずれていた

 
VirtualBoxにCakePHP3を設置。必要なCentOS、Apache、PHP、MySQL、Composerをインストールし設定する」の記事で、VirtualBox環境に CentOS7を入れて、LAMP環境を構築し、CakePHP3でアプリを開発できる環境を構築しました。
 
ですが、構築した仮想マシンの時計がずれていることに気が付きました。
 
なので、その仮想マシンの時計を合わせたときの手順を解説します。
 
 

時刻を確認して、ntpdをインストールする手順

 
時刻を修正するにあたっては、まず現在の状況を確認します。
そのために、下記のコマンドを実行して、現在の時刻を確認します。

 
もう 8月なのですが、まだ 7月半ばの日時が表示されています。
 
上記は OSが把握している日時なのですが、これがずれている場合は、ハードウェアの時刻もずれている可能性がありますので、下記のコマンドを実行して、ハードウェアの時刻も確認します。

 
 
続いて、時刻を NTPサーバに定期的にアクセスし、自動的に時刻を合わせてくれるサービスがインストールされているかを確認します。

 
「Unit ntpd.service could not be found.」という結果は、該当のサービスが入っていないということですので、下記の yumコマンドを実行してインストールします。
 

 


 

インストールした ntpdの設定をする

 
ntpdをインストールしたら、ntpdの設定を行います。
 
ntpdの設定は、「/etc/ntp.conf」に記述されています。
 
NTPサーバを変更したい場合は、「/etc/ntp.conf」の 20行目付近にある下記の記述のサーバを変更します。
 

 
ほとんどの場合は、デフォルトの設定のままで問題ありません。
 
ですが、1秒以下の単位での時刻が正しい必要がある場合などは、NTPサーバを国内のサーバに変更するなどの対応を行うといいでしょう。
 
下記に NTPサーバの一覧がありますので、この中から NTPサーバを選択し、「/etc/ntp.conf」ファイルの該当の個所を更新します。
http://wiki.nothing.sh/page/NTP/%BF%E4%BE%A9%B8%F8%B3%AB%A5%B5%A1%BC%A5%D0#h946fa09
 
 
インストールした ntpdを有効にするため、下記のコマンドで起動を実施します。
 

 
 
起動コマンドを実行したら、下記のコマンドで起動したことを確認します。
 

 
 
また、Apacheや MySQLなどと同じく、サーバを再起動したときに NTPも自動起動する設定にしておく必要がありますので、下記のコマンドを実行します。
 

 
自動起動の設定ができたかどうかを、下記のコマンドで確認します。
 

 
「enabled」になっていると自動起動が設定されています。
 
続けて、下記のコマンドで、ハードウェアの時刻も合わせておきます。
 

 
改めてハードウェアの時刻を表示して、ハードウェアの時刻も正しいものになったことを確認します。
 

 
 
これでサーバの時刻を設定することができました。
 
 

NTP、NTPサーバ(Network Time Protocolサーバ)とは何か?

 
「NTP(Network Time Protocol)」とは、ネットワークに接続されている機器が正しい時間を維持することができるように、正しい時刻を取得して同期するために使用する通信プロトコルのことです。
 
その正しい時刻を提供しているサーバを「NTPサーバ(Network Time Protocolサーバ)」と言います。
 
 
つまりは
インターネット上には、正しい時間を提供する「NTPサーバ」というサーバがあります。
私たちが構築、利用している Webサーバや、パソコンは、その NTPサーバに定期的にアクセスすることで時刻を調整し、正しい時刻にしています。
その調整するために NTPサーバにアクセスするための手続きが NTPというプロトコル、ということになります。
 
 
そして、日本国内の NTPサーバについては、下記に解説があります。
http://wiki.nothing.sh/page/NTP/%BF%E4%BE%A9%B8%F8%B3%AB%A5%B5%A1%BC%A5%D0#h946fa09
 
 
また、自宅の Windowsパソコンが、スリープから回復すると日付がずれるという現象が発生したことがありましたが、その時、NTP、NTPサーバについて調べました。
その時の記事が下記にありますので、あわせて参考にしてみてください。
Windows 10パソコンで日付、時間がずれる!原因と時計を合わせる解決方法

 - プログラミング・Web関連技術

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

Gitで基本的なデプロイ(push、pullで本番公開)環境を作る手順解説
Gitで基本的なデプロイ(push、pullで本番公開)環境を作る手順解説

開発進行中の環境、公開中の環境にGitを導入する。その基本的な手続きを解説。Gitの導入、ローカルリポジトリを作成。リモートリポジトリを利用し、本番環境にデプロイする手続きを解説。

PythonでMySQLへの接続ライブラリMySQL-pythonの簡単インストール方法

PythonはMySQLに接続するライブラリは別途インストールが必要。なのでMySQL-pythonライブラリのインストール方法とサンプルスクリプトで動作検証までを解説。

ブラウザのキャッシュを活用するの対策!広告バナーを消して表示を高速化

あなたのサイトが遅いのはバリューコマースのバナーではないですか?バリューコマースのバナーを外すだけでmod_deflateとmod_expiresを設定するより効果があります!

コピーコンテンツ対策.htaccessで直リンク禁止しリダイレクトで対応

不正なコピーコンテンツからの直リンクを拒否する.htaccessの設定方法。拒否するサイトを指定、許可するサイトを指定する方法、単純な拒否と画像の差し替えを解説。

Gitはフォルダ自体を管理対象にはできない。空のフォルダを設定する手順
Gitはフォルダ自体を管理対象にはできない。空のフォルダを設定する手順

Gitはフォルダだけを管理対象にすることはできない。そのため空の.gitkeepファイルを作成し管理対象にすることで、それが入っているフォルダも管理対象にする、と言う手順で管理を行う。

コピーコンテンツ・直リンクの3つの対策Google通報などのまとめ

コピーコンテンツを発見したときにやること!Googleに通報、画像の直リンクを禁止、RSSの全文配信を停止。この対策をしないとあなたのサイトの評価も下がるかも!

PythonでURLの有無、存在をチェックするスクリプト

PythonでURLが存在するか否かのチェックスクリプト。ライブラリ「urllib2」を使い、指定のURLにアクセスしそのレスポンスコードを判別するという仕組み。

mod_pagespeedカスタマイズで高速化を詳細解説・Google謹製

mod_pagespeedをデフォルトのまま使っていませんか?mod_pagespeedはデフォルトのままでも速い!でも仕組みを理解し設定し直せばより速くなる!

.gitignoreで無視フォルダの中の特定のファイルを除外「!(否定文)」を使う場合の注意点
.gitignoreで無視フォルダの中の特定のファイルを除外「!(否定文)」を使う場合の注意点

Gitで管理する対象、対象外のファイル、フォルダの指定は .gitignoreに記述する。その基本的な記述の方法に加え、無視対象にしたフォルダの中の特定のファイルを管理対象にする記述方法を解説。

さくらサーバのmb_send_mailでメール送信時にmalformed header from script 'xxx.php': Bad header: xxxのエラーが
さくらサーバのmb_send_mailでメール送信時にmalformed header from script ‘xxx.php’: Bad header: xxxのエラーが

さくらインターネットのレンタルサーバからPHPのmb_send_mail()関数を利用してメールを送信するとInternal Server Errorが発生。その原因は、メールアドレスが登録されていないこと。