起動と終了

5.1. 起動

電源入力インターフェース (Armadillo-610 拡張ボード: CON12) に電源を接続すると、Armadillo-610が起動します。

[注記]

USB シリアル変換アダプタのスライドスイッチやユーザースイッチ(Armadillo-610 拡張ボード: SW1)によって起動モードが変わります。 詳しくは 「接続方法」「スライドスイッチの設定について」 を参照してください。

以下に起動ログの例を示します。

U-Boot 2020.04-at16 (Jun 28 2023 - 16:16:51 +0900)

CPU:   i.MX6ULL rev1.1 at 396 MHz
Model: Atmark Techno Armadillo-600 Series
DRAM:  512 MiB
setup_rtc_disarm_alarm: Can't find bus
WDT:   Started with servicing (10s timeout)
PMIC: PFUZE3000 DEV_ID=0x30 REV_ID=0x11
MMC:   FSL_SDHC: 0, FSL_SDHC: 1
Loading Environment from MMC... OK
In:    mxc_serial
Out:   mxc_serial
Err:   mxc_serial
switch to partitions #0, OK
mmc0(part 0) is current device
flash target is MMC:0
Net:
Warning: ethernet@2188000 using MAC address from ROM
eth0: ethernet@2188000
Fastboot: Normal
Normal Boot
Hit any key to stop autoboot:  0
switch to partitions #0, OK
mmc0(part 0) is current device
6861600 bytes read in 157 ms (41.7 MiB/s)
Booting from mmc ...
36414 bytes read in 4 ms (8.7 MiB/s)
Loading fdt boot/armadillo-610.dtb
111 bytes read in 2 ms (53.7 KiB/s)
1013 bytes read in 2 ms (494.1 KiB/s)
Applying fdt overlay: armadillo-610-onboard-usdhc2.dtbo
5870 bytes read in 2 ms (2.8 MiB/s)
Applying fdt overlay: armadillo-610-extboard-eva.dtbo
4587 bytes read in 3 ms (1.5 MiB/s)
Applying fdt overlay: armadillo-640-lcd70ext-l00.dtbo
## Booting kernel from Legacy Image at 80800000 ...
   Image Name:   Linux-5.10.185-0-at
   Created:      2023-06-27   9:42:52 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    6861536 Bytes = 6.5 MiB
   Load Address: 82000000
   Entry Point:  82000000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 83500000
   Booting using the fdt blob at 0x83500000
   Loading Kernel Image
   Loading Device Tree to 9ef1e000, end 9ef49fff ... OK

Starting kernel ...


   OpenRC 0.45.2 is starting up Linux 5.10.185-0-at (armv7l)

 * Mounting /proc ... [ ok ]
 * Mounting /run ... * /run/openrc: creating directory
 * /run/lock: creating directory
 * /run/lock: correcting owner
 * Caching service dependencies ... [ ok ]
 * Clock skew detected with `/etc/init.d/devfs'
 * Adjusting mtime of `/run/openrc/deptree' to Wed Jun 28 13:26:59 2023

 * WARNING: clock skew detected!
 * Remounting devtmpfs on /dev ... * Mounting /sys ... [ ok ]
 * Mounting security filesystem ... [ ok ]
 * Mounting config filesystem ... [ ok ]
 * Mounting /dev/mqueue ... [ ok ]
 * Mounting /dev/pts ... [ ok ]
 * Mounting /dev/shm ... [ ok ]
fsck_atlog               | * Checking at-log filesystem /dev/mmcblk0gp1 ... [ ok ]
udev                     | * Starting udev ... [ ok ]
fsck                     | * Checking local filesystems  ... [ ok ]
root                     | * Remounting filesystems ... [ ok ]
localmount               | * Mounting local filesystems ... [ ok ]
overlayfs                | * Preparing overlayfs over / ... [ ok ]
 * WARNING: clock skew detected!
