Linux运维
文章目录
前言
在Linux操作系统中有很多配置文件,今天给大家介绍下/etc、/proc和/var目录下需要了解的重要配置文件
一、etc下的重要配置文件
1、网卡配置文件
/etc/sysconfig/network-scripts/ifcfg-eth0
(默认)
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=0cad6372-6ae7-4163-b24e-b24b53e54964
DEVICE=ens33
ONBOOT=yes
在网卡中删除,含义必须掌握(因为后续会克隆,以防到时候ID冲突的影响)
UUID=1c3bd5e9-a5e6-4e27-87bf-54bae995ad5b # 系统为所有的硬件分发一个UUID号 类似身份证号
接下来优化一下网卡配置让其看起来简洁点
第一步: 备份网卡配置文件
绝对路径
[root@study01 ~]# cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0.bak
相对路径
[root@study01 ~]# cd /etc/sysconfig/network-scripts/
[root@study01 network-scripts]# cp ifcfg-eth0 ifcfg-eth0.bak
第二步: 优化网卡配置文件
[root@study01 network-scripts]# cat ifcfg-eth0
TYPE=Ethernet # 网络类型 以太网 (快速以太网)
BOOTPROTO=none # 配置IP地址的方式
# 自动获取方式 dhcp
# 固定IP地址配置两种: none static
NAME=eth0 # 网卡在系统中显示的名称
DEVICE=eth0 # 网卡的硬件名称
ONBOOT=yes # 开机是否自行运行网卡服务 必须设置为yes
IPADDR=10.0.0.200 # IP地址 局域网内唯一 10.0.0.1-10.0.0.254
PREFIX=24 # 子网掩码 决定了可用的IP地址数量 默认配置的IP都是24位
GATEWAY=10.0.0.2 # 网关 去往不同网段的必经之路 类似学校大门
DNS1=223.5.5.5 # 域名解析服务 将我们浏览器输入的域名通过DNS服务解析成IP
第三步: 修改完成后重启网络服务生效
[root@study01 network-scripts]# systemctl restart network
2、存放主机名称的配置文件
/etc/hostname
作用: 存放主机名称的配置文件
主机名称的作用:
1.可以实现通过主机名称互相通信
2.统一化命名标准(自动化)
[root@study01 ~]# cat /etc/hostname
study01
启动操作系统时候 系统会根据配置文件进行配置主机名称!
/etc/hostname 中是什么主机名称 则系统就会配置成什么!
修改主机名称方式:
第一种方式: 临时修改重启系统失效
[root@study01 ~]# hostname test
第二种方式: 永久修改主机名称
修改配置文件,完成后重启操作系统生效
[root@study01 ~]# cat /etc/hostname
study01
第三种方式: 永久+临时配置主机名称 重点
[root@study01 ~]# hostnamectl set-hostname Linux
3、本地DNS解析配置文件 类似本地的DNS服务
/etc/hosts
`/etc/hosts`
作用: 本地DNS解析配置文件 类似本地的DNS服务
DNS作用: 域名解析 将用户输入的域名解析成IP地址
[root@study01 ~]# cat /etc/hosts
127.0.0.1 localhost
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
10.0.0.51 db01
在企业中使用windows的hosts文件较多
#windows的hosts文件路径:
C:\Windows\System32\drivers\etc
4、DNS配置文件
/etc/resolv.conf
作用: DNS配置文件
DNS: 223.5.5.5 114.114.114.114 8.8.8.8
特点: 网卡配置和resolv之间的关系
1.如果网卡中配置了重启会覆盖resolv.conf
2.如果网卡中不配置,则不会覆盖resolv.conf
3.resolv.conf中修改的DNS是直接生效 不需要任何操作
4.网卡中配置的DNS必须重启生效
5.网卡和resolv.conf都可以配置备用DNS
`企业配置建议:
网卡或reslov.conf选其一`
配置方式:
vim /etc/resolv.conf
nameserver 223.5.5.5
nameserver 114.114.114.114
nameserver 8.8.8.8
网卡配置DNS:
BOOTPROTO=none
NAME=eth0
DEVICE=eth0
ONBOOT=yes
IPADDR=10.0.0.200
PREFIX=24
GATEWAY=10.0.0.2
DNS1=223.5.5.5
DNS2=114.114.114.114
DNS3=8.8.8.8
-------------------------------------------------------------
reslov.conf作用
访问域名------>查找reslov.conf中的DNSIP---->请求DNS进行域名解析
配置resolv.conf的方式两种:
第一种: 直接vim编辑/etc/resolv.conf
vim /etc/resolv.conf
nameserver 114.114.114.114
第二种配置方式: 直接编辑网卡进行配置DNS
DNS1=223.5.5.5
DNS2=114.114.114.114
DNS3=8.8.8.8
5、开机自动执行里面的命令
/etc/rc.local
作用: 开机自动执行里面的命令
Linux操作系统启动完成最后执行的一个配置文件/etc/rc.local
首先要给rc.local执行权限
rc.local是一个软链接文件 类似windows的快捷方式
[root@study01 ~]# chmod +x /etc/rc.d/rc.local
[root@study01 ~]# ll /etc/rc.d/rc.local
-rwxr-xr-x. 1 root root 473 Apr 1 2020 /etc/rc.d/rc.local
测试:
第一步: 将网卡配置里面ONBOOT=no
第二步: 重启操作系统
第三步: 会发现无法连接虚拟机
测试rc.local是否开机自动执行里面的命令
第一步: 将启动网卡的命令写入rc.local进行测试
vim /etc/rc.local
Ifup eth0
第二步: 重启操作系统 reboot
第三步: 直接使用xshell连接(正常)
命令:
ifup eth0 启动网卡
ifdown eth0 关闭网卡
6、系统的运行级别文件
/etc/inittab
etc/inittab文件是Linux初始化系统使用的配置文件,在不同发行版Linux的位置不同,inittab控制着系统boot和更改runlevel时所执行的代码。在我们按下电源键时,此文件就会指导系统工作。
简而言之:该文件定义了默认运行等级、每个运行等级下的操作,以及进程启动、监视、重启。
一旦inittab文件中关于运行等级的所有操作执行完成,便代表了boot完成,之后就引导进入登录界面,用户可以使用账户密码登陆进入系统。
在这里相对应的我们需要了解以下内容:
Linux系统的运行级别 runlevel
0 #关机
1 #表示单用户
2 #表示多用户
3 #表示完全多用户
4 #保留待开发
5 #表示图形化界面
6 #重启
进入到对应的级别:
init 5 # 自动重启进入到图形界面
init 0 # 表示关机
init 6 # 表示重启
7、开机自动显示里面的文字 字符串
/etc/motd
作用 开机自动显示里面的文字 字符串
vim /etc/motd
ctrl+v # 块模式 批量选中
shift+v# 批量选择行
cat /etc/motd
/**
* .,:,,, .::,,,::.
* .::::,,;;, .,;;:,,....:i:
* :i,.::::,;i:. ....,,:::::::::,.... .;i:,. ......;i.
* :;..:::;::::i;,,:::;:,,,,,,,,,,..,.,,:::iri:. .,:irsr:,.;i.
* ;;..,::::;;;;ri,,,. ..,,:;s1s1ssrr;,.;r,
* :;. ,::;ii;:, . ................... .;iirri;;;,,;i,
* ,i. .;ri:. ... ............................ .,,:;:,,,;i:
* :s,.;r:... ....................................... .::;::s;
* ,1r::. .............,,,.,,:,,........................,;iir;
* ,s;........... ..::.,;:,,. ...............,;1s
* :i,..,. .,:,,::,. .......... .......;1,
* ir,....:rrssr;:, ,,.,::. .r5S9989398G95hr;. ....,.:s,
* ;r,..,s9855513XHAG3i .,,,,,,,. ,S931,.,,.;s;s&BHHA8s.,..,..:r:
* :r;..rGGh, :SAG;;G@BS:.,,,,,,,,,.r83: hHH1sXMBHHHM3..,,,,.ir.
* ,si,.1GS, sBMAAX&MBMB5,,,,,,:,,.:&8 3@HXHBMBHBBH#X,.,,,,,,rr
* ;1:,,SH: .A@&&B#&8H#BS,,,,,,,,,.,5XS, 3@MHABM&59M#As..,,,,:,is,
* .rr,,,;9&1 hBHHBB&8AMGr,,,,,,,,,,,:h&&9s; r9&BMHBHMB9: . .,,,,;ri.
* :1:....:5&XSi;r8BMBHHA9r:,......,,,,:ii19GG88899XHHH&GSr. ...,:rs.
* ;s. .:sS8G8GG889hi. ....,,:;:,.:irssrriii:,. ...,,i1,
* ;1, ..,....,,isssi;, .,,. ....,.i1,
* ;h: i9HHBMBBHAX9: . ...,,,rs,
* ,1i.. :A#MBBBBMHB##s ....,,,;si.
* .r1,.. ,..;3BMBBBHBB#Bh. .. ....,,,,,i1;
* :h;.. .,..;,1XBMMMMBXs,.,, .. :: ,. ....,,,,,,ss.
* ih: .. .;;;, ;;:s58A3i,.. ,. ,.:,,. ...,,,,,:,s1,
* .s1,.... .,;sh, ,iSAXs;. ,. ,,.i85 ...,,,,,,:i1;
* .rh: ... rXG9XBBM#M#MHAX3hss13&&HHXr .....,,,,,,,ih;
* .s5: ..... i598X&&A&AAAAAA&XG851r: ........,,,,:,,sh;
* . ihr, ... . .. ........,,,,,;11:.
* ,s1i. ... ..,,,..,,,.,,.,,.,.. ........,,.,,.;s5i.
* .:s1r,...................... ..............;shs,
* . .:shr:. .... ..............,ishs.
* .,issr;,... ...........................,is1s;.
* .,is1si;:,....................,:;ir1sr;,
* ..:isssssrrii;::::::;;iirsssssr;:..
* .,::iiirsssssssssrri;;:.
*/
8、存放环境变量的文件 永久生效
/etc/profile
- Linux是一个多用户的操作系统。每个用户登录系统后,都会有一个专用的运行环境。通常每个用户默认的环境都是相同的,这个默认环境实际上就是一组环境变量的定义。用户可以对自己的运行环境进行定制,其方法就是修改相应的系统环境变量。
- 常在/etc/profile文件中修改环境变量,在这里修改的内容是对所有用户起作用的。以下主要操作将在该文件中进行。
作用: 存放环境变量的文件 永久生效
环境变量: 可以让我们正常的使用操作系统提前定义好的
在profile文件添加或修改的内容,系统启动或者xshell重新连接,或执行如下命令
#使配置立即生效
source /etc/profile
[root@study01 ~]# eth0=/etc/sysconfig/network-scripts/ifcfg-eth0
[root@study01 ~]# vim $eth0
[root@study01 ~]# ll $eth0
-rw-r--r--. 1 root root 156 Nov 3 11:30 /etc/sysconfig/network-scripts/ifcfg-eth0
9、开机自动挂载硬件
/etc/fstab
作用: 开机自动挂载硬件
查看磁盘的使用率和挂载信息
[root@study01 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 980M 0 980M 0% /dev
tmpfs 991M 0 991M 0% /dev/shm
tmpfs 991M 9.6M 981M 1% /run
tmpfs 991M 0 991M 0% /sys/fs/cgroup
/dev/sda3 18G 2.0G 16G 11% /
/dev/sda1 197M 110M 88M 56% /boot
tmpfs 199M 0 199M 0% /run/user/0
配置文件中每列的含义:
UUID=123f212b-6f45-4c4d-8a09-aa28c4527896 / xfs defaults 0 0
第一列: uuid唯一标识 类似身份证号 系统给每个硬件都会自动分配一个UUID
或者是硬件的名称也可以
第二列: 表示挂载点
第三列: 文件系统类型 xfs ext3 ext4
第四列: 挂载参数选项 默认defaults
第五列: 是否备份系统DUMP不用 默认0
第六列: 开机是否自检 默认0
分区:
/boot 磁盘空间
swap 磁盘空间充当内存使用
/ 磁盘空间
swap: 当操作系统内存不够用时,swap的空间会临时充当内存使用!防止进程被杀死,速度非常慢
二、proc下的重要配置文件
/proc内存映射
- 1./proc/cpuinfo 查看cpu的信息
- 2./proc/meminfo 查看内存的信息
- 3./proc/loadavg 查看负载的信息
- 4./proc/mounts 查看挂载的信息 后面的重点
需要掌握的下面的查看操作系统硬件信息的命令:
1.lscpu 查看cpu的信息
[root@oldboyedu ~]# lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 1 #总的核心数量
On-line CPU(s) list: 0 #0表示第一个核心
Thread(s) per core: 1
Core(s) per socket: 1
Socket(s): 1 #cpu的个数
2.free 查看内存的信息
[root@study01 ~]# free
总大小 使用的 空闲的 共享空间 缓冲/缓存 可用内存
total used free shared buff/cache available
Mem: 2027868 206956 1714956 9704 105956 1687664
Swap: 2097148 0 2097148
[root@study01 ~]# free -h
total used free shared buff/cache available
Mem: 1.9G 202M 1.6G 9.5M 103M 1.6G
Swap: 2.0G 0B 2.0G
[root@study01~]#
3、df 查看磁盘信息
[root@study01 ~]# df -h
硬件名称 大小 使用 可用 使用百分比 挂载点
Filesystem Size Used Avail Use% Mounted on
devtmpfs 980M 0 980M 0% /dev
tmpfs 991M 0 991M 0% /dev/shm
tmpfs 991M 9.5M 981M 1% /run
tmpfs 991M 0 991M 0% /sys/fs/cgroup
/dev/sda3 18G 2.0G 16G 11% /
/dev/sda1 197M 110M 88M 56% /boot
tmpfs 199M 0 199M 0% /run/user/0
负载信息
[root@study01 ~]# uptime
01:05:36 up 34 min, 1 user, load average: 0.00, 0.01, 0.04
当前时间 运行时长 1个登录用户 平均负载 1分钟 5分钟 15分钟
`什么是系统负载?`
- 系统负载是衡量操作系统繁忙程度
- 如果负载和CPU核心数量相同说明系统繁忙
# 例如: 核心2 则负载的数字不能超过2 接近于2 超过2说明非常繁忙 核心4 则负载数字不能超过4 超过4说明非常繁忙
`企业服务器类型`
对外提供服务: 用户访问的游戏平台 电商平台 小说站
对内服务器: 测试服务器 内部计算服务器(挖矿) 负载高不一定不好 充分利用资源
5.w 查看系统负载和用户登录信息
[root@study01 ~]# w
01:08:16 up 37 min, 1 user, load average: 0.00, 0.01, 0.04
登录用户 终端 哪个IP连接的我 登陆时间 当前执行的命令
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 10.0.0.1 00:30 0.00s 0.03s 0.01s w
查看系统信息命令小结:
1.lscpu
2.free -h
3.df -h
4.uptime
5.w
三、var下的配置文件
/var最新的日志放在文件的最下面
- 1./var/log/messages # 系统日志文件
- 2./var/log/secure # 系统登录和退出日志
`如果secure日志中出现大量的Failed说明有人暴力破解服务器密码。`
服务: Nginx服务 自身日志
/var/log/nginx/nginx.log
注意: 有些服务默认会将部分日志输出到message系统日志中
由于有些日志文件很大我们不可以直接用cat查看,查看日志的方法
1.tail # 显示文件末尾10行
-n 数字 # 显示文件末尾的第n行
-f # 不退出文件实时显示文件末尾的变化 使用ctrl+c结束退出
tailf === tail -f # tailf不是别名是独立的命令
-F # 了解 实时显示文件末尾的变化,文件不存在也可以 了解
语法结构:
tail 文件名称
cat file|tail # tail命令可以使用管道接收其他命令的结果,在进行处理
2.head # 默认显示头部10行
-n 数字 # 显示文件前n行
3.grep # 过滤文件中的单词 模糊过滤
语法结构:
grep '过滤的内容' file
ip a|grep '过滤的内容'
-w # 精准匹配 过滤单词