系统管理
自检的结果是找到第一块能够引导的设备
找到这个设备之后它就会去加载这块设备的MBR
这个扇区里面的GRUB(引导程序员)
这个引导程序是放置在这个设备的第一个扇区叫MBR,难么会有GRUB引导程序、还有分区表
,那么当BIOS找到那个能够引导的设备之后,把放在MBR这个扇区里边的启动引导程序运行起来运行起来之后,它一个配置文件,一般在linux下面,这个启动引导程序叫做GRUB ,GRUB引导程序,引导之后,他有个配置文件,
这个GRUB会去读取它的配置文件。
那么grub引导程序读取grub.conf(grub.cnf)这个配置文件
里面就有内核 设置就告诉这个grub 这个内核在什么地方去加载
除了加载内核 还要加载一个镜像文件系统,这么一个文件 把内核和镜像文件系统都加载到内存里面运行起来,
然后一旦内核加载到内存里面运行之后,它就又进行一次硬件自检,再检查硬件,刚才我们说BIOS进行一次基本的硬件的检测,加载内核之后就全面的硬件检测,加载之后,那么linux到这里真个关于底层的东西就加载完毕了
最后内核init 进程运行起来,
那么这个init进程呢负责进行整个环境的初始化,这个init进程是所有进程的父进程,PID号为1
Linux开机过程
1.开机自检
检测到第一个能够启动的设备,如硬盘或光驱、U盘。
2.MBR 引导
从硬盘的 MBR 引导程序启动,运行 GRUB 引导加载器。
3.GRUB 引导菜单
GRUB 引导程序读取配置文件,加载并启动操作系统内核。
4.加载 Linux 内核
将内核文件和镜像文件加载到内存。
5.init 进程初始化
内核加载并启动 init
进程,完成系统的初始化。
2.运行级别
运行级别/Target | 名称 | 说明 |
---|---|---|
0 | poweroff.target | 关机 |
1 | rescue.target | 单用户模式 |
2 / 3 / 4 | multi-user.target | 多用户模式 |
5 | graphical.target | 图形化页面 |
6 | reboot.target | 重启 |
init n # 切换运行级别
示例
init 1 # 切换单用户模式
3.systemctl 服务管理
参数:
get-default 查看默认目标
set-default 设置默认目标
isolate 切换目标
enable 启用服务开机启动
is-enabled 查看是否开机启动
disable 关闭服务开机启动
list-unit-files 列出所有服务
4.hostnamectl 修改主机名
hostnamectl set-hostname newname 永久修改主机名
5.localectl set-locale 设置系统语言
localectl set-locale LANG=zh_CN.utf8 设置系统语言为中文
进程管理
序号 | 命令 / 操作 | 功能说明 | 常用参数 / 快捷键 | 示例 |
---|---|---|---|---|
1 | ps | 查看进程信息 | -aux 显示所有进程-ef 标准格式显示grep 过滤进程 | ps -aux ps -ef ps -aux | grep nginx |
进程状态 | R 正在运行T 停止S 睡眠D 系统守护进程Z 僵尸进程 | |||
2 | top | 实时显示进程和资源占用 | P 按 CPU 排序M 按内存排序T 按运行时间排序q 退出 | top |
3 | pgrep | 按条件查询进程 | -l 显示进程名和 PID-U 指定用户-t 指定终端 | pgrep -l -U teacher -t tty1 |
4 | pstree | 树形结构显示进程 | -p 显示 PID-u 显示用户名-a 显示完整命令 | pstree -p |
5 | & | 启动后台进程 | 无 | cp /centos7.iso & |
6 | Ctrl+Z | 挂起当前进程(后台停止) | 无 | 在运行命令时按 Ctrl+Z |
7 | jobs | 查看当前会话的后台任务 | -l 显示任务 ID 和 PID | jobs -l |
8 | fg / bg | fg 将后台任务转前台bg 后台继续运行任务 | 无 | fg 1 |
9 | Ctrl+C | 中断当前进程 | 无 | 运行时按 Ctrl+C |
kill | 按 PID 终止进程 | -9 强制终止 | kill -9 1234 | |
10 | killall | 按进程名终止进程 | 无 | killall vim |
11 | pkill | 按属性终止进程 | pkill -u root |
计划任务管理
命令 | 类型 | 用途 | 命令格式 / 语法 | 常用参数 | 说明 / 示例 |
---|---|---|---|---|---|
at | 一次性任务 | 在指定时间执行一次任务 | at [HH:MM] [yyyy-mm-dd] at> [要执行的命令] | atq 列出待执行任务atrm [任务编号] 删除指定任务 | 示例:at 14:30 2025-08-17 |
crontab | 周期性任务 | 按固定时间周期自动执行任务 | * * * * * 命令 (分 时 日 月 周) | -e 编辑当前用户任务-l 列出当前用户任务-r 删除当前用户所有任务 | 时间字段规则:- 连续范围,如 1-4 , 不连续范围,如 3,4,6,8 / 间隔频率,如 */3 每 3 天一次保存退出:Ctrl+D |
其他命令
命令 | 功能 | 常用参数 / 说明 | 示例 |
---|---|---|---|
date | 显示或设置当前时间 | +%Y-%m-%d 格式化输出-s 设置时间 | date +%Y-%m-%d -s "2025-08-14" |
cal | 查看日历 | [月] [年] 查看指定月-y 年份 查看整年日历 | cal 12 2025 cal -y 2025 |
history | 查看历史操作记录 | 可与 grep 结合搜索 | history | grep "mkdir" |
!n | 执行历史记录中编号为 n 的命令 | n 为 history 中的编号 | !2 |
scp | 本地与远程安全复制文件或目录 | -r 递归复制目录 | scp 文件 用户@主机:目录 (本地 → 远程)scp 用户@主机:文件 本地目录 (远程 → 本地) |
结语
通过本次学习掌握了多种 Linux 常用命令,包括进程管理、计划任务、时间与日历查看、历史记录操作以及文件传输等内容。这些命令不仅能提升日常操作的效率,还为系统维护和自动化打下了基础。在今后的使用中,结合实际场景灵活运用,让命令真正成为提高生产力的工具。