dpkg 打包root权限app
dpkg
安装Macports
下载对应系统的Macports
安装时间会比较久,安装完毕后放在了/opt/local/bin 目录下
安装dpkg
打开终端,输入 sudo port -f install dpkg
这个安装命令也会安装比较久,如果提示找不到port命令,给/opt/local/bin 以及 /opt/local/sbin 在 ~/.bash_profile 中配置一下环境变量。
PS:按照安装 theos的教程,生成的那个dpkg-deb。打包不了下面的要安装在/Application的应用。要用Macports来安装dpkg-deb。 原因我还没有深究
生成必要的目录
- Applications
1 |
这个目录下放你要安装在/Application 目录下的App。比如 XXX.app (用开发appStore的流程开发的app) |
- DEBIAN
1 |
这个目录下放5个文件 control、postinst、postrm、preinst、prerm |
- Library/Application Support/ * 创建一些文件
1 |
这个文件下的文件,安装的时候会放入相应的目录 |
DEBIAN目录文件解释
- control
工程配置文件
1 |
Package: control.packagename |
- preinst
Debian软件包(“.deb”)解压前执行的脚本, 为正在被升级的包停止相关服务,直到升级或安装完成。
(成功后执行 ‘postinst’ 脚本)。
- postinst
主要完成软件包(“.deb”)安装完成后所需的配置工作的脚本.
通常, postinst 脚本要求用户输入, 和/或警告用户如果接受默认值, 应该记得按要求返回重新配置这个软件。
一个软件包安装或升级完成后,postinst 脚本驱动命令, 启动或重起相应的服务。
例如给itunesstored、keychain执行权限
1 |
#!/bin/sh |
- prerm
停止一个软件包的相关进程, 要卸载软件包的相关文件前执行的脚本。
- postrm
修改相关文件或连接, 和/或卸载软件包所创建的文件。
当前的所有配置文件都可在 /var/lib/dpkg/info 目录下找到, 与 foo 软件包相关的命名以 “foo” 开头,以 “preinst”, “postinst”, 等为扩展。
这个目录下的 foo.list 文件列出了软件包安装的所有文件。
Debian里用apt-get安装或卸载软件时,会常发生前处理或后处理的错误,这时只要删除 对应的脚本文件,重新执行安装或卸载即可。
用dpkg-deb打包 .deb 并且安装
1 |
dpkg-deb -b ./ mydeb.deb |
把 mydeb.deb拖进 iOS的根目录/ 。 执行 dpkg -i mydeb.deb即可安装。
安装完后运行su mobile -c uicache 刷新UI缓存
如果安装的过程中出现这个错误:
1 |
dpkg-deb: file `dazhong.deb' contains ununderstood data member data.tar.xz , giving up |
打包deb的时候要用这个命令打包
1 |
dpkg-deb -Z gzip -b ./ mydeb.deb |
提权
步骤
1、postinst文件配置:
1 |
chmod +s /Applications/aatext.app/aatext |
2、准备一个bash脚本。添加到工程
1 |
C=/${0}
|
3、修复info.plist文件
1 |
Executable file 值设置为 bash |
然后再按照上面说的dpkg-deb打包成deb,安装。就是一个具有root权限的app了
dpkg 打包root权限app的更多相关文章
- adb怎么判断是否有root权限,并更改system/app内容
一.首先判断root权限: adb root 结果: C:\signapp>adb root restarting adbd as root # 说明有root权限 ,若是adbd cannot ...
- Android实现系统ROOT, 并能赋予app root权限
1. 获取root权限 --> 修改adb源码 a. 打开 system/core/adb/adb_main.cpp,或者是 system/core/adb/daemon/main.c ...
- 取之有道——巧用Root权限 启动其他APP中的Activity
这次博主来分享一个很巧妙的办法来启动其他APP中Activity的方法. 首先说一下这样做的目的:最近博主在攻克一个技术难点,就是搞定某些三方系统中,对于应用权限的限制.为此给出用户指导,引导用户启动 ...
- 对于app监测root权限或者强制升级
只做分享学习 以下方法对于大多数Root检测的App (不限于仅银行类App),均适用. 另,"主用户 + Island用户" 情况下: 如果App仅安装在 Island下,当绕不 ...
- Android ROM开发(三)——精简官方ROM并且内置ROOT权限,开启Romer之路
Android ROM开发(三)--精简官方ROM并且内置ROOT权限,开启Romer之路 相信ROM的相关信息大家通过前几篇的学习都是有所了解了,这里就不在一一提示了,这里我们下载一个官方包,我们还 ...
- Linux基本常用命令|ubuntu获取root权限
我用的是ubuntu12.4系统,因为默认是没有获取root的权限的 下边讲解怎么获取root权限 在终端中输入: sudo passwd root Enter new UNIX password: ...
- 转:Android随笔之——使用Root权限实现后台模拟全局按键、触屏事件方法(类似按键精灵)
本文转载自CSDN的jzj1993,原文连接:http://blog.csdn.net/jzj1993/article/details/39158865 有时我们需要使用安卓实现在后台模拟系统按键,比 ...
- android开发实现静默安装(root权限)
方式是将应用设置为内置的系统应用,注意事system/app目录下面,采用copy2SystemApp()方法就可以,注意chmod 777的权限,若是直接将apk拷贝到system/app目录,没有 ...
- 取得root权限后怎么删除程序
不知道这个算什么教程,随便一个分类吧,管理员不要扣我分啊,我也是为大家服务嘛,不对的话可以帮我处理下) 最近也学习了下,把我的X8(国行2.1版)给root了,怎么root,论坛里有很多帖子,这里就不 ...
随机推荐
- UISearchBar 自定义处理
首先通过 KVC 获取到内部的 textField, 然后自定制处理 UITextField *searchField = [searchBar valueForKey:@"searchFi ...
- ELK 实用架构
- ubuntu下安装fcitx五笔输入法
安装fcitx输入法 sudo add-apt-repository ppa:fcitx-team/stable #添加安装源,apt-get 添加,night ...
- 【算法笔记】B1024 科学计数法
1024 科学计数法 (20 分) 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式 [+-][1-9].[0-9]+E[+-][0-9]+,即数字的整数部分只有 1 位, ...
- Luogu P1282 多米诺骨牌 DP。。背包?
背包...差不多..QWQ 设f[i]为达到差值为i的状态需要多少次,那就很显然了: 注意区分正负不同的代价的循环方向 技巧:如果不想改负数的话,那可以移动一下数组下标,用一个新的指针指向原来的数组 ...
- Luogu P1273 有线电视网 树形DP
又重构了一下...当然当初的题一看就看懂了QAQ 设f[i][j]表示以i为根的子树,有j个客户的最大收益 方程:f[u][j+k]=max(f[u][j+k],f[u][j]+f[v][k]-w(u ...
- P2387 [NOI2014]魔法森林
传送门 如果一条边只要考虑 $a$ 的限制,那么显然最小生成树 但是现在有 $a,b$ 两个限制,所以考虑按 $a$ 从小到大枚举边,动态维护 $b$ 的最小生成树 考虑新加入的一条边 $x,y$ , ...
- vim大法
$Linux vi/vim编辑器常用命令与用法总结 (一)vi/vim是什么?Linux世界几乎所有的配置文件都是以纯文本形式存在的,而在所有的Linux发行版系统上都有vi编辑器,因此利用简单的文字 ...
- PIE SDK波段合成
1.算法功能简介 波段合成功能主要用于将多幅图像合并为一个新的多波段图像(即波段的叠加打包,构建一个新的多波段文件),从而可根据不同的用途选择不同波长范围内的波段合成 RGB 彩色图像. PIE支持算 ...
- java中的线程(4):常用同步类 CountDownLatch、CyclicBarrier和Semaphore
转自: http://www.cnblogs.com/dolphin0520/p/3920397.html 1.简介 CountDownLatch和CyclicBarrier都能够实现线程之间的等待, ...