CentOS6安装

image-20240429164147100

1.选第一个,回车

QQ截图20240429144920

image-20240429150439219

image-20240429150817328

image-20240429150932495

image-20240429151041651

选择时区和填写密码等省略

image-20240429151453854

image-20240429151940449

选择base和develop工具

image-20240429152056178

配置CentOS6网卡

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0 
DEVICE=eth0
HWADDR=00:0C:29:5A:FC:82
TYPE=Ethernet
UUID=65c55f51-b929-49fa-b8c9-541e6230e11b
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
IPADDR=10.0.0.10
NETMASK=255.255.255.0
GETEWAY=10.0.0.254
DNS=223.5.5.5
:wq
重启网卡
1./etc/init.d/network restart
2.service network restart

CentOS6启动流程

1
2
3
4
5
6
7
8
Centos6
1.BIOS加电自检
2.内核引导
3.读取GRUB菜单
4.运行init,读取/etc/inittab默认运行级别
5.按顺序启动其他服务/etc/rcN.d
6.建立终端
7.用户登录

2.内核引导

1
2
3
4
打开电源,BiOS加电自检
检测硬件是否损坏:CPU、内存、磁盘
读取/boot目录下的文件,加载启动文件,GRUB菜单
GRUB菜单提供已安装系统的选项,如果是多系统,选择要进入的系统

3.运行init

init运行级别 init 在CentOS中,是系统所有进程的起点,如果进程想启动,那必须有init,如果没有init,系统中的任 何进程都不会启动,那就相当于这个系统打不开

1
2
3
4
5
6
7
8
9
10
init是CentOS6中PID为0的进程,是所有进程启动的起点
[root@localhost ~]# pstree
init─┬─abrtd
├─acpid
├─atd
├─auditd───{auditd}
├─console-kit-dae───63*[{console-kit-da}]
├─sshd───sshd───bash───pstree
└─udevd───2*[udevd]

4.运行级别

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
init程序首先是需要读取配置文件/etc/inittab
[root@localhost ~]# cat /etc/inittab
# Default runlevel. The runlevels used are:
# 0 - halt (Do NOT set initdefault to this)
# 1 - Single user mode
# 2 - Multiuser, without NFS (The same as 3, if you do not have networking)
# 3 - Full multiuser mode
# 4 - unused
# 5 - X11
# 6 - reboot (Do NOT set initdefault to this)
id:3:initdefault: #设置运行级别为3

# 运行级别:
0:关机运行级别 #开机即关机
1:单用户模式运行级别
2:多用户模式,但是没有文件系统,没有网络
3:完整的多用户模式,有文件系统,有网络
4:未被使用的运行级别
5:图形化运行级别
6:重启运行级别 #默认运行级别不能设为6,否则不能正常启动

image-20240429154944112

查看当前运行级别

1
2
3
4
5
6
7
[root@localhost ~]# runlevel
N 3
#临时切换运行级别
[root@localhost ~]# init 5
#永久切换运行级别
[rootezls ~]vim /etc/inittab
id:3:initdefault

读取完配置文件,找到对应的运行级别 3

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
查询操作系统在每一个执行等级中会执行哪些系统服务,其中包括各类常驻服务。
[root@localhost ~]# chkconfig

[root@localhost ~]# chkconfig |grep '3:on'
auditd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
crond 0:off 1:off 2:on 3:on 4:on 5:on 6:off
ip6tables 0:off 1:off 2:on 3:on 4:on 5:on 6:off
iptables 0:off 1:off 2:on 3:on 4:on 5:on 6:off
kdump 0:off 1:off 2:off 3:on 4:on 5:on 6:off
mdmonitor 0:off 1:off 2:on 3:on 4:on 5:on 6:off
netfs 0:off 1:off 2:off 3:on 4:on 5:on 6:off
network 0:off 1:off 2:on 3:on 4:on 5:on 6:off
postfix 0:off 1:off 2:on 3:on 4:on 5:on 6:off
rsyslog 0:off 1:off 2:on 3:on 4:on 5:on 6:off
sshd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
udev-post 0:off 1:on 2:on 3:on 4:on 5:on 6:off

