计算机‎ > ‎软件‎ > ‎Linux‎ > ‎

刷 WR703N 成 OpenWRT 路由器 续八

发布者:guo rue,发布时间:2015年12月17日 下午11:24   [ 更新时间:2015年12月17日 下午11:30 ]
scp用法
由本机向服务器传输 file.txt 文件
scp -P 22 /home/user1/from/file.txt user@192.168.100.100:/home/user2/target_dir
从服务器拷贝文件 file.txt 到本机文件夹/home/use1/to中
scp -P 22 user@192.168.100.100:/home/user2/test/file.txt /home/use1/to

安装 SFTP 服务器
opkg update
opkg install openssh-server
opkg install openssh-sftp-server
opkg install vsftpd

You might want to start and enable the vsftpd service in web-interface "System/Startup"
你可能需要登陆路由器的网页接口 "系统-其动向" 开始和启用 vsftpd 服务器

To set the default FTP folder add the following to the config file: "local_root=/mnt/usb1"
要设置默认的 FTP 文件夹,添加这行信息到配置文件
local_root=/mnt/usb1

Configuration file is located in "/etc/vsftpd.conf"
配置文件位置在
/etc/vsftpd.conf

The vsftpd service can be controlled with the usual commands:
这是 vsftpd 服务通常用的控制命令:

Start the service
启动服务
/etc/init.d/vsftpd start

Stop the service
停止服务
/etc/init.d/vsftpd stop

Restart the service
重新启动服务
/etc/init.d/vsftpd restart

Reload configuration files (or restart if that fails)
重新加载配置文件(或如果失败重新启动)
/etc/init.d/vsftpd reload

Enable service autostart
使服务自动启动
/etc/init.d/vsftpd enable

Disable service autostart
禁用服务自动启动
/etc/init.d/vsftpd disable

修改vsftpd的配置文件,以下是我的配置
nano /etc/vsftpd.conf
background=YES
listen=YES
anonymous_enable=NO #允许匿名访问
#ftp_username=nobody #定义匿名用户名
#anon_root=/home/anymous #定义匿名用户根目录
#anon_upload_enable=YES #允许匿名用户上传
#anon_mkdir_write_enable=YES #允许匿名用户新建文件夹
#anon_max_rate=512000 #匿名用户上传/下载速度限制
local_enable=YES #允许本地用户登录
local_root=/home/nong #本地用户主目录
#chroot_local_user=yes #限制用户只能访问主目录
#accept_timeout=60
#idle_session_timeout=300
#max_clients=600
#max_per_ip=5
write_enable=YES #允许上传
local_umask=022
check_shell=NO
#chown_uploads=YES #上传时更改文件所属权
#chown_username=root #上传时更改文件所属权为 root
#dirmessage_enable=YES
ftpd_banner=Welcome to wlan4.guoruei.net FTP service.
session_support=NO
#syslog_enable=YES
#userlist_enable=YES
#userlist_deny=NO
#userlist_file=/etc/vsftp.users
#xferlog_enable=YES
#xferlog_file=/var/log/vsftpd.log
#xferlog_std_format=YES

完事之后重启 vsftpd 吧
/etc/init.d/vsftpd restart

在命令行下使用 sftp

登陆
sftp -oport=22 root@192.168.4.1
如果要防止 sftp 自动断开连接,加 -oServerAliveInterval=60 即隔 60 秒向主机发送请求,要求主机响应

查询远程主机的当前工作目录
pwd
查询本机当前工作目录
lpwd

改变路径可以用
cd
改变本机路径可以用
lcd

ls rm rmdir mkdir 这些命令都可以使用
调用本机是加 l 即 lls lrm

sftp 将本地文件上传到服务器
sftp> put /home/loongson/Linuxgl.pdf /home/nong
这条语句将把本地 /home/loongson/ 目录下的 linuxgl.pdf 文件上传至远程主机 /home/nong 目录下

上传 dir 目录中的文件和子目录,并不上传 dir 目录本身
put -r dir/. /home/nong
在一个已连接的 sftp 中执行这个命令,dir/ 后面必须有 . 否则会报错

sftp 从服务器上下载文件
sftp> get /home/nong/test.txt /home/loongson/
将从远程主机的 /home/nong/ 目录下的 test.txt 下载到本地 /home/loongson/ 目录下

下载远程主机整个文件夹内的数据
get -r dir
get -r *
get -r ./. /home/loongson/

离开sftp
exit quit bye 均可。
详细情况可以查阅 man sftp