MA-S1xx、MA-X3xx は、ファイルシステムが下記のように構成されています。
tmpfs は RAM ディスクですので、電源を OFF した際にすべての変更が失われてしまいます。
ただし、それだけでは実運用に困りますので、電源 OFF/ON 時に本体 eMMC に 書換可能領域 を保存・リストアする仕組みを設けています。
書換可能部分は、下記4領域に分割して保存しています。
No. | ファイル名 | 用途 |
---|---|---|
1 | overlays_etc.tar.zst | /etc 以下の設定保存用 |
2 | overlays_home.tar.zst | /home, /root 以下(ユーザ作業領域)保存用 |
3 | overlays_log.tar.zst | /var/log 以下、syslog 保存用 |
4 | overlays_other.tar.zst | その他(追加導入したパッケージ等)保存用 |
5 | overlays_comp_log.tar | /var/log 以下、圧縮された syslog 保存用1) |
保存先のディレクトリは、/ro/.host/overlay で、ファームウェア 2 面で使用する分を除くとだいたい 540MiB ほど利用可能です。
[例] 保存されたファイル
user1@metis:~$ ls -l /ro/.host/overlay/ total 240 -rw------- 1 root root 5695 Apr 10 11:20 old_overlays_etc.tar.zst -rw-r--r-- 1 root root 51200 Apr 10 13:08 overlays_cmp_log.tar -rw------- 1 root root 5730 Apr 10 13:08 overlays_etc.tar.zst -rw------- 1 root root 1569 Apr 10 13:08 overlays_home.tar.zst -rw------- 1 root root 170969 Apr 10 13:08 overlays_log.tar.zst user1@metis:~$
5つのファイルのうち、No.1〜3,5 はシャットダウン・再起動時に自動的に保存処理が行われます。
(明示的に任意のタイミングで保存処理を行うことも可能です。)
No.4 については、コマンドにより明示的に保存処理を行う必要があります。
[使用方法の表示]
user1@metis:~$ sudo overlaycfg Usage: overlaycfg [options ...] -s <kind> : save files on overlay area. kind is one of 'home', 'log', 'etc', 'apt', 'other'. -i : initialize overlay area (Reset to factory default). -u : unmount overlay partition on exit. user1@metis:~$
[実行例: No.4 を保存]
user1@metis:~$ sudo overlaycfg -s other * remounting overlay partition as RW... user1@metis:~$
オーバーレイ保存領域 (/ro/.host/overlay) は通常時 R/W mount しないようにしています。
突然の電源断でも破損の危険が無いようにするためです。
オーバーレイ保存処理時には自動で R/W remount しますので、保存処理後 R/O で remount しておくために
-u オプションをつけて実行するのが安全です。
user1@metis:~$ sudo overlaycfg -s etc -u * remounting overlay partition as RW... <--- 保存前に R/W remount している * remounting overlay partition as RO... <--- 保存後に R/O remount している user1@metis:~$
オーバーレイ保存領域 (/ro/.host/overlay)のファイルを削除する事で、本装置を工場出荷状態に戻すことが可能です。
1. overlay領域をR/W remount
user1@metis:~$ sudo mount_overlay * remounting overlay partition as RW...
2. /ro/.host/overlay/ 以下のファイルを削除
user1@metis:~$ sudo rm /ro/.host/overlay/*
3. overlay領域をR/O remount
user1@metis:~$ sudo mount_overlay -u * remounting overlay partition as RO...
4.「reboot -f」コマンドにより、停止スクリプトの実行をスキップして再起動
user1@metis:~$ sudo reboot -f Rebooting.
オーバーレイ保存領域 (/ro/.host/overlay)のファイルを、SDカード等の外部ストレージを使用して別の端末に移す事で、本装置で設定した内容を別の端末に反映させる事が可能です。
オーバーレイ保存領域内のファイル(設定情報)をSDカードに取り出します。
1. overlay領域をR/W remount
user1@metis:~$ sudo mount_overlay * remounting overlay partition as RW...
2. SDカードをマウント
user1@metis:~$ sudo mount /dev/mmcblk1p1 /mnt/sd/
3. /ro/.host/overlay/ 以下のファイルSDカードにコピー2)
user1@metis:~$ sudo cp /ro/.host/overlay/* /mnt/sd/overlay
4. overlay領域をR/O remount
user1@metis:~$ sudo mount_overlay -u * remounting overlay partition as RO...
取り出した設定情報が入ったSDカードを別の端末接続します。SDカード内の設定情報を、オーバーレイ保存領域に上書きします。
1. overlay領域をR/W remount
user1@metis:~$ sudo mount_overlay * remounting overlay partition as RW...
2. SDカードをマウント
user1@metis:~$ sudo mount /dev/mmcblk1p1 /mnt/sd/
3. SDカードにコピーしておいた設定情報3)を/ro/.host/overlay/ 以下に上書きする
user1@metis:~$ sudo cp /mnt/sd/overlay/* /ro/.host/overlay/
4. overlay領域をR/O remount
user1@metis:~$ sudo mount_overlay -u * remounting overlay partition as RO...
5. SDカードをアンマウント
user1@metis:~$ sudo umount /dev/mmcblk1p1
6.「reboot -f」コマンドにより、停止スクリプトの実行をスキップして再起動
user1@metis:~$ sudo reboot -f Rebooting.