关于双击deb包安装的问题

sh/bash/dash/ksh/zsh等Shell脚本
回复
lzf001
帖子: 4
注册时间: 2019-06-06 10:05
系统: Ubuntu 14.04
送出感谢: 0
接收感谢: 0

关于双击deb包安装的问题

#1

帖子 lzf001 » 2019-06-06 10:15

在ubuntu上安装自己写的deb包,我在postinst里面启动了我需要的程序,打包之后,用dpkg命令安装,程序可以启动,但是双击deb包安装,其他的命令都可以执行,就是程序启动不了,请问有什么办法可以避免吗
头像
astolia
论坛版主
帖子: 4030
注册时间: 2008-09-18 13:11
送出感谢: 1 次
接收感谢: 664 次

Re: 关于双击deb包安装的问题

#2

帖子 astolia » 2019-06-06 10:40

一般是你postinst里没写对。比如某些环境变量在两种环境下的值不一致,而你的脚本只能在其中一种情况下正常工作
lzf001
帖子: 4
注册时间: 2019-06-06 10:05
系统: Ubuntu 14.04
送出感谢: 0
接收感谢: 0

Re: 关于双击deb包安装的问题

#3

帖子 lzf001 » 2019-06-06 11:13

astolia 写了:
2019-06-06 10:40
一般是你postinst里没写对。比如某些环境变量在两种环境下的值不一致,而你的脚本只能在其中一种情况下正常工作
我发现我的程序确实是执行了,有日志输出,但是被某些原因中断了 ,是否可以理解为在图形界面安装的之后,有些不知道的信号把我的程序给
杀死了,另外我的程序是 /usr/local/bin & 后台执行的,不知道这个问题改如何避免
头像
astolia
论坛版主
帖子: 4030
注册时间: 2008-09-18 13:11
送出感谢: 1 次
接收感谢: 664 次

Re: 关于双击deb包安装的问题

#4

帖子 astolia » 2019-06-06 11:27

你这个做法也太naive了。postinst作为shell脚本,退出时shell肯定会杀掉所有子进程的。
最正统的做法是写个启动脚本/etc/init.d/xxxx或systemd服务配置文件,让systemd来运行你的程序。
偷懒点的做法是用nohup不理shell,nohup /usr/local/bin/xxx &
回复

回到 “Shell脚本”