shell高级用法——磁盘管理 创建虚拟的磁盘映射到一个文件

目的:

没有真实的物理磁盘(硬盘、U盘、sd卡)等,但又想做一个包含几个分区的跟磁盘使用起来一样的块设备。

 

用途:

如果每插一张SD卡都要去创建分区、用特定文件系统格式化,再挂载、再拷贝文件, 太繁琐,一张卡还好,那有一千张卡呢?这4步会涉及到十多条命令,一千张卡就要执行40000条命令,好吓人。(不要跟我说写个自动化脚本实现,机器照样要转40000次,能给机器减负何必累死他呢)

这时我们就可以先创建一个一个文件,把这个文件映射到虚拟磁盘,再对磁盘创建分区,然后格式化,然后挂载,然后拷入文件,这样复杂的操作仅仅只需要做一次,而后这些文件系统信息、分区信息、文件内容就都在那个被映射的镜像文件中了,新来的SD卡直接用dd命令将整个镜像覆盖进去就都OK了。因为分区和格式化的本质就是在SD卡的某些区域写入特定的字节数据,这些数据是文件头、分区表描述等等,而这些本质就是字节块,而镜像文件就是这个字节块。

 

实施:

声明:以下截图转载于知乎,侵删

 

posted @ 2021-08-03 16:35  云鹤比天  阅读(325)  评论(0编辑  收藏  举报