XCY-3288 编译 Ubuntu 根文件系统

编译 Ubuntu 根文件系统

环境:

  • Ubuntu 16.04 amd64

安装依赖包:

sudo apt-get install qemu qemu-user-static binfmt-support debootstrap

下载 Ubuntu core:

wget -c http://cdimage.ubuntu.com/ubuntu-base/releases/16.04.1/release/ubuntu-base-16.04.1-base-arm64.tar.gz

创建一个大小为 1000M 的根文件系统映像文件,并使用 Ubuntu 的基础包去初始化:

fallocate -l 1000M rootfs.img
sudo mkfs.ext4 -F -L ROOTFS rootfs.img
mkdir mnt
sudo mount rootfs.img mnt
sudo tar -xzvf ubuntu-base-16.04.1-base-arm64.tar.gz -C mnt/
sudo cp -a /usr/bin/qemu-aarch64-static mnt/usr/bin/

qemu-aarch64-static是其中的关键,能在 x86_64 主机系统下 chroot 到 arm64 文件系统:

Chroot 到新的文件系统中去并初始化:

sudo chroot mnt/# 这里可以修改设置USER=fireflyHOST=firefly# 创建用户useradd -G sudo -m -s /bin/bash $USERpasswd $USER# 输入密码# 设置主机名和以太网echo $HOST > /etc/hostnameecho "127.0.0.1    localhost.localdomain localhost" > /etc/hostsecho "127.0.0.1    $HOST" >> /etc/hostsecho "auto eth0" > /etc/network/interfaces.d/eth0echo "iface eth0 inet dhcp" >> /etc/network/interfaces.d/eth0echo "nameserver 127.0.1.1" > /etc/resolv.conf# 使能串口ln -s /lib/systemd/system/serial-getty\@.service /etc/systemd/system/getty.target.wants/serial-getty@ttyS0.service# 安装包apt-get update
apt-get upgrade
apt-get install ifupdown net-tools network-manager
apt-get install udev sudo ssh
apt-get install vim-tiny

卸载文件系统:

sudo umount rootfs/

Credit: bholland

参考



                   方案定制                      产品介绍                             开发教程

                     智能语音                                       智能家居                                               入门教程

                     广告主板                                       数据终端                                               驱动开发

                     全能主板                                       智能车载                                               资源下载


深圳市新创云智能科技有限公司

致力于rockchip主流平台的软硬件解决方案

最快联系方式:

QQ-7643066

TEL-13632965530(微信同号)

Copyright © 2021 深圳市新创云智能科技有限公司 版权所有 粤ICP备2023031351号
咨询热线:
13632965530
在线客服:
QQ:7643066
微信客服:
公司官网: