文档章节

LinksysWrt1900acs刷官方镜像并开启FTP

a_xianyu
 a_xianyu
发布于 2017/06/03 15:41
字数 1270
阅读 1.7K
收藏 0

阿里云携手百名商业领袖、技术大咖,带您一探行进中的数字新基建!>>>

系统:https://downloads.openwrt.org/chaos_calmer/15.05.1/mvebu/generic/openwrt-15.05.1-mvebu-armada-385-linksys-shelby-squashfs-factory.img

需要的工具:WinSCP, putty(或其它ssh工具)

安装完系统后
1. ssh连接路由器后直接输入命令

最开始刷系统后会登陆192.168.1.1时会出现一个root用户名和其对应的密码,
就是用于ssh连接时的用户名和密码。如果更改过密码,则使用更改过的。
    opkg update
    opkg install kmod-usb-core
    opkg install kmod-usb2                #安装usb2.0 
    opkg install kmod-usb3                #安装usb3.0 
    opkg install kmod-usb-ohci            #安装usb ohci控制器驱动
    opkg install kmod-usb-storage         #安装usb存储设备驱动
    opkg install kmod-fs-vfat             #挂载FAT
    opkg install ntfs-3g                  #挂载NTFS
    opkg install mount-utils              #挂载卸载工具
    opkg install block-mount

    再更新驱动

opkg update
opkg install git-http
cd /tmp
git clone --depth 1 https://github.com/NemoAlex/mwlwifi-bin.git
cd mwlwifi-bin/15.05.1
opkg install kmod-mwlwifi_3.18.23\+10.3.0.17-20160531-1_mvebu.ipk
reboot

2. 用WinSCP连接路由器(还是上面的路由器和密码),文件协议选择SCP,
打开/etc/hotplug.d/block/10-mount文件(如果不存在请新建)
修改为如下内容

#!/bin/sh
 
# Copyright (C) 2009 OpenWrt.org  (C) 2010 OpenWrt.org.cn
 
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 -o nls=utf8 /dev/$device /mnt/$device
                elif [ "$isvfat" ]; then
                        mount -t vfat -o iocharset=utf8,rw,sync,umask=0000,dmask=0000,fmask=0000 /dev/$device /mnt/$device
                else
                        mount /dev/$device /mnt/$device
                fi
  if [ -f /dev/${device}/swapfile ]; then
   mkswap /dev/${device}/swapfile
   swapon /dev/${device}/swapfile
  fi
                ;;
        remove)
  if [ -f /dev/${device}/swapfile ]; then
   swapoff /dev/${device}/swapfile
  fi
                umount /dev/$device
                ;;
    esac
 
fi

保存后,重启路由器。(直接在System下选择Reboot, 或者再ssh连接下输入reboot都可以)

    稍加修改,就可以实现自动挂载。下面这段代码就可以自动挂载ntfs类型的u盘,挂载后的地址为/mnt/sda4.

#!/bin/sh
 
# Copyright (C) 2009 OpenWrt.org  (C) 2010 OpenWrt.org.cn
 
blkdev=`dirname $DEVPATH`
if [ `basename $blkdev` != "block" ]; then
 
    device=`basename $DEVPATH`
    case "$ACTION" in
        add)
                mkdir -p /mnt/sda4
                # 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 -o nls=utf8 /dev/$device /mnt/sda4
                elif [ "$isvfat" ]; then
                        mount -t vfat -o iocharset=utf8,rw,sync,umask=0000,dmask=0000,fmask=0000 /dev/$device /mnt/sda4
                else
                        mount /dev/$device /mnt/sda4
                fi
  if [ -f /dev/${device}/swapfile ]; then
   mkswap /dev/${device}/swapfile
   swapon /dev/${device}/swapfile
  fi
                ;;
        remove)
  if [ -f /dev/${device}/swapfile ]; then
   swapoff /dev/${device}/swapfile
  fi
                umount /dev/$device
                ;;
    esac
 
fi

3. 重启后,再次登陆后点击Mount Points
    此时,应该出现一个网页,类似下图

              

4. 查看设备地址。

    插上U盘之后,此时U盘并不能挂载,如果挂载U盘,需要先找到设备地址,就是使用blkid命令。(如果中间显示某个包无法找到,可以使用opkg update, 之后再次尝试)

        opkg install fdisk

        opkg install e2fsprogs

        opkg install blkid

    之后直接输入blkid,就可以看到设备地址,如下图红框中的/dev/sda4,就是目前插入的U盘的设备地址。

              

5. 挂载U盘。

    如果插入的U盘的文件系统类型为ntfs, 则在ssh连接下使用

        ntfs-3g /dev/sda4 /mnt/sda4

进行挂载

    如果是fat32, 则在ssh连接下使用如下命令安装软件

opkg update
opkg install kmod-nls-base
opkg install kmod-nls-cp437
opkg install kmod-nls-iso8859-1

,再使用blkid查看设备地址,使用 

mount -t vfat /dev/sda4 /mnt/sda4

进行挂载。其它类型的文件系统,请自行查找挂载命令。

    此时刷新System->Mount Points页面,会发现下面多了一行,

              

