DAY5
管理linux网络配置
nmcli命令
- 作用:nmcli,可以实现创建,显示,编辑,删除,激活和停用网络连接以及控制和显示网络设备状态等
- 查看网卡信息
[root@server ~]# nmcli c show # 全写为:nmcli connection show
[root@server ~]# nmcli con show ens33 # 查看指定网卡的详细信息,q键退出
[root@server ~]# nmcli dev status # 查看已有设备的连接状态
[root@server ~]# nmcli dev show # 看所有网络设备详情,q键退出
激活和关闭网络连接
[root@server ~]# nmcli c up 网卡名 # 激活,也是重启网卡的一种方法
[root@server ~]# nmcli c down 网卡名 # 关闭
- 添加网络连接
添加网络连接ens161
[root@server ~]# nmcli c add type ethernet ifname ens160 con-name ens161 autoconnect yes ip4 192.168.48.135/24 gw4 192.168.48.2
连接 "ens161" (37bc8e79-92ea-4c01-a4af-1dfd7c687014) 已成功添加。
[root@server ~]# nmcli c up ens161 # 不能在xshell操作,否则ssh连接断掉
[root@server ~]# nmcli c show
[root@server ~]# nmcli c up ens160
- 设置静态IP
用ip route得到
网关为192.168,193.33
[root@server ~]# nmcli c modify ens160 ipv4.method manual ipv4.addresses '192.168.48.134/24' ipv4.gateway '192.168,193.33' ipv4.dns '192.168,193.33'
[root@server ~]# nmcli c up ens33
[root@server ~]# ip a
# ipv4.method manual:手动获取
- 增加ip地址
[root@server ~]# nmcli c mod ens33 +ipv4.addresses 192.168.48.136/24
[root@server ~]# nmcli c up ens33
[root@server ~]# ip a
- 删除网络连接
# 删除上例的ens161
[root@server ~]# nmcli c show
NAME UUID TYPE DEVICE
ens160 0f83fcfd-bc6d-3866-b82b-fc4b09df2068 ethernet ens160
ens161 37bc8e79-92ea-4c01-a4af-1dfd7c687014 ethernet --
[root@server ~]# nmcli c del ens161
成功删除连接 "ens161" (37bc8e79-92ea-4c01-a4af-1dfd7c687014)。
[root@server ~]# nmcli c show
NAME UUID TYPE DEVICE
ens160 0f83fcfd-bc6d-3866-b82b-fc4b09df2068 ethernet ens160
本人在xshell上面直接操作导致ssh断链且忘记截图了
重连操作
nmcli c modify ens33 ipv4.method auto
nmcli c up ens33
下面只有修改后的成果图

ens36为重新建立的网络连接,其ip已被测试命令时删除
这里是把ens36改成静态ip的截图

ping命令
作用
-
用来检测网络的连通情况和分析网络速度
-
根据域名得到服务器 IP
-
根据 ping 返回的 TTL 值来判断对方所使用的操作系统及数据包经过路由器数量。
-
格式
ping -参数 目标主机IP或域名
参数
- -c 数字:用于设定本命令发出的ICMP消息包的数量,若无此选项,则会无限次发送消息包直到用户按【Ctrl+C】组合键才终止命令。
- -s 字节数:设置ping命令发出的消息包的大小,默认发送的测试数据大小为56字节;自动添加8字节的ICMP协议头后,显示的是64字节;再添加20字节的IP协议头,则显示的为84字节。最大设置值为65507B
- -i 时间间隔:设定前后两次发送ICMP消息包之间的时间间隔,无此选项时,默认时间间隔为1秒。为了保障本机和目标主机的安全,一般不要小于0.2秒
- -t:设置存活时间TTL(Time To Live)
[root@server ~]# ping -c 2 www.baidu.com
管理Linux软件包和进程
软件包管理
安装并试验apache
yum install -y httpd
systemctl start httpd
netstat -antlp|grep :80
yum install -y net-tools
echo helloworld > /var/www/html/index.html
curl localhost

nginx安装(使用在之后的日子里)
wget -c https://nginx.org/download/nginx-1.30.0.tar.gz
yum install -y gcc pcre-devel openssl-devel
tar zxf nginx-1.30.0.tar.gz
cd nginx-1.30.0/
./configure --with-http_ssl_module --with-http_stub_status_module
make
make install
systemctl stop httpd
ln -s /usr/local/nginx/sbin/nginx /usr/local/bin/
nginx
netstat -antlp|grep :80
curl localhost

rpm包
rpm通常用于不接触网络情况下的文件管理
格式
rpm -参数 软件包名
参数
| 参数 | 说明 |
|---|---|
| -i, --install | 安装软件包 |
| --nodeps | 不验证软件包依赖 |
| --force | 安装时提示已安装则重新覆盖安装 |
| -v, --verbose | 提供更多的详细信息输出 |
| -U | 软件包升级 |
| -e | 软件包卸载 |
| -a | 查询所有已安装的软件包 |
| ---- | ------------------------------------ |
| -l | 显示已安装软件包的相关文件列表和信息 |
| -f | 查询文件所属软件包 |
| -i | 显示已经安装的rpm软件包信息 |
以及最常用的-q

yum
工作原理
- 将编译好的软件放置在YUM服务器中,并将这些软件的依赖性等信息记录下来形成表格组成数据库
- 用户安装软件时会向网络中的YUM服务器下载对应表格并与本机RPM数据库进行比较,最后一同下载全部软件进行安装,自动解决依赖性
- YUM软件仓库:记录软件依赖性等信息的数据库
命令
# 查看包、包组相关信息
yum repolist [all] # 查看系统中yum资源库配置信息
yum list all # 列出仓库里所有可安装的软件包
yum list installed [包名] # 列出己经安装的所有的或指定的rpm包(包名中可使用匹配符)
yum info 包名 # 查看指定软件包的详细信息
yum grouplist # 查看仓库里而所有包组
yum groupinfo 包组名 #查看指定包组里而的详细信息
# 安装、更新包和包组
yum install [-y] 包名 # 安装指定的软件包,-y则在工作过程中需要使用者响应, 这个选个参数可以直接回答yes
yum update [-y] 包名 # 升级指定的软件包或主机中所有已安装的软件包
yum groupinstall 包组名 # 安装指定包组里面的所有包
# 卸载软件包
yum remove [-y] 包名 # 卸载已经安装在系统中的指定的软件包
# 搜索文件由哪个包产生
yum provides 文件名 # 查找指定的文件属于哪个包
yum whatprovides /etc/fstab # 查看这个文件是由那个包提供的
# 模糊搜索包名
yum search 模糊包名 # 查看模糊包名的软件包
# 清空缓存
yum clean packages all # 清除下载到本机的指定的软件包或所有软件包的yum源缓存

建立本地源
# 将本地光盘挂载至本地目录/media下
[root@server /]# mount /dev/cdrom /media
mount: /media: WARNING: source write-protected, mounted read-only.
# 注意有2个yum源
[root@server /]# cd /media/
[root@server media]# ls
AppStream EFI extra_files.json images media.repo RPM-GPG-KEY-redhat-release
BaseOS EULA GPL isolinux RPM-GPG-KEY-redhat-beta
# 移动到yum源配置文件路径
[root@server media]# cd /etc/yum.repos.d
[root@server yum.repos.d]# ls
CentOS-9-Stream.repo redhat.repo
# 备份已存在yum源配置文件,使其失效
[root@server yum.repos.d]# mv CentOS-9-Stream.repo CentOS-9-Stream.repo.back
[root@server yum.repos.d]# mv redhat.repo redhat.repo.back
[root@server yum.repos.d]# ls
CentOS-9-Stream.repo.back redhat.repo.back
# 新建本地yum源配置文件
[root@server yum.repos.d]# vim dvd.repo
[BaseOS]
name=BaseOS
baseurl=file:///media/BaseOS
gpgcheck=0
[Appstream]
name=Appstream
baseurl=file:///media/AppStream
gpgcheck=0
# 重建缓存
[root@server yum.repos.d]# yum makecache
[root@server yum.repos.d]# yum repolist
# 验证能否装包成功
[root@master ~]# yum install tree -y

浙公网安备 33010602011771号