前言
身为一个三年的运维工程师,从开发转测开再转运维,都是不断学习的过程,未必开发才是最优秀的,找到适合自己的职业不断深耕,你也会在自己的行业大放光彩,本系列依照《Linux就该这么学》系列随书学习练习操作,将一些课本上不顺畅的地方,全部以最简方式免费开源展示给大家,资源大家可以自行百度,也希望大家多关注刘遄老师的第二版关于centos8的丛书,学习最前沿的Linux相关技术。
常用命令汇总
Samba 文件共享服务
Samba经过简单配置就能够实现 Linux 系统与 Windows 系统之间的文件 共享工作。
1.下载Samba
[root@www ~]# yum -y install samba
2.查看一下相关参数的解析
[root@www ~]# cat /etc/samba/smb.conf
去掉相关多余的#内容
[root@www ~]# mv /etc/samba/smb.conf /etc/samba/smb.conf.bak
[root@www ~]# cat /etc/samba/smb.conf.bak | grep -v "#" | grep -v ";" | grep -v "^$" > /etc/samba/smb.conf
[root@www ~]# cat /etc/samba/smb.conf
配置共享资源
将以下参数写入到 Samba 服务程序的主配置文件中
pdbedit 命令用于管理 SMB 服务程序的账户信息数据库,一下为其命令参数
1.创建用于访问共享资源的账户信息
[root@www ~]# id root1
uid=1000(root1) gid=1000(root1) groups=1000(root1)
[root@www ~]# pdbedit -a -u root1
new password:
输入想要设置的密码
retype new password:
再次
输入想要设置的密码
Unix username: root1
NT username:
Account Flags: [U ]
User SID: S-1-5-21-1706039710-2410730677-667020181-1000
Primary Group SID: S-1-5-21-1706039710-2410730677-667020181-513
Full Name: root1
Home Directory: \\www\root1
HomeDir Drive:
Logon Script:
Profile Path: \\www\root1\profile
Domain: WWW
Account desc:
Workstations:
Munged dial:
Logon time: 0
Logoff time: Wed, 06 Feb 2036 07:06:39 PST
Kickoff time: Wed, 06 Feb 2036 07:06:39 PST
Password last set: Wed, 21 Jun 2023 01:18:30 PDT
Password can change: Wed, 21 Jun 2023 01:18:30 PDT
Password must change: never
Last bad password : 0
Bad password count : 0
Logon hours : FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
2.创建用于共享资源的文件目录
[root@www ~]# mkdir /home/database
[root@www ~]# chown -Rf root1:root1 /home/database
3.在 Samba 服务程序的主配置文件中写入共享信息,删了直接把里边替换成如下内容
[root@www ~]# vi /etc/samba/smb.conf
[global]
workgroup = MYGROUP
server string = Samba Server Version %v
log file = /var/log/samba/log.%m
max log size = 50
security = user
passdb backend = tdbsam
load printers = yes
cups options = raw
[database]
comment = Do not arbitrarily modify the database file
path = /home/database
public = no
writable = yes
4.重启Samba服务程序
[root@www ~]# systemctl restart smb
[root@www ~]# systemctl enable smb
Created symlink from /etc/systemd/system/multi-user.target.wants/smb.service to /usr/lib/systemd/system/smb.service.
如果开了防火墙,可以加输入如下命令关闭
[root@www ~]# iptables -F
[root@www ~]# service iptables save
Windows 访问文件共享服务
Samba 共享服务部署在 Linux 系统上, 并通过 Windows 系统来访问 Samba 服务
录入\\192.168.227.130(虚拟机的IP地址)
此处录入的是上一部分设置的访问共享资源的账户密码
验证一下,在虚拟机上录入如下命令
[root@www ~]# cd /home/database
[root@www database]# touch a
在Windows客户端访问打开
Linux 访问文件共享服务
造一个客户端(新打开一台其他的linux客户端),录入以下命令
[root@bogon ~]# yum install cifs-utils
不挂载可以直接访问:
[root@bogon ~]#
smbclient 192.168.227.130/home/database -U root1
挂载访问:
[root@bogon ~]# vim auth.smb
username=root1 #服务端创建的用户
password=123 #服务端对应的用户密码
domain=MYGROUP
[root@bogon ~]# chmod 600 auth.smb
[root@bogon ~]# mkdir /database
[root@bogon ~]# vim /etc/fstab
添加以下内容
//192.168.227.130/database /database cifs credentials=/root/auth.smb 0 0
[root@localhost database]# mount -a
[root@localhost database]# cd /database/
[root@localhost database]# ll
total 0
-rw-r--r--. 1 root root 0 Jun 21 01:55 a
NFS(网络文件系统)
NFS(网络文件系统)服 务可以将远程 Linux 系统上的文件共享资源挂载到本地主机的目录上,从而使得本地主机 (Linux 客户端)基于 TCP/IP 协议,像使用本地主机上的资源那样读写远程 Linux 系统上的共 享文件。
1.下载NFS
[root@www ~]# yum install -y nfs-utils
2.关闭防火墙或者取消防火墙策略
iptables -F
service iptables save
3.NFS服务器上建立用于 NFS 文件共享的目录
[root@www ~]# mkdir /nfsfile
[root@www ~]# chmod -Rf 777 /nfsfile
[root@www ~]# echo "learn linux" > /nfsfile/readme
4.NFS配置文件
NFS 客户端地址与权限之间没有空格
[root@www ~]# vim /etc/exports
/nfsfile 192.168.227.*(rw,sync,root_squash)
5.重启服务
[root@www ~]# systemctl restart rpcbind
[root@www ~]# systemctl enable rpcbind
[root@www ~]# systemctl start nfs-server
[root@www ~]# systemctl enable nfs-server
Created symlink from /etc/systemd/system/multi-user.target.wants/nfs-server.service to /usr/lib/systemd/system/nfs-server.service.
6.客户端验证
showmount 命令
[root@localhost ~]# showmount -e 192.168.227.130
Export list for 192.168.227.130:
/nfsfile 192.168.227.*
[root@localhost ~]# mkdir /nfsfile
[root@localhost ~]# mount -t nfs 192.168.227.130:/nfsfile /nfsfile
[root@localhost ~]# cat /nfsfile/readme
learn linux
永久挂载
[root@localhost ~]# vim /etc/fstab
192.168.227.130:/nfsfile /nfsfile nfs defaults 0 0
autofs 自动挂载服务
autofs 自动挂载服务是一种Linux系统守护进程,当检测到用户视图访问一个尚未挂载的文件系统时,将自动挂载该文件系统(在客户端实现下部分命令)。
1.下载autofs
[root@www ~]# yum install -y autofs
2.配置autofs
[root@www ~]# vim /etc/auto.master
在第七行加入如下命令
/media /etc/iso.misc
[root@www ~]# vim /etc/iso.misc
iso -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom
#光盘设备挂载到/media/iso 目录中,可将挂载目录写为 iso
#-ftype 为文件系统格式参 数
#iso9660 为光盘设备格式
#ro、nosuid 及 nodev 为光盘设备具体的权限参数
#/dev/cdrom要挂载的设备名称。
3.重启autofs
[root@www ~]# systemctl start autofs
[root@www ~]# systemctl enable autofs
Created symlink from /etc/systemd/system/multi-user.target.wants/autofs.service to /usr/lib/systemd/system/autofs.service.
4.验证
cd /media/iso
如果能看到相关目录即可验证成功
df -h
会挂载上iso
这个我这环境已经调的不能再用了,并没有实现这一步,查了很多也没发现怎么改正,建议再空白环境试验此步骤。
结语
简问简答
1.实现 Linux 系统与 Windows 系统之间的文件共享,能否使用 NFS 服务?
答:不可以,应该使用 Samba 服务程序,NFS 服务仅能实现 Linux 系统之间的文件共享。
2.用于管理 Samba 服务程序的独立账户信息数据库的命令是什么?
答:pdbedit 命令用于管理 Samba 服务程序的账户信息数据库。
3.简述在 Windows 系统中使用 Samba 服务程序来共享资源的方法。
答:在开始菜单的输入框中按照\\192.168.10.10 的格式输入访问命令并回车执行即可。在 Windows 的“运行”命令框中按照“\\192.168.10.10”的格式输入访问命令并按回车键即可。
4.简述在 Linux 系统中使用 Samba 服务程序来共享资源的步骤方法。
答:首先应创建密码认证文件以及挂载目录,然后把挂载信息写入到/etc/fstab 文件中,最后执行 mount -a 命令挂载使用。
5.如果在 Linux 系统中默认没有安装 NFS 服务程序,则需要安装什么软件包呢?
答:NFS 服务程序的软件包名字为 nfs-utils,因此执行 yum install nfs-utils 命令即可。
6.在使用 NFS 服务共享资源时,若希望无论 NFS 客户端使用什么帐户来访问共享资源,都 会被映射为本地匿名用户,则需要添加哪个参数。
答:需要添加 all_squash 参数,以便更好地保证服务器的安全。
7.客户端在查看到远程 NFS 服务器上的共享资源列表时,需要使用哪个命令?
答:使用 showmount 命令即可看到 NFS 服务器上的资源共享情况。
8.简述 autofs 服务程序的作用。
答:实现动态灵活的设备挂载操作,而且只有检测到用户试图访问一个尚未挂载的文件系 统时,才自动挂载该文件系统。