Mac OS下的自带虚拟光驱

 找到Mac OS下的ISO双击你就可以把一个ISO挂载到你的文件系统。
  这个Mac OS的本有功能真是强悍。不但可以挂载,甚至于还为你创建一个虚拟光驱的设备文件。
  敲入mount命令就会看到你已经挂载的ISO文件的挂载位置和设备文件。
  经过我的测试发现虽然这个创建的虚拟光驱设备和真正的光驱设备并不一样,比如VLC播放器就不承认它。
  可是一些常见的unix程序甚至linux程序却把它当作真的光驱。尤其是利用libdvdcss/libdvdread的程序。这些库的API都可以用的,可以获取DVD标签,可以解密。就好像真的DVD设备一样.
除了可以双击挂载ISO文件,还可以手动利用命令来做

这个和linux下有点不同。linux,或者甚至unix都是用mount命令就能搞顶,但是经过我的测试发现不太好用,Mac OS下hdiutil这个命令专门做这个。
强大的hdiutil命令可以挂载,烧录,转换IISO文件,它的用法好多几乎专门管理ISO.

手动调用比较简单这里就不说了
但是程序里如果要封装这个命令怎么办,就是说编程调用它怎么办?
最麻烦的就是提取程序的输出信息,其实hdiutil早就为程序调用做了准备。
下边提供一个例子:
hdiutil mount -plist -noverify -noautofsck -nobrowse XXXXXX .iso

这是一个挂载XXXXXX.iso的例子,挂到什么地方没有指定,一般默认就是/Volumes/XXXXXX目录.
最重要的就是:
-plist参数,它可以提供一个xml格式的表单,里边数据应有尽有。包括挂载后的设备文件,挂载后的文件系统位置等等。文档里把这个格式叫做plist format,

还有就是-nobrowse参数,它可以让挂载的文件系统不在Mac OS的比如Finder,一类的程序里边显示.这样子你就可以更放心的在程序里边用它而不用担心用户胡乱卸载了,也增加程序的美观程度

你可能感兴趣的:(Mac,OS)