RK3288 RK3399 Ubuntu 系統備份

2021-08-19 21:57:40 字數 3558 閱讀 9625

自己擁有一塊firefly-rk3399開發板,並在開發板上面安裝了ubuntu16.04系統,而且在開發板上面做了一些環境配置和軟體開發工作,現在需要將這塊開發板的環境及系統轉殖到另外一塊開發板上。所以需要將系統做備份,然後燒錄到新的開發板上面。

androidboot.baseband=n/a 

androidboot.selinux=permissive

androidboot.hardware=rk30board

androidboot.console=ttyfiq0

root=/dev/mmcblk1p6 rw rootfstype=ext4

mtdparts=rk29xxnand:0x00002000

@0x00002000(uboot),

0x00002000

@0x00004000(trust),

0x00008000

@0x00006000(resource),

0x00008000

@0x0000e000(kernel),

0x00002000

@0x00017000(backup),

-@0x00019000(boot)

storagemedia=emmc

uboot_logo=0x02000000

@0x7dc00000

loader.timestamp=2017-02-24_16:13:37

securebootcheckok=0

androidboot.mode=emmc

這裡已kernel分割槽說明,0x00008000@0x0000e000(kernel),分割槽名字前面是其大小和起始位置

@前面是分割槽大小,@後面是分割槽起始位置

數值的單位是sector(扇區),1個sector 為512 bytes,kernel 分割槽的起始位置是0xe000,大小是0x8000(16m),這兩個數等會匯出就直接用到。

-@0x00019000(boot)域就是開發板的檔案系統,使用androidtool_release工具不好匯出,所以需要使用另外一種方式,其操作步驟如下:

sudo apt-get install openssh-server

sudo vi /etc/ssh/sshd_config

修改permitrootlogin選項用以確保root登入許可權足夠

重啟開發板或者重啟ssh服務

# /etc/init.d/ssh restart
sudo apt-get install openssh-client
sudo apt-get install rsync
sudo vi /etc/onlyone.sh

內容為:

#!/bin/sh

read line < /proc/cmdline

for arg in

$line; do

if [ "5" -le "$(expr length $arg)" ]; then

if [ "root=" = "$(expr substr $arg 1 5)" ]; then

fifidone

修改檔案許可權

sudo chmod 777 /etc/onlyone.sh
#!/bin/bash

#ubuntu(ubuntu-core) build already annotation

#not often compiled .......too slow and need root

make_theard=`cat /proc/cpuinfo| grep "processor"| wc -l`

result="image-rk3288-ubuntu"

function creat_result_dir

() fi

}function ubuntu_core_build

() fi

sudo mount linux-rootfs-core.img mount

sudo cp -a ubuntu_core/* mount

sudo umount mount

e2fsck -p -f linux-rootfs-core.img

resize2fs -m linux-rootfs-core.img

rm -rf mount

mv linux-rootfs-core.img $result

}function ubuntu_build

() fi

sudo mount linux-rootfs.img mount

sudo cp -a ubuntu/* mount

sudo umount mount

e2fsck -p -f linux-rootfs.img

resize2fs -m linux-rootfs.img

rm -rf mount

mv linux-rootfs.img $result

}function ubuntu_clean

() function ubuntu_core_clean

() function result_clean

() creat_result_dir

if [ $1 == "clean" ]

then

elif [ $2 == "ubuntu" -o $2 == "ubuntu/" ]

then

elif [ $2 == "ubuntu_core" -o $2 == "ubuntu_core/" -o $2 == "ubuntu-core" -o $2 == "ubuntu-core/" ]

then

elsefi}

elif [ $1 == "ubuntu_core" -o $1 == "ubuntu_core/" -o $1 == "ubuntu-core" -o $1 == "ubuntu-core/" ]

then

elif [ $1 == "ubuntu" -o $1 == "ubuntu/" ]

then

else

fi

將指令碼拷貝到ubuntu_make目錄並執行指令碼

./make_ubuntu.sh ubuntu
最終在image-rk3288-ubuntu目錄下生成rootfs檔案

燒錄的過程中使用到了上面匯出的映象、分割槽資訊和androidtool燒寫工具

在燒寫前需要注意工具珊的位址和分割槽名字要根據上面匯出來的分割槽資訊要一致,否則會燒寫失敗

rk3288編譯環境

在mtk原來5.1的編譯環境基礎上,編譯rk3288 5.1 kernel 報錯。安裝 sudo apt get install lzop後面還有乙個git的錯誤,網上一大把。補充 openjdk的安裝起因 編譯環境一直用得好好的,今天突然編譯,提示jdk版本太低了,真是撞邪了。jdk大家經常安裝,...

RK3399晶元規格書,RK3399參考設計方案

rk3399晶元規格書,rk3399參考設計方案 較新的rk3368雖然專門針對電視盒子做了優化,但是其硬體效能相比上一代的rk3288還要孱弱,老當益壯的rk3288退休不得,與rk3368勉力維持著瑞芯微2015年的江山。進入2016年,瑞芯微rockchip再次調轉槍頭,緊跟行業趨勢,順勢而為...

RK3399 產品選擇

rk3399 是一款的arm64處理器,其內部整合gpu,對多 人臉識別等,支援都非常不錯。在國內,選擇以rk3399為核心,開發產品的知名公司,有很多。就我個人而言,主要使用過兩家公司的開發板。1 firefly rk3399 開發板 2 nanopc t4開發板 兩家公司可能側重點不同,產品特性...