真机windows平台下载今日所需软件:MobaXterm_Professinal_20.3_Preview4.zip
总结:环境构建
模板虚拟机:
- 构建Yum仓库
- 实现/dev/cdrom开机自动挂载
- /etc/fstab修改UUID为设备路径
- 设置主机名为server.tedu.cn
- 修改网卡命名规则,实现网卡名称为eth0
- nmcli命令删除错误网络命名
- nmcli添加新的网络命名,本名与外号一致
- nmcli设置IP地址与子网掩码192.168.88.240/24
- 修改虚拟机网卡连接的接口,vmware选择vmnet1,kvm虚拟机选择private1
- 关闭机器进行克隆
虚拟机B:
1.修改IP地址192.168.88.2/24
2.主机名为pc2.tedu.cn
虚拟机C:
1.修改IP地址192.168.88.3/24
2.主机名为pc3.tedu.cn
#
- 构建Yum仓库,环境准备
1.光盘文件放入光驱设备

2.挂载光驱设备
[root@localhost ~]# mkdir /mydvd
[root@localhost ~]# mount /dev/cdrom /mydvd [root@localhost ~]# ls /mydvd
3.书写客户端配置文件
[root@localhost ~]# rm -rf /etc/yum.repos.d/*
[root@localhost ~]# vim /etc/yum.repos.d/mydvd.repo
[centos]
name=linux
baseurl=file:///mydvd
enabled=1
gpgcheck=0
[root@localhost ~]# yum -y install xorg-x11-apps
[root@localhost ~]# rpm -q xorg-x11-apps
4.完成开机自动挂载
]# blkid /dev/cdrom #查看 光驱设备文件系统类型
]# vim /etc/fstab
/dev/cdrom /mydvd iso9660 defaults 0 0
]# umount /mydvd
]# mount -a
]# ls /mydvd
]# yum -y install bind #测试安装软件包
5.开机自动挂载修改UUID内容
[root@localhost ~]# df -h /boot
文件系统 容量 已用 可用 已用% 挂载点
/dev/sda1 1014M 172M 843M 17% /boot
[root@localhost ~]# blkid /dev/sda1
/dev/sda1: UUID=”8e57ee09-0d60-4da9-87a0-83bb4a62587d” TYPE=”xfs”
[root@localhost ~]# vim /etc/fstab #vmware虚拟机
/dev/sda1 /boot xfs defaults 0 0
[root@localhost ~]# vim /etc/fstab #KVM虚拟机
/dev/vda1 /boot xfs defaults 0 0
[root@localhost ~]# reboot #重启系统
[root@localhost ~]# yum repolist #检测yum仓库
6.Yum常见错误:清空/var/run/yum.pid文件内容
[root@localhost ~]# yum repolist
已加载插件:fastestmirror, langpacks
/var/run/yum.pid 已被锁定,PID 为 2446 的另一个程序正在运行。
Another app is currently holding the yum lock; waiting for it to exit…
另一个应用程序是:PackageKit
内存: 33 M RSS (378 MB VSZ)
已启动: Fri May 13 09:37:12 2022 - 00:07之前
状态 :睡眠中,进程ID:2446
Loading mirror speeds from cached hostfile
源标识 源名称 状态
centos linux 10,072
repolist: 10,072
[root@localhost ~]# > /var/run/yum.pid #清空文件内容
[root@localhost ~]# yum clean all #清空yum缓存
[root@localhost ~]# yum repolist #列出仓库信息
- 配置网络参数之主机名
- 配置永久的主机名
]# hostnamectl set-hostname server.tedu.cn
]# cat /etc/hostname #设置永久主机名配置文件
server.tedu.cn
]# hostname
server.tedu.cn
开启一个新的终端查看提示符的变化
- 配置网络参数之IP地址与子网掩码、网关地址
- 修改网卡命令规则(eth0、eth1、eth2……)
]# ifconfig | head -2
ens33: flags=4163
ether 00:0c:29:8a:72:4f txqueuelen 1000 (Ethernet)
]# vim /etc/default/grub #grub内核引导程序
……..此处省略一万字
GRUB_CMDLINE_LINUX=”…….. quiet net.ifnames=0 biosdevname=0“
……..此处省略一万字
]# grub2-mkconfig -o /boot/grub2/grub.cfg #重新生成网卡命名的规则
]# reboot
]# ifconfig | head -2
eth0: flags=4163
inet 192.168.81.132 netmask 255.255.255.0 broadcast 192.168.81.255
三种方式配置地址: 1.nmtui ** 2.nmcli ** 3.修改配置文件
nmcli方式:原则是必须利用nmcli自己的命名,进行网络IP地址的设置
Linux系统内核将网卡命名成eth0,nmcli必须自己在为eth0网卡再起一个名字
网卡的本名是什么,nmcli起的外号就是什么
]# nmcli connection show #查看网络命名的链接
- nmcli命令的网卡命名,删除错误网卡命名
KVM虚拟机:
[root@server ~]# nmcli connection show #查看
[root@server ~]# nmcli connection delete eth0
[root@server ~]# nmcli connection show #查看
VMware虚拟机:
[root@server ~]# nmcli connection show #查看
[root@server ~]# nmcli connection delete ens33
[root@server ~]# nmcli connection show
[root@server ~]# nmcli connection show
[root@server ~]# nmcli connection delete 有线连接\ 1
[root@server ~]# nmcli connection show
- nmcli命令的网卡命名,添加新的网络命名
[root@server ~]# nmcli connection add type ethernet ifname eth0 con-name eth0
解析: nmcli connection 添加 类型 以太网设备
网卡设备名为eth0 nmcli命令的命名为eth0
[root@server ~]# nmcli connection show
[root@server ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 #简单查看生成的网卡配置文件内容
#
- 利用nmcli修改IP地址、子网掩码、网关地址
[root@server ~]# nmcli connection modify eth0
ipv4.method manual
ipv4.addresses 192.168.88.1/24
ipv4.gateway 192.168.88.200
connection.autoconnect yes
[root@server ~]# nmcli connection 修改 外号
ipv4.方法 手工配置
ipv4.地址 192.168.88.1/24
ipv4.网关 192.168.88.200
每次开机自动启用以上所有参数
[root@server ~]# nmcli connection up eth0 #激活
[root@server ~]# ifconfig | head -2
]# route -n #查看网关地址信息(了解)
Gateway <br />**192.168.88.200**
- 利用nmtui修改IP地址、子网掩码、网关地址(了解)
- 字体放小
- 运行命令
[root@server ~]# nmtui ** #修改IP地址为192.168.88.110/24




