一,makeself简单打包:
如果是Ubuntu,可以用命令apt-get install makeself 进行在线安装. 如果是基于RPM的Linux发行版如Redhat,SUSE,可以用命令yum install makeself 进行在线安装。链接:https://pan.baidu.com/s/1Oaho8hVB2OTcybb67pbyvA 密码:ii6d
如果无法直接安装,首先需要安装makeself:
$ wget http://megastep.org/makeself/makeself-2.2.0.run
$ chmod 755 makeself-2.2.0.run
$ ./makeself-2.2.2.run
$ cd makeself-2.2.0
$ sudo cp *.sh /usr/bin
2. 使用makeself或者makeself.sh
makeself--notemp 要压缩的目录 要做成的文件名 描述信息 第一个要执行的脚本
这里其实就是先将文件和脚本都放在一个单独的文件install写好,可以运行后,注意把第一个脚本stepbystep.sh放在文件夹下第一级目录。
在install上级目录执行:
makeself.sh install/ setup "nameshow" ./stepbystep.sh
得到的setup大包
二.deb打包。
这里就只用dpkg-deb进行基础打包:
创建个文件。
在文件下创建DEBIAN文件夹,下面创建以下文件。
control | 用了记录软件标识,版本号,平台,依赖信息等数据 |
preinst | 在解包data.tar.gz前运行的脚本 |
postinst | 在解包数据后运行的脚本 |
prerm | 卸载时,在删除文件之前运行的脚本 |
postrm | 在删除文件之后运行的脚本 |
这里control是必须写的,按照下面的格式。
1. Package: app.weiphone.qxxqxx
2. Name: deb的名字,可以是中文
3. Version: 1.0
4. Architecture: iphoneos-arm
5. Depends:
6. Description: 描述
7. Maintainer: 维护人
8. Author: qxxqxx<694747680@qq.com>
然后就在和DEBIAN同级目录就是根目录:/
创建的/usr/,/opt等等等的文件夹,安装包执行时就把该包放到真正的系统该文件夹下,注意修改安装包内的各个文件的权限,因为会把这些权限给赋值到真正系统下。
最后
dpkg-deb -b XXXXXXXXXXXXXXX XXXXXXXXXXX.deb
就可以安装了。
这里脚本的shell都是以root权限执行的,我还没解决这个问题。
3简单一起使用:
使用makeself进行打包,放到DEBIAN同级目录下进行复制,
使用postinst进行复制后的脚本调用,