More from: ntp

時計も”USB TYPE-C”給電か

SNSの広告にデジタル表示の時計が出て来た。
電波時計では時刻が合わない場所でも自動で正確に時刻に合わせることが出来るという時計。
無線LANの文字が見えたのでタイムサーバーに接続して時刻合わせを行うようなものだろうと思ってその広告を見ると思った通りだった。
しかも電源供給は電池では無く外部からUSB TPE-Cポートを使用して行うというもの。
時代は時計にもTYPE-Cポートを付けるようになったのねぇ、、、
ならば屋外に持ち出してもモバイルバッテリーで給電可能かと思ったら、公式サイトにはモバイルバッテリーは使用不可となっていた。
だったら電池を内蔵すれば良いのにと思うんだけど、無線LAN周りで結構な電力が消費されるだろうからコイン電池程度では交換頻度が高くなってしまうのだろうな。
面白そうな製品ではあるが、メーカーが”mag”(20年くらい前に液晶ディスプレイを販売していたが、煙が出るような不良品が多く日本から撤退し、その際に日本での修理を依頼した会社に修理費用を払わなかった台湾のメーカーと同じ名前)というのが気にかかるな。

←クリックしてくれると嬉しいです。

clockコマンド

linuxでシステム時刻とCPU時刻(BIOSの時刻)は別物であり、起動時はCPU時刻を基準としてシステム時刻がセットされる。
#linuxに限らずWindowsOSでも同様。
CPU時刻はPCの内蔵時計の時刻だが、この時計が思いのほか精度が悪い(笑)。
なので一度起動するとしばらく止めることの無いサーバの場合、気付くとかなり狂っていることがある。
linuxには時刻を自動で合わせてくれるntpという仕組みが用意されていて、ディストリビューションによってはデフォルトでインストールされる。
これはタイムサーバと呼ばれる時刻の基準となるサーバとシステム時刻を同期してくれる仕組み。
ただ、ntpで修正されるのはシステム時刻だけで、CPU時刻は修正されない。
そのままではシステム時刻とCPU時刻が大きく乖離してしまい、再起動になかなか時刻の同期がされないことにもなりかねない。
多くのシステムではシャットダウン時にCPU時刻をシステム時刻に合わせるように動作するが、これはシャットダウン時に呼び出されるスクリプト内で実行されている。
それでも不意の電源断等でシャットダウン処理がされない場合はCPU時刻とシステム時刻は同期しない。

任意のタイミングでCPU時刻をシステム時刻に合わせるためには”clock”コマンドを使うことになる。
このコマンドはオプションを何も付けないで実行すると現在のCPU時刻を表示してくれる。
システム時刻をCPU時刻に設定するにはスーパーユーザーで
#clock -w
と”-w”オプションを付けてclockコマンドを実行するだけ。
これでCPU時刻とシステム時刻が”ほぼ”一致する(コマンド実行のオーバヘッドがあるので完全に一致はしない)。
長期間動作させるサーバでは一日に一度程度このコマンドを実行するのが良いと思う(crontabに登録すれば簡単)。

←クリックしてくれると嬉しいです。

Linuxでタイムゾーンの変更を行うには

職場のサーバの時刻が狂っていたので、タイムサーバーに同期させたところ、分と秒は合ったが時がおかしくなってしまった。
あれぇ?と思ってよく見ると、時刻表示の最後の部分が”JST”ではなく”CST”になっている。
このサーバを構築したのは自分では無いのでインストール時にどのような設定を行ったかは知らないが、タイムゾーンが日本では無く、合衆国中部標準時になっている。
これを日本標準時にするのに下記の手順を実行した(全てスーパーユーザーにて実行)。
#cd /usr/share/zoneinfo/Asia
#cp Tokyo /etc/.
#cd /etc
#mv localtime localtime.org(念のためバックアップを取った)
#cp(or mv) Tokyo localtime
要はタイムゾーン情報を合衆国中部標準時用のファイルから日本標準時用のファイルに入れ替えたということ。
なにも実体のファイルを入れ替えなくても、次のようにしてシンボリックリンクを張っても良いと思う。
#ln -s /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
というか、こっちのほうがスマートかも。

←クリックしてくれると嬉しいです。