访问网络文件共享服务

简介:

第七单元

访问网络文件共享服务

 

 

 挂载网络文件系统

网络文件系统是由网络附加存储服务器通过网络向多个主机提供的一种文件系统 , 而不是由块设备 ( 例如硬盘驱动器 ) 提供的。客户端通过特殊的文件系统协议和格式访问远程存储

Linux 中有两种主要协议可用访问网络文件系统 : NFS 和CIFS

 

1 )CIFS: 通用网络文件系统

CIFS 是针对 Microsoft Windows 操作系统的本地网络文件系统Linux 系统可以挂载和访问 CIFS 文件共享 , 如同常见的网络文件系统一样。

samba-client RPM 软件包所包含的 smbclient 实用程序可用来识别由 Windows 或Samba 文件服务器提供的 CIFS 共享

 

客户端:

1 通过samba-client方式共享

yum    install    samba-client    -y         ###安装samba-client###

smbclient    -L     //172.25.254.250         ###登入远程服务器172.25.254.250###

smbclient        //172.25.254.250/westos1   ###进入westos1###

put          anaconda-ks.cfg                 ###往westos1上传文件###

rm           anaconda-ks.cfg                 ###在westo1上删除文件###

过程如下:

[root@localhost ~]# smbclient -L //172.25.254.250    ###登入172.25.254.250

Enter root's password:

Domain=[MYGROUP] OS=[Unix] Server=[Samba 4.1.1]

 

Sharename       Type      Comment

---------       ----      -------

westos1         Disk      test share

westos2         Disk      test share

westos3         Disk      test share

westos4         Disk      test share

westos5         Disk      test share

westos6         Disk      test share

westos7         Disk      test share

westos8         Disk      test share

westos9         Disk      test share

westos10        Disk      test share

IPC$            IPC       IPC Service (Samba Server Version 4.1.1)

Domain=[MYGROUP] OS=[Unix] Server=[Samba 4.1.1]

 

Server               Comment

---------            -------

 

Workgroup            Master

---------            -------

[root@localhost ~]# smbclient //172.25.254.250/westos1   ###进入westos1###

Enter root's password:                                

Domain=[MYGROUP] OS=[Unix] Server=[Samba 4.1.1]

smb: \> ls                                  ###查看远程服务器的文件###

  .                                   D        0  Sun Apr 30 01:36:27 2017

  ..                                  D        0  Wed Dec  2 20:43:01 2015

  file                                A       52  Sun Apr 30 01:35:24 2017

  userfile                            A       19  Sun Apr 30 01:35:25 2017

  anaconda-ks.cfg                     A     8619  Sun Apr 30 01:36:01 2017

  file2                               N        0  Sun Apr 30 01:36:32 2017

  file3                               N        0  Sun Apr 30 01:36:32 2017

  file4                               N        0  Sun Apr 30 01:36:32 2017

  file5                               N        0  Sun Apr 30 01:36:32 2017

  file6                               N        0  Sun Apr 30 01:36:32 2017

  file7                               N        0  Sun Apr 30 01:36:32 2017

  file8                               N        0  Sun Apr 30 01:36:32 2017

  file9                               N        0  Sun Apr 30 01:36:32 2017

  file10                              N        0  Sun Apr 30 01:36:32 2017

  fileeeeee                           N        0  Sun Apr 30 01:36:17 2017

 

100221120 blocks of size 1024. 21816820 blocks available

smb: \> !ls                                  ###查看本地文件###

anaconda-ks.cfg  etc    file.rej      Public

boot file    kernel-3.10.0-123.el7.x86_64.rpm  Templates

Desktop file1    lib      Videos

Documents file3    Music

Downloads file.path  Pictures

smb: \> put anaconda-ks.cfg

putting file anaconda-ks.cfg as \anaconda-ks.cfg (27.5 kb/s) (average 27.5 kb/s)

smb: \> rm anaconda-ks.cfg

NT_STATUS_NO_SUCH_FILE listing \anaconda-ks.cfg

smb: \> quit

 

 

 

2 通过挂载的方式共享

