瑞芯微Rockchip开发者社区
登录
直播中
地方
12年用户
651经验值
私信
关注
[问答]
导出RK3288开发板上的根文件系统并打包img怎么实现?
开启该帖子的消息推送
RK3288
导出RK3288
开发板
上的根文件系统并打包img怎么实现?
回帖
(1)
李先吊
2022-3-3 11:49:44
< >
整体操作一共三步:
一、将Rk3288的整个根文件系统的文件,通过ssh拷贝到PC系统(Ubuntu);
二、将此拷贝的全部文件,加载到虚拟光盘中,制作成img文件;
三、将img文件,再烧回RK3288开发板,进行测试。
工具:
1、RK3288上的Ubuntu系统需要安装:ssh、rsync;
2、PC电脑(虚拟机)上安装:ssh、rsync;
一、从设备导出根文件系统
1、给开发板接好显示器、鼠标键盘/putty等连接工具,启动开发板。登陆ubuntu用户,如果连sudo工具都没有,就直接切换到root用户来操作:
如该root账户没有设置密码,Ubuntu设置root密码,后面导出文件时需要超管密码:
su root
2、配置网络,为了网络稳定和节省时间,我插得网线(保证虚拟机中能ping通开发板即可)。
3、
更新软件列表
sudo apt-get update
4、vim /etc/ssh/sshd_config 修改ssh配置文件,便于外界访问。(导出本地所有文件)
Ubuntu环境下SSH服务安装、SSH远程登录以及SSH数据传输(如该没有安装ssh)
sudo vim /etc/ssh/sshd_config
找到PermitRootLogin这项,设置为yes,如图:
保存退出后,重启sshd:
/etc/init.d/ssh restart
经过这此修改后就可以远程登陆root帐户了,可以通过ssh工具验证
要确保,外界可以通过ssh 登录root账户,只有这样才能将本地所有文件导出。(无法ssh登录,需进行ssh的安装和启动)
5、 先在PC主机(自己电脑为Ubuntu)上创建一个目录,用来同步保存开发板上的文件系统:
mkdir UbuntuSystem
rsync -avx
root@192.168.137.5:/
UbuntuSystem
**执行上面代码前确保开发板上安装了rsync,开发板执行以下命令可安装rsync
sudo apt-get install rsync
上边的IP要根据开发板实际情况修改,信息由ifconfig得到。
命令执行完后,
UbuntuSystem
里就保存着和开发板系统上一样的文件系统内容了
二、打包生成img文件
1、制作镜像了,用dd工具创建镜像文件:
dd if=/dev/zero of=linuxroot.img bs=1M count=2048
格式化镜像文件
sudo mkfs.ext4 linuxroot.img
//sudo mkfs.ext4 -F -L linuxroot linuxroot.img
挂载镜像并往里面拷入修改后的文件系统:
mkdir rootfs
sudo mount linux-rootfs.img rootfs/
sudo cp -rfp UbuntuSystem/* rootfs/
/**
* sudo mount -o loop linux-rootfs/jdk8/linux-rootfs.img rootfs/ // 挂载已有镜像
*
*e2fsck -f linux-rootfs.img // 检查镜像
*
* resize2fs linux-rootfs.img 4096M // 增大img镜像至4G
*
* resize2fs -M linux-rootfs.img // 把镜像缩到最小
*
* resize2fs -PM linux-rootfs.img // 在修改的过程显示进度(大写的,P)
*
* resize -p linux-rootfs.img // 显示镜像里真正的文件大小(小写的,p)
*
*
*/
缷载镜像:
sudo umount rootfs
此时发现根目录已经有linuxroot.img镜像文件
**
这样linuxroot.img里就已经有刚才制作的根目录内容了,但linuxroot.img文件大小却是定义的分区大小,不是文件系统的实际大小,所以还要经过一些处理才能发布。
检查并修复linuxroot.img镜像的文件系统,不熟悉的朋友可以通过网络了解此工具:
e2fsck -p -f linux-rootfs.img
减小linuxroot.img镜像文件的大小:
resize2fs -M linux-rootfs.img
执行上面两命令后,linuxroot.img瘦身不少
下来就可以用来烧录了。
三、img烧录到设备froot分区
1、开发板链接Windows电脑,并打开AndroidTools烧录工具,让开发板进入Loading模式;
2、选择rootfs 分区,并选择前面制作的根文件系统ubuntu.img,进行烧录;
3、烧录进度100% 后,开发板会自动重启,进入新系统。
< >
整体操作一共三步:
一、将Rk3288的整个根文件系统的文件,通过ssh拷贝到PC系统(Ubuntu);
二、将此拷贝的全部文件,加载到虚拟光盘中,制作成img文件;
三、将img文件,再烧回RK3288开发板,进行测试。
工具:
1、RK3288上的Ubuntu系统需要安装:ssh、rsync;
2、PC电脑(虚拟机)上安装:ssh、rsync;
一、从设备导出根文件系统
1、给开发板接好显示器、鼠标键盘/putty等连接工具,启动开发板。登陆ubuntu用户,如果连sudo工具都没有,就直接切换到root用户来操作:
如该root账户没有设置密码,Ubuntu设置root密码,后面导出文件时需要超管密码:
su root
2、配置网络,为了网络稳定和节省时间,我插得网线(保证虚拟机中能ping通开发板即可)。
3、
更新软件列表
sudo apt-get update
4、vim /etc/ssh/sshd_config 修改ssh配置文件,便于外界访问。(导出本地所有文件)
Ubuntu环境下SSH服务安装、SSH远程登录以及SSH数据传输(如该没有安装ssh)
sudo vim /etc/ssh/sshd_config
找到PermitRootLogin这项,设置为yes,如图:
保存退出后,重启sshd:
/etc/init.d/ssh restart
经过这此修改后就可以远程登陆root帐户了,可以通过ssh工具验证
要确保,外界可以通过ssh 登录root账户,只有这样才能将本地所有文件导出。(无法ssh登录,需进行ssh的安装和启动)
5、 先在PC主机(自己电脑为Ubuntu)上创建一个目录,用来同步保存开发板上的文件系统:
mkdir UbuntuSystem
rsync -avx
root@192.168.137.5:/
UbuntuSystem
**执行上面代码前确保开发板上安装了rsync,开发板执行以下命令可安装rsync
sudo apt-get install rsync
上边的IP要根据开发板实际情况修改,信息由ifconfig得到。
命令执行完后,
UbuntuSystem
里就保存着和开发板系统上一样的文件系统内容了
二、打包生成img文件
1、制作镜像了,用dd工具创建镜像文件:
dd if=/dev/zero of=linuxroot.img bs=1M count=2048
格式化镜像文件
sudo mkfs.ext4 linuxroot.img
//sudo mkfs.ext4 -F -L linuxroot linuxroot.img
挂载镜像并往里面拷入修改后的文件系统:
mkdir rootfs
sudo mount linux-rootfs.img rootfs/
sudo cp -rfp UbuntuSystem/* rootfs/
/**
* sudo mount -o loop linux-rootfs/jdk8/linux-rootfs.img rootfs/ // 挂载已有镜像
*
*e2fsck -f linux-rootfs.img // 检查镜像
*
* resize2fs linux-rootfs.img 4096M // 增大img镜像至4G
*
* resize2fs -M linux-rootfs.img // 把镜像缩到最小
*
* resize2fs -PM linux-rootfs.img // 在修改的过程显示进度(大写的,P)
*
* resize -p linux-rootfs.img // 显示镜像里真正的文件大小(小写的,p)
*
*
*/
缷载镜像:
sudo umount rootfs
此时发现根目录已经有linuxroot.img镜像文件
**
这样linuxroot.img里就已经有刚才制作的根目录内容了,但linuxroot.img文件大小却是定义的分区大小,不是文件系统的实际大小,所以还要经过一些处理才能发布。
检查并修复linuxroot.img镜像的文件系统,不熟悉的朋友可以通过网络了解此工具:
e2fsck -p -f linux-rootfs.img
减小linuxroot.img镜像文件的大小:
resize2fs -M linux-rootfs.img
执行上面两命令后,linuxroot.img瘦身不少
下来就可以用来烧录了。
三、img烧录到设备froot分区
1、开发板链接Windows电脑,并打开AndroidTools烧录工具,让开发板进入Loading模式;
2、选择rootfs 分区,并选择前面制作的根文件系统ubuntu.img,进行烧录;
3、烧录进度100% 后,开发板会自动重启,进入新系统。
举报
更多回帖
rotate(-90deg);
回复
相关问答
RK3288
如何将LUbuntu
系统
的
根
文件系统
打包
成
img
呢
2022-03-03
1854
如何对
RK3288
的ubuntu
根
文件系统
进行配置呢
2022-03-04
1369
如何创建UBUNTU
根
文件系统
RK3288
?
2022-03-03
933
RK3288
移植Ubuntu
文件系统
的过程是怎么样的?
2022-03-10
959
RK3288
Debian
系统
boot.
img
/recovery.
img
如何修改内核?
2022-03-03
972
如何搭建
RK3288
的
开发
环境?
2022-03-04
821
安卓
开发板
RK3288
自助机的
开发
流程是怎样的
2022-03-03
1329
RK3288
开发板
具有哪些参数应用?
2022-01-14
1197
如何去
实现
RK3288
开发板
支持双网口的功能设计呢
2022-03-04
1830
怎样去解决
RK3288
kernel编译resource.
img
时 .dtb
文件
无法识别的问题呢
2022-03-10
1387
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
首页
论坛版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分