第二内部硬盘的所有权
我可以以root用户身份打开nautilus文件管理器并在此站点上尝试各种教程,但每次都会遇到同样的问题。
我可以右键单击,然后通过FILESYSTEM / media或右键单击左侧面板列表中的第二个驱动器,在我的第二个硬盘驱动器上选择属性。
但是,当我将所有权作为root更改为我的用户名或更改设置(如读写等)时,它会在关闭属性窗口之前返回到root或之前的设置,并且似乎无法更改我的第二个的所有权或设置硬盘。 我需要完全访问此硬盘作为我的用户名。
该驱动器是一个内部SATA,格式化为NTFS,我使用的是Ubuntu 12.04 LTS 64位
我将不胜感激任何帮助
首先,NTFS文件系统处理的权限与任何Linux文件系统(如ext4)明显不同(更多的是Windows方式)。 您应该编辑安装NTFS分区的/etc/fstab
的行。
您可以使用此命令打开编辑器进行编辑(使用终端): gksu gedit /etc/fstab
-
首先: 它是哪个分区?
在这种情况下,这需要是设备节点标识符。 例如
/dev/sda1
,分区UUID或分区标签。在终端中运行
sudo blkid -c /dev/null
将告诉您有关分区的所有相关信息。 希望您可以从此列表中确定哪一个是正确的分区。如果您使用UUID或Label,则需要声明它。 例如
"LABEL=Windows"
,"UUID=ABCDEFGHIJKLKLMNOP"
。 -
接下来, 它应该安装在哪里?
这部分很简单:您希望从哪里访问分区? 默认情况下,Ubuntu在
/media
安装分区,因此如果您希望将分区安装在那里,请说明。 例如/media/Windows
。 您需要手动创建此文件夹,因为如果fstab不存在则会抱怨,因此请确保该文件夹尚未使用,并运行sudo mkdir /media/Windows
-
接下来, 应该将哪个文件系统挂载?
由于我们正在安装ntfs分区,因此
ntfs-3g
为此列指定ntfs-3g
。 不要使用“ntfs”,除非你不希望能够在挂载后写入分区(通过写入,我的意思是制作新文件,编辑文件,移动文件和文件夹等;“ntfs”驱动程序已过时,只允许您读取文件。) -
接下来, 应该安装哪些选项?
在这种情况下,这是最重要的列,您可以在此指定权限。 你如何做到这一点并不是很明显,但有一种方法,而且实际上相当简单。
这是一个以逗号分隔的列表,因此不要使用空格或制表符,否则您会发现挂载行无法按预期工作。 要指定权限,您只需要声明三件事:UID,GID和umask。
uid=####
指定哪个用户标识应该拥有该分区上的文件。 例如,uid=1000
表示id为“1000”的用户应该拥有这些文件。 您可以通过打开终端并运行echo $UID
来查找您的echo $UID
。gid=####
指定哪个groupid应该拥有分区上的文件。 例如,gid=1000
表示ID为“1000”的组应该拥有这些文件。 找出groupid比找出你的用户ID要困难一些,因为你可以同时属于几个组。现在,Ubuntu通常为每个用户创建一个组,其ID与UID相同,因此您可以将UID用作GID。 但是,您可以通过在终端中运行
cat /etc/group
来获取组列表。 这将显示一个列表,每行最多包含四个以冒号分隔的字段。 这些行将包含以下项目:名称,加密密码,GID以及组中的用户列表。 找到要使用的组,并将其GID添加到选项中。umask=UGO
是三个选项中最重要的一个; 它指定了用户,组和其他所有人的权限。 这里使用的数字需要在0到7之间,其他任何东西都可能导致错误。 这些数字实际上是正常权限的倒数,因此虽然“7”表示正常权限设置中的“读取,写入和执行”,但在fstab“7”中表示“无权限”。 设置umask=000
将为每个人提供读,写和执行权限。 为了澄清,U是用户的权限,G是组的权限,O是其他人的权限。 有关umask的更多详细信息,请参见www.cyberciti biz / tips / understanding-linux-unix-umask-value-usage.html。您还可以在此列表中添加其他内容。 一般来说,最好从“默认值”选项开始。 “auto”会在启动时自动挂载分区。 在这里阅读更多内容:www.tuxfiles org / linuxhelp / fstab.html
-
最后两列应为“0”和“0”。 这两列仅用于Linux文件系统,因此将它们设置为0可以防止出现任何复杂情况。
完成的fstab线可能如下所示:
UUID=ABCDEFGHIJKLKLMNOP /media/Windows ntfs-3g defaults,auto,uid=1000,gid=1000,umask=002 0 0
下次启动时,或者下次运行sudo mount -a
,应该将分区安装在您想要的位置,并具有您希望它拥有的权限。
资源
要在Ubuntu中获取Mount ntfs分区,我们需要安装ntfs-3g软件包才能使用它
sudo apt-get install ntfs-3g
将分区挂载到某个目录
mkdir /mnt/ntfs_data mount -t ntfs-3g /dev/sda2 /mnt/ntfs_data
通过添加fstab条目使其在每次启动时安装
/dev/sda2 /mnt/ntfs_data ntfs-3g defaults 0 0
即使您可以通过使用UUID来使用UUID进行装载
blkid
输出将与此类似
/dev/sda2: UUID="Uo4y9S-Y9ip-hsSp-z8oI-nNnP-hwRn-x0bEQG"
并在fstab条目中替换UUID而不是/ dev / sda2
根据您的环境替换sda2和ntfs_data
如果您需要有关ntfs-3g的帮助,请运行该命令
man ntfs-3g
您可以在ntfs-3g手册页的顶部找到它:
例子
将/dev/sda1
挂载到/mnt/windows
:
ntfs-3g /dev/sda1 /mnt/windows
要么
mount -t ntfs-3g /dev/sda1 /mnt/windows
使用标准Linux权限将ntfs数据分区/dev/sda3
/mnt/data
到/mnt/data
:
ntfs-3g -o permissions /dev/sda3 /mnt/data
要么
mount -t ntfs-3g -o permissions /dev/sda3 /mnt/data
只读将/dev/sda5
挂载到/home/user/mnt
,并使用uid 1000
的用户成为所有文件的所有者:
ntfs-3g /dev/sda5 /home/user/mnt -o ro,uid=1000
/etc/fstab
条目(第六个和最后一个字段必须为零以避免在引导时检查文件系统):
/dev/sda5 /home/user/mnt ntfs-3g ro,uid=1000 0 0
卸载/ mnt / windows:
sudo umount /mnt/windows