配置Linux网络 、 源码编译安装 、 自定义Yum仓库 、 日志管理与常见的日志文件

配置Linux网络

入网参数:主机名、IP地址、子网掩码、网关地址、DNS服务器地址

虚拟机A:

  • 配置主机名 永久 开机生效 echo A.itqzw.com > /etc/hostname 临时 当前生效 (exit 新开终端即可) hostname A.itqzw.com

  • 配置IP地址与子网掩码、网关地址

查看网卡:ifconfig (除了lo 和 virbr0 ,剩下的网卡为第一张网卡)

红帽 7和8用命令配置

红帽 5和6修改配置文件

查看网络连接

 

【命令使用的名字】使用show命令--nmcli 命令可以使用的名字

nmcli connection show 
    
[root@A ~]# nmcli connection show
NAME   UUID  TYPE  DEVICE 
virbr0  e41b5901-bd33-4050-9f7f-a08114518bfd  bridge    virbr0 
ens33   83cf3271-1a17-4bc4-92aa-476fe8dc7472  ethernet  --  

nmcli connection show 网卡设备看不到

 

nmcli device connect eth0

nmcli device status  设备识别的网卡名字

DEVICE TYPE STATE CONNECTION 
virbr0  bridge  连接的  virbr0   
ens33  ethernet  不可用  --     
lo   loopback  未托管  --       
virbr0-nic  tun       未托管  --  

配置IP与子网掩码 网关

 

自动设置
nmcli connection modify 'ens33' ipv4.method auto

手动设置
nmcli connection modify 'ens33' ipv4.method manual ipv4.addresses 192.168.4.10/24 ipv4.gateway 192.168.1.254 connection.autoconnect yes

connection.autoconnect yes 代表每次开机自动启动 
首次配置不会立刻生效,需要激活命令

nmcli connection up 'ens33'

ifconfig 显示IP地址信息

网关地址的查看

 

route -n

-n 以数字的形式显示 (不带n 可能会显示为英文)

Kernel IProuting table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.4.254   0.0.0.0         UG    100    0        0 ens33
192.168.4.0     0.0.0.0         255.255.255.0   U     100    0        0 ens33
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0

DNS服务器地址

 

/etc/resolv.conf

echo nameserver 1.1.1.1 > /etc/resolv.conf

虚拟机B

 

主机名 B.itqzw.com

ip 192.168.4.20/24
网关 192.168.4.254

真机远程管理服务器

  • 真机与虚拟机要能通信 ping通

  • 虚拟网络类型:

桥接模式

 

Guest 与 Host连接到同一个交换机上,通过桥接物理网卡,相当于直连到host所在的网络

隔离模式

 

Guest可访问同一虚拟机上的其他Guest,但无法访问Host所在的外部网络

vmware 网络架构

vmware 会产生两张虚拟交换机,名称为 VMnet1 VMnet2 两个虚拟交换机之间没有通信

(如果真机没有虚拟网卡,vmware 点击编辑 虚拟网络配置,点击更改设置,可以添加网络配置;  
注意添加后,下面 将主机虚拟适配器连接到此网络 以及 使用本地DHCP服务将IP地址分配给虚拟机 必须勾选,然后确定)

真机会产生两张虚拟网卡 ,名称为VMnet1 VMnet8 VMnet 1 会自动连接 VMnet 1 虚拟交换机; VMnet 8 会自动连接 VMnet 8 虚拟交换机 目前有两台虚拟机 ip分别为 192.168.4.10 192.168.4.20

  • 核心思想1

虚拟机都连接 VMnet 1 ,只需要配置真机VMnet 1 虚拟网卡的IP地址即可

  • 核心思想2

虚拟机都连接 VMnet 8 ,只需要配置真机VMnet 8 虚拟网卡的IP地址即可

——–实操 选择VMnet1

1.虚拟机A与虚拟机B 链接到VMnet1 虚拟机

右键虚拟机 设置——》网络适配器-》自定义 选择vmnet1 确定即可

2、配置主机的VMnet 1 192.168.4.1

修改虚拟机网卡名称

 

vim /etc/default/grub  # 添加配置  

GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's,release.*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GURB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet net.ifnames=0 biosdevname=0"
GRUB_DISABLE_RECOVERY="true"

重新生成新的引导文件
grub2-mkconfig -o /boot/grub2/grub.cfg

reboot

重新配置IP

 

查看网卡名称:
nmcli connection show

NAME        UUID                                  TYPE      DEVICE 
virbr0      b40aedf7-64dc-4771-b230-b62c182ccf73  bridge    virbr0 
有线连接 1  bba01de4-f2d6-3149-bf3e-74c0aabfae73  ethernet  eth0   
ens33       83cf3271-1a17-4bc4-92aa-476fe8dc7472  ethernet  --

– 删除 ens33 nmcli connection delete ‘ens33’

- 删除 有线连接 1 (复制有 粘贴按tab)

nmcli connection delete '有线连接 1'

- 添加一个网卡

nmcli connection add type ethernet ifname eth0 con-name eth0

nmcli connection add 类型 以太网设备 设备名  eth0 配置文件名 eth0

ip 192.168.4.7

ip 192.168.4.207

—xshell连接

 

勾选异常关闭请重新来连接
键盘 使用alt代替Meta键 (alt + .)

桥接模式下的自动获取IP

 

nmcli connection modify 'eth0' ipv4.method auto

nmcli connection up ‘eth0’

问题

 

nmcli n 
nmcli n on

常用的网络工具

ip

 

