概览
# 1.创建新文件 rootfs.ext2
dd if=/dev/zero of=rootfs.ext2 bs=1M count=256
# 2.将 rootfs.ext2 文件格式化为 ext2 格式
mkfs.ext2 rootfs.ext2
# 3.挂载 rootfs.ext2 到 rootfs
mount rootfs.ext2 rootfs/
# 4.将根文件系统的内容复制到 rootfs.ext2 中
# 5.解挂 rootfs
umount rootfs
详解
1. 创建新文件 rootfs.ext2
dd if=/dev/zero of=rootfs.ext2 bs=1M count=256
/dev/zero
:特殊的设备文件,代表一个永远输出 0 的设备文件,使用它作为输入可以得到全为空的文件。因此可以用来创建新文件。rootfs.ext2
:要制作镜像的名称。可任取!rootfs.ext2
:要制作镜像的名称。可任取!count
:拷贝块数,块大小为上述bs
。和bs
参数配合,就可以确定镜像的容量大小。这个根据你制作的根文件系统大小来。大小不够容纳会报错。
2. 将 rootfs.ext2
文件格式化为 ext2
格式
mkfs.ext2 rootfs.ext2
将 rootfs.ext2
文件格式化为ext2
格式。此时该文件才是真正的 ext2
格式镜像文件,可以用 file
命令查看。
3. 挂载 rootfs.ext2
到 rootfs
mount rootfs.ext2 rootfs/
新建文件 rootfs
(文件名任意)。并挂载 rootfs.ext2
镜像到 rootfs
。
挂载的目的是为了操作镜像文件,往其中填充内容
4. 将根文件系统的内容复制到 rootfs.ext2
中
将根文件系统的内容复制到 rootfs
中,可能会提示需要权限,需要加 sudo
5. 解挂 rootfs
umount rootfs