今天我们来讨论Linux系统之间的文件共享,包含:SCP、FTP、rz / sz、wget

一、SCP

其实我在写SSH协议常见问题排错章节中已介绍其SCP用法。

现我把SCP常用语法格式,给大家说下

scp用法举例:

1)从本地复制到远端

1.复制文件

  scp '本地文件' 远端用户名@远端设备IP:远端文件夹
#举例:scp /home/test.txt root@10.10.10.2:/home

2.复制文件夹

## -r:递归复制整个目录
scp -r '本地文件夹' 远端用户名@远端设备IP:远端文件夹
2)从远端复制到本端

从远程复制到本地,只要将从本地复制到远程的命令的后2个参数调换顺序即可;

1.复制文件

scp 远端主机名@远端设备IP:/远端主机文件 /存放在本地的文件夹
#举例: scp root@10.10.10.1:/test/test1.txt /tmp

2.复制文件夹

scp -r 远端主机名@远端设备IP:/远端主机文件夹/ /存放在本地的文件夹

二、FTP

目前主流的FTP服务器端软件有很多,包括Vsftpd、FileZilla Server、Server-U等,咱们今天主要讲下使用较为广泛的Vsftpd

Vsftpd:very secure FTP daemon,非常安全的FTP服务进程。

为啥说这货是非常安全的FTP服务进程?小伙伴们可自行Google哦

好了,不说废话了。咱直接实战

vsftpd服务安装配置

Vsftpd安装有两种方式:一是基于yum方式安装;二是基于源码编译安装。

两种方法最终实现效果是一样的,本文采用yum安装Vsftpd,具体步骤如下:

1)在shell命令行中执行如下命令

[root@qll251 ~]# yum -y install vsftpd



2)启动Vsftpd服务、查看进程是否启动 及查看使用的端口

[root@qll251 ~]# systemctl start vsftpd
[root@qll251 ~]# ps -aux |grep vsftpd
root 1960 0.0 0.0 53284 576 ? Ss 13:42 0:00 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
root 1962 0.0 0.0 112728 972 pts/3 S+ 13:43 0:00 grep --color=auto vsftpd
[root@qll251 ~]#
[root@qll251 ~]# netstat -antup | grep vsftpd
tcp6 0 0 :::21 :::* LISTEN 1960/vsftpd
[root@qll251 ~]#

3)Vsftpd服务的配置文件:

/etc/vsftpd/vsftpd.conf:vsftpd 的核心配置文件

4)客户端访问FTP服务器三种方式

  1. 匿名用户访问FTP
  2. 系统用户访问FTP
  3. 虚拟用户模式访问FTP

4.1 匿名用户访问FTP

vsftpd默认以匿名用户访问。

默认FTP服务器的共享路径:/var/ftp/pub

修改etc/vsftpd/vsftpd.conf配置文件

anonymous_enable=YES          //允许匿名用户登录FTP服务器。默认为YES
local_enable=NO //禁止本地用户登录FTP服务器。
anon_other_write_enable=YES //允许匿名用户拥有写权限,默认值为NO。
anon_upload_enable=YES //允许匿名用户上传文件。只有write_enable设置为YES时,该配置项才有效。而且匿名用户对相应的目录必须有写权限。默认为NO。
anon_mkdir_write_enable=YES //允许匿名用户创建目录。只有在write_enable设置为YES时有效。且匿名用户对上层目录有写入的权限。默认为NO。
anon_root=/var/www/html //修改匿名模式下的共享路径。注意:本次试验未修改默认共享路径。

上面提到,如果匿名用户需要上传、修改及删除等权限时,需要对/var/ftp/pub目录有写权限,使用chown和chmod任意一种命令均可设置权限。

 chown -R ftp:ftp /var/ftp/pub/
chmod +w /var/ftp/pub/

如上,vsftpd .conf配置完毕,同时var/ftp/pub 权限设置完毕。接下来我们重启vsftpd服务并且关闭防火墙及关闭selinux即可。

systemctl restart vsftpd //重启vsftpd服务
systemctl stop firewalld && systemctl disable firewalld.service //关闭防火墙并禁止开启自启动`

编辑 /etc/selinux/config配置文件

改:SELINUX=enforcing

为:SELINUX=disabled

并reboot重启系统使配置永久生效。

重启服务器,我们未设置vsftpd开机自启动哦,我们需要执行systemctl start vsftpd,启动vsftpd服务,向外提供FTP服务。

本次试验由于我未关闭系统selinux,导致匿名用户访问FTP服务器后,无法进行创建目录及删除文件操作。折腾了好久,才想明白。

