Linux系统下的必知必会的文件和目录
/etc目录(续)
- /etc/inittab
在centos 6中运行级别的配置文件
运行级别(runlevel):就是服务器不同的状态
在centos 6中的运行级别是:
级别0 关机状态
级别1 单用户模式(单用户模式默认没有网络)
级别2 多用户模式(没有NFS,也可以说是没有网络)
级别3 完全的多用户模式(命令行模式/文本模式,也是我们在工作中默认使用的模式)
级别4 待开发
级别5 图形化界面模式/桌面模式
级别6 重启
centos 7中运行级别和centos 6的命名有不同
centos 7中的运行级别是(target)
级别0=poweroff.target (关机)
级别1=resuce.target (救援模式)
级别2=multiuser.target(多用户模式)
级别3=multiuser.target(多用户模式)
级别4=multiuser.target(多用户模式)
级别5 =graphical.target (图形化界面/桌面模式)
级别6=reboot.target (重启)
在centos 6下修改运行级别的方式:
临时修改运行级别
命令是:init+级别
这是临时修改,重启后运行级别不变
在centos 6下查看运行级别的命令是:runlevel(查看当前的运行级别)
在centos 7下修改运行级别的方式:(这条命令=永久修改+临时修改)
命令是:systemctl get-default (先查看当前的运行级别)
systemc set-default+运行级别=修改运行级别
Linux的启动流程
centos 6的启动流程是串行的,centos 7的启动流程是并行的。
centos 6的启动流程
1.打开电源
2.开机自检(BIOS)检查硬件是否有问题(cpu,内存,磁盘等)
3.通过MBR引导 (通过硬盘启动)
4.进入GRUB菜单(可以选择不同的内核,在centos 6中是进入单用户模式)
5.加载内核(/boot目录加载内核到内存)
6.运行init进程(开机之后运行的第一个进程是init进程)
7.读取/etc/inittab(读取运行级别)
8.读取/etc/rc.sysinit(初始化系统)
9.根据不同的运行级别来启动不同的软件/服务(串行)
10.启动minggetty,运行login,显示登陆界面
centos 7的启动流程和centos 6的启动流程差不多,只不过是运行第一个进程init的时候,改成了systemd
centos 7的启动流程
1.打开电源
2.开机自检(BIOS)
3.通过MBR引导
4.进入GRUB菜单(centos 7中是进入救援模式)
5.加载内核
6.运行systemd进程(centos 7中,开机之后运行的第一个进程)
7./etc/systemd/system/default.target 读取运行级别
8./usr/lib/systemd/system/sysinit.target 初始化系统
9.启动软件/服务 (并行)
10./usr/lib/systemd/system/getty.target 显示login登录界面
- /etc/profile
配置环境变量/别名
环境变量的特点是:
1.系统创建好的变量(变量里的内容可以变换)
2.Linux下面随意使用,含义不变
3.都是大写
查看变量的命令是:env(env命令可以查看大部分变量)
别名:就相当于给命令起了一个小名(别称/昵称)
查看系统中已有的别名的命令是:alias
- /etc/basher
系统默认的配置别名的文件
一般在/etc/profile中配置别名和环境变量
/etc/profile和 /etc/basher的配置命令是全部生效的
~/.bash_profile 和~/.bashrc配置命令只在当前用户生效
- /etc/motd
用户登录之后显示这个文件的内容
例:
Connecting to 10.0.0.211:22...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.
Last login: Tue Apr 2 10:57:09 2019 from 10.0.0.1
小猪佩奇的AE86
[root@oldboyedu59 ~]#
/etc/issue
用户登录之前显示这个文件的内容
不过文件内容一般会清空,不是特定版本的系统,一般会有漏洞(不要让别人知道你是什么系统)输出重定向的命令是 >
清空文件内容,如果没有这个文件,就会创建这个文件,如果这个文件存在,就会清空这个文件内容/etc/init.d
centos 6下面系统管理命令(脚本)的位置
centos 7下面只有network服务
/usr目录
- /usr/local
存放用户编译安装的软件
编译安装,就是可以定制的安装,可以根据自身需求安装
yum安装比编译安装相对来说,是比较方便的
编译安装的三步:
./configure
make
make install
/var目录
- /var/log
存放日志(服务和软件的状态)
/var/log/message
记录着系统默认的日志(就是各种的服务信息)
/var/log/secure
记录着用户的登录情况(日志里,假如出现多次Failed password 单词,意味着你的密码正在被人破解)
/proc目录
- /proc/cpuinfo
存放CPU信息的目录
例:
processor : 0 意思是:CPU的第一个核心
physical id : 0 意思是:第一个cpu
查看CPU信息的命令是:lscpu
例:
[root@oldboyedu59 ~]# 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
Thread(s) per core: 1
Core(s) per socket: 1
Socket(s): 1
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 158
Model name: Intel(R) Core(TM) i5-8300H CPU @ 2.30GHz
Stepping: 10
CPU MHz: 2303.998
CPU max MHz: 0.0000
CPU min MHz: 0.0000
BogoMIPS: 4607.99
Hypervisor vendor: VMware
Virtualization type: full
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 8192K
NUMA node0 CPU(s): 0
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts nopl xtopology tsc_reliable nonstop_tsc aperfmperf eagerfpu pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch epb fsgsbase tsc_adjust bmi1 avx2 smep bmi2 invpcid rdseed adx smap xsaveopt xsavec xgetbv1 dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp
- /proc/meminfo
存放内存信息的目录
查看内存信息的命令是:free
例:
[root@oldboyedu59 ~]# free
total used free shared buff/cache available
Mem: 2028088 96168 1797548 9756 134372 1772848
Swap: 1023996 0 1023996
命令free+参数-h (就是用人类可读的信息来显示内存的使用情况)
[root@oldboyedu59 ~]# free -h
total used free shared buff/cache available
Mem: 1.9G 93M 1.7G 9.5M 131M 1.7G
Swap: 999M 0B 999M
这是在新版的centos系统里所拥有的的参数
老版centos系统(5.x或6.x)的free命令的参数是
-m,以mb单位显示内存信息
- /proc/loadavg
平均负载,衡量系统是否繁忙
例:
[root@oldboyedu59 ~]# cat /proc/loadavg
0.00 0.01 0.05 2/108 7801
第一个数字,是最近一分钟系统的运行情况
第二个数字,是最近五分钟系统的运行情况
第三个数字,是最近十五分钟系统的运行情况
第四个数字,正在运行的进程/进程总数
第五个数字,运行的这个进程的PID(进程号)
命令w,可以直接查看系统负载信息(显示谁登录了系统,正在作什么)
w命令在Linux操作系统里,是最短的命令,没有之一
如何查看系统是否繁忙?
数字接近CPU核心总数的时候,系统繁忙。
- /proc/mounts
记录着系统的挂载信息