mount        //172.25.254.250/westos1   /mnt/    -o     username=guest ###以匿名用户身份将westos1挂载到本地的/mnt下###

touch /mnt/file3

 

 

过程如下:

[root@localhost ~]# mount //172.25.254.250/westos1

mount: can't find //172.25.254.250/westos1 in /etc/fstab

[root@localhost ~]# mount //172.25.254.250/westos1 -o username=guest

mount: can't find //172.25.254.250/westos1 in /etc/fstab

[root@localhost ~]# mount //172.25.254.250/westos1 /mnt/ -o username=guest

[root@localhost ~]# touch /mnt/file3

[root@localhost ~]# touch /mnt/filehello

 

3 开机自动挂载

 

vim      /etc/fstab

mount        -a          ###立即生效####

 

/etc/fstab下写的内容:

//172.25.254.250/westos1     /mnt   cifs    defaults,username=guest 0 0

 

 

过程如下:

[root@localhost ~]# umount /mnt/

[root@localhost ~]# vim /etc/fstab    

[root@localhost ~]# mount -a           ###立即生效####

[root@localhost ~]# df

Filesystem               1K-blocks     Used Available Use% Mounted on

/dev/vda1                 10473900  4064104   6409796  39% /

devtmpfs                    922268        0    922268   0% /dev

tmpfs                       942660       84    942576   1% /dev/shm

tmpfs                       942660    17040    925620   2% /run

tmpfs                       942660        0    942660   0% /sys/fs/cgroup

/dev/sr0                   3654720  3654720         0 100% /run/media/root/RHEL-7.0 Server.x86_64

//172.25.254.250/westos1 100221120 78407756  21813364  79% /mnt

 

 

2)nfs:网络文件系统

NFS ( Network File System ) 是由 Linux 、 UNIX 及其他类似操作系统使用的互联网标准协议 , 可作为它们的本地网络文件系统。

它是一种活动扩展之下的开放标准 , 可支持本地 Linux 权限和文件系统功能

 

有两种方法用来确定由服务器提供的 NFS 导出 , 或叫做文件共享。如果服务器支持 NFSv3 或 NFSv2 , 您可以使用 showmount -e  server 命令来获取导出项列表。如果服务器支持 NFSv4 , 则可以将 / 导出项挂载到一个空目录并浏览所有导出文件系统的内容

 

1   访问 NFS 导出的命令

 yum   install     nfs-utils     -y       ###安装nfs####

 showmount    -e         ###登入###

mount                     ###挂载###

 

过程如下:

[root@localhost ~]# showmount -e 172.25.254.250   ###-e指连接到指定远程主机###

Export list for 172.25.254.250:

/nfsshare/nfs5 *

/nfsshare/nfs4 *

/nfsshare/nfs3 *

/nfsshare/nfs2 *

/nfsshare/nfs1 *

/content       172.25.0.0/255.255.0.0  

[root@localhost ~]# mount 172.25.254.250:/nfsshare/nfs1 /mnt/   ###挂载,不用写客户端#####

[root@localhost ~]# cd /mnt/

[root@localhost mnt]# touch haha{1..10}

[root@localhost mnt]# ls

file1  haha10  haha3  haha5  haha7  haha9

haha1  haha2   haha4  haha6  haha8

[root@localhost mnt]# rm -fr *

 

 

2 开机自动挂载

vim      /etc/fstab

mount     -a

 

/etc/fstab 下写的内容:

172.25.254.250:/nfsshare/nfs1      /mnt      defaults    0    0

[root@localhost mnt]# cd

[root@localhost ~]# umount /mnt/

[root@localhost ~]# vim /etc/fstab

[root@localhost ~]# mount -a

[root@localhost ~]# df

Filesystem                    1K-blocks     Used Available Use% Mounted on

/dev/vda1                      10473900  4065080   6408820  39% /

devtmpfs                         922268        0    922268   0% /dev

tmpfs                            942660       84    942576   1% /dev/shm

tmpfs                            942660    17044    925616   2% /run

tmpfs                            942660        0    942660   0% /sys/fs/cgroup