vsftpd是一个FTP服务器程序,SELinux是CentOS的防火墙组件。因此vsftpd 默认被 SELinux 拦截。所有我们要关闭selinux。

Windows客户端登录测试:

以上便是匿名用户访问FTP的方式,接下来我们来讨论系统用户访问FTP如何配置

4.2 系统用户访问FTP

1.创建系统用户,设置登录密码

2.修改vsftpd.conf配置文件

3.重启vsftpd服务;这种模式下,登录访问的目录就是/home/新建用户/

详细配置步骤

(1) 创建系统用户ftp_user,设置密码123456

[root@qll251 ~]# useradd ftp_user
[root@qll251 ~]# echo "123456" | passwd --stdin ftp_user
更改用户 ftp_user 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@qll251 ~]#

(2)修改/etc/vsftpd/vsftpd.conf配置文件代码如下:

anonymous_enable=NO       //禁止匿名用户登录FTP服务器。
local_enable=YES //允许本地用户登录FTP服务器。
write_enable=YES //对登录用户开启写权限。属全局性设置。
local_root=/var/www/html //设置本地用户的根目录为/var/www/html,注意:要保证ftp_user用户对此文件夹具有读写权限(本次试验未修改此项,我共享的目录是/home/ftp_user)

(3)重启vsftpd服务后,Windows客户端验证登录

4.3 虚拟用户模式访问FTP

vsftpd虚拟用户原理是通过映射到其中一个真实用户及设置相应的权限来实现访问验证,虚拟用户不能登录Linux系统。

我个人认为如果仅为了数据间的传输,以上两种方式已经满足业务需求。大家刚开始学知识的时候,够用就好。所有我就不讨论这种方式的配置步骤了,贪多嚼不烂

三、rz / sz

rz / sz 是指安装lrzsz软件包后,提供的上传 下载的两个命令。

可以用在windows与linux 系统之间的文件传输,体积小速度快

rz:该命令用于从本地选择文件上传到服务器。

sz:将选定的文件发送到本地机器。

1.下面我们通过YUM来安装lrzsz

yum -y install lrzsz



2.执行rz命令

从本地选择文件上传到服务器。

报错了…

提示:“▒CCCCCCCCCCC23be50ive.**B0100000023be50”

我用的是MobaXterm连接的服务器,要不咱用putty再试试?

putty报了一样的错误,最后大杀招。Xshell !!!

下图是Xshell终端的连接

相信正在认真阅读的小伙伴已经发现问题所在了。

rz 与 sz 需要终端支持才可以使用。终端就是连接远程服务器的客户端,例如 XShell、Putty、MobaXterm等。

通过实践,我们得到结论:以上三款终端软件只有Xshell可以正常使用rz,sz进行文件传输。

3.执行sz命令

将选定的文件发送到本地机器的桌面上。

四、wget

wget是一个下载文件的工具。

wget支持HTTP,HTTPS,和FTP协议,支持代理服务器以及断点续传功能。

安装wget

[root@qll251 ~]# yum -y install wget

基本语法:

[root@qll251 ~]# wget --help
GNU Wget 1.14,非交互式的网络文件下载工具。
用法: wget [选项]... [URL]...

常用参数:

wget -r 	//递归下载服务器上所有目录和文件
wget -b //后台下载
wget -c //指定断点续传功能,该功能要求服务器支持断点续传

举个例子:

 比如说,我们想下载QQ·Linux版安装包,可直接复制该下载链接到Linux系统中,命令如下:
wget https://qd.myapp.com/myapp/qqteam/linuxQQ/linuxqq_2.0.0-b1-1024_x86_64.rpm

下载已完成,看下图:

(今天我们只讨论wget的使用方法。至于Linux版QQ的安装,感兴趣的小伙伴自行安装体验~

原则上只要是下载链接,都可以用wget下载到服务器中。

于是我有个猜想,把百度云盘上的下载链接提取出来,使用wget是否可达到不限速的效果?感兴趣的小伙伴可自行尝试哦

更多IT技术,请微信搜索公众号“秦露露”或者扫描下方二维码关注

5.文件共享总结中篇-Linux服务器文件共享的更多相关文章

  1. Linux 与 Linux Windows 文件共享 小知识

    Linux 与 Linux Windows 文件共享   前提说明:windows主机信息:192.168.1.100 帐号:abc 密码:123 共享文件夹:sharelinux主机信息:192.1 ...

  2. Windows和linux的文件共享(1)

    今天是我学习linux以来第一次写博客.带着一种激动心情我开始尝试着去完成第一篇博客.从易到难.所以第一次我就主要学习了Windows之间的文件共享. Window之间的文件共享是通过局域网实现的.局 ...

  3. Win7、Win10、Linux局域网文件共享

    目录 1.WIN7系统局域网文件共享 2.WIN10系统局域网文件共享 3.Linux 局域网文件共享 WIN7系统局域网文件共享 步骤一: 打开网络和共享中心----更改高级共享设置 步骤二: 选择 ...

  4. windows和linux实现文件共享

    linux和windows实现共享,需要安装samba服务器 安装步骤: 1.查看是否已经安装samba rpm -q samba 2.如果已经安装,如果你想再次安装,可以卸载 rpm -e samb ...

  5. Linux服务器的弱口令检测及端口扫描

    一.弱口令检测--John the Ripper John the Ripper工具可以帮助我们扫描出系统中密码安全性较低的用户,并将扫描后的结果显示出来. 1.安装John the Ripper: ...

  6. Linux学习之八-配置FTP连接Linux服务器

    配置ftp连接Linux服务器 通过配置ftp服务器,可以实现局域网内共享文件,甚至不同用户具有不同权限,需要的工具有Windows平台ftp客户端FileZilla(免费开源) 下载地址:https ...

  7. 【linux运维】Linux服务器玩转vsftpd安装与配置

    Linux服务器搭建ftp详细教程. 前言 本文,主要以vsftp软件为主进行讲解,版本为3.0.2.以介绍设置虚拟用户.权限验证为主,linux权限知识默认大家都有所了解.vsftpd设置有两种模式 ...

  8. Linux服务器安全配置

    众所周知,网络安全是一个非常重要的课题,而服务器是网络安全中最关键的环节.Linux被认为是一个比较安全的Internet服务器,作为一种开放源代码操作系统,一旦Linux系统中发现有安全漏洞,Int ...

  9. .NET跨平台之旅:将QPS 100左右的ASP.NET Core站点部署到Linux服务器上

    今天下午我们将生产环境中一个单台服务器 QPS(每秒请求数)在100左右的 ASP.NET Core 站点部署到了 Linux 服务器上,这是我们解决了在 .NET Core 上使用 EnyimMem ...

随机推荐

  1. Zookeeper 的典型应用场景 ?

    Zookeeper 是一个典型的发布/订阅模式的分布式数据管理与协调框架,开发人员 可以使用它来进行分布式数据的发布和订阅. 通过对 Zookeeper 中丰富的数据节点进行交叉使用,配合 Watch ...

  2. 访问修饰符 public,private,protected,以及不写(默认) 时的区别?

    修饰符 当前类 同 包 子 类 其他包 public √ √ √ √ protecte d √ √ √ × default √ √ × × private √ × × × 类的成员不写访问修饰时默认为 ...

  3. jQuery--事件案例(鼠标提示)

    1.文字提示 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://ww ...

  4. HTML 5中不同的新表单元素类型是什么?

    HTML 5推出了10个重要的新的表单元素: Color. Date Datetime-local Email Time Url Range Telephone Number Search

  5. RENIX非对称时延测试——网络测试仪实操

    本文主要介绍RENIX软件如何进行非对称时延测试.文章分为四部分,第一部分为非对称时延概述,第二部分为测试说明,第三部分为测试配置,第四部分为测试报告. 第一部分:非对称时延概述 1.RFC2544测 ...

  6. List集合工具类之"将list集合按"指定长度"进行切分Lists.partition和ListUtils.partition"

    将list集合按"指定长度"进行切分,返回新的List<List<类型>>集合,如下的:  方法1:List<List<Integer>& ...

  7. CommonsCollection2反序列链学习

    CommonsCollection2 1.前置知识 CmonnosCollection2需要用到Javassist和PriorityQueue 1.1.Javassist Javassist是一个开源 ...

  8. 攻防世界shrine

    shrine import flask import os app = flask.Flask(__name__) app.config['FLAG'] = os.environ.pop('FLAG' ...

  9. 雅虎WEB前端网站优化—34条军规

    Yslow工具 1.Minimize HTTP Requests 减少HTTP请求 图片.css.script.flash等等这些都会增加http请求数,减少这些元素的数量就能减少响应时间.把多个JS ...

  10. 后端渲染神器!Dust

    Dust一个适用于浏览器与node的异步模板框架. 先上实例 后端模板: {@inject api="http://api.myserver.com/get_message"} & ...