在 Linux 上挂载特定的 ntfs 目录

在 Linux 上挂载特定的 ntfs 目录

我有 Linux 安装问题。

我有一台双启动的 Win7/Linux 机器。
我的主要操作系统是 Windows,我的大部分工作都在这里进行。
通常,在 Linux 下完成的所有工作都将迁移到 Win 上以供进一步使用。

因此,我想将 NTFS 分区安装到 Linux 操作系统上。
但是,我希望保护自己。
我想(比如说)将 Win-Desktop 文件夹作为其自己的设备安装,而不安装整个相关驱动器。
这可能吗?此外,如果不可能,我至少希望驱动器在 Linux 桌面上不可见的情况下安装,而只让 Win-Desktop 文件夹可见地安装。

我将非常感激任何评论或过去的经验。

答案1

我意识到这个问题已经有两年了,但我为那些在搜索中发现这个问题并需要答案的人回答这个问题。

首先,将 Windows 分区挂载为只读。如果您的 Windows 分区是第一个硬盘上的第一个分区,请将其添加到文件/etc/fstab

/dev/sda1       /mnt/windows   ntfs  ro,umask=0222,defaults 0 0

您必须首先创建一个名为 windows 的目录。

mkdir /mnt/windows

如果您想在启动后挂载分区而不是以 root 身份登录,请使用以下命令:

/dev/sda1  /mnt/windows   ntfs  user,ro,umask=0222,defaults 0 0

要将特定 Windows 目录挂载为可读写,请使用ntfs-3gfuse-ntfs-3g。大多数人都希望挂载他们的文档,因此我将使用此示例。如果您是 Windows 上的用户 David 和 Linux 上的用户 david,请使用以下命令(替换fuse-ntfs-3gntfs-3g您已安装的任何当前内核模块):

/mnt/windows/Users/David/Documents  /home/David/Documents  ntfs-3g  rbind,user,umask=0222,defaults 0 0

rbind是将已安装位置重新安装到另一个位置的操作。有关逗号分隔列表中其他选项的更详细说明,请ntfs-3g在命令控制台中键入 info。Linux 中的 Documents 目录必须存在且应为空。此行必须位于安装 Windows 分区的行之后。

这适用于 Windows Vista 和 7。如果您使用的是 Windows XP,请使用/mnt/windows/"Documents and Settings"/David/Documents。引号很重要,因为 mount 不能接受目录名称中的空格,尽管 Linux 可以接受目录中的空格。

如果您没有可以将 NTFS 挂载为读写的内核模块,则需要安装一个。

Ubuntu 附带ntfs-3gautomountntfsconfig。任何当前连接的分区都应自动检测并设置为自动挂载。Ubuntu 还会将非本地分区(如 Windows)挂载在 下/media,通常使用操作系统的名称,因此您的 Windows 7 分区挂载在 下/media/Windows 7。您会发现您的fstab条目使用 unicode 字符串表示特殊字符,因此行中显示/media/Windows\0407,其中\040代替了空格,无需使用引号。

要将 David 的 Windows 7 文档挂载到 Ubuntu 中 david 的 Linux 主目录中,请输入以下内容/etc/fstab

/media/Windows\0407/Users/David/Documents  /home/David/Documents  ntfs-3g  rbind,nosuid,user,umask=0222  0  0

我希望这有帮助。

答案2

我不确定这是否是由于mount去年某个时间点的更新造成的,但@thomassisson 的答案建议的方法不再有效。根据人坐骑rbind不是更改整个驱动器的安装选项。相反,remount必须使用命令。我在下面引用了手册页的相关部分:

安装——rbind 旧目录 新目录

或简写选项

安装-R 旧目录 新目录

请注意,文件系统挂载选项将与原始挂载点上的选项保持一致,并且无法通过传递 -o 选项和 --bind/--rbind 来更改。挂载选项可以通过单独的 remount 命令更改,例如:

安装 --bind 旧目录 新目录 安装-o重新安装,ro 新目录

不幸的是,NTFS-3G 目前似乎不支持remount。您必须先umount分区,然后再mount分区,这实际上关闭了该技巧的大门。

答案3

据我尝试,您只能挂载整个分区。但是,您可以创建指向所选文件夹的符号链接,并将其保存为收藏夹或将其显示在桌面或主目录中。

请查看此链接了解如何操作挂载 ntfs 分区

或查看此链接通用 ntfs 挂载说明

如何创建符号链接

打开终端和 sudo

ln -s [目标目录或文件]./[快捷方式]

例如:ln -s /usr/local/apache/logs ./logs

这将符号链接“./logs”指向“/usr/local/apache/logs”

自动挂载 =基本 GUI 说明

或者编辑 fstab 文件看到这个. 就我个人而言,你应该使用 GUI 说明,因为这会更新 fstab 文件

答案4

由于这个老问题在 2021 年仍然存在,并且接受的答案似乎不再起作用(正如@reflectionalist 所建议的那样),我正在用我刚刚找到的解决方案进行更新。

这个想法是:

  • 将 Windows 文件系统挂载为可读写
  • …但将挂载点放在只有 root 可以访问的目录中
  • 然后使用绑定到您想要访问的目录

首先:

sudo mkdir /media/root
sudo mkdir /media/root/windows  # mount point for Windows FS
sudo chmod -R 700 /media/root

然后在 fstab 中:

UUID=the_uuid                                /media/root/windows      ntfs uid=your_uid,gid=your_gid,umask=0022,defaults 0 0
/media/root/windows/Users/francois/Documents /home/francois/Documents ntfs rbind                                         0 0

顺便说一下现在ntfs相当于ntfs-3g

相关内容