起動と終了

5.1. 起動

電源入力インターフェースに電源を接続すると Armadillo-IoT ゲートウェイ A6E が起動します。起動すると CON7 (USB コンソールインターフェース) から起動ログが表示されます。

[注記]

Armadillo-IoT ゲートウェイ A6E の電源投入時点での起動デバイス設定スイッチ SW2 の状態によって起動モードが変化します。 詳しくは 「起動デバイス設定スイッチについて」 を参照してください。

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

U-Boot 2020.04-at10(Oct 04 2022 - 11:22:32 +0900)

CPU:   i.MX6ULL rev1.1 at 396 MHz
Model: Atmark Techno Armadillo-IoT Gateway A6E
DRAM:  512 MiB
PMIC: PFUZE3000 DEV_ID=0x30 REV_ID=0x11
MMC:   FSL_SDHC: 0, FSL_SDHC: 1
Loading Environment from MMC... OK
In:    serial
Out:   serial
Err:   serial
Saving Environment to MMC... Writing to MMC(1)... OK
switch to partitions #0, OK
mmc1 is current device
Net:
Warning: ethernet@2188000 using MAC address from ROM
eth0: ethernet@2188000
Normal Boot
Hit any key to stop autoboot:  0
switch to partitions #0, OK
mmc1 is current device
11659840 bytes read in 518 ms (21.5 MiB/s)
Booting from mmc ...
38603 bytes read in 21 ms (1.8 MiB/s)
Loading fdt boot/armadillo.dtb
43 bytes read in 14 ms (2.9 KiB/s)
1789 bytes read in 18 ms (96.7 KiB/s)
Applying fdt overlay: armadillo-iotg-a6e-ems31.dtbo
## Booting kernel from Legacy Image at 80800000 ...
   Image Name:   Linux-5.10.145-32-at
   Created:      2022-10-13   8:10:47 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    11659776 Bytes = 11.1 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 9ef2d000, end 9ef59fff ... OK

Starting kernel ...

[    0.601992] imx6ul-pinctrl 2290000.iomuxc-snvs: no groups defined in /soc/bus@2200000/iomuxc-snvs@2290000

   OpenRC 0.44.10 is starting up Linux 5.10.145-32-at (armv7l)

 * Mounting /proc ... [ ok ]
 * Mounting /run ... * /run/openrc: creating directory
 * /run/lock: creating directory
 * /run/lock: correcting owner
 * Caching service dependencies ... [ ok ]
 * Starting atmark firstboot script ... * Mounting /sys ... * Remounting devtmpfs on /dev ... * Starting rngd ... [ ok ]
 [ ok ]
 * Mounting security filesystem ... [ ok ]
 [ ok ]
 * Mounting config filesystem ... [ ok ]
 * Mounting /dev/mqueue ... * Mounting fuse control filesystem ... [ ok ]
 [ ok ]
 * Mounting /dev/pts ... [ ok ]
 * Mounting /dev/shm ... [ ok ]
udev                     | * Starting udev ... [ ok ]
Warning: The kernel is still using the old partition table.
The new table will be used at the next reboot or after you
run partprobe(8) or kpartx(8)
The operation has completed successfully.
Could not create partition 2 from 0 to 614399
Could not create partition 3 from 0 to 102399
Could not create partition 4 from 0 to 409599
Could not create partition 5 from 0 to 20479
Error encountered; not saving changes.
 * partitionning disk failed
