我正在尝试获取将数据备份到新的 SeaGate HD 的权限。这绝对是一件麻烦事,尽管有安全方面的激励,但我认为这应该很容易。当我这样做时
ls -l /media
我明白了
drwxr-xr-x 2 simon root 4096 Dec 1 13:08 ext1
drwxr-xr-x 2 root root 4096 Dec 1 07:55 ext2
drwxrwxrwx 2 simon simon 4096 Dec 1 13:19 SeaGate
drwxr-xr-x 2 simon simon 4096 Jan 23 21:31 SeaGateLarge
drwxr-x---+ 6 simon root 4096 Jan 23 21:37 simon
从我所看到的,这意味着我应该能够写入 SeaGate 驱动器,但当我尝试拖放时 - 没有运气。它说这是一个只读目标。
我也尝试以 root 用户身份通过 nautilus 更改权限。
有人能给我指出正确的方向吗?
编辑:
mount | grep /media
返回此内容(我猜 ro 表示只读)
/dev/sdf2 on /media/simon/SeaGate type hfsplus (ro,nosuid,nodev,relatime,umask=22,uid=0,gid=0,nls=utf8,uhelper=udisks2)
我怎样才能将其更改为读写?
如果我转到磁盘并编辑挂载选项,它只会显示:
nosuid,nodev,nofail,noauto,x-gvfs-show
答案1
您必须禁用 OS X 的日志功能才能获得对 HFS+ 文件系统的读/写访问权限,详情请参阅https://help.ubuntu.com/community/hfsplus
高频脉冲
HFS+ 是 Mac OS 在许多 Apple Macintosh 计算机上使用的文件系统。您可以在 Ubuntu 中以默认只读权限安装此文件系统。如果您需要读/写权限,则必须先禁用 OS X 的日志功能,然后才能继续。
在 OS X 中,打开终端并输入:磁盘工具列表您将获得类似以下内容的输出:
/dev/disk0 #: 类型名称 大小标识符 0:GUID_partition_scheme *256.1 GB 磁盘0 1:EFI 209.7 MB 磁盘0s1 2:Apple_HFS Macintosh HD 230.0 GB disk0s2 3:Apple_Boot Recovery HD 650.0 MB disk0s3 4:Microsoft Basic Data 25.2 GB disk0s4记下您的 OS X 分区的标识符。其类型为“Apple_HFS”,通常名为“Macintosh HD”。在我们的示例中,它是磁盘0s2。要禁用日志功能,请在终端中输入以下内容:
sudo diskutil disableJournal 卷名称在哪里卷名称是之前发现的 OS X 分区标识符(在我们的示例中为 disk0s2)。某些版本的 OS X 中存在一个错误,该错误允许此命令成功完成,但仍不会禁用日志功能。为了解决此问题,您可能需要先使用以下命令启用日志功能:
sudo diskutil enableJournal 卷名称然而,不建议禁用主 OS X 分区上的日志功能,因为日志功能是任何文件系统的重要功能,可以防止损坏和数据丢失:http://en.wikipedia.org/wiki/Journaling_file_system 为非 root Ubuntu 用户启用 HFS+ 读/写 在 OSX HFS+ 分区上禁用日志功能后,您可能会发现,除非使用 sudo 或以 root 身份登录,否则无法在 Ubuntu 下向该分区写入任何数据。您可以通过将 Ubuntu 用户 ID (UID) 更改为与 OSX 下的 UID 匹配来启用对 OSX 主目录的读/写访问权限。默认情况下,OS X 中的第一个用户的 UID 为 501,但你可以通过在 OSX 下打开终端并运行以下命令来仔细检查这一点(或发现所需用户的正确 UID):ID命令。如果您的用户 ID 与 501 不同,请在下面的终端命令中将 501 替换为您的其他 UID。验证正确的 UID 后,您需要以 root 身份或 sudo 组成员(除了您希望授予写入权限的用户之外)的身份登录 Ubuntu,因为我们不想编辑当前登录的用户。如果您在 PPC Mac 上运行 Ubuntu,则可能会使用 yaboot 启动 Linux 和 OSX,在这种情况下,您可以通过键入以下内容以 root 身份登录Linux 单机在 yaboot 提示符下。以下命令假定您以具有 sudo 权限的普通用户身份登录。只需替换用户名对于希望启用 HFS+ 写访问权限的 Linux 用户,以及501针对相关的 OSX UID。如果您以 root 身份登录,则运行不带 sudo 前缀的命令。
sudo usermod --uid 501 用户名 sudo chown -R 501:用户名/home/用户名/media/用户名你可能还想修复你的登录屏幕,因为默认情况下 Ubuntu 不会列出 UID 小于 1000 的用户。为此,只需打开终端并运行sudo nano /etc/login.defs并搜索 UID_MIN。将该值从 1000 更改为 501,当您重新启动时,您的用户将列在登录屏幕上。
还有一个hfsplus 软件包这是一组用于访问 HFS+ 文件系统的工具。hfsplus 手册页可以在这里