按空格键进行选项(有X表示选中,没有X表示不选)**

进行激活配置
按下回车进行操作(前面有表示激活启用,没有表示禁用状态)


- 利用配置文件修改IP地址、子网掩码、网关地址(了解)
]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
…..此处省略一万字……
IPADDR=**192.168.88.240
PREFIX=24
GATEWAY=**192.168.88.222
]# ifdown eth0 #停用设备
成功断开设备 ‘eth0’。
]# ifup eth0 #启用设备
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/9)
]# ifconfig | head -2
- 克隆虚拟机(克隆必须关闭模板机器)
真机Linux:

真机windows:





- 虚拟机B配置
虚拟机B:
]# hostnamectl set-hostname pc2.tedu.cn
]# hostname
pc2.tedu.cn
新开一个终端进行查看主机名
[root@pc2 ~]# nmcli connection modify eth0 ipv4.method manual ipv4.addresses **192.168.88.2/24** connection.autoconnect yes
[root@pc2 ~]# nmcli connection up eth0
[root@pc2 ~]# ifconfig | head -2
[root@pc2 ~]# ping 192.168.88.240
虚拟机C:
]# hostnamectl set-hostname pc3.tedu.cn
]# hostname
pc3.tedu.cn
新开一个终端进行查看主机名
[root@pc3 ~]# nmcli connection modify eth0 ipv4.method manual ipv4.addresses **192.168.88.3/24** connection.autoconnect yes
[root@pc3 ~]# nmcli connection up eth0
[root@pc3 ~]# ifconfig | head -2
[root@pc3 ~]# ping 192.168.88.240
- 真机与虚拟机的通信

真机为Linux查看虚拟网卡private1的IP地址:
[root@localhost ~]# ifconfig private1
private1: flags=4099
inet 192.168.88.254 netmask 255.255.255.0 broadcast 192.168.88.255
虚拟机配置网卡,连接private1网络
测试通信:虚拟机ping真机
[root@localhost ~]# ping 192.168.88.254
真机为windows:为vmnet1配置IP地址192.168.88.254/24
1.查看真机虚拟网卡


2.真机配置VMnet1的网卡IP地址为192.168.88.254
双击VMnet1网络适配器



3.配置虚拟机网络类型
右击——》选择设置

4.测试通信
Windows键+r快捷键 

