shell高级用法——磁盘管理 创建虚拟的磁盘映射到一个文件
目的:
没有真实的物理磁盘(硬盘、U盘、sd卡)等,但又想做一个包含几个分区的跟磁盘使用起来一样的块设备。
用途:
如果每插一张SD卡都要去创建分区、用特定文件系统格式化,再挂载、再拷贝文件, 太繁琐,一张卡还好,那有一千张卡呢?这4步会涉及到十多条命令,一千张卡就要执行40000条命令,好吓人。(不要跟我说写个自动化脚本实现,机器照样要转40000次,能给机器减负何必累死他呢)
这时我们就可以先创建一个一个文件,把这个文件映射到虚拟磁盘,再对磁盘创建分区,然后格式化,然后挂载,然后拷入文件,这样复杂的操作仅仅只需要做一次,而后这些文件系统信息、分区信息、文件内容就都在那个被映射的镜像文件中了,新来的SD卡直接用dd命令将整个镜像覆盖进去就都OK了。因为分区和格式化的本质就是在SD卡的某些区域写入特定的字节数据,这些数据是文件头、分区表描述等等,而这些本质就是字节块,而镜像文件就是这个字节块。
实施:
声明:以下截图转载于知乎,侵删