Mac OS X: FileVault 2在美洲狮10.8下的扩展

Mac OS X: FileVault 2在美洲狮10.8上的扩展

最新发布的美洲狮10.8系统提供了一个FileVault 2功能的改进,管理工具fdesetup。在狮子版本中最新推出的FileVault 2时,它的功能虽然可以完全胜任个人用户对磁盘加密的需求,但是缺少工具用于企业环境中的管理,也就是对于多用户的支持/状态监控/恢复等手段。随着美洲狮的推出,这一弱点也开始被克服了。


这个管理命令fdesetup提供了如下的功能:

  • 打开或关闭FileVault
  • 支持独立的恢复键,或者是统一恢复键,或者两者同时使用
  • 在打开FileVault的电脑上添加/移除多个可登陆用户
  • 得到FileVault电脑上的可登陆用户列表
  • 提供FileVault的加密解密状态

这个命令是一个命令行命令,这样可以为管理员提供灵活的管理方式,无论是远程还是监控,也为FileVault在企业中的应用和管理带来了方便,为系统管理员提高工作效率提供了有效手段,相信,随着管理员们对它的亲近感的提升,也会使更多的企业用户开始接受它。


下面就具体看看它能做什么怎么做

注意因为它对系统的修改,在使用该命令的时候,需要系统管理员权限。


  • . 使用命令行打开FileVault功能,最简单的形式,只需下面的命令:

sudo fdesetup enable

跟着输入FileVault启动时的用户名和密码,如果成功完成,它会给出FileVault恢复键值,系统管理员需要自己妥善保管这个值。

Enter the primary user name: tonyliu
Enter the password for the user 'tonyliu':
==== EFILoginCopyUserGraphics ===
Recover key = 'MMN6-PO7N-RKMG-5MOT-YVT2-8BN3
Please reboot to complete the process.


  • . 通过下面的命令,可以在打开FileVault的同时,添加多个用户:
    sudo fdesetup enable -user username -usertoadd another_username -usertoadd onemore_username随后它会逐个提示管理员,输入每个用户的密码,最后也是给出一个恢复键。这样就可以添加多个用户了。

  • . 对于想更加自动化地添加用户的管理员来说,该命令支持使用特定Plist格式的文件来实现,这个Plist文件的文本格式如下:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Username</key>
<string>username</string>
<key>Password</key>
<string>password</string>
<key>AdditionalUsers</key>
<array>
    <dict>
        <key>Username</key>
        <string>username</string>
        <key>Password</key>
        <string>password</string>
    </dict>
    <dict>
        <key>Username</key>
        <string>username</string>
        <key>Password</key>
        <string>password</string>
    </dict>
</array>
</dict>
</plist>

其中密码都是明码,这个也可能算一个缺点吧。在Property List Editor中更直观地看,如下图:

Mac OS X: FileVault 2在美洲狮10.8下的扩展

要想在命令行中使用该Plist文件,使用命令如下:

sudo fdesetup enable -inputplist < /path/to/FilVault.plist


这样它不会再询问用户密码,而直接给出恢复键后退出。


  • . 关闭FileVault也是很简单:
    sudo fdesetup disable



  • . 打开FileVault之后,添加用户:
    sudo fdesetup add -usertoadd admin

  • 当然它叶支持使用plist文件来添加用户:
    sudo fdesetup add -inputplist < /path/to/filename.plist其中的plist文件格式和上面的相同,而主要用户名被忽略,该用户的密码可以使该用户的密码,也可以使恢复键的值。


  • 使用下面命令可以列出用户列表:
    sudo fdesetup list


  • 使用下面命令删除一个用户:
    sudo fdesetup remove -user username或者是,如果你知道该用户的UUID,也可以:
    sudo fdesetup remove -uuid UUID_here

  • 使用下面命令可以查看当前的FileVault的状态:
    sudo fdesetup status有可能的状态是:

    • 打开状态(FileVault is On.)
    • 正在打开中(Encryption in process: Percent of complete=45)
    • 关闭状态(FileVault is Off.)
    • 重启后打开(FileVault is Off, but need a restart to be enabled.)
    • 重启后关闭(FileVault is Off, but need a restart to finish.)
    • 解密状态(Decryption in process: Percent of complete=45).


相比较Google的椰菜花叶的开原项目(我的以前的blog:Mac: 椰菜花叶和FileVault2),这次Apple提供的工具功能更加完善,不过对于处理恢复键方面,Google的方案思路应该值得借鉴。目前来说,Google的该项目还没有进一步的更新,不知道Google的团队能否在此基础上提供更多的功能。

不知道这个命令在狮子的第5个版本10.7.5中会不会有所支持,对于使用狮子系统的来说,使用椰菜花叶的方法还是一个不错的选择。


Ref: Using fdesetup with Mountain Lion’s FileVault 2