Utilisez debootstrap pour construire et créer un système de fichiers rootfs Debian aarch64/arm64
- Installez debootstrap et qemu-user-static
- Construisez le système Debian 10 (buster), le paquet de base est minbase, en utilisant la source de l'Université Tsinghua :
- copier qemu
- changer de source
- Configurez les informations réseau :
- Configurer les informations système
- Montez les fichiers de périphériques locaux sur rootfs :
- Configuration dans `chroot rootfs` :
- exécuter en rootfs
- derniers préparatifs
- Paquet
Installez debootstrap et qemu-user-static
apt install apt-transport-https qemu qemu-user-static binfmt-support debootstrap
Construisez le système Debian 10 (buster), le paquet de base est minbase, en utilisant la source de l'Université Tsinghua :
Si vous souhaitez utiliser d'autres sources, il est recommandé de remplacer la source de votre système local par celle correspondante, puis update
de télécharger pour mettre à jour les key
fichiers et correspondants
variant
illustrer
- minbase : contient uniquement les packages nécessaires et apt ;
- buildd : Contient la boîte à outils de construction
- fakechroot : contient des packages sans privilèges root
- scratchbox : contient les packages liés à scratchbox (chaîne d'outils de compilation croisée)
qemu-debootstrap --arch arm64 --variant=minbase --include=whiptail,ca-certificates,tzdata buster rootfs http://mirrors.ustc.edu.cn/debian/
- Il en va de même si vous souhaitez créer un système Ubuntu. Regardez les miroirs pris en charge dans http://mirrors.ustc.edu.cn
qemu-debootstrap --arch arm64 --variant=minbase --include=whiptail,ca-certificates,tzdata bionic rootfs http://mirrors.ustc.edu.cn/ubuntu-ports/
Une fois l'exécution terminée, il devrait y avoir un dossier rootfs dans le répertoire actuel
copier qemu
cp /usr/bin/qemu-aarch64-static rootfs/usr/bin
changer de source
sed -i 's#http://deb.debian.org#http://mirrors.ustc.edu.cn#g' rootfs/etc/apt/sources.list
# 原始源
sed -i 's#http://ports.ubuntu.com#http://mirrors.ustc.edu.cn#g' rootfs/etc/apt/sources.list
Configurez les informations réseau :
$ echo 'nameserver 192.168.2.1' > rootfs/etc/resolv.conf
$ mkdir rootfs/etc/netplan
$ cat > rootfs/etc/netplan/50-cloud-init.yaml <<EOF
network:
ethernets:
eth0:
dhcp4: no
addresses: [192.168.168.6/24]
gateway4: 192.168.168.1
nameservers:
addresses: [192.168.168.1]
version: 2
EOF
Configurer les informations système
echo 'Debian10' > rootfs/etc/hostname
echo "127.0.0.1 localhost" > rootfs/etc/hosts
echo "127.0.0.1 Debian10" >> rootfs/etc/hosts
Montez les fichiers de périphériques locaux sur rootfs :
mount -t proc /proc rootfs/proc
mount -t sysfs /sys rootfs/sys
mount -o bind /dev rootfs/dev
mount -o bind /dev/pts rootfs/dev/pts
chroot rootfs
Paramétrage interne :
LANG=zh_CN.UTF-8 chroot rootfs/ /bin/bash
exécuter en rootfs
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
apt update
apt upgrade
apt install systemd -y
apt install wireless-regdb crda -y
apt install rsyslog udev dbus kmod openssh-server openssh-client netplan.io man vim wget net-tools sysstat tmux less wireless-regdb crda dosfstools parted sudo git iputils-ping -y
#你还可以安装其他的工具
- Ceux qui ont besoin d'une chaîne d'outils peuvent exécuter la commande suivante
apt install gcc g++ -y (或者选择buildd的包)
echo 'PermitRootLogin yes' >> /etc/ssh/sshd_config
derniers préparatifs
passwd root
umount /dev/pts/ /dev/ /proc/ /sys
exit
- Si vous devez ajouter des utilisateurs, utilisez
useradd -m debian -g sudo -s /bin/bash -d /home/debian
Ici, vous pouvez graver et écrire sur la carte
Après avoir quitté, emballez-la
Définissez éventuellement le réseau DHCP
cat > /etc/netplan/50-cloud-init.yaml <<EOF
network:
ethernets:
eth0:
dhcp4: yes
version: 2
EOF
Paquet
cd rootfs
tar jcvf ../rootfs.tar.bz2 *