1、现有Alinx的根文件系统时debian8的已经很老了因此本人做了一个新的根文件系统debian10尽管debian10也于2024年停止了维护但本文也是发出来给大家一个思路。2、本文打包系统是Ubuntu16.04很老debian10很老petalinux2019.2linux4.19 很老但本文打包的根文件系统完美支持2019年以后的所有linux内核。3、安装依赖工具并创建工作目录sudo apt update sudo apt install -y debootstrap qemu-user-static binfmt-support # 切换到你的debian打包工程目录 cd 你的工程目录 mkdir -p rootfs_debian cd rootfs_debian4、下载镜像源必须使用163的源别的源都没了# 如果是 cortex A53处理器 sudo debootstrap --no-check-gpg --no-check-certificate --archarm64 --foreign buster debian-rootfs http://mirrors.163.com/debian-archive/debian/ # 如果是 cortex A9处理器 sudo debootstrap --no-check-gpg --no-check-certificate --archarmhf --foreign buster debian-rootfs http://mirrors.163.com/debian-archive/debian/1如果遇到“could not download package xxxx”的问题2等最后全部下载完后会提示所有没成果下载的包3下载所需要的包并重新执行下载程序# 多次执行 debootstrap它会自动检测到已下载未下载的会重新下载 # 如果是 cortex A53处理器 sudo debootstrap --no-check-gpg --no-check-certificate --archarm64 --foreign buster debian-rootfs http://mirrors.163.com/debian-archive/debian/ # 如果是 cortex A9处理器 sudo debootstrap --no-check-gpg --no-check-certificate --archarmhf --foreign buster debian-rootfs http://mirrors.163.com/debian-archive/debian/5、安装# 如果是A53处理器则执行 sudo cp /usr/bin/qemu-aarch64-static debian-rootfs/usr/bin/ # 如果是A9处理器则执行 sudo cp /usr/bin/qemu-arm-static ./debian-rootfs/usr/bin/ # 然后执行 sudo chroot debian-rootfs /debootstrap/debootstrap --second-stage成功后会有提示6、进入系统sudo chroot debian-rootfs7、配置系统环境注意要一行一行复制不要一下子全部复制会出错# 设置主机名 echo zu19eg-debian /etc/hostname # 配置 hosts echo 127.0.0.1 localhost /etc/hosts echo 127.0.1.1 zu19eg-debian /etc/hosts # 配置 APT 源Debian 10 163源 cat /etc/apt/sources.list EOF deb http://mirrors.163.com/debian-archive/debian/ buster main contrib non-free deb http://mirrors.163.com/debian-archive/debian-security/ buster/updates main contrib non-free deb http://mirrors.163.com/debian-archive/debian/ buster-updates main contrib non-free EOF # 更新软件源 apt clean apt update --allow-unauthenticated -y8、必要的包请看我之前博客第7部分https://blog.csdn.net/qq_37912811/article/details/152000590?spm1001.2014.3001.5502https://blog.csdn.net/qq_37912811/article/details/152000590?spm1001.2014.3001.55029、安装必备系统工具ZU19EG 启动必需apt install -y sudo ntpdate ssh net-tools haveged ethtool iproute2 ifupdown \ systemd udev rsyslog kmod e2fsprogs parted10、创建 root 密码必须设置passwd root # 输入两次密码例如root # 修复权限关键 chown root:root /etc/shadow chmod 640 /etc/shadow # 强制设置密码 passwd root11. 配置网络开机自动联网cat /etc/network/interfaces EOF auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp EOF12、启用 SSH 远程登录systemctl enable ssh sed -i s/#PermitRootLogin prohibit-password/PermitRootLogin yes/ /etc/ssh/sshd_config13、退出 chroot 环境exit14、清理缓存、减小体积最后确认无误了再用sudo chroot debian-rootfs apt clean sudo rm -f debian-rootfs/var/cache/apt/archives/*.deb sudo rm -f debian-rootfs/usr/bin/qemu-aarch64-static15、打包为 PetaLinux 支持的rootfs.tar.gzcd debian-rootfs sudo tar -czvf ../rootfs.tar.gz * cd ..16、bug修复进入系统后需要执行命令chown root:root / chmod 755 / ntpdate -u pool.ntp.org systemctl enable haveged --now apt update17、如果开机一直无法以root进入系统那么请执行以下步骤# 启动时需要通过 U-Boot 进入单用户模式 setenv bootargs consolettyPS0,115200 root/dev/mmcblk0p2 rw rootwait init/bin/sh # 启动 boot # 重新挂载根文件系统为读写 mount -o remount,rw / # 注释掉 /etc/pam.d/login 中的 pam_securetty.so 行 sed -i s/^\(auth.*pam_securetty.so\)/# \1/ /etc/pam.d/login # 同步并重启 sync reboot -f18、下面是已经打包好的debian10根文件系统欢迎大家下载不要吝啬大家的小星星哦https://github.com/qwer872336019/zynq_rootfs_epics_tcf/tree/masterhttps://github.com/qwer872336019/zynq_rootfs_epics_tcf/tree/master