加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

DD命令的进一步挖掘, 用dd命令刷机

发布时间:2020-12-14 03:09:36 所属栏目:大数据 来源:网络整理
导读:1. 将reocovery.img push 到 系统目录 如 /data? ?adb remount? ?adb push reocovery.img /data? 2.dd 执行? adb shell dd if=data/recovery.img of=dev/recovery?? dd命令刷recovery 前提 手机已ROOT 具体参考 http://bbs.gfan.com/forum.php?mod=viewthrea

1. 将reocovery.img push 到 系统目录 如 /data?
?adb remount?
?adb push reocovery.img /data?
2.dd 执行?
adb shell dd if=data/recovery.img of=dev/recovery??

dd命令刷recovery

前提

手机已ROOT
具体参考
http://bbs.gfan.com/forum.php?mod=viewthread&tid=5916973
我喜欢把这个包里的两个关键文件 filesSuperuser.apk??filessu 替换为ClockworkMod开发的开源版本
https://play.google.com/store/apps/details?id=com.koushikdutta.superuser
http://download.clockworkmod.com/superuser/superuser.zip
毕竟是系统的看门狗,不开源的东西或者汉化的版本,用起来不放心

准备工作
给手机安装Busybox
https://play.google.com/store/apps/details?id=stericson.busybox
在电脑上安装ADB驱动(USB驱动),各种不同品牌的驱动去哪里下载,请看这里:
http://developer.android.com/tools/extras/oem-usb.html
对于SONY手机而言,请到这里去下载:
http://developer.sonymobile.com/downloads/drivers/
具体到咱们的LT25i来说,由于Xperia AX/VL/V 都是同一种手机,所以下载AX/VL的都可以
在电脑上安装ADB,具体看这里
bbs.gfan.com/forum.php?mod=viewthread&tid=5975767
如果你想偷懒,那就直接把前面提到“一键ROOT”工具里的 adb.exe??AdbWinApi.dll??AdbWinUsbApi.dll 拿出来,放到同一个目录里就好了。
获得原始ROM镜像
如果你想基于官方ROM制作,那么参考这里的“SIN格式转EXT4”部分
http://bbs.gfan.com/forum.php?mod=viewthread&tid=5976256
假定我们最终获得的是 sys.ext4 ,请把手机连接到电脑,然后把这个文件复制到SD卡根目录
如果你想基于非官方ROM制作,那么请把这个非官方ROM先刷进你的手机。
或者你只想基于现在手机上现有的ROM进行修改,
那么 sys.ext4 将在之后“备份现有ROM”操作的时候得到
实际制作
先断开手机和电脑,在手机上打开USB调试,再用数据线将手机连接到电脑,
然后在电脑上打开命令行,cd到ADB所在目录
C:ADB>adb wait-for-device
C:ADB>adb start-server
C:ADB>adb shell
shell@android:/ $ su
shell@android:/ #
现在你已经是用root在操作手机了
如果你之前已经将 sys.ext4 保存到SD卡,那么先找找它在哪里:
shell@android:/ # find /storage -name sys.ext4
/storage/sdcard0/sys.ext4
现在我们找到了sys.ext4的准确位置
否则先找找/system目录对应的是那个分区
shell@android:/ #??mount
rootfs / rootfs ro,relatime 0 0
tmpfs /dev tmpfs rw,nosuid,relatime,mode=755 0 0
devpts /dev/pts devpts rw,mode=600 0 0
proc /proc proc rw,sans-serif; font-size:14px">sysfs /sys sysfs rw,sans-serif; font-size:14px">none /acct cgroup rw,cpuacct 0 0
tmpfs /mnt/asec tmpfs rw,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,sans-serif; font-size:14px">none /dev/cpuctl cgroup rw,cpu 0 0
/dev/block/platform/msm_sdcc.1/by-name/System /system ext4 ro,discard,data=ordered 0 0
/dev/block/platform/msm_sdcc.1/by-name/Userdata /data ext4 rw,nodev,noatime,noauto_da_alloc,sans-serif; font-size:14px">/dev/block/platform/msm_sdcc.1/by-name/Cache /cache ext4 rw,sans-serif; font-size:14px">/dev/block/platform/msm_sdcc.1/by-name/SDCard /mnt/int_storage ext4 rw,sans-serif; font-size:14px">/dev/block/platform/msm_sdcc.1/by-name/apps_log /data/idd ext4 rw,nobarrier,sans-serif; font-size:14px">/dev/fuse /storage/sdcard0 fuse rw,noexec,user_id=2800,group_id=2800,default_permissions,allow_other 0 0
看到了吗?/dev/block/platform/msm_sdcc.1/by-name/System 就是/system分区对应的设备文件
现在把它抓下来:
shell@android:/ #? /system/xbin/dd if=/dev/block/platform/msm_sdcc.1/by-name/System of=/storage/sdcard0/sys.ext4 bs=8192
这样sys.ext4也得到了
新建一个目录,然挂载 sys.ext4 到这个目录
shell@android:/ # mkdir /storage/sdcard0/myrom
shell@android:/ # mount -o loop -t ext4 /storage/sdcard0/sys.ext4 /storage/sdcard0/myrom
下面进入这个目录看看有什么
shell@android:/ # cd /storage/sdcard0/myrom
shell@android:/ # ls
app
bin
build.prop
etc
fonts
framework
lib
lost+found
media
semc
usr
vendor
xbin
熟悉吗?下面你就拿出 mv cp rm chown chmod 这些大杀器,尽情的修改它吧!
修改完成之后,卸载
shell@android:/ # umount /storage/sdcard0/myrom
现在所有的修改就都已经被保存在sys.ext4里面了
下面就是关键了,把sys.ext4刷回去!
shell@android:/ #?? /system/xbin/dd of=/dev/block/platform/msm_sdcc.1/by-name/System if=/storage/sdcard0/sys.ext4 bs=8192
看到了吗?就是把 if of 两个参数调了个位置
刷写磁盘缓存,确保更改已保存到位
shell@android:/ #?? sync
退出系统和ADB
shell@android:/ #??exit
exit
shell@android:/ $??exit
C:&;
现在不要对手机进行任何操作,拔下数据线,立即关机,再开机,一切搞定!!
其实整个方法的关键就是dd命令

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读