hostname                 | * Setting hostname ... [ ok ]
sysctl                   | * Configuring kernel parameters ... [ ok ]
udev-trigger             | * Generating a rule to create a /dev/root symlink ... [ ok ]
udev-trigger             | * Populating /dev with existing devices through uevents ... [ ok ]
bootmisc                 | * Migrating /var/lock to /run/lock ... [ ok ]
bootmisc                 | * Creating user login records ... [ ok ]
bootmisc                 | * Wiping /var/tmp directory ... [ ok ]
syslog                   | * Starting busybox syslog ... [ ok ]
dbus                     | * /run/dbus: creating directory
dbus                     | * /run/dbus: correcting owner
micron-emmc-reten        | * Starting micron-emmc-reten
dbus                     | * Starting System Message Bus ... [ ok ]
micron-emmc-reten        |Device not supported.
klogd                    | * Starting busybox klogd ... [ ok ]
networkmanager           | * Starting networkmanager ... [ ok ]
dnsmasq                  | * /var/lib/misc/dnsmasq.leases: creating file
dnsmasq                  | * /var/lib/misc/dnsmasq.leases: correcting owner
dnsmasq                  | * Starting dnsmasq ... [ ok ]
 * WARNING: clock skew detected!
buttond                  | * Starting button watching daemon ... [ ok ]
reset_bootcount          | * Resetting bootcount in bootloader env ... [ ok ]
podman-atmark            | * Starting configured podman containers ... [ ok ]
zramswap                 | [ ok ]
zramswap                 | * Creating zram swap device ... [ ok ]
avahi-daemon             | * Starting avahi-daemon ... [ ok ]
Environment OK, copy 1
reset_bootcount          | [ ok ]
chronyd                  | * Starting chronyd ... [ ok ]
abos-web                 |-----
abos-web                 | * Starting abos-web ... [ ok ]
local                    | * Starting local ... [ ok ]

Welcome to Alpine Linux 3.17
Kernel 5.10.185-0-at on an armv7l (/dev/ttymxc0)

armadillo login:

5.2. ログイン

起動が完了するとログインプロンプトが表示されます。「root」か一般ユーザーの「atmark」でログインすることができます。

「SWUイメージの作成」 の手順で initial_setup.swu を適用した Armadillo の 「root」、「atmark」ユーザーには、 initial_setup.swu 作成時に入力したパスワードが設定されます。

initial_setup.swu を適用しない場合、「root」ユーザーは初回ログイン時にパスワードを入力せずに新しいパスワードを促されます。 「atmark」ユーザーは、初期状態ではロックされています。そのロックを解除するには、「root」ユーザーでログインし、 passwd atmark コマンドで「atmark」ユーザーのパスワードを設定してください。

設定するパスワードには大文字のアルファベット、小文字のアルファベット、0から9までの数字、その他(記号・句読点など)を含める事ができます。

  1. root でログイン

    初期パスワードを変更します。

    armadillo login: root
    You are required to change your password immediately (administrator enforced).
    New password: 1
    Retype new password: 2
    Welcome to Alpine!

    1

    新しいパスワードを入力します

    2

    新しいパスワードを再入力します

  2. atmark でログイン

    初期状態でロックされてますので、rootで一度パスワードを設定してからログインします。

    armadillo:~# passwd atmark 1
    New password:
    Retype new password:
    passwd: password updated successfully
    armadillo:~# persist_file /etc/shadow 2
    armadillo:~# exit
    
    Welcome to Alpine Linux 3.17
    Kernel 5.10.180-1-at on an armv7l (/dev/ttymxc0)
    
    armadillo login: atmark
    Password: 3
    Welcome to Alpine!

    1

    atmarkユーザーのパスワード変更コマンド。「SWUイメージの作成」 を使用した場合には不要です

    2

    パスワードファイルを永続化します。

    3

    設定したパスワードでログインすることができます。

[重要項目]