/dev/sr0                        3654720  3654720         0 100% /run/media/root/RHEL-7.0 Server.x86_64

172.25.254.250:/nfsshare/nfs1 100221952 78411776  21810176  79% /mnt

[root@localhost ~]# touch file

[root@localhost ~]# touch file1

[root@localhost ~]# rm -fr  file  file1

 

 

 

 

  自动挂载网络存储

使用 mount 命令 , 需要具有 root 用户权限以连接到网络共享。或者 , 我们可以向/etc/fstab 添加条目 , 但是随后与网络服务器的连接将始终处于活动状态。当某一程序试图访问网络共享中的文件时 , 可以将 automounter ( 或 autofs )服务配置为 “ 按需 ” 挂载网络共享。当共享不再使用并处于不活动状态一定时间以后 ,automounter 会对共享解除挂载

不活动状态的时间间隔默认为五分钟 , 但该时间间隔可在/etc/sysconfig/autofs 中进行全局更改

 

 

1  使用/net映射  

/net,自挂载挂载点 , 然后手动配置间接自动挂载映射

默认情况下 , autofs 服务运行时 , 存在一个名为 /net 的特殊目录 , 但是该目录将显示为空,访问不存在的目录 /net/instructor.example.com 会使自动挂载器创建该子目录 , 并显示该 NFS 服务器上的所有NFS 导出项。这有时称为 “ 浏览 ” 共享

/net/instructor.example.com 之下的所有文件和目录停止使用且超时期满后 ,autofs 将共享解除挂载并删除空的 /net/instructor.example.com 子目录

 

yum   install   autofs.x86_64   -y      ###安装autofs.x86_64###

systemctl    start      autofs          ###开启服务###

cd     /net                            ###进入该目录下###

ls                                     ###查看发现为空###

cd          172.25.254.250             ###访问不存在的目录172.25.254.250

ls                                     ##查看发现有内容###

cd           nfsshare/nfs1             

 

 

过程如下:

[root@localhost ~]# systemctl start autofs          ###开启服务###

[root@localhost ~]# cd /net/

[root@localhost net]# cd 172.25.254.250

[root@localhost 172.25.254.250]# ls

content  nfsshare

[root@localhost 172.25.254.250]# cd nfsshare/nfs1

[root@localhost nfs1]# ls

[root@localhost nfs1]# touch file1

[root@localhost nfs1]# ls

file1  file2

[root@localhost nfs1]# df                     ###查看是否挂载###

Filesystem                    1K-blocks     Used Available Use% Mounted on

/dev/vda1                      10473900  4070616   6403284  39% /

devtmpfs                         922268        0    922268   0% /dev

tmpfs                            942660       84    942576   1% /dev/shm

tmpfs                            942660    17052    925608   2% /run

tmpfs                            942660        0    942660   0% /sys/fs/cgroup

/dev/sr0                        3654720  3654720         0 100% /run/media/root/RHEL-7.0 Server.x86_64

172.25.254.250:/nfsshare/nfs1 100221952 78411776  21810176  79% /net/172.25.254.250/nfsshare/nfs1

[root@localhost nfs1]# cd

[root@localhost ~]# vim /etc/sysconfig/autofs     ###编辑挂载时间###

[root@localhost ~]# df

Filesystem                    1K-blocks     Used Available Use% Mounted on

/dev/vda1                      10473900  4070636   6403264  39% /

devtmpfs                         922268        0    922268   0% /dev

tmpfs                            942660       84    942576   1% /dev/shm

tmpfs                            942660    17052    925608   2% /run

tmpfs                            942660        0    942660   0% /sys/fs/cgroup

/dev/sr0                        3654720  3654720         0 100% /run/media/root/RHEL-7.0 Server.x86_64

172.25.254.250:/nfsshare/nfs1 100221952 78415872  21806080  79% /net/172.25.254.250/nfsshare/nfs1

 

 

2  间接映射

 

除了使用 /net 映射 , 系统管理员也可以手动配置任意目录, 以便访问时在其子目录上 “ 按需 ” 挂载特定共享

vim        /etc/auto.master

