admin管理员组文章数量:1530842
2024年5月31日发(作者:)
什么是 deb、ipa 和 pxl,iphone 软件格式
前言:
目前 iOS 平台上常见的安装包有三种,deb、ipa 和 pxl。
其中 deb 格式是 Debian 系统(包含 Debian 和 Ubuntu )专属安装包格式,配合 APT 软件管理系统,
成为了当前在 Linux 下非常流行的一种安装包。进入 2.x 时代之后有 Cydia 作者 Jay Freeman
(saurik) 移植到 iPhone 平台上,一起的还有 APT 软件管理系统。
而 ipa 格式则是苹果在 iOS 平台上推出的专属软件安装包,在2.0固件开始才正式使用,是目前
iPhone/iPod Touch/iPad 平台上唯一的官方安装包。
而pxl格式则起源于 Mac 系统上的 pkg 安装包,被广泛应用于1.x固件时代,曾经是 iPhone 平台上唯
一的软件安装包,现在仍在被91等软件所使用。
.deb
deb 是 Unix 系统(其实主要是 Linux )下的安装包,基于 tar 包,因此本身会记录文件的权限(读/写/
可执行)以及所有者/用户组。
由于 Unix 类系统对权限、所有者、组的严格要求,而 deb 格式安装包又经常会涉及到系统比较底层的
操作,所以权限等的设置尤其重要。
deb 包本身有三部分组成:
数据包,包含实际安装的程序数据,文件名为 ;
安装信息及控制脚本包,包含 deb 的安装说明,标识,脚本等,文件名为 contro;
最后一个是 deb 文件的一些二进制数据,包括文件头等信息,一般看不到,在某些软件中打开可
以看到。
deb 本身可以使用不同的压缩方式。tar 格式并不是一种压缩格式,而是直接把分散的文件和目录集合
在一起,并记录其权限等数据信息。之前提到过的 ,这里 XXX 就是经过压缩后的后缀名。
deb 默认使用的压缩格式为 gzip 格式,所以最常见的就是 。常有的压缩格式还有 bzip2
和 lzma,其中 lzma 压缩率最高,但压缩需要的 CPU 资源和时间都比较长。
包含的是实际安装的程序数据,而在安装过程中,该包里的数据会被直接解压到根目录(即
/ ),因此在打包之前需要根据文件所在位置设置好相应的文件/目录树。
而 contro 则包含了一个 deb 安装的时候所需要的控制信息。一般有 5 个文件:
control,用了记录软件标识,版本号,平台,依赖信息等数据;
preinst,在解包 前运行的脚本;
postinst,在解包数据后运行的脚本;
prerm,卸载时,在删除文件之前运行的脚本;
postrm,在删除文件之后运行的脚本;
在 Cydia 系统中,Cydia 的作者 Saurik 另外添加了一个脚本,extrainst_,作用与 postinst 类
似。
安装包的特点
.deb
丰富的资源:Cydia 上本身就不少,更何况任何格式的安装包都可以转换为 deb。
相对方便的在线购买模式:Cydia Store,不过尽管没有 App Store 的5台设备的限制,但对国
内用户来说,付款方式比较困难。
破解难度较大,没有使用 App Store 的验证方式,所以必须将验证和防破解措施加入程序里面,
这样就比较难破解,对软件开发者来说是个好事。
完善的 Unix 文件系统支持:无需以命令设置文件的权限、所有者和用户组(当然也可以以脚本
来设置)
完善的脚本支持:5个脚本依照安装和卸载的先后顺序执行,可以提供更多选择。比如备份还原操
作,可以在 preinst 中备份文件,而在 postrm 中还原文件
严格的依赖关系:deb 遵循严格的依赖关系(于 Depends 和 Pre-Depends 指定),可以确保软
件运行所必需的组件。在线安装的时候会自动安装所依赖的软件包。卸载时也很重要,比如软件
包 A 依赖于 B,当卸载 B 的时候会提示 A 依赖于 B,卸载掉 B 的话会导致 A 不能用,这样可
以确保系统的完整性和稳定性。
Conflicts、Replaces、Provides 等键值的存在可以实现冲突提示或替换其它软件包。
完全权限:由于 deb 必须以最高权限 root 的身份运行,deb可以对系统任何位置进行操作,换
句话说,deb 拥有对整个系统的完全控制,因此 deb 安装包软件可以实现很多 ipa 不能实现的
功能。
相对简单的获取方式(在线或离线)和安装方式,也不用担心在不同机器上同步会删掉程序的问
题。
安装相对简单:其实无论是哪种安装包,安装方法都不算很复杂,只不过 deb 稍微复杂一些。
deb 的安装方法大体有 5 种:
1. Cydia 或同类 APT 管理软件在线安装,这个是最佳的安装方式,因为通常无需考虑依赖关系,但
缺点是对网络的要求比较高;
2. 命令行中以 dpkg -i 的形式安装,好处是可以以通配符一次性安装多个 deb,而且也可
以直接看到脚本的运行状况和安装成功/失败的提示信息,缺点是需要命令行软件的支持,如
Putty/WinSCP的控制台/iSSH/MobileTerminal,很多人也不熟悉命令行下的操作。另外,安装完
后会不显示图标;
3. 放置于 AutoInstall 目录重启安装。该方法实际是 Cydia 提供的一个启动脚本,在每次系统启动
时以 dpkg 命令安装 AutoInstall 目录下的 deb,好处是不需要命令行操作,缺点是必须要重启,
有些甚至要重启两次,也会出现不显示图标的情况;
版权声明:本文标题:deb、ipa和pxl,iphone软件格式 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/shuma/1717107239a535054.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论