安装自定义包后,我应该强制重新启动系统。
我研究了几个解决方案
用于
notify-send
显示用户通知,然后是重新启动命令,该命令按预期工作。但用户通知仅在我从命令行安装软件包时显示,而不是通过软件中心安装时显示。我碰到了一些帖子,他们建议将以下内容添加到 postinst 脚本中
[ -x /usr/share/update-notifier/notify-reboot-required ] && \ /usr/share/update-notifier/notify-reboot-required || true
尝试在 postinst 脚本中包含上述内容,但它所做的只是更新两个文件
/var/run/reboot-required.pkgs
和/var/run/reboot-required
或使用重启信息。软件包安装后,它既不显示用户通知,也不重新启动系统。
有没有办法在 Ubuntu/Fedora/Open SUSE 中显示需要重启的用户通知?
答案1
我找到了答案。可以使用以下postinst
脚本显示安装后用户通知。
创建一个同名的文件postinst
并将以下脚本复制到其中。在创建 Debian 包之前,应将此脚本复制到正确的目录中。
注意:这适用于 Debian 环境。
#!/bin/sh -e
if [ -d /var/lib/update-notifier/user.d/ ]; then
rm -rf /var/lib/update-notifier/user.d/PackageName
cat << EOF >> /var/lib/update-notifier/user.d/PackageName
Name: PackageName Post Install Notification
Priority: High
Terminal: False
#Command: /usr/bin/PackageName
Description: Reboot is required to complete the installation.
EOF
touch /var/lib/update-notifier/dpkg-run-stamp
fi