我一直在研究一个ramdisk模板,用于在裸机服务器的RAM上运行一个完整的根文件系统(通过IPMI,因此没有物理访问),通过PXE引导。 我用debootstrap
来创build一个Ubuntu的可靠文件系统,并应用一些修改。 服务器成功启动并将根文件系统挂载到/ dev / ram0,但是,networking永远不会出现,并且login提示不响应键盘input。
以下是我遵循的步骤:
1)创build一个rootfs文件
dd if=/dev/zero of=rootfs bs=1k count=$((768 * 1024))
2)创build一个ext3文件系统
mkfs.ext3 -m0 -F -L root rootfs
3)创build一个安装点
mkdir /root/rootfs/
4)挂载
mount -t ext3 -o loop rootfs /root/rootfs
5)Debootstrapping Ubuntu可靠
debootstrap --arch=amd64 trusty /root/rootfs
6)chroot / root / rootfs
chroot /root/rootfs
7)vi / etc / fstab
/dev/ram0 / ext2 defaults 0 0 proc /proc proc defaults 0 0 none /tmp tmpfs defaults 0 0 none /var/run tmpfs defaults 0 0 none /var/lock tmpfs defaults 0 0 none /var/tmp tmpfs defaults 0 0
8)/ etc / network / interfaces
auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp
9)其他一些修改
......
10)卸载并压缩图像
gzip -c rootfs | dd of=/path/to/webserver/rootfs.gz
11)将内核复制到networking服务器
cp /boot/vmlinuz-$(uname -r) /path/to/webserver/
提前致谢
尝试添加
5.1)
# cp /etc/hostname /root/rootfs/etc/ # cp /etc/hosts /root/rootfs/etc/
6)
# mount --bind /dev /root/rootfs/dev # mount --bind /proc /root/rootfs/proc # mount --bind /sys /root/rootfs/sys # chroot /root/rootfs/ /bin/bash --login
资源