概述
本文讲解如何使用Mac OS下的终端将镜像文件写入移动磁盘,可以用来在Mac下制作Windows的启动盘,也可以在Mac下给Raspberry Pi刷系统。
步骤
首先插入需要使用的U盘/SD卡,使用diskutil list命令查看当前已挂在的卷。
$ diskutil list
可以看到以下结果:
这里我们作为示范的是之前已经刷了Ubuntu系统的U盘,可以看到容量为7.7GB(标称8G),其所对应的设备文件为:/dev/disk4。
使用diskutil unmountDisk卸载该设备(如果是SD卡可以使用命令diskutil unmount)
$ diskutil unmountDisk
命令会运行一小会,然后结果显示为:
再次运行diskutil list确认结果。
$ diskutil list
显示结果为:
现在就可已进入到镜像所在目录,用dd命令将镜像文件写入该磁盘了,注意需要管理员权限。
$ sudo dd bs=10m if=Win_10_1703_Ent_64bit_USST_ENG.ISO of=/dev/disk4
然后就是漫长的写入过程,这个过程是没有反馈的,直到出现写入成功或者失败。
如果写入成功,将会出现如下结果(写入时间非常的漫长~~~~但是请耐心,它真的有在写入~~):
重新插拔后,用diskutil list查看结果:
学习dd命令
用途
用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。
注意:指定数字的地方若以下列字符结尾则乘以相应的数字:b=512;c=1;k=1024;w=2
参数说明
if=文件名:输入文件名,缺省为标准输入。即指定源文件。< if=input file >
of=文件名:输出文件名,缺省为标准输出。即指定目的文件。< of=output file >
ibs=bytes:一次读入bytes个字节,即指定一个块大小为bytes个字节。
obs=bytes:一次输出bytes个字节,即指定一个块大小为bytes个字节。
bs=bytes:同时设置读入/输出的块大小为bytes个字节。
cbs=bytes:一次转换bytes个字节,即指定转换缓冲区大小。
skip=blocks:从输入文件开头跳过blocks个块后再开始复制。
seek=blocks:从输出文件开头跳过blocks个块后再开始复制。
注意:通常只用当输出文件是磁盘或磁带时才有效,即备份到磁盘或磁带时才有效。
count=blocks:仅拷贝blocks个块,块大小等于ibs指定的字节数。
conv=conversion:用指定的参数转换文件。
ascii:转换ebcdic为ascii
ebcdic:转换ascii为ebcdic
ibm:转换ascii为alternate ebcdic
block:把每一行转换为长度为cbs,不足部分用空格填充
unblock:使每一行的长度都为cbs,不足部分用空格填充
lcase:把大写字符转换为小写字符
ucase:把小写字符转换为大写字符
swab:交换输入的每对字节
noerror:出错时不停止
notrunc:不截短输出文件
sync:将每个输入块填充到ibs个字节,不足部分用空(NUL)字符补齐。