如何在不访问OS X的情况下在Ubuntu中读写HFS +记录日记的外部HDD?


162

我有一个HFS+ journaled外部硬盘驱动器,需要能够在Ubuntu上对其进行写入。我无法访问Mac,它在数千英里之外,而且三个月都将无法访问它。

可以做任何事情而不会丢失HDD上的数据吗?


ubuntu-MATEcaja用户:无论您选择以下哪种解决方案,执行a killall caja && caja .都会有助于caja得知该文件夹现在可写的消息。
Frank Nocke

Answers:


171

请参阅如何在Ubuntu中将HFS分区挂载为读/写?-超级用户

引用第二/第三答案:

首先,请确保您已安装hfsprogs。示例安装命令:

sudo apt-get install hfsprogs

接下来,安装或重新安装HFS +驱动器。命令需要如下:

sudo mount -t hfsplus -o force,rw /dev/sdXY /media/mntpoint

要么

sudo mount -t hfsplus -o remount,force,rw /mount/point

...

最后,如果驱动器未正确卸载或已部分损坏,请运行fsck.hfsplus ...,如下所示:

sudo fsck.hfsplus -f /dev/sdXY

关于安装HFS +文件系统,那里还有其他信息。


谢谢,我会尝试的。我发现的信息指出,ubuntu无法处理日志化的htfs +驱动器,并说必须在OSX中“取消订阅”。在接下来的三个月中,我无权使用OSX,因此无法撤消日志记录。
oppochips

1
我尝试过并获得sudo mount -t hfsplus -o force,rw / dev / sdb2 / media / sdb2 mount:已经安装了/ dev / sdb2或/ media / sdb2 busy安装:根据mtab,/ dev / sdb2安装在/ media / 1ad12b58-c2f2-39d3-955f-54ea66a96b2b驱动器(hfs +日志记录的卷)安装为只读。是否可以在不撤消Mac OS上的日志记录的情况下进行写入?我尝试了最后一个命令,并获得** Checking HFS Plus volume。fsck_hfs:已记录卷。不执行检查。fsck_hfs:使用-f选项强制检查。
oppochips

从上面发布的链接中:“如果要从Ubuntu写入日志,则需要关闭日记。Ubuntu仅支持写入非日志记录的HFS +卷。在Mac上:在“应用程序”->“实用程序”下,选择“打开磁盘实用程序”。禁用日志记录的卷。从“文件”菜单中选择“禁用日志记录”。(在更高的Mac OS版本上,单击“文件”菜单时必须按住选项按钮。或者,如果您喜欢Apple + J,则)如果可以访问Mac,是否可以在不丢失数据的情况下获得对驱动器的读写访问权限?谢谢b
oppochips

您应该尝试:(sudo mount -t hfsplus -o remount,force,rw /dev/sdXY /media/mntpoint或将其/dev/sdXY指向当前安装的位置)。我将其编辑为我的答案。
理查德

1
谢谢。我需要放置什么而不是“ mountpoint”?我尝试了sdb2并获取sudo mount -t hfsplus -o重新安装,强制执行,rw / dev / sdb2 / media / dev / sdb2 mount:安装点/ media / dev / sdb2不存在,然后尝试了sudo mount -t hfsplus -o重新安装,力,RW / dev / sdb2,并得到:
oppochips

30

这些步骤对我有用(Ubuntu Studio 14.04):

sudo apt-get install hfsprogs

检查驱动器状态:

sudo fsck.hfsplus -f /dev/sdXY

卸载设备:

sudo umount /media/sebastian/devicename

(创建文件夹以安装驱动器)

使用HFS +读/写权限安装驱动器:

sudo mount -t hfsplus -o force,rw /dev/sdXY /home/sebastian/foldername

3
这可以将其作为文件夹安装,但是它仍然是只读的。...:( ...似乎找不到一种简单的方法来摆脱hfs +日记系统的限制
Amphibio

这可行。但是为什么我们需要force呢?
qweruiop

3
我收到以下错误:mount: wrong fs type, bad option, bad superblock on /dev/sda2, missing codepage or helper program, or other error In some cases useful info is found in syslog - try dmesg | tail or so.
Jamie Hutber

24

我也有这个问题。我尝试了fsck.hfsplusumount重新安装sudo mount -t hfsplus -o remount,force,rw对我没有任何帮助。

对我有用的是:

  1. 卸下 sudo umount /media/myMountPoint
  2. 删除挂载点 sudo rmdir
  3. 使用sudo mkdir和重新创建安装点
  4. 重新安装 sudo mount -t hfsplus -o force,rw /dev/xxxx /media/myMountPoint

希望这也对你们有用。


你救了我的命!
Alex Chan

这出于某些原因起作用。我不知道为什么。该目录为空并安装,然后用删除,ro即使直接安装也是如此force,rw。删除并重新创建目录即可。
Umar Ahmad

“ 2”后面的原因。挂载点目录可能是“ user:user”。(ls -l to verify). In other words: 须藤CHOWN -c根:根myMountPoint /`可能还修复它(之前仍然有必要卸载)
弗兰克Nocke

根据我的经验,如果您不在/media/<username>/其他位置(我喜欢/mnt)下进行安装,例如,“智能” Ubuntu MATE不会删除,并且(会错误地)一次又一次地创建您的安装文件夹。–更容易安装脚本,持续时间...
Frank Nocke

12

由于我无法发表评论(此处信誉不足:)。我将发布此答案以指出,以上答案似乎是针对未记录日志的hfs + HD。需要向“ fsck.hfsplus”命令发出“ -f”选项,才能在日志卷上工作。为避免混淆,我复制了以下命令:

$ sudo fsck.hfsplus /dev/sdXY

** /dev/sdXY
[snip....]
** The volume ########### appears to be OK.

这只会在尚未记录日志的卷上运行。即使在日志卷上使用'-f'选项,此检查本身也不允许以读/写方式安装重新安装的卷。我认为必须关闭日记功能。

似乎没有稳定的代码可用于从Linux关闭日志记录。请参阅Richard提供的链接:http : //ubuntuforums.org/showthread.php?t=1420673

如果日志记录功能已关闭,并且磁盘最初以只读方式安装,那么在磁盘未损坏的情况下,应允许读/写操作。如果已损坏,则需要运行fsck.hfsplus。


11

从上一个答案中借用以下步骤对我有用。希望这对其他人有用:

  1. 插入外部硬盘。

  2. 请注意,Ubuntu会自动挂载它,但它是只读的。

  3. 卸载驱动器(我只需单击文件浏览器中的弹出按钮即可执行此操作)。

  4. sudo apt-get install hfsprogs

  5. $ sudo fsck.hfsplus /dev/sdXY 
    
    ** /dev/sdXY
    ** Checking HFS Plus volume.
    ** Detected a case-sensitive catalog.
    ** Checking Extents Overflow file.
    ** Checking Catalog file.
    ** Checking multi-linked files.
    ** Checking Catalog hierarchy.
    ** Checking Extended Attributes file.
    ** Checking volume bitmap.
    ** Checking volume information.
    ** The volume ########### appears to be OK.
    

    sudo fsck.hfsplus -f /dev/sdXY如果已记录文件系统。)

  6. 重新安装驱动器(我只需在文件资源管理器中单击驱动器即可完成此操作)。

  7. 该驱动器现在是可读写的。


1
鉴于光盘未启用日记功能,上述情况是正确的。
akostadinov 2014年

2
我按照您的步骤进行操作,直到6为止一切正常。但是在7上,该驱动器仍然是只读的。
GuilhermeSalomé18年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.