好咧
就这样吧

Mac 下用一个单独的磁盘分区作为 /Users 的挂载点

/Users 是 Mac 下保存用户数据的默认位置(不知道 Apple 为何要用这个路径,而不是用 UNIX 惯用的 /home),可将其挂载到一个独立的硬盘分区上。
这样做的优点是,全新安装操作系统时,由于 /Users 位于单独的分区上,所以这里的数据不会丢失。

大致步骤是:

  • 创建一个新的磁盘分区,用以单独存放 /Uses 数据。
  • 把原有的 /Users 重命名为 /UsersOld,并创建一个 /Users 目录,作为新分区的挂载点。
  • 编辑 /etc/fstab 以使 OS 自动把新分区挂载到 /Users

以下以 Mavericks 为例。

一、创建一个新的磁盘分区
打开磁盘工具,选中要分区的磁盘(不要选择该磁盘中的分区),点击 Partition Tab。点击左下角的 + 号以创建一个新分区,可以用鼠标托动分区之间的分隔符以可视化的方式调整分区大小,也可在右边 size: 文本框里指定精确的大小。


创建完成后选中新创建的分区,点工具栏里的 Get Info 图标,在打开的窗口里复制下该分区的 UUID,备用。

二、启用 root 用户
由于下面要更改 /Users 的挂载点,所以只能用 root 用户操作(用 sudo 也不行),不能有普通用户登录。因为若有普通用户登录,则 /Users 就会被使用,就不能修改了。
大致过程是,System Preferences -> Users & Groups -> Login Options -> Join… -> Open Directory Utility -> 点击左下角的小锁将其开启 -> Edit 菜单 -> Enable root user. 启用时同时会要求指定 root 的密码。
详细过程请参见 Apple 的 KB: http://support.apple.com/kb/ht1528

三、更改 /Users 的挂载点。
注销所有其他用户,以 root 登录。在登录界面,点 Others,输入用户名为 root, 密码为启用 root 时指定的密码。
打开终端,指执行以下命令(不带开头的 # 号):

  1. # mv /Users /UsersOld
  2. # mkdir /Users
  3. # chown -R root:admin /Users
  4. # chmod -R 755 /Users
复制代码

第一条命令把现有的 /Users 重命名。
第二条命令创建一个新的 /Users 以作为新创建的分区的挂载点。
第三条命令修改 /Users 的拥有者及用户组。
第四条命令修改 /Users 的权限。
打开磁盘工具,确保之前新创建的磁盘分区是 unmount 的。若未 unmount,可以用工具栏的工具将其 unmount. 
若忘了它的 UUID,还可以在这里将其复制下来。

四、使新分区自动挂载到 /Users
如果你的系统中存在 /etc/fstab 文件(默认是没有这个文件的),记得将其备份:

  1. # cp /etc/fstab /etc/fstab.bak
复制代码

若你会用 vi 编辑器,可执行以下命令修改 /etc/fstab 文件(推荐,因为据说这样更完全):

  1. # vifs
复制代码

若你不会用 vi,则用自带的 TextEditor 也行:

  1. # touch /etc/fstab
  2. # open -a TextEdit /etc/fstab
复制代码

用 TextEdit 编辑的话记得在 Format 菜单里使用纯文本编辑方式。
在 /etc/fstab 末尾添加以下内容:

  1. UUID=<UUID> /Users hfs auto
复制代码

把 <UUID> 换成你之前复制的该分区的 UUID,注意等号两边不要有空格。我的 /etc/fstab 文件的内容是这样的:

  1. #
  2. # Warning - this file should only be modified with vifs(8)
  3. #
  4. # Failure to do so is unsupported and may be destructive.
  5. #

  6. UUID=AB604263-E5FA-311B-BDD9-463A784892F3 /Users hfs auto
复制代码

编辑好后保存,然后打开磁盘工具,挂载该分区。成功的话,该分区的挂载点就应该是 /Users 了(看左下角的 Mount Point):

 
五、善后处理
在 Finder 里定位到 /Users -> Get Info -> 确保最下面 Sharing & Permissions 组中的 “Ignore ownership on this volume” 没有被选中。
你也可以把 /UsersOld 下面的内容搬迁到新的 /Users 下面,命令是:

  1. # mv /UsersOld/* /UsersOld/.[^.]* /Users/
  2. # rmdir /UsersOld 
复制代码

更多善后工作请参考 http://lnx2mac.blogspot.com/2010/09/moving-os-x-users-to-separate-partition.html (需要 FQ,这也是本文的来源)

更新 /Users 后的影响
简而言之,存若你没有把旧的 /Users 下的数据搬迁到新位置(旧数据还存在,而不是删除了),那么使用存储在这里的数据的程序都会受到影响。比如 Safari 的浏览历史被清空,iCould 要重新登录,大部分程序的个人偏好设置被重置……
我只把 ~/Documents, ~/Downloads等处的个人数据有选择地搬迁了,没有搬迁个人偏好设置,结果再启动 iBooks 时它就抽风了:


我都点了 Reset Library 了,它还要退出。后来我就把它提示的位置的文件也搬迁过来,它就好了。所以如果你没有搬迁数据,那么建议你先把 /UsersOld 下的数据保留,使用一段时间看所有程序都正常了再删除。


相关推荐

最新回复