CPU:RK3288
1、通过 ubuntu cdimage 下载 ubuntu16.04 内核,以下两种方式都可以
在 windows 系统网页中下载
http://cdimage.ubuntu.com/ubuntu-base/releases/16.04/release
版本:ubuntu-base-16.04-core-armhf.tar.gz
在 linux 系统中通过指令下载
$ wget http://cdimage.ubuntu.com/ubuntu-base/releases/16.04/release/ubuntu-base-16.04-core-armhf.tar.gz
2、解压
$ mkdir linux-rootfs $ sudo tar -xpf ubuntu-base-16.04-core-armhf.tar.gz -C linux-rootfs
3、在电脑的 ubuntu 系统中安装模拟器并拷贝到根文件系统
$ sudo apt-get install qemu-user-static $ sudo cp /usr/bin/qemu-arm-static linux-rootfs/usr/bin/
4、拷贝本地dns文件到根文件系统
$ sudo cp -b /etc/resolv.conf linux-rootfs/etc/resolv.conf
5、打开根文件系统中的 linux-rootfs/etc/apt/sources.list 修改安装包源
$ sudo vim linux-rootfs/etc/apt/sources.list
将屏蔽的源全部打开
6、下载挂载脚本,解压并赋可执行权限,如果已经具有可执行权限,就无需在赋权限
链接:https://pan.baidu.com/s/1R3BpXwOdDd3ws6qCP8nz8w
提取码:ct1i
$ sudo chmod +x ch-mount.sh
7、挂载根文件系统
$ ./ch-mount.sh -m linux-rootfs
8、更新根文件系统
# apt-get update
# apt-get upgrade
更新时可能出现下面的问题:
perl: warning: Setting locale failed. perl: warning: Please check that your locale settings: LANGUAGE = "en_US:", LC_ALL = (unset), LANG = "en_US.UTF-8" are supported and installed on your system. perl: warning: Falling back to the standard locale ("C").
解决办法参考:https://www.cnblogs.com/lialong1st/p/11350951.html
Current default time zone: 'Etc/UTC' Local time is now: Wed Aug 14 02:57:01 UTC 2019. Universal Time is now: Wed Aug 14 02:57:01 UTC 2019. Run 'dpkg-reconfigure tzdata' if you wish to change it.
这个其实不是错误,如果需要,可以根据提示指令 dpkg-reconfigure tzdata 修改时区,根据每一步提示选择即可。
9、安装自己需要的工具包,安装过程可能报错,参考:https://www.cnblogs.com/lialong1st/p/11352979.html
# apt-get install vim git openssh-server sudo net-tools iputils-ping wireless-tools udev # apt-get install htop rsyslog network-manager ifupdown ethtool
# apt-get install florence // 虚拟键盘,无触摸屏的建议安装
安装登录界面、显示界面,这一步特别耗时间
# apt-get install ubuntu-session xubuntu-desktop
10、选择启动界面
# update-alternatives --config x-session-manager
11、配置默认登录界面
# dpkg-reconfigure lightdm
12、配置网络
# echo auto eth0 > etc/network/interfaces.d/eth0 # echo iface eth0 inet dhcp >> etc/network/interfaces.d/eth0 # echo auto wlan0 > etc/network/interfaces.d/wlan0 # echo allow-hotplug wlan0 > etc/network/interfaces.d/wlan0 # echo iface wlan0 inet dhcp >> etc/network/interfaces.d/wlan0
13、修改文件系统主机名称
# vim /ect/hostname
14、添加一个用户 aaron
# useradd -s '/bin/bash' -m -G adm,sudo aaron
15、给用户 aaron 设置密码
# passwd aaron
16、给 root 设置密码
# passwd root
17、退出脚本
# exit
18、退出挂载根文件系统
$ ./ch-mount.sh -u linux-rootfs
19、使用 dd 指令创建镜像文件
$ dd if=/dev/zero of=linux-rootfs.img bs=1M count=4096
20、格式化镜像文件,并加入卷标 linuxroot
$ sudo mkfs.ext4 -F -L linuxroot linux-rootfs.img
21、挂载镜像文件,并拷贝根文件系统到镜像文件
$ mkdir mnt $ sudo mount linux-rootfs.img mnt/ $ sudo cp -rfp linux-rootfs/* mnt/
22、退出挂载文件,
$ sudo umount mnt
23、检查镜像文件
$ sudo e2fsck -p -f linux-rootfs.img
24、瘦身,减小镜像文件大小
$ sudo resize2fs -M linux-rootfs.img
$ sudo du -sh linux-rootfs.img