则说明U盘挂载成功。可以使用WinSCP连接进入/mnt/sda4/目录查看U盘中的相关内容, 如下所示,图中中文文件名出现了乱码,并没有想到什么办法解决,求大神赐教。

            

目前只能实现U盘的手动挂载,网上的方法之前也试过,基本没有效果。如果有谁知道怎么自动挂载,求告知。

6. 安装ftp

    推荐使用vsftpd

    opkg update

    opkg install vsftpd

    修改/etc/vsftpd.conf为如下(推荐使用匿名用户),其中anon_root和local_root为设备的挂载地址。并且不能有空格,务必仔细检查。注意:下面的配置允许登陆的用户上传,下载和删除文件,如果有特定需要,请自行修改

chown_uploads=YES
chown_username=root
ftp_username=nobody
anonymous_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_root=/mnt/sda4
anon_max_rate=512000
local_enable=YES
write_enable=YES
local_umask=022
check_shell=NO
local_root=/mnt/sda4

    再就是启动ftp了,

    /etc/init.d/vsftpd restart

    之后就可以使用ftp客户端或其它方式进行访问了,用户名和密码还是路由器的用户名和密码,这时u盘中的中文文件名可以正常显示。

ps: 如果只是需在局域网中分享文件,推荐使用samba, 设置更为简单。

参考的文章:

1. http://jingyan.baidu.com/article/5225f26b6b273fe6fa090829.html

2. http://www.wifidog.pro/2015/08/13/openwrt-ftp.html

3. http://www.cnblogs.com/double-win/p/3848797.html

4. http://www.tuicool.com/articles/zeqiqev

如果需要允许特定的用户使用ftp: http://blog.csdn.net/luotong86/article/details/53039617

© 著作权归作者所有

a_xianyu
粉丝 0
博文 36
码字总数 18533
作品 0
哈尔滨
程序员
私信 提问
加载中

评论(0)

OrangePi zero puls H5 开启蓝牙

OrangePI蓝牙使用 前言 我使用的板子是OrangePI zero Plus2,基于全志H5。我在上面安装好了armbian系统。我现在要使用蓝牙功能,对接我的蓝牙耳机。 安装Bluez linux上的蓝牙官方协议即为Blu...

osc_9z5br62t
2018/05/29
2
0
oppo r9s 解bl锁,刷入第三方recovery

前言: 在对目前安卓手机刷入第三方REC时,需要简单介绍一下bootloader,recovery,fastboot,rom的概念。其中刷机有卡刷,线刷,9008深度刷机,卡刷指将rom复制到手机SD中进行刷入,线刷则是...

北桥苏
02/04
154
0
TL-WR703Nv1.7刷写openwrt固件

TP-LINK TL-WR703N是一个小型的路由器,可以有线转WiFi,3G转WiFi,很多人拿它刷openwrt系统,然后可以在上面各种搞事。 V1.7以前 通常刷openwrt的做法是, 下载一个openwrt factory固件 打开...

梦里茶
2017/12/12
0
0
从Oracle Public Yum为Oracle Linux建立本地的Yum源

你可以在这里找到本文的原文。 本文是在Oracle Linux 6.5下,通过复制Oracle Public Yum源的方式建立一个完整的本地Yum源。由于只是出于测试和快速上手的目的,只进行了一次同步复制。在同步...

K-X
2015/10/21
158
0
树莓派2B+安装Debain操作系统

写在前面   本篇文章基于当前树莓派官方最新提供的Debain操作系统进行操作,Linux内核版本 4.14.71。本篇文章内容涵盖SD卡写入官方Debain操作系统,开启SSH连接,修改语言环境,改变当前的...

osc_b2jf5efr
2018/11/16
8
0

没有更多内容

加载失败,请刷新页面

加载更多

假使年轻的时候鞭策自己

我自己就是浪费了很多时间的一个人。我不打麻将,我不经常的听戏看电影,几年中难得一次,我不长时间看电视,通常只看半个小时,我也不串门子闲聊天。有人问我:“那么你大部分时间都做了些什...

瑾123
4分钟前
7
0
文章错别字检测软件有哪些?蚁小二真的好用

文章错别字检测软件有哪些?蚁小二真的好用,据市场研究调查发现,我们对文章当中错别字的检测和修改这样的需求是一直存在的,只是市场上面还没有一个比较好用的软件来辅助我们做错别字检测。...

一键分发工具-蚁小二
6分钟前
6
0
文章原创度检测工具有哪些?这些工具你可以拥有

文章原创度检测工具有哪些?这些工具你可以拥有,随着自媒体行业的发展,现在很多自媒体人都进入到互联网行业,但是随着大家的深入发展,会发现有时候自己的文章在自媒体平台上推荐很少,其实...

易撰
7分钟前
9
0
FTP工具软件,FTP工具软件下载!

IIS7服务器管理工具是一款FTP的客户端软件,能够批量执行FTP的命令!可以提高FTP的传输效率! 同时,它也可以作为VNC的客户端,能够进行相关的VNC操作;同时,它还可以批量连接Windows和Lin...

Raymond13
8分钟前
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部