所以我正在构建一个.deb文件,并且需要执行一些安装后的命令(链接库路径和其他一些事情)。
有没有办法让当你运行sudo dpkg -i .deb时,脚本自动运行?
有没有办法让当你运行sudo dpkg -i .deb时,脚本自动运行?
你可以在安装后使用位于源代码的debian文件夹中的postinst shell脚本来执行命令。
这是一个普通的shell脚本,包含安装软件包后要执行的所有命令(按顺序)。dpkg会自动运行它。所以,你只需要在将源代码打包成二进制包之前创建一个shell脚本,将其命名为'postinst',并放在debian目录中即可。
想了解更多信息,请访问Ubuntu Packaging Guide。
<package directory>/DEBIAN/postinst
#!/bin/bash
echo "Post install script is running now"
#systemctl status <your systemd service>
chmod 755 postinst
postinst
运行之前遇到错误,则postinst
不会被执行。 - Stephen Kitt