Armadilloフォーラム

RTCバックアップ電池

komatsuins

2018年10月17日 10時13分

お世話になっております。
hwclockコマンドにて、ハードウエアクロックを確認しようとしましたが、command not foundのエラーが返ってきます。RTCバックアップ電池は装着していません。電池を装着しないとコマンドは受け付けないのでしょうか?
また、RTCバックアップ電池を付けない状態でアルマジロの通電をOFFにて2~3日後にONしても日時はずれません。どのようにして日時を保持しているのでしょうか?

コメント

at_syunya.ohshio

2018年10月17日 15時35分

大塩です。

> hwclockコマンドにて、ハードウエアクロックを確認しようとしましたが、command not foundのエラーが返ってきます。
上記について、原因把握のためスクリーンショットをいただけますでしょうか。

> RTCバックアップ電池は装着していません。電池を装着しないとコマンドは受け付けないのでしょうか?
そのようなことはなく、電池未装着でもhwclockは実行可能です。

> また、RTCバックアップ電池を付けない状態でアルマジロの通電をOFFにて2~3日後にONしても日時はずれません。どのようにして日時を保持しているのでしょうか?
Armadillo-IoT ゲートウェイ G3 が接続されているネットワーク上にntpサーバが存在する場合、自動で時刻が設定されるようになっています。
以下のページに時刻設定に関するコメントがありますので、参考にしてください。
https://armadillo.atmark-techno.com/forum/armadillo/2692#comment-4399

ご回答ありがとうございます。
hwclockコマンドが受け付けなかったのは、シリアルコンソールを一般ユーザーでログインしたからでしょうか?
スクリーンショットを添付いたします。
(今現在、rootでログインするパスワードを知っている者が不在のため、試すことができませんでした。)

電源投入時の時刻に関しては、3G回線にてntpサーバーが存在するネットワークに接続しています。と、言うことは特に設定など行わなくても、電源投入時に日時が設定されるということで承知いたしました。
上記を踏まえて、下記で質問した内容につながります。下記質問時も3G回線にてntpサーバーの存在するネットワークに接続していました。電波状況は概ね良好な場所になります。このような状況で復電時に時刻が合わない原因は何が考えられるでしょうか?
https://users.atmark-techno.com/forum/armadillo/3555

ファイル ファイルの説明
スクリーンショット.png テラタームスクリーンショット

at_syunya.ohshio

2018年10月17日 17時56分

大塩です。
スクリーンショットありがとうございます。
> hwclockコマンドが受け付けなかったのは、シリアルコンソールを一般ユーザーでログインしたからでしょうか?

おっしゃる通り、一般ユーザーからではhwclockは[command not found] となります。
hwclockを実行する場合はrootから実行してみてください。

> 上記を踏まえて、下記で質問した内容につながります。下記質問時も3G回線にてntpサーバーの存在するネットワークに接続していました。電波状況は概ね良好な場所になります。このような状況で復電時に時刻が合わない原因は何が考えられるでしょうか?

原因として考えられるものの1つとして、ntpサーバにアクセスできていない可能性があります。
[ping 0.debian.pool.ntp.org]等でntpサーバにアクセスできるか試していただけますでしょうか。

また、システムログからntpdateの処理状況を確認することができるかもしれません。
以下のコマンドを実行し、システムログを確認していただけますでしょうか。
・[grep ntpdate /var/log/syslog]

早速のご回答ありがとうございました。

> 原因として考えられるものの1つとして、ntpサーバにアクセスできていない可能性があります。
> [ping 0.debian.pool.ntp.org]等でntpサーバにアクセスできるか試していただけますでしょうか。
>
> また、システムログからntpdateの処理状況を確認することができるかもしれません。
> 以下のコマンドを実行し、システムログを確認していただけますでしょうか。
> ・[grep ntpdate /var/log/syslog]
後ほど確認してみます。

また、ntpサーバーで時刻調整が出来た場合、ハードウエアクロックも自動で調整されるのでしょうか?または、別途”hwclock --utc --systohc”コマンドを送る必要があるのでしょうか?

at_syunya.ohshio

2018年10月18日 13時27分

大塩です。

> また、ntpサーバーで時刻調整が出来た場合、ハードウエアクロックも自動で調整されるのでしょうか?または、別途”hwclock --utc --systohc”コマンドを送る必要があるのでしょうか?
上記の場合、ハードウェアクロックも自動で調整されます。
起動後に[date]コマンド(システムクロック)と[hwclock]コマンド(ハードウェアクロック)を実行すると、同じ日付が設定されていることがわかるはずです。

ご回答ありがとうございました。

> > また、ntpサーバーで時刻調整が出来た場合、ハードウエアクロックも自動で調整されるのでしょうか?または、別途”hwclock --utc --systohc”コマンドを送る必要があるのでしょうか?
> 上記の場合、ハードウェアクロックも自動で調整されます。
> 起動後に[date]コマンド(システムクロック)と[hwclock]コマンド(ハードウェアクロック)を実行すると、同じ日付が設定されていることがわかるはずです。
私の理解不足しているかもしれませんが、先ほど電池を入れてアルマジロの電源をONにしましたが、ハードウエアクロックの時刻は修正されませんでした。電源投入時のNTPサーバー時刻同期ではハードウエアクロックの時刻は修正されないのでしょうか?
手順は、下記の通りです。
「アルマジロ電源ON」⇒「root権限でログイン」⇒「dateコマンドで時刻確認」⇒「hwclockでハードウエアの時刻確」
念のためスクリーンショットも添付いたします。

ファイル ファイルの説明
スクリーンショット_hwclock.png hwclockスクリーンショット

at_syunya.ohshio

2018年10月18日 18時43分

大塩です。

> 私の理解不足しているかもしれませんが、先ほど電池を入れてアルマジロの電源をONにしましたが、ハードウエアクロックの時刻は修正されませんでした。電源投入時のNTPサーバー時刻同期ではハードウエアクロックの時刻は修正されないのでしょうか?
> 手順は、下記の通りです。
> 「アルマジロ電源ON」⇒「root権限でログイン」⇒「dateコマンドで時刻確認」⇒「hwclockでハードウエアの時刻確」
> 念のためスクリーンショットも添付いたします。

説明が不足しており申し訳ありません。
Debian GNU/Linux 8(jessie)では、システムクロックからハードウェアクロックへの自動同期は「Armadilloのシャットダウン時」に行われます。
この処理は[hwclock-save]にて行われており、以下の方法で存在を確認できます。

systemctl list-unit-files | grep hwclock-save
hwclock-save.service                       enabled 

また、以下の方法でサービスの詳細を確認することができます。

root@armadillo:~# cat /lib/systemd/system/hwclock-save.service 
[Unit]
Description=Synchronise Hardware Clock to System Clock
DefaultDependencies=no
Before=shutdown.target
ConditionFileIsExecutable=!/usr/sbin/ntpd
ConditionFileIsExecutable=!/usr/sbin/openntpd
ConditionFileIsExecutable=!/usr/sbin/chrony
ConditionVirtualization=!container