MA-S1xx は、ファイルシステムが下記のように構成されています。
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 面で使用する分を除くとだいたい 450MiB ほど利用可能です。
[例] 保存されたファイル
user1@gemini:~$ ls -l /ro/.host/overlay/ total 176 -rwxr-xr-x 1 root root 5412 Aug 22 20:06 old_overlays_etc.tar.zst -rwxr-xr-x 1 root root 40960 Aug 24 08:46 overlays_cmp_log.tar -rwxr-xr-x 1 root root 5422 Aug 24 08:46 overlays_etc.tar.zst -rwxr-xr-x 1 root root 1260 Aug 24 08:46 overlays_home.tar.zst -rwxr-xr-x 1 root root 115227 Aug 24 08:46 overlays_log.tar.zst user1@gemini:~$
5つのファイルのうち、No.1〜3,5 はシャットダウン・再起動時に自動的に保存処理が行われます。
(明示的に任意のタイミングで保存処理を行うことも可能です。)
No.4 については、コマンドにより明示的に保存処理を行う必要があります。
[使用方法の表示]
user1@gemini:~$ 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@gemini:~$
[実行例: No.4 を保存]
user1@gemini:~$ sudo overlaycfg -s other * remounting overlay partition as RW... user1@gemini:~$
オーバーレイ保存領域 (/ro/.host/overlay) は通常時 R/W mount しないようにしています。
突然の電源断でも破損の危険が無いようにするためです。
オーバーレイ保存処理時には自動で R/W remount しますので、保存処理後 R/O で remount しておくために
-u オプションをつけて実行するのが安全です。
user1@gemini:~$ sudo overlaycfg -s other -u * remounting overlay partition as RW... <--- 保存前に R/W remount している * remounting overlay partition as RO... <--- 保存後に R/O remount している user1@gemini:~$
オーバーレイ保存領域 (/ro/.host/overlay)のファイルを削除する事で、本装置を工場出荷状態に戻すことが可能です。
1. overlay領域をR/W remount
user1@gemini:~$ sudo mount_overlay * remounting overlay partition as RW...
2. /ro/.host/overlay/ 以下のファイルを削除
user1@gemini:~$ sudo rm /ro/.host/overlay/*
3. overlay領域をR/O remount
user1@gemini:~$ sudo mount_overlay -u * remounting overlay partition as RO...
4.「reboot -f」コマンドにより、停止スクリプトの実行をスキップして再起動
user1@gemini:~$ sudo reboot -f Rebooting.
オーバーレイ保存領域 (/ro/.host/overlay)のファイルを、SDカード等の外部ストレージを使用して別の端末に移す事で、本装置で設定した内容を別の端末に反映させる事が可能です。
オーバーレイ保存領域内のファイル(設定情報)をSDカードに取り出します。
1. overlay領域をR/W remount
user1@gemini:~$ sudo mount_overlay * remounting overlay partition as RW...
2. SDカードをマウント
user1@gemini:~$ sudo mount /dev/mmcblk1p1 /mnt/sd/
3. /ro/.host/overlay/ 以下のファイルSDカードにコピー2)
user1@gemini:~$ sudo cp /ro/.host/overlay/* /mnt/sd/overlay
4. overlay領域をR/O remount
user1@gemini:~$ sudo mount_overlay -u * remounting overlay partition as RO...
取り出した設定情報が入ったSDカードを別の端末接続します。SDカード内の設定情報を、オーバーレイ保存領域に上書きします。
1. overlay領域をR/W remount
user1@gemini:~$ sudo mount_overlay * remounting overlay partition as RW...
2. SDカードをマウント
user1@gemini:~$ sudo mount /dev/mmcblk1p1 /mnt/sd/
3. SDカードにコピーしておいた設定情報3)を/ro/.host/overlay/ 以下に上書きする
user1@gemini:~$ sudo cp /mnt/sd/overlay/* /ro/.host/overlay/
4. overlay領域をR/O remount
user1@gemini:~$ sudo mount_overlay -u * remounting overlay partition as RO...
5. SDカードをアンマウント
user1@gemini:~$ sudo umount /dev/mmcblk1p1
6.「reboot -f」コマンドにより、停止スクリプトの実行をスキップして再起動
user1@gemini:~$ sudo reboot -f Rebooting.