fsck                     | * Checking local filesystems  ... [ ok ]
root                     | * Remounting filesystems ... [ ok ]
localmount               | * Mounting local filesystems ... [ ok ]
overlayfs                | * Preparing overlayfs over / ... [ ok ]
hostname                 | * Setting hostname ... [ ok ]
sysctl                   | * Configuring kernel parameters ...udev-trigger
       | * Generating a rule to create a /dev/root symlink ... [ ok ]
 [ 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 ...dbus
 | * /run/dbus: creating directory
 [ ok ]
dbus                     | * /run/dbus: correcting owner
dbus                     | * Starting System Message Bus ... [ ok ]
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 ]
buttond                  | * Starting button watching daemon ... [ ok ]
reset_bootcount          | * Resetting bootcount in bootloader env ...Environment OK, copy 0
reset_bootcount          | [ ok ]
zramswap                 | [ ok ]
zramswap                 | * Creating zram swap device ...podman-atmark
   | * Starting configured podman containers ... [ ok ]
atmark-power-utils       | * Starting atmark-power-utils ... [ ok ]
chronyd                  | * Starting chronyd ... [ ok ]
 [ ok ]
local                    | * Starting local ... [ ok ]

Welcome to Alpine Linux 3.16
Kernel 5.10.145-32-at on an armv7l (/dev/ttymxc2)

armadillo login:

U-Boot プロンプト

ユーザースイッチ(SW1) を押しながら電源を投入すると、 U-Boot のプロンプトが表示されます。

U-Boot 2020.04-at10 (Oct 04 2022 - 11:22:32 +0900)

CPU:   i.MX6ULL rev1.1 at 396 MHz
Model: Atmark Techno Armadillo-IoT Gateway A6E
DRAM:  512 MiB
PMIC: PFUZE3000 DEV_ID=0x30 REV_ID=0x11
MMC:   FSL_SDHC: 0, FSL_SDHC: 1
Loading Environment from MMC... OK
In:    serial
Out:   serial
Err:   serial
Saving Environment to MMC... Writing to MMC(1)... OK
switch to partitions #0, OK
mmc1 is current device
Net:   eth0: ethernet@2188000
Normal Boot
=>

5.2. ログイン

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

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.16
    Kernel 5.10.126-24-at on an armv7l (/dev/ttymxc2)
    
    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. 終了方法

安全に終了させる場合は、次のようにpoweroffコマンドを実行し、「reboot: Power down」と表示されたのを確認してから電源を切断します。

armadillo:~# poweroff
armadillo:~# zramswap                 | * Deactivating zram swap device ...podman-atmark            | * Stopping all podman containers ...local
   | * Stopping local ... [ ok ]
 [ ok ]
atmark-power-utils       | * Stopping atmark-power-utils ...rngd
     | * Stopping rngd ...chronyd                  | * Stopping chronyd ...dnsmasq                  | * Stopping dnsmasq ...buttond                  | * Stopping button watching daemon ... [ ok ]
 [ ok ]
 * start-stop-daemon: no matching processes found
 [ ok ]
 [ ok ]
atmark-power-utils       | [ ok ]
klogd                    | * Stopping busybox klogd ... [ ok ]
networkmanager           | * Stopping networkmanager ... [ ok ]
syslog                   | * Stopping busybox syslog ... [ ok ]
udev                     | * Stopping udev ... [ ok ]
dbus                     | * Stopping System Message Bus ...nm-dispatcher: Caught signal 15, shutting down...
 [ ok ]
cgroups                  | * cgroups: waiting for podman-atmark (50 seconds)
 [ ok ]
localmount               | * Unmounting loop devices
localmount               | * Unmounting filesystems
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 ...mount-ro
         | * Remounting remaining filesystems read-only ... *   Remounting / read only ... [ ok ]
mount-ro                 | [ 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
[   99.211013] reboot: Power down
[警告]

電源を再投入する際は、コンデンサに蓄えられた電荷を抜くため、電源を切断後、一定時間以上待つ必要があります。 開発セット付属のACアダプタの場合に必要な時間は以下のとおりです。

  • DCプラグ側で電源を切断した場合 : 約5秒
  • ACプラグ側で電源を切断した場合 : 約1分

コンデンサに蓄えられた電荷が抜ける前に電源を再投入した場合、 電源シーケンスが守られず、起動しない等の動作不具合の原因となります。