我使用fpm创建deb包,但是当我安装deb包时,它安装在错误的位置,我的fpm命令是:
fpm -f -s "dir" -t "deb" -a "all" -n "my_project" -v 1 -C "/tmp/tmpjWTuVp" /tmp/tmpjWTuVp/my_project
我要打包的文件夹存在于/tmp/tmpjWTuVp/my_project
,但每次我安装时都会:
dpkg -i my_package.deb
它会将其安装到/tmp/tmpjWTuVp/my_project
,理想情况下我希望将其安装到/var/lib/my_project
中。我已使用--installdir
命令尝试了--root
和dpkg
,但它抱怨cannot access archive: No such file or directory
其他信息:
fpm
的约束,很高兴听到其他可行的建议my_project
是一个python virtualenv
和我的django项目答案 0 :(得分:2)
在写完这个问题后,我立即随机找到了答案......
fpm命令中最后一个未命名的参数可以包含一个equals分隔符,它定义了来自的目录,并安装到,所以我最终使用的命令是:
fpm -f -s "dir" -t "deb" -a "all" -n "my_project" -v 1 -C "/tmp/tmpjWTuVp" my_project=/var/lib/my_project
注意my_project=/var/lib/my_project
,左侧是我的项目的目录名(相对的,因为我在查找包之前使用-C
将目录更改为/tmp/tmpjWTuVp
)并且在右侧side是我想在远程机器上安装的地方......