5.系统初始化

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
## 读取3运行级别的服务启动顺序
##S开头的是关机服务停止顺序
[root@localhost ~]# ll /etc/rc3.d/
total 0
lrwxrwxrwx. 1 root root 19 Apr 29 17:06 K10saslauthd -> ../init.d/saslauthd
lrwxrwxrwx. 1 root root 21 Apr 29 17:06 K87restorecond -> ../init.d/restorecond
lrwxrwxrwx. 1 root root 20 Apr 29 17:06 K89netconsole -> ../init.d/netconsole
lrwxrwxrwx. 1 root root 15 Apr 29 17:06 K89rdisc -> ../init.d/rdisc
lrwxrwxrwx. 1 root root 19 Apr 29 17:06 S08ip6tables -> ../init.d/ip6tables
lrwxrwxrwx. 1 root root 18 Apr 29 17:06 S08iptables -> ../init.d/iptables
lrwxrwxrwx. 1 root root 17 Apr 29 17:06 S10network -> ../init.d/network
lrwxrwxrwx. 1 root root 16 Apr 29 17:07 S11auditd -> ../init.d/auditd
lrwxrwxrwx. 1 root root 17 Apr 29 17:06 S12rsyslog -> ../init.d/rsyslog
lrwxrwxrwx. 1 root root 19 Apr 29 17:06 S15mdmonitor -> ../init.d/mdmonitor
lrwxrwxrwx. 1 root root 15 Apr 29 17:06 S25netfs -> ../init.d/netfs
lrwxrwxrwx. 1 root root 19 Apr 29 17:06 S26udev-post -> ../init.d/udev-post
lrwxrwxrwx. 1 root root 15 Apr 29 17:07 S50kdump -> ../init.d/kdump
lrwxrwxrwx. 1 root root 14 Apr 29 17:07 S55sshd -> ../init.d/sshd
lrwxrwxrwx. 1 root root 17 Apr 29 17:06 S80postfix -> ../init.d/postfix
lrwxrwxrwx. 1 root root 15 Apr 29 17:06 S90crond -> ../init.d/crond
lrwxrwxrwx. 1 root root 11 Apr 29 17:06 S99local -> ../rc.local
# chkconfig: 2345 55 25
# CentOS6中所有脚本都是shell脚本
[root@localhost ~]# ll /etc/init.d/ 查看所有程序的启动脚本
[root@localhost ~]# cat /etc/init.d/sshd
# chkconfig: 2345 55 25
在2345运行级别上,默认开机自启
55:开机第55个启动
25:关机第25个关闭

建立终端

1
2
3
4
5
6
7
8
9
10
rc执行完毕后,返回init。这时基本系统环境已经设置好了,各种守护进程也已经启动了。 init接下来会打开6个终端,以便用户登录系统。在inittab中的以下6行就是定义了6个终端:
1:2345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
4:2345:respawn:/sbin/mingetty tty4
5:2345:respawn:/sbin/mingetty tty5
6:2345:respawn:/sbin/mingetty tty6

远程连接工具
pts/0

用户登录系统

一般来说,用户的登录方式有三种:

1
2
3
(1)命令行登录
(2)ssh登录
(3)图形界面登录

image-20240429161712973

系统关机命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
## 关机
halt
shutdown -h now
poweroff

sync 将数据由内存同步到硬盘中。
shutdown 关机指令
shutdown –h 10 #计算机将在10分钟后关机,并且会显示在登陆用户的当前屏幕中。
shutdown –h now #立马关机
shutdown –h 20:25 #系统会在今天20:25关机
shutdown –h +10 #十分钟后关机
shutdown –r now #系统立马重启
shutdown –r +10 #系统十分钟后重启
reboot #就是重启,等同于 shutdown –r now
halt #关闭系统,等同于shutdown –h now 和 poweroff
## 重启
reboot
init 6

image-20240429162103002

CentOS6忘记root密码进入 单用户模式

1)重启系统,到grub菜单界面

image-20240429164346037

image-20240429164633863

image-20240429165101506

回车返回内核菜单

image-20240429164943845

进入后就可以重新设置密码了

image-20240429165410448

密码设置好重启就OK了

reboot init6

CentOS7系统启动顺序

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# C7
1.BIOS(开机自检)
2.MBR ( Master Boot Record 主引导记录)
3.GRUB2 Bootloader(引导菜单)
4.Kernel(内核引导)
5.Systemd (不再使用init,改成了systemd)
6.按顺序启动其他服务 systemctl list-unit-files
[root@lb01 ~]# systemctl list-unit-files
UNIT FILE STATE
proc-sys-fs-binfmt_misc.automount static
dev-hugepages.mount static
dev-mqueue.mount static
proc-sys-fs-binfmt_misc.mount static
sys-fs-fuse-connections.mount static
sys-kernel-config.mount static
sys-kernel-debug.mount static
7.建立终端
8.用户登录

