1.安装Qumu和Debootstrap
由于我们是在Ubuntu上构建的debian的文件系统,所以安装这俩个工具我们直接使用apt-get命令即可。命令如下:
apt-get install binfmt-support qemu qemu-user-static debootstrap
2.抽取Debain文件系统
抽取文件系统我们使用的是debootstrap命令,我们执行以下命令即可从debian下载源中获取到文件系统:
debootstrap --arch=armhf --foreign buster root https://mirrors.tuna
命令参数解析:
arch 指定了CPU 架构
buster 是debian 版本号。目前最新为10
foreign:在与主机架构不相同时需要指定此参数,仅做初始化的解包
root:要存放文件系统的文件夹
https://mirrors.tuna.tsinghua.edu.cn/debian/ 是下载源,如图:
抽取时间比较长,大概10分钟左右,大家耐心等待,抽取成功可以看到linux的目录树,如图 2.2所示,如果大家抽取失败,可以多抽取几次,或者换个网络,如图:
3.完善文件系统
完善文件系统这里我们要使用到qemu,为什么要用qemu呢,因为我们现在是在X86虚拟机上操作,不能完善arm的文件系统,所以我们要用qemu来模拟arm的环境。
(1) 复制 qemu-arm-static 到刚构建的基本系统中,使用命令
cp /usr/bin/qemu-arm-static root/usr/bin
(2) 初始化文件系统
执行命令:
DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true
大概需要20分钟左右,大家耐心等待即可。初始化成功,如图:
(3) 使用命令 chroot root,进到我们初始化好的文件系统,如图:
(4) 使用命令创建以下内容,
echo "proc /proc proc defaults 0 0" >> etc/fstab
mkdir -p usr/share/man/man1/
mknod dev/console c 5 1
(5) 更新下载源,使用命令
vi /etc/apt/sources.list
打开source.list文件,然后把里面的内容替换成以下内容,
deb http://mirrors.ustc.edu.cn/debian stable main contrib non-free
# deb-src http://mirrors.ustc.edu.cn/debian stable main contrib non-free
deb http://mirrors.ustc.edu.cn/debian stable-updates main contrib non-free
# deb-src http://mirrors.ustc.edu.cn/debian stable-updates main contrib non-free
# deb http://mirrors.ustc.edu.cn/debian stable-proposed-updates main contrib non-free
# deb-src http://mirrors.ustc.edu.cn/debian stable-proposed-updates ma
然后保存退出,使用命令apt-get update更下源,如图:
(6) 使用命令apt-get install vim安装vim软件,如图:
(7) 创建一个新的用户,使用命令adduser user,然是输入密码,密码为topeet,如图:
(8) 设置root密码,使用命令passwd root,密码为topeet,如图:
(9) 设置以太网,输入以下命令:
echo "auto eth0" > /etc/network/interfaces.d/eth0
echo "iface eth0 inet dhcp" >> /etc/network/interfaces.d/eth0
(10) 因为ull的性能比较弱,所以我们就不安装桌面了,直接使用exit退出qemu环境即可,如图:
4.打包文件系统
进到debian文件系统目录。直接使用命令tar -cjf rootfs.tar.bz2 ./* 即可,如图:
5.烧写验证
把我们打包好的这个文件系统放到烧写器里面,其他的镜像使用原来的即可,只需要替换文件系统,然后烧写测试,启动成功如下图(没有界面)所示:
好物推荐-迅为imx6ull开发板