システムが完全にシャットダウンしたら、Rock64 SoC PC(Raspberry Piに似ている)に接続されているHDDを正常にシャットダウンしようとしています。ユーディスクステーキ注文する。ファイルを手動で完全に実行でき、すべてのディスクの速度が遅くなりますが、閉じた後は機能しません。
終了ファイルを次の場所に作成しました。
/lib/systemd/system-shutdown/graceful_disk_shutdown.shutdown
、実行可能にするには、ファイルの内容は次のとおりです。
#!/bin/bash
exec </dev/null </dev/null 2>/dev/null
export LANG=C LC_ALL=C
# Wait for media to be in idle state.
sync
[ -x /sbin/mdadm ] && /sbin/mdadm --wait-clean --scan
# Function used to power off all SATA disks.
function power_off_disks() {
for disk in /sys/block/sd* ;
do
[ -e $disk ] && /usr/bin/udisksctl power-off -b /dev/${disk##*/}
sleep 2
done
}
case "$1" in
*)
power_off_disks
;;
esac
他の人が報告しました。ここそして使用することをお勧めしますHDパラメータ代わりに、これは私にとって効果的でしたが、なぜそのような質問に答えません。ウディスコテル動作しません。
どんなアイデアがありますか?
答え1
systemd が /lib/systemd/system-shutdown からスクリプトを読み取ると、ファイルシステムはすでにアンマウントされ、読み取り専用です。
このリンク「https://unix.stackexchange.com/questions/347275/how-to-run-a-script-at-shutdown-on-debian-9-or-raspbian-8-jessie/347686#」を参照. 347686 "は/usr/local/sbinにあるスクリプトを使用するサービスです。