双启动系统和 NTFS 访问

双启动系统和 NTFS 访问

我有一个双启动系统 - Ubuntu 18.04.3 + Windows XP。我的 Windows XP 安装很久以前就已设置好了,包括Administrator用户和一些非特权用户 - 这很好,因为普通用户无法错误地修改或破坏重要的系统文件。

然而,当我登录 Ubuntu 时,所有这些万无一失的设置都浪费了——我可以轻松安装 Windows XP 系统磁盘C:并在那里进行任何我想要的更改,甚至不需要sudo。例如,我可以删除任何Windows XP 驱动程序...

据我所知ntfs-3g驱动程序通常用于从 Ubuntu 访问 Windows XP。我的驱动程序版本:

hekto@ubuntu:~$ dpkg -l | grep ntfs
ii  libntfs-3g88                           1:2017.3.23-2ubuntu0.18.04.2          amd64        read/write NTFS driver for FUSE (runtime library)
ii  ntfs-3g                                1:2017.3.23-2ubuntu0.18.04.2          amd64        read/write NTFS driver for FUSE

Windows XP 系统分区通常不是已安装,但文件中没有/etc/fstab。我以前是通过双击 Ubuntu GUI 中的图标来安装它的。Ubuntu 中报告的已安装分区为:

hekto@ubuntu:~$ mount | grep Windows
/dev/sda1 on /media/hekto/Windows type fuseblk (rw,nosuid,nodev,relatime,user_id=0,group_id=0,default_permissions,allow_other,blksize=4096,uhelper=udisks2)

从 Ubuntu 中可以看到一些关键的 Windows XP 系统文件的权限:

hekto@ubuntu:~$ ll /media/hekto/Windows/WINDOWS/system32/*.sys
-rwxrwxrwx 1 hekto hekto    9029 Aug  4  2004 /media/hekto/Windows/WINDOWS/system32/ansi.sys*
-rwxrwxrwx 1 hekto hekto   27097 Aug  4  2004 /media/hekto/Windows/WINDOWS/system32/country.sys*
-rwxrwxrwx 1 hekto hekto    4768 Aug  4  2004 /media/hekto/Windows/WINDOWS/system32/himem.sys*
-rwxrwxrwx 1 hekto hekto   42809 Aug  4  2004 /media/hekto/Windows/WINDOWS/system32/key01.sys*
-rwxrwxrwx 1 hekto hekto   42537 Aug  4  2004 /media/hekto/Windows/WINDOWS/system32/keyboard.sys*
-rwxrwxrwx 1 hekto hekto   29146 Aug  4  2004 /media/hekto/Windows/WINDOWS/system32/ntdos404.sys*
-rwxrwxrwx 1 hekto hekto   29370 Aug  4  2004 /media/hekto/Windows/WINDOWS/system32/ntdos411.sys*
-rwxrwxrwx 1 hekto hekto   29274 Aug  4  2004 /media/hekto/Windows/WINDOWS/system32/ntdos412.sys*
-rwxrwxrwx 1 hekto hekto   29146 Aug  4  2004 /media/hekto/Windows/WINDOWS/system32/ntdos804.sys*
-rwxrwxrwx 1 hekto hekto   27866 Aug  4  2004 /media/hekto/Windows/WINDOWS/system32/ntdos.sys*
-rwxrwxrwx 1 hekto hekto   34560 Aug  4  2004 /media/hekto/Windows/WINDOWS/system32/ntio404.sys*
-rwxrwxrwx 1 hekto hekto   35648 Aug  4  2004 /media/hekto/Windows/WINDOWS/system32/ntio411.sys*
-rwxrwxrwx 1 hekto hekto   35424 Aug  4  2004 /media/hekto/Windows/WINDOWS/system32/ntio412.sys*
-rwxrwxrwx 1 hekto hekto   34560 Aug  4  2004 /media/hekto/Windows/WINDOWS/system32/ntio804.sys*
-rwxrwxrwx 1 hekto hekto   33840 Aug  4  2004 /media/hekto/Windows/WINDOWS/system32/ntio.sys*
-rwxrwxrwx 1 hekto hekto   17664 Apr 14  2008 /media/hekto/Windows/WINDOWS/system32/watchdog.sys*
-rwxrwxrwx 1 hekto hekto 1845632 Apr 14  2008 /media/hekto/Windows/WINDOWS/system32/win32k.sys*

我想禁止从 Ubuntu 写入 Windows XP 系统分区根本- 仅在极少数情况下,我需要从该分区读取一些内容到 Ubuntu,并且我从未从 Ubuntu 写入 Windows XP 系统分区。

最好的和最简单的方法是什么?

答案1

umount /mnt/windows每次用户登录时运行怎么样,或者重命名ntfs-3g以便用户无法访问它(但您知道该可执行文件的真实名称)?

答案2

我在回答我自己的问题。对我来说,最好的、最简单的方法是创建一个u盘配置文件/etc/udisks2/mount_options.conf中有以下两行:

[/dev/disk/by-label/Windows]
defaults=ro

Ubuntu 仍然报告rwxrwxrwx此分区上所有文件和目录的权限,但这是一个谎言——该分区变为只读,

相关内容