OPENWRT挂载NTFS硬盘U盘OPENWRT支持读写NTFS分区

2022-05-04
0评论
/
5200阅读
爱搜啊

如果你的固件已经支持了基本USB支持,您现在想要将存储设备(U盘、USB硬盘等)连接到路由器。使用kmod-fs-ntfs仅提供读取NTFS格式的U盘。本教程将向您展示如何获得对NTFS卷的读/写支持。

前提条件

1、你的OpenWrt必须已经支持USB和USB存储

2、将您的U盘或者USB硬盘连接到您的OpenWrt路由器,该设备及其分区可以正常识别到/dev比如说/dev/sda, /dev/sda1, /dev/sda2等。

必需安装的包

1、ntfs-3g

2、fdisk 可选择的使用热插拔脚本时自动检测文件系统类型所必需的。

OPENWRT读取可写NTFS分区

配置

没什么可配置的!安装好上面两个包就已经支持NTFS硬盘了,然而请注意,您只能将分区挂载到现有目录。您可以使用创建一个目录mkdir比如说

mkdir -p /mnt/usb-ntfs

要手动挂载分区:/dev/sda代表一整块硬盘,/dev/sda1代表第一分区

ntfs-3g /dev/sda1 /mnt/usb-ntfs -o rw,big_writes

上面命令的意思就是把/dev/sda1第一分区挂载到/mnt/usb-ntfs目录

要在启动时(插入硬盘)自动挂载分区,请编辑/etc/rc.local:

sleep 1

ntfs-3g /dev/sda1 /mnt/usb-ntfs -o rw,lazytime,noatime,big_writes

exit 0

要卸载:

umount /dev/sda1

为了让OpenWrt能够自动挂载它:

ln -s /usr/bin/ntfs-3g /sbin/mount.ntfs

通过脚本自动挂载

现在,您可以根据命令挂载卷了,下一步是在自动插入时挂载它。

为了让我们的驱动器挂载到插件上,我们利用热插拔系统。将以下文件创建为/etc/hotplug.d/block/10-mount

#!/bin/sh
# Copyright (C) 2011 OpenWrt.org
sleep 10 #more apps installed, need more time to load kernel modules!
blkdev=`dirname $DEVPATH`
if [ `basename $blkdev` != "block" ]; then
device=`basename $DEVPATH`
case "$ACTION" in
add)
mkdir -p /mnt/$device
# vfat & ntfs-3g check
if [ `which fdisk` ]; then
isntfs=`fdisk -l | grep $device | grep NTFS`
isvfat=`fdisk -l | grep $device | grep FAT`
isfuse=`lsmod | grep fuse`
isntfs3g=`which ntfs-3g`
else
isntfs=""
isvfat=""
fi
# mount with ntfs-3g if possible, else with default mount
if [ "$isntfs" -a "$isfuse" -a "$isntfs3g" ]; then
ntfs-3g /dev/$device /mnt/$device
elif [ "$isvfat" ]; then
mount -o iocharset=utf8 /dev/$device /mnt/$device
else
mount /dev/$device /mnt/$device
fi
;;
remove)
umount -l /dev/$device
;;
esac
fi

现在,每当你插入一个NTFS USB磁盘,它应该会自动安装。(请注意,这将是一条不同于/mnt/usb-ntfs)


本站附件分享,如果附件失效,可以去找找看

诚通网盘附件百度网盘附件


于2022-05-04发布