twrp編譯
① 找到支持刷入Android7.1.1的TWRP,最新TWRP如何刪除DM校驗
如果沒root過,或者沒給過許可權,進入recovery 模式恢復出廠設置,清除所有數據,因為你下載安裝了惡意軟體,看情況是開機自啟,所以恢復出廠設置應該就可以了,每天給root許可權情況下它是無權安裝為系統軟體的,如果已經給了root許可權,進入fastboot模式用小米刷機工具或者adb命令刷入twrp版recovery,用這個第三方recovery的文件管理功能找到data/app/或者data/priv-app/下的鎖機軟體刪除,重啟這個估計有點難度,對於一般手機用戶,第三個是連接電腦手機助手看能不能卸載,如果不知道是哪個軟體就將所有第三方的度卸載了 第四講鎖機軟體備份導出(電腦)反編譯破解鎖機密碼(不一定成功)
② 如何構建編譯TWRP touch recovery
目前穩定的的分支是twrp2.4板本2.4.xx代碼基地。如果你使用的CM10.1你*必須*使用twrp2.4分支。主分支代表TWRP2.2和JB-WIP TWRP2.3。選擇任何你喜歡的分支,但唯一的分支越來越活躍的代碼更改twrp2.4。
* CM7 ONLY*
更換整個CM7/build文件夾:
確保您獲得twrp2.3分支和不是主分支。
*開始構建編譯*
注意:如果您添加或更改任何標志,你將需要進行編譯清除,然後再重新編譯或標志更改將不被使用起。
現在,你的源代碼,你需要設置或更改您的設備(S)的一些構建標志。查找BoardConfig.mk為您的設備,CM/devices/manufacturer/codename文件夾(例如CM/devices/hp/tenderloin/BoardConfig.mk)BoardConfig.mk。首先配置BoardConfig.mk的文件為
TARGET_RECOVERY_INITRC:=
如果您的設備有此行,將在恢復中使用一個自定義,預置init.rc的路徑。最有可能的是,你將需要略微更改自定義init.rc。尋找recovery中的init.rc文件,並打開它。頂部附近,你會看到這樣的信息:
on init
export PATH /sbin
export LD_LIBRARY_PATH .:/sbin
添加所需的最後一行。這條線是需要得到的鏈接器運行。 TWRP ClockworkMod不同,是一個動態鏈接的恢復。動態鏈接可以讓我們節省了大量的空間,以幫助確保,TWRP恢復圖像將適合在更多的設備。它也讓我們使用動態鏈接的觸摸屏上看到摩托羅拉Photon與Atrix和惠普的TouchPad,而無需 mount /system 的二進制文件。
還需要包括您的主板配置架構和平台設置。通常情況下,這些都已經包含了,如果你正在使用設備的configs別人創建的,但如果你創建你自己的,你可能需要添加他們。沒有他們,往往會恢復故障段在啟動過程中,你只會看到屏幕上一遍又一遍地典輝簾閃光。
③ 基於 omnirom7.1 最新twrp3.1.0源碼編譯適配能刷lineageos嗎
刷機步驟(線刷): ①電腦載線刷寶 ②關機狀態按電源鍵跟音量減鍵5秒自進入安卓機器界面 ③用數據線連接手機 ④線刷寶識別手機型號並且給相應刷機包點載 ⑤載完點刷機等電腦顯示刷機功拔手
④ twrp怎麼修改內置存儲目錄
那就是編譯的twrp問題,原版英文不支持中文的
⑤ TWRP recovery data無法掛載怎麼解決
,重新格式化data 清除system cache等,再開機進twrp連接電腦嘗試拖入文件。
2,或在twrp界面設置開啟ADB模式,通過adb傳文件。adb sideload filename.zip
如果以上不行,按音量下加開機鍵,開機進入fast boot 模式,連接電腦通過fastboot重刷twrp。
fastboot flash recovery twrpfilename.img(刷入對應名稱twrp文件)
fastboot boot twrpfilename.img(引導進入twrp)
twrp推薦官方搜索對應機型下載,win10隻需要把小米工具的fastboot文件和刷機文件放在同一個文件夾通過命令刷入,linux不用。
現在所有的TWRP 3.x 源代碼都是公開的,您可以自己編譯它。本指南並不是逐字句的指南,如果您不熟悉基本的Linux命令和在AOSP中構建的流程,那麼您可能無法完成編譯。
目前可以使用Omni 6.0, Omni 7.1, Omni 8.1, Omni 9.0, CM 13.0, CM 14.1, CM 15.1, LineageOS 16.0源代碼。除非您的設備有一個超級分區,否則建議使用Omni 9.0。
如果你使用的是CM/LineageOS,你需要把TWRP放在LineageOS/bootable/recovery-twrp文件夾中,並在你的BoardConfig.mk中設置RECOVERY_VARIANT:= TWRP 。TWRP源代碼可以在這里找到:
(注意:最新TWRP源代碼的位置已經改變!)
選擇最新可用的分支。Omni不需要這個步驟,因為Omni默認情況下已經包含TWRP源代碼,但是,如果您使用的是較老版本的Omni,您可能需要從最新的分支中拉出(最新的分支將在較老的構建樹中成功編譯)。
如果您只對構建TWRP感興趣,那麼您可能想嘗試使用輕量的構建清單。您可以嘗試使用下面的清單。它在大多數情況下應該工作,但有些情況下,在你的構建樹中需要比清單提供的更多的repo(倉庫):
⑥ 如何從源代碼編譯TWRP Recovery
目前穩定的的分支是twrp2.4板本2.4.xx代碼基地。如果你使用的CM10.1你*必須*使用twrp2.4分支。主分支代表TWRP2.2和JB-WIP TWRP2.3。選擇任何你喜歡的分支,但唯一的分支越來越活躍的代碼更改twrp2.4。 * CM7 ONLY* 更換整個CM7/build文件夾
⑦ linux mkimages 文件在哪
下載:
兩種途徑得到mkImage工具uImage,
解決方法:
方法一:
安裝mkimage工具,載ubuntu11.10下執行以下命令進行安裝:
#sudo apt-get install uboot-mkimage
方法二:
編譯uboot源碼,編譯成功後載uboot/tools目錄下會生成mkimgage工具,將mkimage工具拷貝到/usr/bin/目錄下即可。
使用:
uboot源代碼的tools/目錄下有mkimage工具,這個工具可以用來製作不壓縮或者壓縮的多種可啟動映象文件。
mkimage在製作映象文件的時候,是在原來的可執行映象文件的前面加上一個0x40位元組的頭,記錄參數所指定的信息,這樣uboot才能識別這個映象是針對哪個CPU體系結構的,哪個OS的,哪種類型,載入內存中的哪個位置, 入口點在內存的那個位置以及映象名是什麼
root@Glym:/tftpboot# ./mkimage
Usage: ./mkimage -l image
-l ==> list image header information
./mkimage -A arch -O os -T type -C comp -a addr -e ep -n name -d data_file[:data_file...] image
-A ==> set architecture to 'arch'
-O ==> set operating system to 'os'
-T ==> set image type to 'type'
-C ==> set compression type 'comp'
-a ==> set load address to 'addr' (hex)
-e ==> set entry point to 'ep' (hex)
-n ==> set image name to 'name'
-d ==> use image data from 'datafile'
-x ==> set XIP (execute in place)
參數說明:
-A 指定CPU的體系結構:
取值 表示的體系結構
alpha Alpha
arm A RM
x86 Intel x86
ia64 IA64
mips MIPS
mips64 MIPS 64 Bit
ppc PowerPC
s390 IBM S390
sh SuperH
sparc SPARC
sparc64 SPARC 64 Bit
m68k MC68000
-O 指定操作系統類型,可以取以下值:
openbsd、netbsd、freebsd、4_4bsd、linux、svr4、esix、solaris、irix、sco、dell、ncr、lynxos、vxworks、psos、qnx、u-boot、rtems、artos
-T 指定映象類型,可以取以下值:
standalone、kernel、ramdisk、multi、firmware、script、filesystem
-C 指定映象壓縮方式,可以取以下值:
none 不壓縮
gzip 用gzip的壓縮方式
bzip2 用bzip2的壓縮方式
-a 指定映象在內存中的載入地址,映象下載到內存中時,要按照用mkimage製作映象時,這個參數所指定的地址值來下載
-e 指定映象運行的入口點地址,這個地址就是-a參數指定的值加上0x40(因為前面有個mkimage添加的0x40個位元組的頭)
-n 指定映象名
-d 指定製作映象的源文件
U-BOOT下使用bootm引導內核方法
一、在開始之前先說明一下bootm相關的東西。
1、 首先說明一下,S3C2410架構下的bootm只對sdram中的內核鏡像文件進行操作(好像AT91架構提供了一段從flash復制內核鏡像的代碼, 不過針對s3c2410架構就沒有這段代碼,雖然可以在u-boot下添加這段代碼,不過好像這個用處不大),所以請確保你的內核鏡像下載到sdram 中,或者在bootcmd下把flash中的內核鏡像復制到sdram中。
2、-a參數後是內核的運行地址,-e參數後是入口地址。
3、
1)如果我們沒用mkimage對內核進行處理的話,那直接把內核下載到0x30008000再運行就行,內核會自解壓運行(不過內核運行需要一個tag來傳遞參數,而這個tag建議是由bootloader提供的,在u-boot下默認是由bootm命令建立的)。
2)如果使用mkimage生成內核鏡像文件的話,會在內核的前頭加上了64byte的信息,供建立tag之用。bootm命令會首先判斷bootm xxxx 這個指定的地址xxxx是否與-a指定的載入地址相同。
(1)如果不同的話會從這個地址開始提取出這個64byte的頭部,對其進行分析,然後把去掉頭部的內核復制到-a指定的load地址中去運行之
(2)如果相同的話那就讓其原封不同的放在那,但-e指定的入口地址會推後64byte,以跳過這64byte的頭部。
二、好,接著介紹使用mkimage生成鏡像文件並下載運行的方法。
方法一、
1、首先,用u-boot/tools/mkimage這個工具為你的內核加上u-boot引導所需要的文件頭,具體做法如下:
[root@localhost tftpboot]#mkimage -n 'linux-2.6.14' -A arm -O linux -T kernel -C none -a 0x30008000 -e 0x30008000 -d zImage zImage.img
Image Name: linux-2.6.14
Created: Fri Jan 12 17:14:50 2007
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 1262504 Bytes = 1232.91 kB = 1.20 MB
Load Address: 0x30008000
Entry Point: 0x30008000
這里解釋一下參數的意義:
-A ==> set architecture to 'arch'
-O ==> set operating system to 'os'
-T ==> set image type to 'type'
-C ==> set compression type 'comp'
-a ==> set load address to 'addr' (hex)
-e ==> set entry point to 'ep' (hex)
-n ==> set image name to 'name'
-d ==> use image data from 'datafile'
-x ==> set XIP (execute in place)
2 、下載內核
U-Boot 1.1.3 (Jan 12 2007 - 16:16:36)
U-Boot code: 33F80000 -> 33F9BAC0 BSS: -> 33F9FBAC
RAM Configuration:
Bank #0: 30000000 64 MB
Nor Flash: 512 kB
Nand Flash: 64 MB
In: serial
Out: serial
Err: serial
Hit any key to stop autoboot: 0
sbc2410=>tftp 0x31000000 zImage.img
TFTP from server 192.168.1.115; our IP address is 192.168.1.128
Filename 'zImage.img'.
Load address: 0x31000000
Loading: #################################################################
#################################################################
#################################################################
####################################################
done
Bytes transferred = 1263324 (1346dc hex)
3.運行
sbc2410=>bootm 0x31000000
## Booting image at 31000000 ...
Image Name: linun-2.6.14
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 1263260 Bytes = 1.2 MB
Load Address: 30008000
Entry Point: 30008000
Verifying Checksum ... OK
OK
Starting kernel ...
Uncompressing Linux.............................................................Linux version 2.6.14 (root@luofuchong) (gcc version 3.4.1) #21 Fri Oct 20 17:206CPU: ARM920Tid(wb) [41129200] revision 0 (ARMv4T)
Machine: SMDK2410
Memory policy: ECC disabled, Data cache writeback
CPU S3C2410A (id 0x32410002)
S3C2410: core 202.800 MHz, memory 101.400 MHz, peripheral 50.700 MHz
S3C2410 Clocks, (c) 2004 Simtec Electronics
CLOCK: Slow mode (1.500 MHz), fast, MPLL on, UPLL on
USB Control, (c) 2006 sbc2410
CPU0: D VIVT write-back cache
CPU0: I cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets
CPU0: D cache: 16384 bytes, associativity 64, 32 byte lines, 8 sets
Built 1 zonelists
Kernel command line: console="ttySAC0" root="/dev/nfs" nfsroot="192".168.1.115:/frien"irq: clearing subpending status 00000002
PID hash table entries: 512 (order: 9, 8192 bytes)
timer tcon="00500000", tcnt a509, tcfg 00000200,00000000, usec 00001e4c
Console: colour mmy device 80x30
Dentry cache hash table entries: 16384 (order: 4, 65536 bytes)
Inode-cache hash table entries: 8192 (order: 3, 32768 bytes)
Memory: 64MB = 64MB total
Memory: 62208KB available (1924K code, 529K data, 108K init)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
softlockup thread 0 started up.
NET: Registered protocol family 16
S3C2410: Initialising architecture
SCSI subsystem initialized
usbcore: registered new driver usbfs
usbcore: registered new driver hub
S3C2410 DMA Driver, (c) 2003-2004 Simtec Electronics
DMA channel 0 at c4800000, irq 33
DMA channel 1 at c4800040, irq 34
DMA channel 2 at c4800080, irq 35
DMA channel 3 at c48000c0, irq 36
NetWinder Floating Point Emulator V0.97 (double precision)
devfs: 2004-01-31 Richard Gooch ([email protected])
devfs: devfs_debug: 0x0
devfs: boot_options: 0x1
yaffs Oct 18 2006 12:39:51 Installing.
Console: switching to colour frame buffer device 30x40
fb0: s3c2410fb frame buffer device
fb1: Virtual frame buffer device, using 1024K of video memory
led driver initialized
s3c2410 buttons successfully loaded
s3c2410_serial0 at MMIO 0x50000000 (irq = 70) is a S3C2410
s3c2410_serial1 at MMIO 0x50004000 (irq = 73) is a S3C2410
s3c2410_serial2 at MMIO 0x50008000 (irq = 76) is a S3C2410
io scheler noop registered
io scheler anticipatory registered
io scheler deadline registered
io scheler cfq registered
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
usbcore: registered new driver ub
Cirrus Logic CS8900A driver for Linux (Modified for SMDK2410)
eth0: CS8900A rev E at 0xe0000300 irq="53", no eeprom , addr: 08: 0:3E:26:0A:5B
S3C24XX NAND Driver, (c) 2004 Simtec Electronics
s3c2410-nand: mapped registers at c4980000
s3c2410-nand: timing: Tacls 10ns, Twrph0 30ns, Twrph1 10ns
NAND device: Manufacturer ID: 0xec, Chip ID: 0x76 (Samsung NAND 64MiB 3,3V 8-bi)Scanning device for bad blocks
Bad eraseblock 1884 at 0x01d70000
Creating 4 MTD partitions on "NAND 64MiB 3,3V 8-bit":
0x00000000-0x00020000 : "vivi"
0x00020000-0x00030000 : "param"
0x00030000-0x00200000 : "kernel"
0x00200000-0x04000000 : "root"
usbmon: debugfs is not available
s3c2410-ohci s3c2410-ohci: S3C24XX OHCI
s3c2410-ohci s3c2410-ohci: new USB bus registered, assigned bus number 1
s3c2410-ohci s3c2410-ohci: irq 42, io mem 0x49000000
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
Initializing USB Mass Storage driver...
usbcore: registered new driver usb-storage
USB Mass Storage support registered.
usbcore: registered new driver usbmouse
drivers/usb/input/usbmouse.c: v1.6:USB HID Boot Protocol mouse driver
mice: PS/2 mouse device common for all mice
s3c2410 TouchScreen successfully loaded
UDA1341 audio driver initialized
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 4096 (order: 2, 16384 bytes)
TCP bind hash table entries: 4096 (order: 2, 16384 bytes)
TCP: Hash tables configured (established 4096 bind 4096)
TCP reno registered
TCP bic registered
NET: Registered protocol family 1
IP-Config: Complete:
device=eth0, addr="192".168.1.128, mask="255".255.255.0, gw="192".168.1.1,
host="luofuchong", domain=, nis-domain=(none),
bootserver="192".168.1.1, rootserver="192".168.1.115, rootpath=
Looking up port of RPC 100003/2 on 192.168.1.115
Looking up port of RPC 100005/1 on 192.168.1.115
VFS: Mounted root (nfs filesystem).
Mounted devfs on /dev
Freeing init memory: 108K
init started: BusyBox v1.1.3 (2006.09.20-14:52+0000) multi-call binary
Starting pid 696, console /dev/tts/0: '/etc/init.d/rcS'
Please press Enter to activate this console.
方法二、
1、首先,用u-boot/tools/mkimage這個工具為你的內核加上u-boot引導所需要的文件頭,具體做法如下:
[root@localhost tftpboot]#mkimage -n 'linux-2.6.14' -A arm -O linux -T kernel -C none -a 0x30008000 -e 0x30008040 -d zImage zImage.img
Image Name: linux-2.6.14
Created: Fri Jan 12 17:14:50 2007
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 1262504 Bytes = 1232.91 kB = 1.20 MB
Load Address: 0x30008000
Entry Point: 0x30008040
2 、下載內核
U-Boot 1.1.3 (Jan 12 2007 - 16:16:36)
U-Boot code: 33F80000 -> 33F9BAC0 BSS: -> 33F9FBAC
RAM Configuration:
Bank #0: 30000000 64 MB
Nor Flash: 512 kB
Nand Flash: 64 MB
In: serial
Out: serial
Err: serial
Hit any key to stop autoboot: 0
sbc2410=>tftp 0x30008000 zImage.img
TFTP from server 192.168.1.115; our IP address is 192.168.1.128
Filename 'zImage.img'.
Load address: 0x30008000
Loading: #################################################################
#################################################################
#################################################################
####################################################
done
Bytes transferred = 1263324 (1346dc hex)
3.運行
sbc2410=>bootm 0x30008000
## Booting image at 30008000 ...
Image Name: linux-2.6.14
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 1261056 Bytes = 1.2 MB
Load Address: 30008000
Entry Point: 30008040
Verifying Checksum ... OK
XIP Kernel Image ... OK
⑧ 如何構建編譯TWRP touch recovery
1. 關機狀態下同時長按手機電源鍵、音量+、音量- 這三個鍵,如下圖: 2. 屏幕亮後松開按鍵,等待出現下圖畫面即已經進入recovery模式,如果未出現,請重復步驟1; 進入recovery模式之後,如果想雙清恢復系統或是雙清清除鎖屏密碼,請提前做好手機上個人數據的備份工作。 1. 使用音量加減鍵選擇至「wipe data/ factory reset」,按電源鍵確認; 2. 使用音量加減鍵選擇至「Yes」,按電源鍵確認; 3. 使用音量加減鍵選擇至「wipe cache partition」,按電源鍵確認; 4. 等待手機重啟。您的手機就會恢復到出廠的狀態了。
⑨ 小米note3完美解鎖補丁怎麼下載
一:線刷救磚准備工作:
下載並解壓從刷機幫上下載的小米Note3線刷包
二:刷機前的注意事項:
1:請確保你的手機和電腦用數據線連接正常,這個是必須的,也是操作的基礎;
2:電腦上一定要安裝的有刷機幫提供的手機驅動,驅動下載下來安裝在電腦上,別安裝錯了。
3:刷機前請確保手機電池電量在一半以上,這個很重要哦;
4:在系統升級過程中千萬不要隨便去操作或者去按哪個鍵;
5:刷機過程中千萬不能扣電池;
6:普通數據線也能刷機,前提是你的數據線傳輸要穩定;
7:刷之前要備份好個人的通訊錄等資料;
8:刷前請仔細閱讀刷機操作說明,並根據提示來操作。
三:使用miflash工具刷機的步驟
本工具適用於小米,華為,聯想等手機品牌高通版本,不只是小米專用,教程僅供參考,看完一遍後再刷機。
小米Miflash工具如何通過9008模式進行刷機?今天,刷機幫小編就來和大家詳細的介紹一下小米Miflash工具通過9008模式來刷機的方法,希望可以幫助到有需要的朋友。本工具也適用於小米、華為、聯想等手機品牌高通版本,下面一起來看下唄!
友情提示:
①、刷機之前請關閉電腦上的殺毒軟體,防止誤刪文件導致刷機失敗。
②、如果是深度9008刷機需要使用64位電腦
1、雙擊安裝工具,安裝刷機驅動,