环境:
HelperA64开发板
Linux3.10内核
时间:2019.02.14
目标:定制ubuntu-core rootfs镜像
参考这篇文章:http://dev.t-firefly.com/thread-10963-1-1.html
- 下载最新的ubuntu-core,然后在下面目录解压。
sudo apt-get install qemu-user-static
然后输入命令:
sudo cp /usr/bin/qemu-aarch64-static rootfs/usr/bin/
再下载ch-mount.sh脚本,重命名为mount.sh,
然后就可以就可以运行虚拟根文件系统了。
退出虚拟根文件系统的时候我们先敲exit,然后输入./mount.sh -u rootfs。
注:如果退出虚拟根文件系统没有执行./mount.sh -u rootfs而重复执行执行./mount.sh -m rootfs。将会导致系统出故障,只能重新启动电脑,然后才能进入虚拟根文件系统。
2 安装软件之前需要拷贝PC主机端网络配置到虚拟根文件系统中。然后进入虚拟根文件系统后可以安装软件了。命令如下:
sudo cp -b /etc/resolv.conf rootfs/etc/resolv.conf
下载最基本的软件。
apt update
apt install wget udev kmod iproute2 net-tools systemd vim
设置好root权限的密码命令为:passwd root
然后执行下图代码,每一次退出虚拟根文件系统都要执行chown
3 原有的设备文件不可写,所以编译打包会出错,打包不了,然后删除。
然后将extra目录中init重新mount到/sbin/init中:
4 最后回到lichee目录下执行下列命令行编译打包为img镜像文件。
./build.sh && ./build.sh pack
注:这里是HelperA64开发板打包方法,参考HelperA64手册中制定ubuntu-mate一样,将内存扩大到4G。如果没有开发板的可以使用上述参考链接文章中dd工具创建镜像文件。
做好上面步骤后,通过串口可以看到登陆界面了。
5 第一次运行要执行一下:depmod –a,然后重启,就会加载相应的模块。
接下来就是替换源:以root身份打开 /etc/apt/sources.list,将 http://ports.ubuntu.com/ 全部替换为中科大的源 http://mirrors.ustc.edu.cn/ubuntu-ports/。Vi进入sources.list时,命令行模式下输入下面命令一键替换源:
:%s/ ports.ubuntu.com /mirrors.ustc.edu.cn/g
然后设置网络网管,打开网络,vi进入修改nameserver 为192.168.0.1,
ping一下,检查是否通畅。
然后输入 sudo apt-get update和 sudo apt-get upgrade 测试
注:要设置一下正确的系统时间date -s "2019-02-14 14:15:00" ,否则有可能不能执行apt update。
6 最后安装必要的工具:
apt-get install language-pack-en-base sudo ssh ethtool \
wireless-tools ifupdown network-manager iputils-ping rsyslog \
bash-completion htop lrzsz --no-install-recommends
7 如果你在第二步时已经安装了第七步程序。这里你就可以输入下面命令
重启之后再lsmod查看一下模块:
最后输入dhclient,这时自动打开网络,不用设置,ping一下检查网络是否通畅。然后再将源替换掉。
8先安装lightdm:
apt-get install lightdm
然后lightdm程序装完后,给系统增加一个叫ubuntu的管理员帐号:
useradd -s ‘/bin/bash‘ -m -G adm,sudo ubuntu
passwd ubuntu
9 最后就是安装桌面环境,我自己装的是Xfce。安装完后直接登陆。
sudo apt-get install --no-install-recommends xubuntu-desktop -y
安装桌面参考一下链接: