在論壇看到幾個評論:求高手提供XXXX機型分區(qū)表?想自己備份hitool燒錄包!
當時真的想回復網友:給你分區(qū)表,你敢用嗎?一旦給錯了分區(qū)表,備份后再恢復系統(tǒng)必磚!
所以還是自己搞出分區(qū)表最有保障!有了分區(qū)表后,制作燒錄包就簡單了,也省了買包錢!
其實我寫此貼時,也沒搞過分區(qū)表,也是用他人分區(qū)表來備份、制作燒錄包!所以一邊制作線刷包,一邊寫貼,成功了就發(fā)貼,不成功就刪貼(但憑經驗,有很大把握)!
不多說了。。。。。。開始!
---------------------------------------------------------------------------------------------------------------------------------------
首先需要用到的工具:電烙鐵、編程器!(需要拆機,使用串口TTL)
應該用遠程ADB可免拆機,從來沒用過遠程ADB,效果如何就難說了?。ㄟh程ADB能不能獲取ROOT權限,未知!)
如何焊接ttl,就不寫了,,請百度?。?!
---------------------------------------------------------------------------------------------------------------------------------------
1、打開puttly之類終端工具,本人用的是hitool自帶的終端工具,就以hitool自帶的終端來寫教程!
打開hitool后,設置串號參數,如下圖:
11.png (258.39 KB, 下載次數: 144)
下載附件
保存到相冊
2021-11-24 16:53 上傳
---------------------------------------------------------------------------------------------------------------------------------------
2、到我的電腦里,查看編程器端口號,如下圖:
2.png (110.51 KB, 下載次數: 136)
下載附件
保存到相冊
2021-11-24 16:53 上傳
---------------------------------------------------------------------------------------------------------------------------------------
3、打開終端,點擊“連接”!如下圖:
3.png (254.91 KB, 下載次數: 141)
下載附件
保存到相冊
2021-11-24 16:53 上傳
--------------------------------------------------------------------------------------------------------------------------------------
4、把電腦、編程器、盒子TX\RX\GND 連接后盒子開機進入系統(tǒng)!
---------------------------------------------------------------------------------------------------------------------------------------
5、我們輸入:su (輸入su獲取最高權限,海思盒子一般都是默認最高權限)
如何區(qū)分最高權限,看下圖:
4.png (253.45 KB, 下載次數: 137)
下載附件
保存到相冊
2021-11-24 17:13 上傳
---------------------------------------------------------------------------------------------------------------------------------------
6、輸入:cat /proc/partitions (獲取所有存儲器分區(qū)位置)
輸入cat /proc/partitions后,得到以下信息(加上本人的說明)
major minor #blocks name
254 0 102400 zram0 說明:100m大小,運行緩沖交換區(qū),無需備份
179 0 7299072 mmcblk0 說明:6.9G大小,本地存儲,無需備份備份
179 1 2048 mmcblk0p1 說明:2m大小,第1區(qū),請備份!
179 2 2048 mmcblk0p2 說明:2m大小,第2區(qū),請備份
179 3 16384 mmcblk0p3 說明:16m大小,第3區(qū),請備份
179 4 2048 mmcblk0p4 說明:2m大小,第4區(qū),請備份
179 5 8192 mmcblk0p5 說明:8m大小,第5區(qū),請備份
179 6 8192 mmcblk0p6 說明:8m大小,第6區(qū),請備份
179 7 8192 mmcblk0p7 說明:8m大小,第7區(qū),請備份
259 0 32768 mmcblk0p8 說明:32m大小,第8區(qū),請備份
259 1 16384 mmcblk0p9 說明:16m大小,第9區(qū),請備份
259 2 2048 mmcblk0p10 說明:2m大小,第10區(qū),請備份
259 3 40960 mmcblk0p11 說明:40m大小,第11區(qū),請備份
259 4 8192 mmcblk0p12 說明:8m大小,第12區(qū),請備份
259 5 16384 mmcblk0p13 說明:16m大小,第13區(qū),請備份
259 6 737280 mmcblk0p14 說明:720m大小,第14區(qū),請備份
259 7 1048576 mmcblk0p15 說明:1024m大小,第15區(qū),請備份
259 8 5349376 mmcblk0p16 說明:5224m大小,第16區(qū),請備份
179 24 4096 mmcblk0rpmb 說明:4m大小,懷疑運存區(qū),勿備份
179 16 4096 mmcblk0boot1 說明:4m大小,懷疑動態(tài)緩沖1區(qū),勿備份
179 8 4096 mmcblk0boot0 說明:4m大小,懷疑動態(tài)緩沖0區(qū),勿備份
8 0 15159296 sda 說明:14804m大小,sd存儲,別備份
8 4 15159168 sda4 說明:14803m大小,u盤,別備份
分區(qū)大小以kb顯示,我們要以MB去寫分區(qū)表,所以要換算! 轉載---在線容量換算從上面內容得出,分區(qū)大小,那些分區(qū)是我們要用到的!
可這樣也不知道第幾區(qū)是干嘛用的,這個后面會寫到的!
有些分區(qū),看大小,猜都知道是什么分區(qū)!
比如:16區(qū),很明顯是data分區(qū),14區(qū)是system分區(qū)!但靠猜測是不行的!
注意:不同主板,分區(qū)數量、位置、大小都不一樣。所以不能用本貼分區(qū)參數去寫分區(qū)表!
什么分區(qū)才是我們要用到呢:第一區(qū)到未區(qū),比如本貼分區(qū)參數得出我們要用到第1分區(qū)到16分區(qū)!
也可以根據自己的需求,去備份分區(qū)!比如本人有時也不會去備份systme、boot、recovery,data,用他人的修修改改就能用了!
可以不備份這些分區(qū),但一定要記錄這些分區(qū)大小!
---------------------------------------------------------------------------------------------------------------------------------------
7、我們已經知道需要備份幾個分區(qū),大小,數量。但分區(qū)的名稱未知!接下來,我們去查找分區(qū)名稱位置!
我們去找到同型號處理器的recovery.img文件,解壓recovery.img后,進入解壓文件夾“etc”,etc文件夾里recovery.fstab就有分區(qū)名稱位置,打開recovery.fstab文件得出以下內容?。╤i3798mv300機型的分區(qū)名稱位置)
# device mountpoint fstype
/dev/block/platform/soc/by-name/fastboot /fastboot emmc defaults defaults
比如這條分區(qū)表示:分區(qū)位置為:/dev/block/platform/soc/by-name/fastboot 分區(qū)名稱為:fastboot
/dev/block/platform/soc/by-name/partition /partition emmc defaults defaults
/dev/block/platform/soc/by-name/recovery /recovery emmc defaults defaults
/dev/block/platform/soc/by-name/swdevinfo /swdevinfo emmc defaults defaults
/dev/block/platform/soc/by-name/baseparam /baseparam emmc defaults defaults
/dev/block/platform/soc/by-name/pqparam /pqparam emmc defaults defaults
/dev/block/platform/soc/by-name/logo /logo emmc defaults defaults
/dev/block/platform/soc/by-name/fastplay /fastplay emmc defaults defaults
/dev/block/platform/soc/by-name/factory /factory emmc defaults defaults
/dev/block/platform/soc/by-name/boot /boot emmc defaults defaults
/dev/block/platform/soc/by-name/misc /misc emmc defaults defaults
/dev/block/platform/soc/by-name/swdb /swdb ext4 defaults defaults
/dev/block/platform/soc/by-name/cache /cache ext4 defaults defaults
/dev/block/platform/soc/by-name/backup /backup ext4 defaults defaults
/dev/block/platform/soc/by-name/system /system ext4 defaults defaults
/dev/block/platform/soc/by-name/userdata /data ext4 defaults defaults
/dev/block/sda1 /sdcard auto defaults defaults
從上面得出“ /dev/block/platform/soc/by-name ”是存放我們需要的分區(qū)路徑,此路徑就是我們要用到的!
有些卡刷包腳本也有分區(qū)名稱位置,試試去找同型號處理器卡刷包看看!
---------------------------------------------------------------------------------------------------------------------------------------
8、經過操作以上的步驟,已得出分區(qū)數量、大小、名稱、位置!但還少了分區(qū)數量和分區(qū)名稱的關系!
剛剛我們已得出 /dev/block/platform/soc/by-name 是主區(qū)路徑,這是hi3798mv300機型的主區(qū)路徑!
hi3798mv100主區(qū)路徑為 : /dev/block/platform/hi_mci.1/by-name
繼續(xù)在終端輸入:la -al /dev/block/platform/soc/by-name 得出分區(qū)數量和分區(qū)名稱的關系,如下內容!
lrwxrwxrwx root root 1970-01-01 08:00 baseparam -> /dev/block/mmcblk0p5
本人說明:以這條參數,我們看得出baseparam為第5分區(qū)
lrwxrwxrwx root root 1970-01-01 08:00 boot -> /dev/block/mmcblk0p9
lrwxrwxrwx root root 1970-01-01 08:00 cache -> /dev/block/mmcblk0p14
lrwxrwxrwx root root 1970-01-01 08:00 fastboot -> /dev/block/mmcblk0p1
lrwxrwxrwx root root 1970-01-01 08:00 fastplay -> /dev/block/mmcblk0p8
lrwxrwxrwx root root 1970-01-01 08:00 logo -> /dev/block/mmcblk0p7
lrwxrwxrwx root root 1970-01-01 08:00 misc -> /dev/block/mmcblk0p10
lrwxrwxrwx root root 1970-01-01 08:00 partition -> /dev/block/mmcblk0p2
lrwxrwxrwx root root 1970-01-01 08:00 pqparam -> /dev/block/mmcblk0p6
lrwxrwxrwx root root 1970-01-01 08:00 recovery -> /dev/block/mmcblk0p3
lrwxrwxrwx root root 1970-01-01 08:00 securestore -> /dev/block/mmcblk0p12
lrwxrwxrwx root root 1970-01-01 08:00 swdb -> /dev/block/mmcblk0p13
lrwxrwxrwx root root 1970-01-01 08:00 swdevinfo -> /dev/block/mmcblk0p4
lrwxrwxrwx root root 1970-01-01 08:00 system -> /dev/block/mmcblk0p15
lrwxrwxrwx root root 1970-01-01 08:00 trustedcore -> /dev/block/mmcblk0p11
lrwxrwxrwx root root 1970-01-01 08:00 userdata -> /dev/block/mmcblk0p16
數了以上內容得出16個分區(qū),剛好也是我們要用到16個分區(qū)參數!
這時,我們可以先制作分區(qū)表,后備份也行!當然先備份也是可行的!
那我們就先備份吧!
---------------------------------------------------------------------------------------------------------------------------------------
9、格式化u盤,盒子插上u盤!(最好用帶有指示燈u盤,至少知道u盤是否傳輸數據)
輸入:df 指令,查看u盤位置!輸入:df 指令,得出以下參數
Filesystem Size Used Free Blksize
/ 981.6M 1.4M 980.2M 4096
/dev 982.5M 128.0K 982.4M 4096
/mnt 982.5M 0.0K 982.5M 4096
/sys/fs/cgroup 982.5M 12.0K 982.5M 4096
/mnt/secure 982.5M 0.0K 982.5M 4096
/mnt/asec 982.5M 0.0K 982.5M 4096
/tmp 982.5M 0.0K 982.5M 4096
/tmp 982.5M 0.0K 982.5M 4096
/mnt/obb 982.5M 0.0K 982.5M 4096
/system 991.9M 449.5M 542.4M 4096
/data 4.9G 91.5M 4.8G 4096
/swdb 11.7M 2.6M 9.2M 4096
/cache 697.4M 784.0K 696.7M 4096
/storage/emulated 4.9G 368.7M 4.5G 4096
/mnt/sdcard 4.9G 368.7M 4.5G 4096
/mnt/sda/sda4 14.4G 16.0K 14.4G 8192 說明:根據大小判斷出此位置為U盤所在位置!
---------------------------------------------------------------------------------------------------------------------------------------
10、備份所需的分區(qū)!
分區(qū)有兩種備份方式,方式1:備份到U盤!方式2:用hitool備份!
我們從第1區(qū)開始備份!
第1區(qū)、名稱位置關系是:fastboot -> /dev/block/mmcblk0p1,也就是第1區(qū)是fastboot分區(qū)(海思機型第1區(qū)都是fastboot分區(qū))
直接再查看fastboot分區(qū)位置為:/dev/block/platform/soc/by-name/fastboot
因我們備份到U盤,所以也要查看一下u盤位置為:/mnt/sda/sda4
那么第1分區(qū)的備份命令為:dd if=/dev/block/platform/soc/by-name/fastboot of=/mnt/sda/sda4/fastboot.img
此備份命令說明:fastboot分區(qū)備份到U盤主目錄,文件名稱格式為:fastboot.img
第2分區(qū)備份命令為:dd if=/dev/block/platform/soc/by-name/partition of=/mnt/sda/sda4/partition.img
第3分區(qū)到第16分區(qū),用以上方法備份出來。。其它分區(qū)備份,我就不寫出來了!
本人建議不要備份data分區(qū)和cache分區(qū),這兩個分區(qū)沒什么用,而且大容量分區(qū),但分區(qū)大小要記住了!
---------------------------------------------------------------------------------------------------------------------------------------
11、分區(qū)表的制作!
最好制作之前去找任何機型的分區(qū)表來當參考!
以下是我寫了第1、2分區(qū)參數來示范給大家參考(為了你們容易看懂,我用了不同字體顏色,同顏色的為同一行,每行一個分區(qū)參數)
<?xml version="1.0" encoding="GB2312" ?>
<Partition_Info>
<Part Sel="1" PartitionName="fastboot" FlashType="emmc" FileSystem="none" Start="0" Length="2M" SelectFile="fastboot.img"/>
<Part Sel="1" PartitionName="partition" FlashType="emmc" FileSystem="none" Start="2M" Length="2M" SelectFile="partition.img"/>
</Partition_Info>
<?xml version="1.0" encoding="GB2312" ?> 說明:文本版本,GB2312識別,這個不要改,默認就行了!
Part Sel="1" 說明:1為默認選擇,0為關閉默認選擇!如果為0,線刷工具加載分區(qū)表時默認不刷此分區(qū),比如沒有data分區(qū)文件時,data分區(qū)參數行以Part Sel="0"表示!
PartitionName="fastboot" 表示分區(qū)名稱為fastboot
FlashType="emmc" 表示存儲芯片類型,如是NAND存儲芯片就以FlashType="nand"表示!
FileSystem="none" 表示文件系統(tǒng),盒子都是默認沒有的,我們不要改此項,默認就行了!
Start="0" 表示開始存儲位置,比如第一分區(qū)肯定從0m開始存儲,比如我們的第一分區(qū)大小為2M,那么第二分區(qū)開始存儲位置為2M,那么第二分區(qū)以Start="2M"表示!(這些都是小學生加減法,我就不多說了)
Length="2M" 表示分區(qū)大小,比如第一分區(qū)大小為100M,就以Length="100M"表示?。ㄟ@些都是小學生加減法,我就不多說了)
SelectFile="fastboot.img" 表示fastboot.img文件存放路徑,默認就行了,線刷工具加載分區(qū)表會自動加載到路徑!
</Partition_Info> 表示:分區(qū)信息,也是開始、結束符!所以分區(qū)表第二行以</Partition_Info>表示,尾行也是以</Partition_Info>表示!
注意!注意!注意!
1、海思部分盒子boot分區(qū)名稱為:kernel比如路徑:/dev/block/platform/soc/by-name/kernel
或是:/dev/block/platform/soc/by-name/boot
2、分區(qū)表參數要依次排行編寫,比如寫完第1分區(qū)參數后,下一行必須編寫的是第2分區(qū)參數,如寫的不是第2分區(qū)參數,線刷時必磚!
因線刷時是按照排行參數執(zhí)行刷機的!如下圖:
DNGBBL932J[H5R%KA)J(B}B.png (84.43 KB, 下載次數: 37)
下載附件
保存到相冊
2021-11-25 14:04 上傳
到此分區(qū)表已經制作完成了!
---------------------------------------------------------------------------------------------------------------------------------------
12、hitool備份
竟然分區(qū)表已制作出來了,我只用hitool上傳分區(qū)文件就行了!如何用hitool,請百度!?。?br />
本人不建議用此方法備份,萬一分區(qū)表參數寫錯了,備份出來的固件,刷后必磚。。。。
hitool備份對路由要求高,不好的路由還真不行,速度還不如U盤備份!
u盤備份,可靠,只要不備份錯分區(qū)文件,后期寫錯分區(qū)表刷機造成變磚后,重新編寫分區(qū)表再刷機就能救活!
而錯誤的分區(qū)表用hitool備份線刷包后,再刷機變磚后是沒機會再重新編寫分區(qū)表再救磚了,只能花錢去買他人的線刷包救磚了!
---------------------------------------------------------------------------------------------------------------------------------------
總結:
只要按照本貼第6、8、10步驟來操作不出錯,編寫錯誤分區(qū)表時造成變黑磚也沒關系,重新編寫正確的分區(qū)表再次刷機就能救磚!
本人本次邊寫貼、邊制作分區(qū)表是也編寫錯了造成變磚(開機燈不亮,屏幕無信號),重新認真編寫分區(qū)表就能救磚了!
所以要保證備份文件完好無損、分區(qū)信息要保存好,那么就不必擔心編寫錯誤分區(qū)表造成變磚問題!
本貼暫時編寫至此。。。今后可能會更新此貼。。。。。。
作者:城管X來了
|