![从命令行使用 PackageKit 进行离线更新后关闭](https://linux22.com/image/184095/%E4%BB%8E%E5%91%BD%E4%BB%A4%E8%A1%8C%E4%BD%BF%E7%94%A8%20PackageKit%20%E8%BF%9B%E8%A1%8C%E7%A6%BB%E7%BA%BF%E6%9B%B4%E6%96%B0%E5%90%8E%E5%85%B3%E9%97%AD.png)
什么时候封装套件已获取用于安装的更新并且您使用 Gnome GUI 关闭计算机,可以设置一个复选框以在关闭之前安装更新。如何在没有 root 的情况下从命令行完成此操作?示例目的:在关闭之前自动执行自定义命令。
答案1
# This will force fetching repository data and updates
pkcon get-updates
pkcon update --only-download
dbus-send --system --type=method_call --print-reply \
--dest=org.freedesktop.PackageKit \
/org/freedesktop/PackageKit \
org.freedesktop.PackageKit.Offline.Trigger \
string:power-off
if pkcon offline-get-prepared; then
systemctl reboot
else
systemctl poweroff
fi
如果删除该dbus-send
命令并将该if
块替换为systemctl reboot
,系统将重新启动。