23.4 Windows 文件系统

NTFS

安裝 ntfs-3g

由于 Bug 206978 - sysutils/fusefs-ntfs: Disable UBLIO as it breaks mkntfsBug 194526 - sysutils/fusefs-ntfs: ntfs-3g with libublio lost files。请勿使用 pkg 安装,请使用 Ports:

# cd /usr/ports/filesystems/ntfs
# make config
FreeBSD 安装 ntfs-3g

取消勾选 UBLIO,再编译安装:

# make BATCH=yes install clean

配置 ntfs-3g

把你的 ntfs 格式的硬盘/U 盘插入计算机。这时候你会看到它的设备名,例如 da0(见 /dev/da0)。

修改 rc.conf

# sysrc kld_list+="fusefs"

创建 nfts 分区

MBR 分区表

# gpart create -s mbr da0    #  使用 mbr 分区,如果已经是,则不需要
# gpart add -t ntfs da0

GPT 分区表

# gpart create -s gpt da0    #  使用 gpt 分区,如果已经是,则不需要
# gpart add -t ms-basic-data da0

格式化 ntfs 分区

# mkntfs -vf /dev/da0s1
  • -f 表示快速格式化。

  • -v 表示详细输出。

参考文献

ntfs on freebsdn

自动挂载 NTFS

为了开机自动挂载,修改 /etc/fstab,加入:

/dev/da0s1  /media/NTFS ntfs  rw,mount_prog=/usr/local/bin/ntfs-3g,late  0  0

手动挂载 NTFS

# ntfs-3g  /dev/da0s1  /media/NTFS   -o  rw,uid=1000,gid=1000,umask=0
  • 如果不知道哪个磁盘分区是 NTFS,可以用命令来查看;

# fstyp /dev/da0s1
  • 如果报错,可尝试删除休眠文件:

# ntfs-3g  /dev/da0s1 /mnt/NTFS -o remove_hiberfile
  • 如果还是有问题:

# ntfsfix /dev/da0s1

然后重新挂载。

参考文献

FAT32 文件系统

FAT32 一般在 gpart show 命令中被显示为 ms-basic-data

# gpart show -p nda1 # 已忽略无用信息
=>      34  41942973    nda1  GPT  (20G)
  29360128   4194304  nda1p3  ms-basic-data  (2.0G) # 即为 fat32

注意

必须显式声明文件系统类型才能挂载

# mount -v -t msdosfs  /dev/nda1p3  /mnt # 测试挂载。-v 参数,即 Verbose 显示详细信息;- t 参数即 type(类型),指定文件系统。
/dev/nda1p3 on /mnt (msdosfs, local, writes: sync 1 async 0, reads: sync 512 async 0, fsid 7d00000032000000, vnodes: count 1 )
# ls /mnt/ # 检查挂载情况
me	test1	test2
# umount /mnt # 卸载文件系统

最后更新于