示例配置
fstab示例配置如下:(Linux下没必要单独搞个/ramdisk
分区,/dev/shm
就是自带的内存盘了)
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a device; this may
# be used with UUID= as a more robust way to name devices that works even if
# disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
UUID=000F-74AF /boot/efi vfat defaults,noatime 0 2
UUID=428cb395-2087-4d4b-9d81-ff52064e4136 swap swap defaults,noatime 0 2
UUID=6bc51c0a-b212-4f24-91a1-8cb8c46e3bdf / ext4 defaults,noatime 0 1
UUID=ecd6d8cf-344d-48dd-86f1-c58c5cd7627d /opt ext4 defaults,noatime 0 2
UUID=2f95aa6d-3694-4fc3-8fe1-be6e4ccb7a45 /home ext4 defaults,noatime 0 2
# overwrite size of /tmp
tmpfs /tmp tmpfs nodev,nosuid,size=5G 0 0
# ramdisk
# none /ramdisk tmpfs nodev,nosuid,noatime,mode=1777,size=512M 0 0
tmpfs /ramdisk tmpfs nodev,nosuid,noatime,mode=1777,size=384M 0 0
# ramdisk for mysql
tmpfs /var/lib/mysqltmp tmpfs rw,gid=987,uid=987,size=48M,mode=0750,noatime 0 0
# windows ntfs
/dev/sda3 /mnt/winD ntfs defaults,noatime,umask=0 0 2
/dev/sda4 /mnt/winE ntfs-3g defaults,noatime,umask=0 0 2
为避免发生事故,修改fstab文件后都要使用命令 mount -a
进行挂载测试,没有报错信息说明fstab文件没有问题。否则根据报错解决问题。
挂载NTFS,使用NTFS3新驱动!
挂载NTFS分区可指定type为ntfs
或ntfs-3g
。其实,mount.ntfs
正是mount.ntfs-3g
的链接:
kernel 5.15之后直接集成了Paragon捐献的ntfs3驱动,不再需要FUSE,性能大幅提升,fstab中type应改为ntfs3
。
至于这个提升到底有多少,做个测试给大家看看:
Benchmark with SATA3 固态盘
(win下速度约500~600MB/s)
-
ntfs-3g
-
ntfs3
再来个机械盘Benchmark
-
ntfs-3g
-
ntfs3
差别过于明显了:上限从190MB/s左右提升到了3GB/s,从开启fsync的实际写入速度可看出ntfs3可以极大发挥物理设备的潜力。赞!
如何默认NTFS3
自动挂载的分区可以在fstab指定,那如何让mount
指令或者文件管理器程序默认使用ntfs3而不是ntfs-3g呢?
我们有两种方式达成这个目的:
- 修改mount.ntfs内容,hook住外界对其调用,转给ntfs3
cd /usr/sbin
sudo mv mount.ntfs mount.ntfs.disabled
sudo mv /sbin/mount.ntfs /sbin/mount.ntfs.disabled
sudo dd status=none of=mount.ntfs > mount.ntfs <<EOF
#!/bin/bash
exec mount -t ntfs3 $@
EOF
sudo chmod 755 mount.ntfs
- 在
/etc/filesystems
指定mount尝试ntfs3
sudo mv /sbin/mount.ntfs /sbin/mount.ntfs.disabled
echo ntfs3 | sudo tee /etc/filesystems
- /etc/udev/rules.d/ntfs3_by_default.rules
SUBSYSTEM"block", ENV{ID_FS_TYPE}"ntfs", ENV{ID_FS_TYPE}="ntfs3"
两种方式任选一个,修改后重启验证。
https://www.linuxquestions.org/questions/slackware-14/kernel-5-15-ntfs3-vs-ntfs-3g-4175702945/
https://forums.gentoo.org/viewtopic-t-1144830-start-0.html
https://ubuntu-mate.community/t/kernel-5-15-ntfs3-and-caja/24759
https://wiki.archlinux.org/title/NTFS