如何挂载 ext4 分区并具有写入权限?

我已经设置了/etc/fstab文件,以便在启动时可以挂载ext4分区,并且我使用以下选项进行了设置:rw、auto、nouser、exec、sync。
问题是,在没有使用sudo的情况下,我无法在该分区上创建或删除任何文件,这让我更加困惑,因为我已经挂载了ntfs分区(使用这些选项:rw、auto、user、noexec、sync),而我在ntfs分区上读写都没有使用sudo。
如何在挂载ext4分区时获得读写权限?
3个回答

首先,使用以下命令检查驱动器的UUID可能会很有用:
ls -l /dev/disk/by-uuid

根据我的经验,我通常使用默认设置挂载EXT4格式的硬盘,并且从未遇到过写入权限方面的任何错误。
我的/etc/fstab文件如下所示:
UUID=004f9bfa-fb5a-438c-8a5a-dc04fa6f2d3e /media/MYCH0  auto defaults 0 0 #external hdd

如果一切都失败了,你也可以尝试通过以下方法将自己设置为所有者:
sudo chown username:username /media/mountpoint

为了进一步参考,您可能想看看这个链接:
http://ubuntuforums.org/showthread.php?t=1482818


1虽然这个回答在理论上可能是正确的,但最好还是在这里包含回答的关键部分,并提供链接作为参考。 - user98085
1@FEichinger 谢谢提醒,我已经编辑了我的帖子。 - m.devrees
1太棒了。虽然如此,请确保包含源链接,因为它可能有更多的信息。事实上,尽量始终包括您用来得出答案的材料。 :) - user98085
谢谢,那确实有帮助。 - Sameh Hany

这可能不是由于挂载问题,而是由于权限问题。您可能没有足够的权限在驱动器/文件夹上进行写操作,或者您不是所有者。
由于您没有提供挂载点,我们假设分区已挂载在/media/foo上。
要拥有一个目录, 打开终端并运行sudo mkdir /media/foo/test; sudo chown $USER /media/foo/test。现在您应该能够在文件夹test中进行写操作。
如果您想在文件夹上进行写操作,则有两个选项。
1. 通过sudo chown $USER /media/foo拥有数据。
2. 允许其他用户写入sudo chmod o w /media/foo
很少有人对所有用户的所有内容都感兴趣,例如在Linux中的Windows分区。命令chmodchown具有一个选项-R,可以递归地更改其下所有数据的模式。但是,除非您知道自己在做什么,否则不建议使用此选项。如果在操作系统的分区上使用-R,它可能变得无法正常工作。

5递归 777 chmod 绝对是一个非常糟糕的主意 - Kiwy
@Kiwy,已更新。预计+1。 - Prinz
2就我所知,你说的话非常不准确,并且缺少关于chmod 777 -R的非常重要的警告。我猜你可能不经常使用Windows,因为自从Windows 2000 NT以来,它已经处理了文件系统上的组和用户访问权限。 - Kiwy
@Kiwy。已更新。我的意思是在Linux上的Windows分区。Windows分区是否对所有Linux用户都具有写访问权限? - Prinz
如果我希望硬盘能够被任何插入电脑的人使用,而不必每次都处理权限,该怎么办? - askcompu

很不幸,Linux内核在ext2/ext3/ext4文件系统上强制执行POSIX权限。
通过在不同主机之间使用共享组和setgid位或ACL,您可以共享外部卷并保持读写权限。这种设置的一个例子是:
$ sudo chgrp -R sys /mnt/data/dir
$ sudo chgmod -R g+s /mnt/data/dir
$ sudo fsetacl -R -m g:sys:rwx /mnt/data/dir
$ sudo fsetacl -R -d -m g:sys:rwx /mnt/data/dir
$ sudo adduser user sys

请点击此处阅读更多信息:https://unix.stackexchange.com/questions/126213/external-hard-drive-permissions-ext4/

另外,请参考在使用多个Linux安装时解决外部EXT4硬盘权限问题