常见问题:
1.虚拟网卡vmnet1没有


如果还是无法出现vmnet1,参考下列网站方法
https://jingyan.baidu.com/article/066074d6f19bd0c3c31cb048.html
- 虚拟机拍摄快照
真机Linux:三台机器都拍摄快照

真机windows:三台机器都拍摄快照
[root@server ~]# poweroff
- 远程管理(Linux与Linux)
- 软件包的安装
[root@server /]# rpm -qa | grep openssh
openssh-7.4p1-16.el7.x86_64
openssh-server-7.4p1-16.el7.x86_64
openssh-clients-7.4p1-16.el7.x86_64
[root@server ~]# ls /usr/sbin/sshd #提供远程管理功能的程序
/usr/sbin/sshd
[root@server ~]# pgrep -l sshd #搜索sshd进程
1181 sshd
- 远程登录工具 ssh
模板虚拟机:
[root@server /]# ssh root@192.168.88.2
………necting (yes/no)? yes
root@192.168.88.2’s password: #输入密码
[root@pc2 ~]# touch /root/hahaxixi.txt
[root@pc2 ~]# exit
登出
Connection to 192.168.88.2 closed.
[root@server /]# cat /root/.ssh/known_hosts #记录曾经远程管理的机器
- 数据传递工具 scp=ssh+cp
- scp [-r] 用户名@服务器:路径 本地路径
- scp [-r] 本地路径 用户名@服务器:路径
虚拟机A:
]# scp /etc/passwd root@192.168.88.2:/root
]# scp -r /home root@192.168.88.2:/root/
]# scp root@192.168.88.2:/etc/shadow /mnt/
虚拟机B:
]# ls /root
- 实现ssh远程管理无密码验证
虚拟机A:
1.生成公钥(锁)与私钥(钥匙)进行验证
[root@server ~]# ssh-keygen #一路回车
…….save the key (/root/.ssh/id_rsa): #回车 设置默认保存位置
……..assphrase): #回车 设置密码为空
…….. again: #回车 设置密码为空
[root@server ~]# ls /root/.ssh/
id_rsa(私钥) id_rsa.pub(公钥) known_hosts
2.将公钥(锁)传递给虚拟机B
[root@server ~]# ssh-copy-id root@192.168.88.2
[root@server ~]# ssh root@192.168.88.2 #测试无密码
[root@pc2 ~]# exit
登出
Connection to 192.168.88.2 closed.
[root@server ~]#
虚拟机B
[root@pc207 ~]# ls /root/.ssh/
authorized_keys(别的机器传递过来的公钥) known_hosts
[root@pc207 ~]#
- 利用真机windows进行远程管理
- Windows——>Linux远程访问



Ctrl+滚轮=可以放大或变小字体
终端与字体设置:






- 配置网络参数之DNS服务器地址