# 运行级别:
/usr/lib/systemd/system/runlevel0.target -> poweroff.target
/usr/lib/systemd/system/runlevel1.target -> rescue.target
/usr/lib/systemd/system/runlevel2.target -> multi-user.target
/usr/lib/systemd/system/runlevel3.target -> multi-user.target
/usr/lib/systemd/system/runlevel4.target -> multi-user.target
/usr/lib/systemd/system/runlevel5.target -> graphical.target
/usr/lib/systemd/system/runlevel6.target -> reboot.target
0:关机运行级别 (Do NOT set initdefault to this)
1:单用户模式运行级别
2,3,4:完整的多用户模式,有文件系统,有网络
5:图形化运行级别
6:重启运行级别 (Do NOT set initdefault to this)
#查看当前运行级别:
[root@yum_repo ~]# systemctl get-default

[root@localhost ~]# systemctl list-unit-files|grep 'enabled'
## CentOS7中启动服务,所有服务的启动脚本
/usr/lib/systemd/system/
#修改运行级别
[root@yum_repo ~]# systemctl set-default multi-user.target


# 注意:centos7中所有服务的启动脚本,都不是shell且必须以.service结尾
## 开机自启动服务
[root@localhost ~]# ll /etc/systemd/system/multi-user.target.wants/
auditd.service -> /usr/lib/systemd/system/auditd.service
nginx.service -> /usr/lib/systemd/system/nginx.service
firewalld.service -> /usr/lib/systemd/system/firewalld.service
irqbalance.service -> /usr/lib/systemd/system/irqbalance.service
NetworkManager.service -> /usr/lib/systemd/system/NetworkManager.service
postfix.service -> /usr/lib/systemd/system/postfix.service
remote-fs.target -> /usr/lib/systemd/system/remote-fs.target
rhel-configure.service -> /usr/lib/systemd/system/rhel-configure.service
rsyslog.service -> /usr/lib/systemd/system/rsyslog.service
sshd.service -> /usr/lib/systemd/system/sshd.service
tuned.service -> /usr/lib/systemd/system/tuned.service
vmtoolsd.service -> /usr/lib/systemd/system/vmtoolsd.service

CentOS7进入单用户模式

1.重启系统

image-20240429170437706

2.进入grub2菜单

image-20240429170649081

1
2
3
# 在linux16行的末尾输入,然后按下   Ctrl+X引导   组合键来运行修改过的内核程序
enforcing=0 init=/bin/bash
enforcing=0 关闭selinux(临时的),进入单用户后配置文件里关闭selinux,否则重新开机后密码就不生效了

不挂载方式

image-20240429173119985

3.进入单用户模式

1
2
3
4
5
6
# 1.重新挂载/目录
mount -o rw,remount /
# 2.修改密码
passwd root
# 3.重新引导系统
exec /sbin/init

image-20240429171621119

1
2
3
4
5
6
7
8
进入配置文件永久关闭selinux
[root@lb01 ~]# vi /etc/selinux/config
SELINUX=disabled 将permissive改为disabled
SELINUXTYPE=targeted

查看selinux开启状态
[root@lb01 ~]# getenforce
Disabled

修改CenOS7默认运行级别

如果centos7被设置为运行级别6,导致无限重启怎么解决?

1
2
3
4
5
## 查看
[root@yum_repo ~]# systemctl get-default
multi-user.target #完整多用户模式
## 修改
[root@yum_repo ~]# systemctl set-default reboot.target #设置运行级别6重启(无限重启)

解决办法

1.进入编辑模式

image-20240429173139767

2.#在linux16行的末尾输入,然后按下 Ctrl+X 组合键来运行修改过的内核程序

image-20240429175105690

image-20240429180423234

exit退出,reboot重启

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# 1.重新挂载/sysroot目录
mount -o rw,remount /sysroot
# 2.获取root权限
chroot /sysroot
# 3.修改密码
passwd root
# 4.修改运行级别
systemctl set-default multi-user.target
# 5.退出
exit
# 6.重启
reboot
## 关闭selinux
# 临时关闭
[root@yum_repo ~]# setenforce 0
# 永久关闭(重启系统生效)
[root@yum_repo ~]# vi /etc/sysconfig/selinux
SELINUX=disabled
## 两种进入单用户方法
1)enforcing=0 init=/bin/bash // 修改密码
2)rd.break // 修改运行级别