这篇主要针对像我这样openwrt系统小白写的 ,查了很多资料,包括官方的教程都是在讲软件上怎么上驱动,怎么自动挂载,但是买这个路由器的伙计们肯定不满足于官方固件吧,如果你不会自己编译系统的话,首先用:
opkg update && opkg install block-mount
安装一个block-mount插件,插上SD卡,然后进SSH,用:
block info
看看是否有SD卡,没有的话是驱动还没装的问题,需要用:
opkg install kmod-mmc kmod-mmc-spi kmod-sdhci
安装三个驱动,把TF卡拔插一下,如果还是没有,就是固件的问题了,不愿意自己动手编译的可以去找作者了。
如果靠自己解决问题,需要编译自己的系统(本人用的lean大的系统),先
sudo make menuconfig
需要先在
Kernel modules —> Other modules —> <*> kmod-mmc <*> kmod-mmc-spi <*> kmod-sdhci
作为驱动,然后在:
Kernel modules ---> Native Language Support ---> <*> kmod-nls-cp437 <*> kmod-nls-iso8859-1 <*> kmod-nls-utf8
防止出现文字乱码。
为了保证路由器可以读取SD卡的文件系统,我选的是ext4所以勾选了(kmod-fs-ext4,可利用Diskgenuis进行格式化得到),同时kmod-fs-vfat应该是exFAT文件系统的,可以在Win10下格式化。
Kernel modules —>
Filesystems —>
<*> kmod-fs-ext4
最后一步非常重要,一般教程都不会谈到,就是还要修改内核,否则你的SD卡是读取不到的,本人在这里卡了两天,终于这个兄弟的博客启发到我了,在此表示感谢,其实很简单,首先进入内核菜单
sudo make kernel_menuconfig
要把下面的勾上就可以编译了
Device Drivers —>
<*> MMC/SD/SDIO card support
(话说,上面的USBsupport都勾了,为啥默认的没有勾上 )
下列功能可以实现热拔插:
Device Drivers —>
<**> MMC/SD/SDIO card support —>
<*> MTK SD/MMC
Card Detect with Polling
等编译完了以后,再用block info命令查看就可以看到SD卡了,此时用这篇教程就自动挂载一下就可以极大的缓解MT1300 32M Flash之痛,第一次发帖,有错误希望大家指出!