Linux之文件共享

目录

一、NFS

1.服务端

1.添加一块硬盘,直接格式化,创建一个共享目录/data,将硬盘挂载到/data目录下。

2.启动服务

3.编辑配置文件

4.重启服务

2.客户端

1.安装服务

2.启动服务

3.挂载

4.查看

5.开机自动挂载

6.自动挂载

二、ftp,lftp

1.[ftp服务端]安装vsftpd

1.安装服务

2.创建共享目录

3.编辑配置文件

4.重启服务

2.lftp客服端

1.安装服务

2.linux测试

3.windows输入


一、NFS

NFS 
NFS:Network File System 网络文件系统,NFS 和其他文件系统一样,是在 Linux 内核中实现的,因此 NFS 很难做到与 Windows 兼容。NFS 共享出的文件系统会被客户端识别为一个文件系统,客户端可以直接挂载并使用。

#NFS 文件系统仅支持基于 IP 的用户访问控制,NFS 的客户端主要为Linux。

因为NFS有很多功能,不同的功能需要使用不同的端口。因此NFS无法固定端口。而RPC会记录NFS端口的信息,这样就能够通过RPC实现服务端和客户端的RPC来沟通端口信息。

那RPC和NFS之间又是如何之间相互通讯的?

首先当NFS启动后,就会随机的使用一些端口,然后NFS就会向RPC去注册这些端口。RPC就会记录下这些端口。并且RPC会开启111端口,等待客户端RPC的请求,如果客户端有请求,那服务端的RPC就会将记录的NFS端口信息告知客户端。

实验环境准备两台机器,关闭防火墙selinux

1.服务端

1.添加一块硬盘,直接格式化,创建一个共享目录/data,将硬盘挂载到/data目录下。

[root@nfs-server ~]# yum -y install rpcbind  #安装rpc协议的包
[root@nfs-server ~]# yum -y install nfs-utils #安装nfs服务。

2.启动服务

[root@nfs-server ~]# systemctl start nfs
[root@nfs-server ~]# systemctl start rpcbind

3.编辑配置文件

[root@nfs-server ~]# vim /etc/exports
/data 10.12.155.95/24(rw,no_root_squash,sync)  #允许某个ip
/data 10.12.155.0/24(rw,no_root_squash,sync)   #允许某个网段
/data *(rw,no_root_squash,sync)                #允许全部ip

可选参数注释:
ro:只读
rw:读写
*:表示共享给所有网段。
sync:实时写入共享
root_squash: 对于使用分享目录的使用者如果是root用户,那么这个使用者的权限将被压缩成为匿名使用者,只读权限。
no_root_squash:使用分享目录的使用者,如果是 root 的话,那么对于这个分享的目录来说,他就具有 root 的权限。

4.重启服务

[root@nfs-server ~]# systemctl restart nfs-server #重启服务。
[root@nfs-server ~]# systemctl enable nfs-server #制作开机启动

2.客户端

1.安装服务

[root@client ~]# yum -y install rpcbind
[root@client ~]# yum -y install nfs-utils

2.启动服务

[root@nfs-client ~]# systemctl start nfs
[root@nfs-client ~]# systemctl start rpcbind

3.挂载

[root@nfs-client ~]# mount -t nfs 10.12.155.94:/nfs-dir /mnt  #挂载到/mnt下

4.查看

[root@nfs-client ~]# df -Th
[root@nfs-client ~]# umount -l /mnt  #取消挂载 -l强制

5.开机自动挂载

[root@nfs-client ~]# vim /etc/fstab
10.12.155.94:/data  /mnt  nfs  defaults  0   0

6.自动挂载

[root@nfs-client ~]# mount -a

#注意:如果客户端设置了开机自动挂载,那么服务端的nfs不能关闭,否则客户端开机的时候会发生问题,解析不出来

二、ftp,lftp

  • 文件传输协议(File Transfer Protocol,FTP),基于该协议FTP客户端与服务端可以实现共享文件、上传文件、下载、删除文件。FTP服务器端可以同时提供给多人共享使用。

  • FTP服务是Client/Server(简称C/S)模式,基于FTP协议实现FTP文件对外共享及传输的软件称之为FTP服务器源端,客户端程序基于FTP协议,则称之为FTP客户端,FTP客户端可以向FTP服务器上传、下载文件。

FTP Server
作用:提供文件共享服务,实现上传下载
端口:
21号,建立tcp连接  默认端口
20号:传输数据

软件包:        vsftpd
FTP端口:       控制端口:21/tcp 
配置文件:       /etc/vsftpd/vsftpd.conf

1.[ftp服务端]安装vsftpd

1.安装服务

[root@ftp-server ~]# yum install -y vsftpd
[root@ftp-server ~]# systemctl start vsftpd
[root@ftp-server ~]# systemctl enable vsftpd

2.创建共享目录

#FTP默认共享目录:/var/ftp
[root@ftp-server ~]# mkdir /var/ftp/upload  #创建自己的共享目录
[root@ftp-server ~]# chown -R ftp.ftp /var/ftp/  #修改共享目录的属主与属组

3.编辑配置文件

[root@ftp-server ~]# vim /etc/vsftpd/vsftpd.conf
anon_umask=022               #添加匿名用户上传下载目录权限掩码
anon_upload_enable=YES       #允许匿名用户上传文件
anon_mkdir_write_enable=YES  #允许匿名用户创建目录
anon_other_write_enable=YES  #允许匿名用户对目录进行操作

4.重启服务

[root@ftp-server ~]# systemctl restart vsftpd

2.lftp客服端

1.安装服务

[root@ftp-client ~]# yum -y install lftp 

2.linux测试

[root@ftp-client ~]# lftp 10.12.155.94
get       下载单个文件
mget      下载多个文件
mirror    下载目录
put       上传单个文件
mput      上传多个文件
mirror -R 上传目录

mkdir     创建目录

rm -rf    删除文件或者目录

3.windows输入

ftp://10.12.155.94

你可能感兴趣的:(linux,运维,服务器)