Milkv Duo 的 Debian 移植笔记

/ 0评 / 6

其实移植Debian说容易也挺容易的,说麻烦也有点麻烦,主要还是Debian官方目前仍未官方支持,大部分软件也还没支持.

我的操作环境在Ubuntu 22.04,下载环境依赖,然后制作rootfs.

sudo apt install debootstrap qemu qemu-user-static qemu-system qemu-utils qemu-system-misc binfmt-support dpkg-cross debian-ports-archive-keyring --no-install-recommends
sudo debootstrap --exclude vim --arch=riscv64 --foreign --keyring /usr/share/keyrings/debian-ports-archive-keyring.gpg --include=debian-ports-archive-keyring sid ./rootfs http://deb.debian.org/debian-ports

制作后直接chroot进去继续.

sudo cp -rf /usr/bin/qemu-riscv64-static rootfs/usr/bin/
sudo chroot rootfs/
/debootstrap/debootstrap --second-stage --exclude vim

安装软件和配置.

cat >/etc/apt/sources.list <<EOF
deb http://ftp.ports.debian.org/debian-ports sid main
deb http://ftp.ports.debian.org/debian-ports unstable main
deb http://ftp.ports.debian.org/debian-ports unreleased main
deb http://ftp.ports.debian.org/debian-ports experimental main
EOF

apt-get update
apt-get install -y util-linux haveged openssh-server systemd kmod initramfs-tools conntrack ebtables ethtool iproute2 iptables mount socat ifupdown iputils-ping neofetch sudo chrony pciutils

mkdir -p /etc/network
cat >/etc/network/interfaces <<EOF
auto lo
iface lo inet loopback

auto end0
iface end0 inet dhcp
EOF

cat >/etc/resolv.conf <<EOF
nameserver 1.1.1.1
nameserver 8.8.8.8
EOF

cat >/etc/fstab <<EOF
/dev/root / ext2 rw,noauto 0 1
proc /proc proc defaults 0 0
devpts /dev/pts devpts defaults,gid=5,mode=620,ptmxmode=0666 0 0
tmpfs /dev/shm tmpfs mode=0777 0 0
tmpfs /tmp tmpfs mode=1777 0 0
tmpfs /run tmpfs mode=0755,nosuid,nodev 0 0
sysfs /sys sysfs defaults 0 0
EOF

echo "root:riscv" | chpasswd

apt-get clean
rm -rf /var/cache/apt/

这部分完成了,开始霍霍内核,首次构建后进入SDK环境.输入命令menuconfig_kernel配置内核,打开CGROUP.

TIMERFD,SIGNALFD这些都是systemd需要的,也要打开.

这里还可以自行附加其他配置了,比如LED闪烁工具.

修改分区,把最后的丢掉,然后扩展第二分区.

修改dts把内存也都让出来(我这里把蓝色LED也用内核接管了吧!).

然后用常规build,最后先烧录一次,最后把刚才rootfs复制过去,就全部完成了.

[镜像,我就懒得放了,不然还要麻烦售后,毕竟我又不赚钱,知道怎么搜的人自然能搜到我传的镜像]

启动记录.

体验,一言难尽.

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注