分页: 1 / 1

ubuntu自定义deb安装目录

发表于 : 2023-02-22 14:54
4343
ubuntu 的 构建deb 包是默认会安装在 /usr/local/test 目录下,并且存在维护者脚本。
如果想自定义安装目录,比如想安装在 /app/test 目录下,发现无法通过 dpkg -i --instdir=/app/test test_1.0.0_amd64.deb 目录安装

后面找到替代的安装命令:
dpkg --force-script-chrootless --instdir=/app --install hello_5.0.0-1_amd64.deb

但是发现最终的安装路径为 /app/usr/local/test

另外发现 ubuntu deb 包指定自定义目录是,会将默认的安装目录追加到指定的自定义目录后面,

请问有什么办法可以将自定义的目录 /app 替换 打包时默认的安装目录 /usr/local

Re: ubuntu自定义deb安装目录

发表于 : 2023-02-23 20:50
debug4
最简单粗暴的方法:
dpkg -b . xxx.deb

Re: ubuntu自定义deb安装目录

发表于 : 2023-02-24 14:35
astolia
你编译时就该设置用/app作为基目录。
修改已经编译好了的包,要看它的二进制文件中有没有嵌入/usr/local的路径,没有的话才能用

代码: 全选

dpkg-deb -R 包路径 解包目录
来解包,修改完目录结构和相关脚本之后,再用

代码: 全选

dpkg-deb -b 解包目录 包路径
来重新打包。
另外如果包里包含了第三方库文件,可能还需要改ld.so.conf的相关设置