v4.x 系より Ubuntu 18.04LTS となっており、init system が systemd に変更されています。
また、Overlayroot の仕組みにより起動時に fstab が書き換えられるため、通常の Linux での方法での自動マウントができません。
systemd の .mount unit を作成することで起動時の自動マウントが実現できます。
SDカードの第一パーティション(/dev/mmcblk0p1) を ext4 でフォーマットし、/mnt/sd にマウントする場合の設定です。
/etc/systemd/system/mnt-sd.mount
ファイルを作成します。
unit ファイル名は、mount point のパス名を -
(ハイフン) でつなげた名前にする必要があります1)。
[Unit] Description=SDCard [Mount] What=/dev/mmcblk0p1 Where=/mnt/sd Type=ext4 Options=noatime [Install] WantedBy=multi-user.target
起動時に自動で実行させるため、有効化します。
root@plum:~# systemctl daemon-reload root@plum:~# systemctl enable mnt-sd.mount Created symlink /etc/systemd/system/multi-user.target.wants/mnt-sd.mount → /etc/systemd/system/mnt-sd.mount. root@plum:~#
再起動して確認すると、/mnt/sd にマウントされていることが確認できます。
root@plum:~# mount|grep /mnt/sd /dev/mmcblk0p1 on /mnt/sd type ext4 (rw,noatime)
root@plum:~# systemctl status mnt-sd.mount | cat ● mnt-sd.mount - SDCard Loaded: loaded (/etc/systemd/system/mnt-sd.mount; enabled; vendor preset: enabled) Active: active (mounted) since Wed 2019-06-12 15:44:05 JST; 3min 7s ago Where: /mnt/sd What: /dev/mmcblk0p1 Process: 334 ExecMount=/bin/mount /dev/mmcblk0p1 /mnt/sd -t ext4 -o noatime (code=exited, status=0/SUCCESS) Tasks: 0 (limit: 1140) CGroup: /system.slice/mnt-sd.mount Jun 12 15:44:05 plum systemd[1]: Mounting SDCard... Jun 12 15:44:05 plum systemd[1]: Mounted SDCard.