fstabエントリがインストールされたら、起動中にsystemdサービスを開始しようとします。
私はフォローしましたfstabがマウントされた後に実行されるようにsystemdサービスを設定する次の詳細を追加しました。
# cat /etc/fstab
/dev/mmcblk1p11 /data ext4 defaults 0 2
# systemctl list-units | grep '/data' | awk '{ print $1 }'
data.mount
# cat /usr/lib/systemd/system/data.service
[Unit]
Description=My system
After=data.mount
[Service]
Type=oneshot
ExecStartPre=mountpoint -q /data
ExecStart=/usr/etc/data.sh
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
問題は、起動中に起動しないことです。しかし、手動再起動が機能しているようです。
# systemctl status data.service
data.service - My system
Loaded: loaded (/usr/lib/systemd/system/data.service; disabled; vendor preset: enabled)
Active: inactive (dead)
# systemctl enable data.service
Created symlink /etc/systemd/system/multi-user.target.wants/data.service ��→ /usr/lib/systemd/system/data.service.
# systemctl restart data.service
Starting My system...
[ OK ] Started My system.
私は何を逃したことがありませんか?
答え1
私は2つを試してみます。手動起動が機能していると述べたが、例では示しています。
systemctl enable data.service
再起動する前にこのアクティベーションコマンドを実行しましたか?起動時に起動するには有効にする必要があります。
第二に、After =行はサービス名でなければならないと思います。変更を試す
After=data.mount
到着
After=data.service
何が起こっているのか確認してください。