linux mkfs dev ram,linux – 在RAM中创建块设备

我的日常任务之一是使用我们的软件创建USB pendrive的可启动映像.图像必须由两个分区组成,第一个用FAT32格式化,第二个用EXT3格式化.首先,我们将

Linux内核和一个小的启动脚本放在我们要启动的设备上的bootloader上,并在启动时读取.

在第二个分区,我们放置了rootfs.

现在,我是这样做的:

>将USB pendrive插入我的Linux comp.弄清楚它的设备文件(这里让我们假设/ dev / sdx)

>将其前600 MB清零:dd if = / dev / zero of = / dev / sdx bs = 1M count = 600

>创建两个分区,前10 MB和后500 MB:

sfdisk / dev / sdx –unit S<< EOF

,20000,C

,1000000,83

EOF

mkfs.vfat / dev / sdx1

mkfs.ext3 / dev / sdx2

(假设扇区大小为512字节!)

>将内核和启动脚本复制到/ dev / sdx1

>将预编译的RootFS解压缩到/ dev / sdx2

>将现成的图像从USB pendrive复制回我们的硬盘:

dd if = / dev / sdx of = usb.img bs = 1M count = 520

>压缩并发送给测试该软件的人员.

>然后人们解压缩,用USB闪存

dd if = usb.img = / dev / sdx

插入他们的设备并进行测试.

现在,所有这些都有效.显而易见的改进是创建一个可以自动执行此操作的脚本.这也可以完成,但仍会保留一个手动步骤:插入USB pendrive.

我想的不是实际的USB磁盘,而是我们可以在RAM中使用块设备.这不仅会消除插入USB磁盘的手动步骤,而且会更快.

所以我需要的是RAM中的普通块设备.可以像物理USB pendrive一样拆分成分区的一个.

我只是研究了这个主题,似乎是唯一的选择

> tmpfs和ramfs,显然不适合我

> ramdisk和’brd’内核模块,加载后会创建许多“分区”:

的/ dev / RAM [0-15]

并且它们中的每一个都可以单独进行格式化和使用,但就像我说的那样 – 我想在RAM中使用一个普通的块设备,然后我将自己分成10MB和500MB的两个分区,然后从那里我可以得到一个图像到我硬盘上的文件.

我有什么选择?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值