/etc/auto.master下写的内容:

最终挂载点的上一级目录           有最终挂载点的一个目录(例 /etc/auto.westos)

vim       /etc/auto.westos(你在/etc/auto.master下编辑的最终挂载点目录)

编辑内容:

nfs1                   172.25.254.250:/nfsshare/nfs1       ###将远程服务器的共享目录挂载到nfs1,这样只能挂载nfs2###

*                172.25.254.250:/nfsshare/&        ###可以挂载任意目录###

systemctl   restart    autofs.service        ###重启服务###

 

 

 

 

过程如下:

[root@localhost ~]# mkdir /westos              

[root@localhost ~]# vim /etc/auto.master

[root@localhost ~]# vim /etc/auto.westos

#####此时/etc/auto.westos下的内容为:nfs1            172.25.254.250:/nfsshare/nfs1####

[root@localhost ~]# systemctl restart autofs.service

[root@localhost ~]# cd /westos/

[root@localhost westos]# ls                       ###/westos下没有nfs1目录####

[root@localhost westos]# cd nfs1

[root@localhost nfs1]# pwd

/westos/nfs1

[root@localhost nfs1]# df

Filesystem                    1K-blocks     Used Available Use% Mounted on

/dev/vda1                      10473900  4070672   6403228  39% /

devtmpfs                         922268        0    922268   0% /dev

tmpfs                            942660       84    942576   1% /dev/shm

tmpfs                            942660    17052    925608   2% /run

tmpfs                            942660        0    942660   0% /sys/fs/cgroup

/dev/sr0                        3654720  3654720         0 100% /run/media/root/RHEL-7.0 Server.x86_64

172.25.254.250:/nfsshare/nfs1 100221952 78409728  21812224  79% /westos/nfs1

[root@localhost nfs1]# cd nfs2

-bash: cd: nfs2: No such file or directory

nfs1   172.25.254.250://nfsshare/nfs1

[root@localhost nfs1]# vim /etc/auto.westos

#####此时/etc/auto.westos下的内容为:*                172.25.254.250:/nfsshare/&#####

[root@localhost nfs1]# systemctl restart autofs.service

[root@localhost nfs1]# cd

[root@localhost ~]# cd /westos/nfs2

[root@localhost nfs2]# pwd

/westos/nfs2

[root@localhost nfs3]# df

Filesystem                    1K-blocks     Used Available Use% Mounted on

/dev/vda1                      10473900  4070672   6403228  39% /

devtmpfs                         922268        0    922268   0% /dev

tmpfs                            942660       84    942576   1% /dev/shm

tmpfs                            942660    17052    925608   2% /run

tmpfs                            942660        0    942660   0% /sys/fs/cgroup

/dev/sr0                        3654720  3654720         0 100% /run/media/root/RHEL-7.0 Server.x86_64

172.25.254.250:/nfsshare/nfs2 100221952 78409728  21812224  79% /westos/nfs2













本文转自blueclo51CTO博客,原文链接: http://blog.51cto.com/12774272/1921148  ,如需转载请自行联系原作者


