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命令 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |