ubuntu文件系统的制作
1. 准备环境
1.1. 下载Ubuntu包
https://mirrors.bfsu.edu.cn/ubuntu-cdimage/ubuntu-base/releases/20.04.3/release/

进入上述网站下载所需的Ubuntu版本,注意下载arm版本的。下载之后在buildroot下面创建一个Ubuntu目录,将下载的下载Ubuntu包解压到该目录下
1 | tar -xvf ubuntu-base-20.04.2-base-arm64.tar.gz -C ./ubuntu |

1.2. 配置Ubuntu环境
安装qemu模拟器
1 | sudo apt-get update |
Ubuntu源
可以不用更换,直接使用默认的即可。如果使用update有失败有可能跟网络不稳定有关系,可以多试几次确认。下面贴上编写本文档使用的源和
https://www.cnblogs.com/smlile-you-me/p/17727308.html
配置网络环境
1 | cp /etc/resolv.conf ubuntu/etc/resolv.conf |
进入根文件系统进行操作
在进入之前需要先进行一些挂载操作,见下面脚本
1 | !/bin/bash |
挂载:mount.sh -m ubuntu/
卸载:mount.sh -u ubuntu/
注意:退出之后记得取消挂载并需要确认有卸载成功
1 | sudo chroot ubuntu/ |
切换到下载的 ubuntu 最小文件系统后,执行如下命令,安装一些常用工具:
1.2.1. 更新
1 | apt update |

更新过程中出现上述异常时可以使用下列方法解决:
修改/tmp目录的权限
1 | chmod 777 /tmp |
修改之后重新执行
1 | apt-get update |

报下列错误时:exit退出chroot,然后执行sudo mount –bind /dev {Ubuntu路径}/dev,再重新执行chroot进入到文件系统执行update(建议直接执行上面的挂载脚本整体挂载)
(**注意:**进入Ubuntu文件系统操作完成之后记得退出来卸载 sudo umount {Ubuntu路径}/dev)

成功之后执行apt upgrade,执行过程中会有下列提示,输入Y回车即可


出现上面截图打印没有异常之后表面更新成功,下面可以对工具进行安装
1.2.2. 工具安装
apt-get install -y systemd(至少需要安装一个 systemd,否则开机无法进入系统)
安装过程中出现下面选择:

按照上述截图选择洲和城市,依次选择亚洲(选择Asia对应序号和上海(对应序号)就可以了。
1、安装过程中报下列截图中的异常

解决:执行apt -f install修复依赖关系之后再重新按照一遍即可

2、报下列截图异常

解决:安装下面工具
1 | apt install language-pack-en |
1.2.3. 其他工具安装
根据项目需要安装自己需要的公开即可
1 | apt-get install -y sudo vim git ifupdown net-tools ethtool udev wireless-tools iputils-ping resolvconf wget apt-utils wpasupplicant nano udhcpc initramfs-tools |
1.2.4. 修改fstab文件
使用vi打开 /etc/fstab文件中添加下列内容
1 | /dev/mmcblk0p4 / ext4 rw,relatime 0 1 |

1.2.5. 添加用户及设置密码
- 添加用户
1 | useradd -m -s /bin/bash -d /home/xcs -G sudo EThan(添加名为“EThan”的新用户) |
- 设置用户密码
1 | passwd EThan |
- 设置root用户密码
1 | passwd root |

1.2.6. 制作跟文件系统
退出文件系统
1 | exit |
制作根文件系统

1.3. 安装图形界面
1 | apt-get install xinit |




安装过程中出现下列异常情况:

解决方法
1 | cd /var/lib/dpkg |
执行完之后重新执行 apt upgrade 或者apt -f install

安装桌面启动服务
1 | apt-get install -y lightdm lightdm-gtk-greeter |
安装网络和语言支持
1 | apt-get install -y synaptic |
或者是安装:apt-get install xubuntu-desktop




解决方法:
1 | sudo apt-get install locales |

