我计划将带有 3 个 NTFS 驱动器的 Windows 系统迁移到 Ubuntu Studio。主 80G 驱动器将作为主驱动器和 ext3 驱动器,并且我有 2 个带有媒体和备份的大型 NTFS 驱动器。
我可以做些什么来准备 NTFS 分区以尽量减少从其他系统(包括在 VirtualBox 中运行的 Windows)访问它们的问题?
我知道 NTFS-3G 是“稳定的”,但常见的 Linux 备份实用程序在使用 NTFS 作为目标时会遇到麻烦吗?
答案1
“常见的 Linux 备份实用程序在使用 NTFS 作为目标时会遇到麻烦吗?”实际上唯一“使用 NTFS”的程序是内核,仅此而已。无论是 Linux 备份实用程序,还是 VirtualBox 中的 Windows,它们都将通过内核获取数据,并且这些程序之间不会存在显著的差异或问题。
一个大问题是,除非您备份到 tar 存档中,否则 NTFS 可能不适合 Linux 备份,因为它不支持 Linux 权限或文件名。
此外,对于多媒体,您需要最大的磁盘读/写速度(特别是在多轨录音或处理视频时,这是我能想象到的您使用 Ubuntu Studio 的两个主要原因),而 NTFS 是一个糟糕的选择,即使在 Windows 下它也存在碎片问题,更不用说 Linux 了,而且它远不是 Linux 系统上性能最快的文件系统。
答案2
不,NTFS 驱动程序不仅可用,而且可以正常工作(在我看来)。总是会出现问题(即使是 Ext3/4,但我们不想把 Murphy 从他的洞里拉出来,对吧?)。如果您无论如何都想“准备”分区,请在切换之前使用 Windows 工具对它们进行扫描和碎片整理。
此外,工具/程序并不关心它写入什么文件系统(这就是内核和驱动程序的用途)。
答案3
你可能想要使用更新(也更快)的文件系统,例如雷泽文件系统。我已经使用 Reiser 3 多年了,它从来没有给我带来任何问题。
无论如何,由于 Linux 文件权限在基于 DOS 的文件系统上不存在,我见过的唯一选项之一是使用以下命令在 Windows 分区上的文件内创建虚拟文件系统:
# create a 2-gig virtual file system inside of NTFS
dd if=/dev/zero of=/path/to/mounted/ntfs/linux_filesystem bs=1M count=2M
# set up partition file system structures
mkfs.ext3 /path/to/mounted/ntfs/linux_filesystem
然后你必须在你的文件中指定这样的内容lilo.conf
(见这里例如):
boot = /dev/sda
prompt
timeout = 20
change-rules
reset
default=windows
# linux
## (this assumes you've booted to the virtual file system and have it mounted as /)
image = /boot/vmlinuz
root = /mnt/windows_drive/linux_filesystem
label = linux
read-write
# windows
other = /dev/sda1
label = windows
在您的 中fstab
,您需要指定安装优先级:
# Windows partition, given highest priority
/dev/sda1 /mnt/windows_drive ntfs-3g 1 1
# virtual file system on the windows partition
/mnt/windows_drive/linux_filesystem / ext3 0 0
哦!我差点忘了:你必须有一个内核,该内核配置了 ntfs-3g 文件系统支持,而不是作为一个模块(因为它要把模块文件放在哪里?)。