查看IP地址

ip address show

支持缩写 IP a s
 
修改ip地址(临时设置多个IP)

ip address add 192.168.8.1/24 dev eth0

ping 命令 -c 3 ping 3次

源码编译安装

rpm包:操作命令 rpm yum 由源码包加工而来

源码包:大多数由C语言 C++ 编写 版本比较新,及时修复bug,自定义性高,使用各种平台,缺点:麻烦

利用开发工具 gcc 与 make --》将源码包变成可执行的程序 ---》 运行安装

准备软件素材(源码包)

/root/tools.tar.gz

 

将其解压到根下
tar -xf /root/tools.tar.gz -C /
根目录下 产生tools
[root@A ~]#  ls /tools/
inotify-tools-3.13.tar.gz  other

 继续解压
 tar -xf /tools/inotify-tools-3.13.tar.gz -C /tmp  
 会产生 /tmp/inotify-tools-3.13
    
 cd /tmp/inotify-tools-3.13

安装开发工具 gcc 和 make

 

yum -y install gcc make

./configure 运行脚本
检测 gcc make 是否已安装,指定软件安装的位置以及功能(软件可能有10个功能 我只想装两个)

指定安装位置,不会立即产生该目录
./configure --prefix=/opt/myrpm

make 编译成可运行的执行程序

make install 安装程序

[root@A inotify-tools-3.13]# ls /opt/myrpm
bin  include  lib  share

自定义Yum仓库

仓库组成:

  1. 众多的软件包

  2. 仓库数据文件

1、通过互联网下载rpm软件包,存在依赖关系,自定义yum仓库

 

ls /tools/other/

[root@A inotify-tools-3.13]# ls /tools/other/
boxes-1.1.1-4.el7.x86_64.rpm  ntfs-3g-2014.2.15-6.el6.x86_64.rpm  sl-5.02-1.el7.x86_64.rpm
cmatrix-1.2a-1.i386.rpm       oneko-1.2-19.fc24.x86_64.rpm

假设上述包是从互联网上下载的rpm包,搭建一个自定义仓库

创建仓库

创建仓库数据文件

 

createrepo /tools/other/
运行之后多出来一个repodata
	
假如命令没有,yum -y install createrepo

编写yum仓库配置文件

 

vim /etc/yum.repos.d/zhu1.repo

[other]
name=other repo
baseurl=file:///tools/other
enabled=1
gpgcheck=0

使用yum repolist 查看

日志管理与常见的日志文件

系统和程序的 日记本

  • 记录系统、程序运行在发生的各种事件

  • 通过查看日志,了解及排除故障

  • 信息安全控制的依据

内核及系统日志

由系统服务 rsysylog 统一记录/管理

  • 日志消息采用文本格式

  • 主要记录事件发生的时间、主机、进程、内容

 

	tail -2 /var/log/messages
	Jan 23 20:40:01(时间) 
	A(主机名) 
	systemd:(进程名或用户名) 
	Started Session 22 of user root.(事件)

常见的日志文件

 

  • /var/log/messages 记录内核消息,各种服务的公共消息

  • /var/log/dmesg 记录系统启动过程的各种消息

  • /var/log/cron 记录系统与cron计划任务相关的消息

  • /var/log/maillog 记录邮件收发相关的消息

  • /var/log/secure 记录与访问限制相关的安全信息

用户日志

由登录程序负责记录/管理

  • 日志消息采用二进制格式(直接看是看不懂的)

  • 记录登录用户的时间、来源、执行的命令等信息

常见的用户日志文件

 

  • /var/log/lastlog 记录最近的用户登录事件

  • /var/log/wtmp 记录成功的用户登录/注销事件

  • /var/log/btmp 记录失败的用户登录事件

  • /var/log/utmp 记录当前登录的每个用户的相关信息

命令

 

- users  最简单的
- who
- w   最详细的
查看已登陆用户的信息,详细度不同

[root@A inotify-tools-3.13]# who

root     pts/0        2021-01-23 17:59 (192.168.4.1)
root     :0           2021-01-23 20:32 (:0)
root     pts/1        2021-01-23 20:32 (:0)

用户名  终端  时间IP
:0  图形化终端
pts 图形的命令行界面
pts/0 第一个图形界面

– last – lastb 查看最近登录成功/失败的用户

日志分析

 

  • 通用分析工具 tail、tailf(实时跟踪日志文件)、less、grep等文本浏览/检索工具 awk、sed等格式化过滤工具

  • 专用的分析工具 Webmin系统管理套件 Webalizer、AWStats等日志统计套件

    ELK 日志分析平台

日志消息优先级

 

  • Linux 内核定义的事件紧急程度 分为0~7级,共8种优先级 其数值越小,越重要也越紧急

man 2 syslog

  • 0 EMERG (紧急) 会导致主机系统不可用的情况

  • 1 ALERT(警告) 必须马上采取措施解决的问题

  • 2 CRIT (严重) 比较严重的情况

  • 3 ERR(错误) 运行出现错误

  • 4 WARNING(提醒) 可能会影响系统功能的事件

  • 5 NOTICE(注意) 不会影响系统,但值得注意

  • 6 INFO (信息) 一般信息

  • 7 DEBUG(调试) 程序或系统调试信息

使用 journalctl 工具

提取由 systemd-journal 服务搜集的日志

 

主要包括内核/系统日志,服务日志  
  • 常见用法

    
    journalctl | grep 关键词  
    journalctl -u 服务名 【-p 优先级】  
    journalctl -n 消息条数  

评论