无法以读/写方式挂载 hfs 分区

无法以读/写方式挂载 hfs 分区

在 ubuntu 15.10 中,我尝试在启动时挂载 hfs (max osx) 分区。在/etc/fstab我添加了这一行(注意读写选项):

/dev/sda2 /home/mac/mac-mount hfsplus rw,defaults 0 0

重新启动后,驱动器已安装,但我无法在驱动器上创建新内容:

:~/mac-mount/Users/mac-mini/Documents$ touch test.txt
touch: cannot touch ‘test.txt’: Read-only file system

运行 mount 会给我该特定分区的以下内容:

/dev/sda2 on /home/mac/mac-mount type hfsplus (ro,relatime,umask=22,uid=0,gid=0,nls=utf8)

注意它说反渗透. 为什么 hfs 分区没有挂载在读写鉴于/etc/fstab文件在上面?

我还尝试使用以下命令更改挂载点的权限:

~$ sudo chmod o+w mac-mount/
[sudo] password for mac:
chmod: changing permissions of ‘mac-mount/’: Read-only file system

但它给出了上述错误。

更新:根据以下答案,在禁用日记功能后,我现在可以使用写入权限。但出于某种原因,它只在某些文件夹中有效(我设法在文件文件夹)。例如,我甚至不能光盘下载hfs 分区上的文件夹:

drwxr-xr-x 1  501 dialout    17 Dec 29 14:12 .
drwxr-xr-x 1 root      80     6 Oct  6 16:54 ..
drwx------ 1  501 dialout     3 Aug 10  2014 Applications
-rw-r--r-- 1  501 dialout    56 Dec 29 14:12 .bash_history
drwxr-xr-x 1  501 dialout     5 Dec 29 14:12 .bash_sessions
-r-------- 1  501 dialout     7 Feb 14  2015 .CFUserTextEncoding
drwx------ 1  501 dialout     4 Oct 13 18:30 Desktop
drwx---rwx 1  501 dialout    12 Dec 29 14:15 Documents
drwx------ 1  501 dialout     6 Dec 29 14:11 Downloads
-rw-r--r-- 1  501 dialout 14340 Dec 29 14:10 .DS_Store
drwx------ 1  501 dialout    52 Oct  6 17:13 Library
drwx------ 1  501 dialout     3 Aug 10  2014 Movies
drwx------ 1  501 dialout     5 Sep 13  2014 Music
drwxr-xr-x 1  501 dialout     3 Oct 28 11:34 .oracle_jre_usage
drwx------ 1  501 dialout     8 Apr 17  2015 Pictures
drwxr-xr-x 1  501 dialout     5 Aug 10  2014 Public
drwx------ 1  501 dialout     6 Dec 27 01:49 .Trash
:~/mac-mount/Users/mac-mini$ cd Downloads/
-bash: cd: Downloads/: Permission denied
:~/mac-mount/Users/mac-mini$ cd Documents/
:~/mac-mount/Users/mac-mini/Documents$

那么为什么我可以 cd 到文件但不是下载文件夹?我直接使用 mac-mini 时没有修改任何权限。

答案1

您可以在 Ubuntu 中以默认只读权限挂载此文件系统。如果您需要读写权限,则必须先禁用 OS X 的日志功能,然后才能继续。

您可以使用以下方式识别卷:

sudo diskutil list

并记下类型为“Apple_HFS”的卷,通常名为“Macintosh HD”

要在 OSX 中禁用日志功能,请在终端中输入:

sudo diskutil disableJournal volumeName

如果您想以非 root 用户身份以 rw 模式访问,您需要更改您的 Ubuntu 用户 ID (UID) 以匹配 OSX 下的 UID。

假设您以具有 sudo 权限的普通用户身份登录。将用户名替换为您希望为其启用 HFS+ 写访问权限的 Linux 用户,并将 501 替换为相关的 OSX UID。您还必须修改用户主目录的 linux UID:

sudo usermod -u 501 <username>
sudo chown -R 501:<username> /home/<username> 

如果您的系统中还有其他属于该用户的文件,您可以在一个命令中更改所有 UID。记下您的 UID(使用id命令),然后:

find / -uid <useractualUID> -exec chown 501:<username> {} +

你可能还想修复你的登录屏幕,默认情况下,Ubuntu 不会列出 UID < 1000 的用户。打开终端并运行

sudo nano /etc/login.defs

然后搜索 UID_MIN。将该值从 1000 更改为 501,当您重新启动时,您的用户将列在登录屏幕上。

相关内容