Citrix ICA Client(Receiver)13 .deb软件包存在一些已知问题。如何更改包装?我需要删除一些依赖项并更改安装脚本。
Citrix ICA Client(Receiver)13 .deb软件包存在一些已知问题。如何更改包装?我需要删除一些依赖项并更改安装脚本。
Answers:
我自己回答这个问题,因为其他人可能会发现这些信息很有用。此问答的灵感来自于另一个问题:如何在Debian 64位Linux上安装Citrix ICA Client(Receiver)13?
.deb文件复制到该目录。.deb文件:ar vx archive.debdebian-binary: 不要碰control.tar.gz:用于安装和卸载的配置和脚本
data.tar.gz:要安装的文件
两个*.tar.gz文件可能有不同的扩展名,具体取决于使用的压缩格式 该.deb格式支持一些不同的。这两个*.tar.gz文件都是tarbombs,所以所有文件都会爆炸到同一个路径。最好创建一个临时目录,复制,然后提取。
文件control.tar.gz有两个适合黑客攻击的文件:
control:包含包依赖项列表。您可以添加/删除依赖项。postinst:包含安装后脚本。您可以添加/删除命令。将*.tar.gz文件重新创建为:tar -czvf control.tar.gz *或(data.tar.gz)
最后,创建一个新的存档。订单在这里非常重要:ar rv my_new_package.deb debian-binary control.tar.gz data.tar.gz
您可以使用以下命令尝试新包:
apt-get remove $package_name
$package_name包裹的名称在哪里,例如,icaclientdpkg --install my_new_package.deb参考:http://tldp.org/HOWTO/html_single/Debian-Binary-Package-Building-HOWTO/
ar格式。如果你以这种方式手动打包deb,dpkg通常会很好用它,但其他一些重要的工具,如apt-ftparchive不会。如果可以的话,你最好打开包装dpkg-deb -R mypkg.deb tempdir并重新包装dpkg-deb -b tempdir。