相关文章
|
7天前
|
Kubernetes 网络协议 应用服务中间件
Kubernetes Ingress:灵活的集群外部网络访问的利器
《Kubernetes Ingress:集群外部访问的利器-打造灵活的集群网络》介绍了如何通过Ingress实现Kubernetes集群的外部访问。前提条件是已拥有Kubernetes集群并安装了kubectl工具。文章详细讲解了Ingress的基本组成(Ingress Controller和资源对象),选择合适的版本,以及具体的安装步骤,如下载配置文件、部署Nginx Ingress Controller等。此外,还提供了常见问题的解决方案,例如镜像下载失败的应对措施。最后,通过部署示例应用展示了Ingress的实际使用方法。
22 2
|
28天前
|
算法 安全 网络安全
网络安全服务
机密主要利用密码学技术加密文件实现,完整主要利用验证码/Hash技术,可用**主要灾备来保障。 网络环境下的身份鉴别,当然还是依托于密码学,一种可以使用口令技术,另一种则是依托物理形式的鉴别,如身份卡等。其实更为安全的是实施多因子的身份认证,不只使用一种方式。数字签名可以用来保证信息的完整性,比如RSA就可以用于数字签名: 若A向B发送信息m则先用自己的保密密钥(私钥)对m加密,然后用B的公钥第二次加密,发送个B后,B先用自己的私钥解密一次,再用A的公钥解密即可。 Kerberos使用对称密码算法来实现通过可信第三方密钥分发中心的认证服务,已经成为工业界的事实标准。
38 3
|
1月前
|
网络协议 安全 文件存储
动态DNS(DDNS)技术在当前网络环境中日益重要,它允许使用动态IP地址的设备通过固定域名访问
动态DNS(DDNS)技术在当前网络环境中日益重要,它允许使用动态IP地址的设备通过固定域名访问,即使IP地址变化,也能通过DDNS服务保持连接。适用于家庭网络远程访问设备及企业临时或移动设备管理,提供便捷性和灵活性。示例代码展示了如何使用Python实现基本的DDNS更新。尽管存在服务可靠性和安全性挑战,DDNS仍极大提升了网络资源的利用效率。
58 6
|
1月前
|
安全 网络安全 数据安全/隐私保护
访问控制列表(ACL)是网络安全管理的重要工具,用于定义和管理网络资源的访问权限。
访问控制列表(ACL)是网络安全管理的重要工具,用于定义和管理网络资源的访问权限。ACL 可应用于路由器、防火墙等设备,通过设定规则控制访问。其类型包括标准、扩展、基于时间和基于用户的ACL,广泛用于企业网络和互联网安全中,以增强安全性、实现精细管理和灵活调整。然而,ACL 也存在管理复杂和可能影响性能的局限性。未来,ACL 将趋向智能化和自动化,与其他安全技术结合,提供更全面的安全保障。
107 4
|
1月前
|
安全 Linux 网络安全
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息
nmap 是一款强大的开源网络扫描工具,能检测目标的开放端口、服务类型和操作系统等信息。本文分三部分介绍 nmap:基本原理、使用方法及技巧、实际应用及案例分析。通过学习 nmap,您可以更好地了解网络拓扑和安全状况,提升网络安全管理和渗透测试能力。
154 5
|
1月前
|
云安全 人工智能 安全
阿里云稳居公共云网络安全即服务市占率第一
IDC发布《中国公有云网络安全即服务市场份额,2023:规模稳步增长,技术创新引领市场格局》报告,阿里云以27.0%的市场份额蝉联榜首。
|
14天前
|
SQL 安全 网络安全
网络安全与信息安全:知识分享####
【10月更文挑战第21天】 随着数字化时代的快速发展,网络安全和信息安全已成为个人和企业不可忽视的关键问题。本文将探讨网络安全漏洞、加密技术以及安全意识的重要性,并提供一些实用的建议,帮助读者提高自身的网络安全防护能力。 ####
55 17
|
24天前
|
存储 SQL 安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
随着互联网的普及,网络安全问题日益突出。本文将介绍网络安全的重要性,分析常见的网络安全漏洞及其危害,探讨加密技术在保障网络安全中的作用,并强调提高安全意识的必要性。通过本文的学习,读者将了解网络安全的基本概念和应对策略,提升个人和组织的网络安全防护能力。
|
25天前
|
SQL 安全 网络安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
随着互联网的普及,网络安全问题日益突出。本文将从网络安全漏洞、加密技术和安全意识三个方面进行探讨,旨在提高读者对网络安全的认识和防范能力。通过分析常见的网络安全漏洞,介绍加密技术的基本原理和应用,以及强调安全意识的重要性,帮助读者更好地保护自己的网络信息安全。
45 10
|
27天前
|
SQL 安全 网络安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
在数字化时代,网络安全和信息安全已成为我们生活中不可或缺的一部分。本文将介绍网络安全漏洞、加密技术和安全意识等方面的内容,并提供一些实用的代码示例。通过阅读本文,您将了解到如何保护自己的网络安全,以及如何提高自己的信息安全意识。
56 10

热门文章

最新文章