LINUX从零开始——ENGINEER(云计算应用管理)——Day4-1 [配置Linux网络 、源码编译安装、自定义Yum仓库、日志管理]

一、环境准备
1.建议还原快照,开启CentOS7虚拟机,以root用户登录

课前回顾:
1.交换空间的作用?
缓解内存的压力

2.格式化交换文件系统的命令?
mkswap

3.查看内存空间以及交换空间的命令?
free

4.利用dd命令生成2G的文件如何操作?
dd if=/dev/zero of=/opt/1.txt bs=1M count=2048

5.yum客户端配置文件放在什么路径下?具体都有哪些字段?
/etc/yum.repos.d/*.repo
[]、name、baseurl、enabled、gpgcheck

4.逻辑卷的制作过程?
将众多的物理卷组建成卷组,再从卷组中划分逻辑卷

6.扩展逻辑卷时,刷新ext4文件系统的命令?
resize2fs

7.将/dev/sdc1交换分区实现开机自动启用如何操作?
修改/etc/fstab
/dev/sdc1 swap swap defaults 0 0

8.卷组划分空间的单位是?如何修改其大小?
PE
vgcreate -s PE大小 卷组名 设备路径…
vgchange -s PE大小 卷组名

9.如何扩展卷组大小?
vgextend 卷组名 设备路径 …

10.常见的RAID级别有哪些?哪些有容错功能?
RAID 0 RAID 1 RAID 01 RAID 10 RAID 5 RAID 6
具备容错功能:RAID 1 RAID 01 RAID10 RAID5 RAID6

昨日习题:
案例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 ~]# vim /etc/fstab
/dev/sdb1 swap swap defaults 0 0
[root@A ~]# swapoff /dev/sdb1
[root@A ~]# swapon
[root@A ~]# swapon -a
[root@A ~]# swapon

[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
[root@A ~]# vim /etc/fstab
/dev/sdb2 swap swap defaults 0 0
[root@A ~]# swapoff /dev/sdb2
[root@A ~]# swapon
[root@A ~]# swapon -a
[root@A ~]# swapon

案例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:虚拟机 server0操作,扩展逻辑卷

– 将/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是多少?
5.开启5个sleep 2000放入后台运行
6.杀死所有sleep进程
[root@A ~]# pstree -ap
[root@A ~]# pstree -ap lisi

[root@A ~]# ps aux

[root@A ~]# pgrep cron

[root@A ~]# sleep 2000 &
[root@A ~]# sleep 2000 &
[root@A ~]# sleep 2000 &
[root@A ~]# sleep 2000 &
[root@A ~]# sleep 2000 &

[root@A ~]# killall sleep

###########################################################################
二、软件素材
百度云盘:
链接:https://pan.baidu.com/s/1hmepKHxMG_vPnBwWlwAlTA
提取码:k6xs
在这里插入图片描述
在这里插入图片描述
###########################################################################
三、进程管理

程序: 静态的代码 占用磁盘空间

进程:正在执行的代码 占用CPU与内存的资源
唯一标识:PID 编号
父进程 与 子进程 进程整体结构:树型结构

查看进程

systemd:上帝进程,所有进程的父进程

•pstree — Processes Tree
–格式:pstree [选项] [PID或用户名]
•常用命令选项
–-a:显示完整的命令行
–-p:列出对应PID编号
[root@A ~]# pstree #查看整个进程树信息
[root@A ~]# pstree -ap
[root@A ~]# pstree lisi #查看lisi用户开启的所有进程
bash───vim
[root@A ~]# pstree -p lisi
bash(4048)───vim(4084)
[root@A ~]# pstree -ap lisi
bash,4048
└─vim,4084 a.txt

•ps — Processes Snapshot
–格式:ps [选项]…
•常用命令选项
– aux:显示当前终端所有进程(a)、当前用户在所有终端下的进程(x)、 以用户格式输出(u)
– -elf:显示系统内所有进程(-e)、以长格式输出(-l)信息、包括最完整的进程信息(-f)

•ps aux 操作
–列出正在运行的所有进程,显示的信息非常的完整
用户 进程ID %CPU %内存 虚拟内存 固定内存 终端 状态 起始时间 CPU时间 程序指令

•ps -elf 操作
–列出正在运行的所有进程,显示父进程的PID值
PPID:父进程的PID号

补充命令:wc统计
[root@A ~]# wc -l /etc/passwd #统计文件行数
43 /etc/passwd
[root@A ~]# ps aux | wc -l #计算当前系统中正在运行的进程个数
[root@A ~]# ps -elf | wc -l
请计算/etc目录下以 .conf 结尾的数据有多少个?(包含子目录)
[root@A ~]# find /etc/ -name “*.conf” | wc -l
426
[root@A ~]#

•top 交互式工具
–格式:top [-d 刷新秒数] [-U 用户名]
按 P(大写)进行CPU排序
按M(大写)进行内存排序
[root@A ~]# top -d 1

•pgrep — Process Grep
–用途:pgrep [选项]… 查询条件
•常用命令选项
–-l:输出进程名,而不仅仅是 PID
–-U:检索指定用户的进程
–-x:精确匹配完整的进程名

[root@A ~]# pgrep -l a #输出进程名包含a的进行
[root@A ~]# pgrep -U lisi #输入用户lisi开启的所有进程
[root@A ~]# pgrep -lU lisi

[root@A ~]# pstree -ap lisi

[root@A ~]# pgrep -lx crond #严格匹配进程名

控制进程
•后台启动
–在命令行末尾添加“&”符号,不占用当前终端
•Ctrl + z 组合键
–挂起当前进程(暂停并转入后台)
•jobs 命令
–查看后台任务列表
•fg 命令
–将后台任务恢复到前台运行
•bg 命令
–激活后台被挂起的任务

[root@A ~]# sleep 5000 & #将进程正在运行放入后台
[root@A ~]# jobs #查看后台运行的进程信息

[root@A ~]# sleep 3000
^Z #按Ctrl + z 暂停正在运行的进程放入后台
[2]+ 已停止 sleep 3000
[root@A ~]# jobs #查看后台运行的进程信息
[root@A ~]# bg 2 #将后台编号为2的暂停进程继续运行
[root@A ~]# jobs #查看后台运行的进程信息

[root@A ~]# fg 1 #将后台编号为1的进程恢复到前台
sleep 5000
^C #按Ctrl + c 结束进程
[root@A ~]# jobs
[root@A ~]# fg 2 #将后台编号为2的进程恢复到前台
sleep 3000
^C #按Ctrl + c 结束进程
[root@A ~]# jobs

•干掉进程的不同方法
–Ctrl+c 组合键,中断当前命令程序
–kill [-9] PID… 、kill [-9] %后台任务编号
–killall [-9] 进程名…
–pkill 查找条件

[root@A ~]# sleep 8000 &
[root@A ~]# sleep 8000 &
[root@A ~]# sleep 8000 &
[root@A ~]# sleep 8000 &
[root@A ~]# jobs
[root@A ~]# jobs -l #显示后台进程的详细信息
[root@A ~]# kill 7337

[root@A ~]# jobs -l
[root@A ~]# killall -9 sleep #强制杀死所有的sleep进程
[1]+ 已杀死 sleep 8000
[root@A ~]# jobs -l

强制杀死一个用户的所有进程(强制踢出一个用户)
[root@A ~]# killall -9 -u lisi

###########################################################################
四、构建Yum仓库

虚拟机A:
1.将光盘文件放入到虚拟光驱设备中
2.挂载光驱设备
[root@A ~]# mkdir /dvd
[root@A ~]# ls /dvd/
[root@A ~]# mount /dev/cdrom /dvd/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@A ~]# ls /dvd/
[root@A ~]# blkid /dev/cdrom #查看光驱设备的文件系统类型
[root@A ~]# vim /etc/fstab
/dev/cdrom /dvd iso9660 defaults 0 0
[root@A ~]# umount /dvd/
[root@A ~]# ls /dvd/
[root@A ~]# mount -a #测试
mount: /dev/sr0 写保护,将以只读方式挂载
[root@A ~]# ls /dvd/

3.建立客户端配置文件
[root@A ~]# ls /etc/yum.repos.d/
[root@A ~]# mkdir /etc/yum.repos.d/repo
[root@A ~]# mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/repo/
[root@A ~]# ls /etc/yum.repos.d/
[root@A ~]# vim /etc/yum.repos.d/dvd.repo
[dvd]
name=CentOS7
baseurl=file:///dvd
enabled=1
gpgcheck=0
[root@A ~]# yum repolist
[root@A ~]# yum -y install httpd
[root@A ~]# rpm -q httpd

克隆一台虚拟机,克隆之后的虚拟机命名为B,继续构建Yum仓库
1.将光盘文件放入到虚拟光驱设备中
2.修改主机名:B.tedu.cn
[root@B ~]# echo B.tedu.cn > /etc/hostname
[root@B ~]# hostname B.tedu.cn

2.挂载光驱设备
[root@B ~]# mkdir /dvd
[root@B ~]# ls /dvd/
[root@B ~]# mount /dev/cdrom /dvd/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@B ~]# ls /dvd/
[root@B ~]# blkid /dev/cdrom #查看光驱设备的文件系统类型
[root@B ~]# vim /etc/fstab
/dev/cdrom /dvd iso9660 defaults 0 0
[root@B ~]# umount /dvd/
[root@B ~]# ls /dvd/
[root@B ~]# mount -a #测试
mount: /dev/sr0 写保护,将以只读方式挂载
[root@B ~]# ls /dvd/

3.建立客户端配置文件
[root@B ~]# ls /etc/yum.repos.d/
[root@B ~]# mkdir /etc/yum.repos.d/repo
[root@B ~]# mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/repo/
[root@B ~]# ls /etc/yum.repos.d/
[root@B ~]# vim /etc/yum.repos.d/dvd.repo
[dvd]
name=CentOS7
baseurl=file:///dvd
enabled=1
gpgcheck=0
[root@B ~]# yum repolist
[root@B ~]# yum -y install httpd
[root@B ~]# rpm -q httpd

###########################################################################
五、配置Linux网络(主机名、IP地址、子网掩码、网关地址、DNS服务器地址)

虚拟机A:
1.配置永久的主机名
[root@A ~]# hostname A.tedu.cn
[root@A ~]# echo A.tedu.cn > /etc/hostname #永久主机名的配置文件
[root@A ~]# exit #关闭当前的终端
新开一个终端测试
2.配置IP地址与子网掩码、网关地址
[root@A ~]# ifconfig | less #除了lo与virbr0两张网卡,剩下的网卡为第一张网卡
[root@A ~]# which nmcli #查找命令所对应的程序文件路径
[root@A ~]# rpm -qf /usr/bin/nmcli #查询该文件由那个软件包提供
NetworkManager-1.10.2-13.el7.x86_64

[root@A ~]# yum -y install NetworkManager

[root@A ~]# nmcli device status #查看系统识别的名字
[root@A ~]# nmcli connection show #查看识别的网卡名称

[root@A ~]# nmcli connection modify ‘ens33’ ipv4.method manual ipv4.addresses 192.168.4.10/24
ipv4.gateway 192.168.4.254 connection.autoconnect yes

[root@A ~]# nmcli 网络连接 修改 ‘网卡名’ ipv4.方法 手工配置 ipv4.地址 IP地址/子网掩码
ipv4.网关 网关地址 每次开机自动启用配置

[root@A ~]# nmcli connection up ‘ens33’ #激活配置
[root@A ~]# ifconfig | head -2 #显示IP地址信息

bash-completion (tab补全的软件包)

[root@A ~]# route -n #显示网关地址
Gateway
192.168.4.254

3.DNS服务器地址
[root@A ~]# echo nameserver 1.1.1.1 > /etc/resolv.conf #DNS服务器地址配置文件
[root@A ~]# cat /etc/resolv.conf
nameserver 1.1.1.1

虚拟机B:
1.配置永久主机名
[root@B ~]# hostname B.tedu.cn
[root@B ~]# echo B.tedu.cn > /etc/hostname
[root@B ~]# cat /etc/hostname
B.tedu.cn
[root@B ~]#
2.配置IP地址与子网掩码、网关地址
[root@B ~]# nmcli connection show

[root@B ~]# nmcli connection modify ‘ens33’ ipv4.method manual ipv4.addresses 192.168.4.20/24
ipv4.gateway 192.168.4.254 connection.autoconnect yes

[root@B ~]# nmcli connection up ‘ens33’ #激活配置

[root@B ~]# route -n #查看网关地址
[root@B ~]# ifconfig | head -2 #查看网卡地址

[root@B ~]# nmcli device status #查看系统识别的名字

4.DNS服务器地址
[root@B ~]# echo nameserver 2.2.2.2 > /etc/resolv.conf #DNS服务器地址配置文件
[root@B ~]# cat /etc/resolv.conf
nameserver 2.2.2.2

###########################################################################
六、真机Windows远程管理Linux服务器

1.真机与虚拟机能够通信
•隔离模式
–Guest可访问同一虚拟交换机上的其他Guest
–但无法访问Host所在外部网络
在这里插入图片描述

2.选择虚拟机A与虚拟机B连接VMnet1网卡

虚拟机A:修改网络适配器类型为“VMnet1”
在这里插入图片描述
在这里插入图片描述

虚拟机B:修改网络适配器类型为“VMnet1”
在这里插入图片描述
在这里插入图片描述

3.为真机VMnet1配置IP地址192.168.4.1/24
右击 “网络”选择“属性”
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

测试能否ping通:真机 win键 + r = 开始—》运行

在这里插入图片描述
在这里插入图片描述

4.真机添加虚拟网卡

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5.真机安装XManager软件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

###########################################################################################################
课后习题:

案例1:虚拟机A:进程管理
1.查看当前系统中整个进程树信息
2.利用pstree查看lisi开启的进程
3.显示当前系统正在运行的所有进程信息
4.检索当前系统中进程,进程名包含cron的PID是多少?
5.开启5个sleep 2000放入后台运行
6.杀死所有sleep进程

案例2:虚拟机B上操作:实现静态网络参数配置
– 主机名:test.example.com
– IP地址:172.25.0.11
– 子网掩码:255.255.0.0
– 默认网关:172.25.0.254
– DNS服务器:172.25.254.254

案例3:虚拟机B上操作:实现静态网络参数配置
– 主机名:B.tedu.cn
– IP地址:192.168.1.1
– 子网掩码:255.255.255.0
– 默认网关:192.168.1.254
– DNS服务器:8.8.8.8

案例4:虚拟机B上操作:实现静态网络参数配置
– 主机名:pc207.tedu.cn
– IP地址:192.168.4.207
– 子网掩码:255.255.255.0
– 默认网关:192.168.4.254
– DNS服务器:1.1.1.1

案例5:虚拟机A上操作:实现静态网络参数配置
– 主机名:svr7.tedu.cn
– IP地址:192.168.4.7
– 子网掩码:255.255.255.0
– 默认网关:192.168.4.254
– DNS服务器:1.1.1.1

发布了0 篇原创文章 · 获赞 0 · 访问量 110

猜你喜欢

转载自blog.csdn.net/hufei_/article/details/105025147