DNS服务器:负责域名解析的服务器,将域名解析为IP地址
/etc/resolv.conf:最终有效配置文件
]# echo nameserver 99.100.200.38 > /etc/resolv.conf
]# cat /etc/resolv.conf
nameserver 99.100.200.38
]# > /etc/resolv.conf #清空此文件内容,为构建Web服务器做准备
]# cat /etc/resolv.conf
十三、日志管理
系统和程序的“日记本”
- 记录系统、程序运行中发生的各种事件
- 通过查看日志,了解及排除故障
- 信息安全控制的“依据”
由系统服务rsyslog统一记录/管理
- 日志消息采用文本格式
- 主要记录事件发生的时间、主机、进程、内容
常见的日志文件
| 日志文件 | 主要用途 | | —- | —- | | /var/log/messages | 记录内核消息、各种服务的公共消息 | | /var/log/dmesg | 记录系统启动过程的各种消息 | | /var/log/cron | 记录与cron计划任务相关的消息 | | /var/log/maillog | 记录邮件收发相关的消息 | | /var/log/secure | 记录与访问限制相关的安全消息 |
- 通用分析工具
- tail、tailf、less、grep等文本浏览/检索命令
- awk、sed等格式化过滤工具
tailf:实时跟踪
[root@server /]# echo 123456 > /opt/1.txt
[root@server /]# tailf /opt/1.txt
users、who、w 命令
- 查看已登录的用户信息,详细度不同
last、lastb 命令
- 查看最近登录成功/失败的用户信息
[root@server /]# users
[root@server /]# who
pts:图形命令行终端
[root@server /]# last #登录成功的用户
[root@server /]# lastb #登录失败的用户
- Linux内核定义的事件紧急程度
- 分为 0~7 共8种优先级别
- 其数值越小,表示对应事件越紧急/重要
0 EMERG(紧急) 会导致主机系统不可用的情况
1 ALERT(警告) 必须马上采取措施解决的问题 2 CRIT(严重) 比较严重的情况
3 ERR(错误) 运行出现错误
4 WARNING(提醒) 可能会影响系统功能的事件
5 NOTICE(注意) 不会影响系统但值得注意
6 INFO(信息) 一般信息
7 DEBUG(调试) 程序或系统调试信息等
课后习题:
案例1:虚拟机B上操作:实现静态网络参数配置
– 主机名:test.example.com
– IP地址:172.25.0.11
– 子网掩码:255.255.0.0
– 默认网关:172.25.0.254
– DNS服务器:172.25.254.254
案例2:虚拟机B上操作:实现静态网络参数配置
– 主机名:B.tedu.cn
– IP地址:192.168.1.1
– 子网掩码:255.255.255.0
– 默认网关:192.168.1.254
– DNS服务器:8.8.8.8
案例3:虚拟机B上操作:实现静态网络参数配置
– 主机名:pc207.tedu.cn
– IP地址:192.168.88.207
– 子网掩码:255.255.255.0
– 默认网关:192.168.88.254
– DNS服务器:1.1.1.1
案例4:虚拟机A上操作:实现静态网络参数配置
– 主机名:server.tedu.cn
– IP地址:192.168.88.1
– 子网掩码:255.255.255.0
– 默认网关:192.168.88.254
– DNS服务器:1.1.1.1
案例5:虚拟机B:传递数据
1.将本机/usr/local/tools/other目录传递到虚拟机A,放在虚拟机A的/usr/目录下
2.将本机/etc/gshadow文件传递到虚拟机A,放在虚拟机A的/root目录下
3.将本机/etc/skel目录传递到虚拟机A,放在虚拟机A的/tmp目录下
案例6:虚拟机B:远程无密码验证
1.实现虚拟机B远程管理虚拟机A,无需密码验证
昨日习题:
案例1:复制、粘贴、移动
以root用户新建/exam/目录,在此目录下新建king.txt文件,并进一步完成下列操作
1)将“I Love hehe”写入到文件king.txt
2)将king.txt重命名为my.txt
3)将/etc/passwd、/boot、/etc/group同时拷贝到/exam/目录下
4)将ifconfig命令的前两行内容,追加写入king.txt
5)将主机名永久配置文件,拷贝到/exam/目录下
6)将存放组基本信息的配置文件,拷贝到/exam/目录下
7)将开机自动挂载配置文件,拷贝到/exam/目录下
[root@A ~]# mkdir /exam
[root@A ~]# echo I Love hehe > /exam/king.txt
[root@A ~]# cat /exam/king.txt
[root@A ~]# mv /exam/king.txt /exam/my.txt
[root@A ~]# cp -r /etc/passwd /boot /etc/group /exam
[root@A ~]# ifconfig | head -2
[root@A ~]# ifconfig | head -2 >> /exam/king.txt
[root@A ~]# cp /etc/hostname /exam/
[root@A ~]# ls /exam
[root@A ~]# cp /etc/group /exam
[root@A ~]# ls /exam
[root@A ~]# cp /etc/fstab /exam
[root@A ~]# ls /exam
案例2:虚拟机上操作,采用GPT分区模式,利用parted规划分区
添加一块30G的硬盘并规划分区:
划分2个2G的主分区;1个5G的主分区;
[root@A ~]# parted /dev/sdb
(parted) mktable gpt
(parted) print
(parted) mkpart
分区名称? []? xixi
文件系统类型? [ext2]? xfs
起始点? 0
结束点? 2G
警告: The resulting partition is not properly aligned for best performance.
忽略/Ignore/放弃/Cancel? Ignore #选择忽略,给出存放分区表信息的空间
(parted) print
(parted) unit GB #使用GB作为显示的单位
(parted) print
(parted) mkpart
分区名称? []? xixi
文件系统类型? [ext2]? xfs
起始点? 2G
结束点? 4G
(parted) print
(parted) mkpart
分区名称? []? xixi
文件系统类型? [ext2]? xfs
起始点? 4G
结束点? 8G
(parted) print
(parted) quit
[root@A ~]# lsblk
案例3:虚拟机上操作,交换分区使用
1、案例2中新添加30G硬盘的第一个主分区
– 格式化成交换文件系统,实现该分区开机自动启用
2、案例2中新添加30G硬盘的第二个主分区
– 格式化成交换文件系统,实现该分区开机自动启用
[root@A ~]# mkswap /dev/sdb1
[root@A ~]# blkid /dev/sdb1
[root@A ~]# swapon
[root@A ~]# swapon /dev/sdb1
[root@A ~]# swapon
[root@A ~]# free -m
[root@A ~]# mkswap /dev/sdb2
[root@A ~]# blkid /dev/sdb2
[root@A ~]# swapon
[root@A ~]# swapon /dev/sdb2
[root@A ~]# swapon
[root@A ~]# free -m
案例4:虚拟机上操作,文件扩展Swap空间
1. 使用dd命令创建一个大小为2048MB的交换文件,放在/opt/swap.db
2. 将swap.db文件格式化成swap文件系统
3. 启用swap.db文件,查看swap空间组成
4. 停用swap.db文件,查看swap空间组成
[root@A ~]# dd if=/dev/zero of=/opt/swap.db bs=1M count=2048
[root@A ~]# ls -lh /opt/swap.db
[root@A ~]# mkswap -f /opt/swap.db
[root@A ~]# blkid /opt/swap.db
[root@A ~]# swapon
[root@A ~]# swapon /opt/swap.db
[root@A ~]# swapon
[root@A ~]# free -m
[root@A ~]# swapoff /opt/swap.db
[root@A ~]# swapon
[root@A ~]# free -m
案例5:虚拟机操作,构建 LVM 存储
– 新建一个名为 systemvg 的卷组
– 在此卷组中创建一个名为 vo 的逻辑卷,大小为8G
– 将逻辑卷 vo 格式化为 xfs 文件系统
– 将逻辑卷 vo 挂载到 /vo 目录,并在此目录下建立一个测试文件 votest.txt,内容为“I AM KING.”
– 实现逻辑卷vo开机自动挂载到/vo
[root@A ~]# parted /dev/sdb
(parted) mkpart
分区名称? []? xixi
文件系统类型? [ext2]? xfs
起始点? 8G
结束点? 100%
(parted) print
(parted) quit
[root@A ~]# vgcreate systemvg /dev/sdb4
[root@A ~]# vgs
[root@A ~]# lvcreate -n vo -L 8G systemvg
[root@A ~]# lvs
[root@A ~]# mkfs.xfs /dev/systemvg/vo
[root@A ~]# blkid /dev/systemvg/vo
[root@A ~]# vim /etc/fstab
/dev/systemvg/vo /vo xfs defaults 0 0
[root@A ~]# mkdir /vo
[root@A ~]# mount -a
[root@A ~]# df -h
[root@A ~]# echo I AM KING > /vo/votest.txt
案例6:虚拟机操作,构建 LVM 存储(修改PE大小)
– 新的逻辑卷命名为 database,其大小为50个PE的大小,属于 datastore 卷组
– 在 datastore 卷组中其PE的大小为1M
– 使用 EXT4 文件系统对逻辑卷 database 格式化,此逻辑卷应该在开机时自动挂载到 /mnt/database 目录
[root@A ~]# vgcreate -s 1M datastore /dev/sdb3
[root@A ~]# vgs
[root@A ~]# vgdisplay datastore
[root@A ~]# lvcreate -n database -l 50 datastore
[root@A ~]# lvs
[root@A ~]# mkfs.ext4 /dev/datastore/database
[root@A ~]# blkid /dev/datastore/database
[root@A ~]# vim /etc/fstab
/dev/datastore/database /mnt/database ext4 defaults 0 0
[root@A ~]# mkdir /mnt/database
[root@A ~]# mount -a
[root@A ~]# df -h
案例7:虚拟机 操作,扩展逻辑卷
– 将/dev/systemvg/vo逻辑卷的大小扩展到20G
[root@A ~]# vgs
[root@A ~]# lvextend -L 20G /dev/systemvg/vo
[root@A ~]# vgs
[root@A ~]# lvs
[root@A ~]# df -h
[root@A ~]# xfs_growfs /dev/systemvg/vo
[root@A ~]# df -h
案例8:进程管理
1.查看当前系统中整个进程树信息
2.利用pstree查看lisi开启的进程
3.显示当前系统正在运行的所有进程信息
4.检索当前系统中进程,进程名包含cron的PID是多少?
[root@A ~]# pstree -ap
[root@A ~]# pstree -ap lisi
[root@A ~]# ps aux
[root@A ~]# pgrep cron
