
/boot/grub/grub.cfg
各実行後に私のエントリがまだ書き込み可能であることをどのように確認しますかupdate-grub
?
すべてを含めた後、このファイルは最後のファイルに移動されましたが、最終的に権限が維持されないことがわかりますので、スクリプトで必要な/boot/grub/grub.cfg.new
権限を設定してみました。今、私は常にセキュリティが実行されるたびに実行されるようにセキュリティを更新する方法を探しています。41_custom
grub-mkconfig
.new
grub.d
grub.cfg
update-grub
(背景:休止状態の前にスクリプトを介してファイルを変更して再起動した後、元のファイルに戻したいと思います。)
答え1
そのためのラッパースクリプトを作成してください。
次のようにできます。
#!/bin/bash
update-grub
chmod g+w /boot/grub/grub.cfg
次に、このような名前を付けてupdate-grub-perm
実行します。
後でこのスクリプトを自動的に実行するには、新しいファイルを編集または作成apt-get
します。/etc/apt/apt.conf
/etc/apt/apt.conf.d/
DPkg::Post-Invoke
たとえば、/etc/apt/apt.conf.d/80updgrubperm
:
DPkg::Post-Invoke {"/root/bin/update-grub-perm";};
次のように見えます/root/bin/update-grub-perm
。
#!/bin/bash
FILE='/boot/grub/grub.cfg'
DATE=$(date '+%s')
FILETIME=$(stat -c %Y $FILE)
DAYSEC=86400
if [ $FILETIME -ge $(expr $DATE - $DAYSEC) ]; then
chmod g+w $FILE
fi
exit 0
上記のスクリプトは、/boot/grub/grub.cfg
過去24時間に変更されたことを確認します。もしそうなら、そうですchmod
。
ノート:更新するかどうかを確認するより良い方法があるかもしれませんが、/boot/grub/grub.cfg
これは簡単な例です。迅速な調査では、何もオプションapt
もdpkg
表示されません。この特定のパッケージが更新された場合は、このスクリプトを実行してください。。
引用する:https://www.cyberciti.biz/faq/debian-ubuntu-linux-hook-a-script-command-to-apt-get-upgrade-command/