Armadillo BaseOS ではルートファイルシステムに overlayfs を採用しており、そのままではシステムが OFF すると内容は消えてしまいます。そのため persist_file コマンドが用意されています。このコマンドを利用することでファイル単位で変更を反映することができます。パスワードを設定した後には以下のコマンドを実行してください。

[armadillo ~]# persist_file /etc/shadow

persist_file コマンドに関する詳細は「overlayfs と persist_file について」を参照してください。

5.3. 終了方法

eMMC や USB メモリ等に書き込みを行っている時に電源を切断すると、データが破損する可能性が有ります。 安全に終了させる場合は、次のように poweroff コマンドを実行し、「reboot: Power down」と表示されたのを確認してから電源を切断します。

armadillo:~# poweroff
 * WARNING: clock skew detected!
zramswap                 | * Deactivating zram swap device ... [ ok ]
local                    | * Stopping local ... [ ok ]
podman-atmark            | * Stopping all podman containers ... [ ok ]
avahi-daemon             | * Stopping avahi-daemon ... [ ok ]
chronyd                  | * Stopping chronyd ... [ ok ]
buttond                  | * Stopping button watching daemon ... [ ok ]
dnsmasq                  | * Stopping dnsmasq ... [ ok ]
abos-web                 | * Stopping abos-web ... [ ok ]
klogd                    | * Stopping busybox klogd ... [ ok ]
networkmanager           | * Stopping networkmanager ... [ ok ]
syslog                   | * Stopping busybox syslog ... [ ok ]
udev                     | * Stopping udev ... [ ok ]
dbus                     | * Stopping System Message Bus ... [ ok ]
nm-dispatcher: Caught signal 15, shutting down...
localmount               | * Unmounting loop devices
localmount               | * Unmounting filesystems
localmount               | *   Unmounting /var/at-log ... [ ok ]
localmount               | *   Unmounting /var/tmp ... [ ok ]
localmount               | *   Unmounting /var/app/volumes ... [ ok ]
localmount               | *   Unmounting /var/app/rollback/volumes ... [ ok ]
localmount               | *   Unmounting /var/lib/containers/storage_readonly ... [ ok ]
localmount               | *   Unmounting /var/log ... [ ok ]
localmount               | *   Unmounting /tmp ... [ ok ]
killprocs                | * Terminating remaining processes ... [ ok ]
killprocs                | * Killing remaining processes ... [ ok ]
mount-ro                 | * Remounting remaining filesystems read-only ... [ ok ]
mount-ro                 | *   Remounting / read only ... [ ok ]
indicator_signals        | * Signaling external devices we are shutting down ... [ ok ]
The system is going down NOW!
Sent SIGTERM to all processes
Sent SIGKILL to all processes
Requesting system poweroff
[   52.336202] imx2-wdt 20bc000.watchdog: Device shutdown: Expect reboot!
[   52.343210] reboot: Power down

Podman コンテナの保存先が tmpfs であり、eMMC への書き込みを行っていない場合は、poweroff コマンドを使用せずに電源を切断することが可能です。

Podman コンテナの保存先が eMMC の場合や、頻繁に rootfs 等の eMMC にあるボリュームを変更するような開発段階においては、poweroff コマンドを実行し、「reboot: Power down」と表示されたのを確認してから電源を切断してください。

[警告]

haltコマンドで終了させた場合、「reboot: System halted」と表示されてから約128秒後、Armadilloは自動的に再起動します。確実に終了させるためにもpoweroffコマンドを利用してください。

[ティップ]

poweroffの場合、Armadillo-610は、ONOFFピンをGNDとショートすることで電源をオフした場合と同じ状態になります。 そのため、RTC_BAT ピンからバックアップ電源が供給されている限り、5V 電源を切ったのち 5V 電源を再入力してもArmadillo-610が起動しません。 詳しくは「ONOFFピンからの電源制御」を参照してください。