我有一个外置驱动器,正在为 Mac 朋友进行格式化,因此我使用 Gparted 将其设置为 HFS+。即使在使用该选项运行mount
命令后,我现在也无法将任何文件写入驱动器rw
。运行grep sda1 /proc/mounts
(我想要的驱动器)返回:
/dev/sda1 /media/username/readwrite hfsplus rw,relatime,umask=22,uid=0,gid=0,nls=utf8 0 0
请注意,它安装为rw
.
但从终端或 Nemo 复制会返回“错误:只读文件系统”。由于我在 Linux 上格式化了驱动器,HFS+ 卷尚未记录。在将其交给我的 mac 朋友之前,我需要将一些文件复制到其中。我应该怎么办?
答案1
如果您想从 Ubuntu 写入日志,则需要关闭日志记录。 Ubuntu 仅支持写入非日志式 HFS+ 卷。在 OS X Yosemite 10.10 之前,仍然可以禁用 HFS+ 的日志功能
在您的 Mac 上:
- 在“应用程序”->“实用程序”下打开“磁盘实用程序”
- 选择要禁用日记功能的卷。
- 从“文件”菜单中选择“禁用日记”。 (在更高版本的 Mac OS 版本上,当您单击“文件”菜单时,您必须按住选项按钮。或者如果您喜欢 Apple+J)
现在将 HFS+ 硬盘插入 Ubuntu 并运行以下命令:
$ sudo lsblk -o NAME,FSTYPE,SIZE,MOUNTPOINT,LABEL
示例输出:
sda ├─sda1 vfat 300M EFI └─sda2 hfsplus 100G VolumeName
所以我们只对这个例子中的 sda2 感兴趣。
$ sudo apt-get install hfsprogs
在主目录中创建一个名为 backup 的文件夹,然后复制备份的完整路径并将其放在以下命令的末尾:
$ sudo mount -t hfsplus -o force,rw /dev/sda2 /home/user/backup
现在祝你好运:
$ sudo mount -o remount,rw /home/user/backup
现在进行 HFS+ 提交:
$ sudo chmod 775 /home/user/backup
使用终端测试:
$ cd /home/user/backup $ mkdir test
现在检查您的文件管理器是否已创建测试目录。但到底是什么,文件管理器仍然无法写入 HFS+。
强制提交文件管理器
### sudo filemanager, for eg. $ sudo thunar
现在,经过长时间的过度过程,您现在可以访问 HFS+。
然后,将驱动器重新插入 Mac,打开日志记录并使用磁盘实用程序修复权限。
答案2
我保留了这个错误(Ubuntu 22.04.1),即使在 macOS 中禁用日记功能后,它会在一段时间(大约 2 到 20 天,每天重新启动)后再次以只读方式挂载。极其烦人!
现在似乎持续有效的解决方案是使用auto
额外的选项nosuid,nodev,x-gvfs-show
。
我先来有:
PARTUUID=xxx /mnt/my_path hfsplus force,rw,auto,nofail 0 0
但我现在有:
PARTUUID=xxx /mnt/my_path auto nosuid,nodev,nofail,x-gvfs-show,force,rw 0 0
这似乎有效,祈祷(不久的)未来。 HFS+ 支持在 Ubuntu 中绝对是一个难题。