sycnnj
发布于 2026-01-29 / 70 阅读
0
0

Linux服务器常用命令速查100条:从入门到精通的实战宝典

关键词:Linux命令, 运维实战, Ubuntu, CentOS, Debian, CLI, Shell脚本, 服务器管理, Docker, 系统优化, 网络排查, DevOps

摘要

对于每一位踏入服务器运维、后端开发或架构领域的IT人来说,Linux终端那个闪烁的光标既是无限可能的入口,也是初学者的梦魇。本文旨在通过结构化的表格形式,将枯燥的命令清单转化为可快速检索的“实战字典”。文章首先剖析Linux使用的痛点与技术演进,随后基于Debian/Ubuntu和CentOS/RHEL两大主流派系,精选100+条生产环境最高频使用的命令,按功能分类列表。无论你是排查CPU飙高、磁盘爆满,还是进行网络抓包、服务部署,这份清单都将是你的“瑞士军刀”。


第一部分:痛点、演进与趋势

1. 使用 Linux 的痛点

  • 记忆负担:参数不统一(如 tarzcvfunzip)。

  • 反馈黑盒:拷贝大文件无进度条,命令卡死无提示。

  • 操作不可逆rm -rf 没有回收站,一次回车即事故。

2. 技术演进

  • 包管理apt (Ubuntu) 和 dnf (CentOS 8+) 更加人性化,解决了早期的依赖地狱。

  • 服务管理:Systemd 统一了 init.d 的乱象,支持依赖启动与自动重启。

  • 核心优势:管道 (|) 能将简单命令串联成强大的自动化工作流。

3. 未来趋势

  • 不可变基础设施:Docker/K8s 兴起,服务器即使“挂了”也能通过代码快速重建。

  • 排查为王:虽然环境配置自动化了,但 tcpdumpstrace 等底层排查技能依然是资深工程师的护城河。

  • AI 辅助运维:虽然 AI 可以生成命令,但作为操作者,你必须具备“验证”和“理解”命令的能力,否则 AI 给出的一行破坏性代码可能导致灾难。


第二部分:Linux 常用命令速查(源码对齐版)

提示:为了在 Markdown 编辑器中保持整洁,表格采用了源码对齐格式。所有命令默认在 Root 或 Sudo 下执行。

一、系统信息与性能监控 (The Dashboard)

掌控服务器脉搏,新增 OS 版本查看命令。

命令

核心功能

实战场景与技巧

cat /etc/os-release

查看OS详细版本(通用)

查看发行版名称、版本号 (如 Debian 12 / Ubuntu 22.04)。

top

实时显示进程动态

系统变慢首选,关注 load average%CPU

htop

top 增强版(可视化)

支持鼠标操作,直观查看多核 CPU 负载均衡。

btop

新一代炫酷监控

界面极具科技感,包含网络/磁盘IO绘图,适合展示。

free -h

查看内存使用 (GB/MB)

排查 OOM 风险,关注 available 而非 free

df -h

查看磁盘空间

报错 "No space" 时必查,看 Use% 是否达 100%。

du -sh *

查看当前目录各文件大小

配合 df,揪出吃光磁盘的文件夹(通常是日志)。

uptime

查看运行时间及负载

确认服务器是否意外重启过;快速评估负载。

lscpu

显示 CPU 架构信息

验证云厂商是否超卖,确认核心数与虚拟化类型。

uname -a

打印内核信息

安装显卡驱动或 BBR 优化前,确认内核版本。

`dmesg

tail`

查看内核缓冲区

vmstat 1

每秒刷新系统统计

深入分析 CPU 上下文切换 (cs),判断性能瓶颈。

iostat -xz 1

监控磁盘 I/O

数据库慢?看 %util,接近 100% 说明磁盘是瓶颈。

二、文件与目录操作 (The Skeleton)

Linux 一切皆文件,基础肌肉记忆。

命令

核心功能

实战场景与技巧

ls -alh

列出所有文件详情

进入目录的标准动作,查看隐藏文件 (.env) 和权限。

cd -

回到上一次目录

在两个深层目录间频繁切换时,效率极高。

pwd

显示当前绝对路径

复制路径到配置文件中,防止手打出错。

mkdir -p /a/b

递归创建目录

部署项目时,一次性建立多级结构。

rm -rf [path]

强制递归删除(高危)

清理旧代码。警告:请默念三遍路径再回车。

cp -r src dst

递归复制目录

修改配置前备份:cp nginx.conf nginx.conf.bak

ln -s src link

创建软链接(快捷方式)

Nginx 启用站点:链接 sites-availableenabled

find / -name "x"

全盘搜索文件

忘了配置文件放哪了?全盘搜(速度较慢)。

find . -mtime +7 -delete

删除7天前的文件

自动化脚本核心:定时清理旧日志。

locate file

索引快速查找

比 find 快(查数据库),需先运行 updatedb

tar -zcvf x.tgz dir

打包并压缩 (gzip)

备份网站源码,最通用的 Linux 压缩格式。

tar -zxvf x.tgz

解压 .tar.gz 包

安装源码包的标准动作。

zip -r x.zip dir

创建 zip 包

发文件给 Windows 用户时使用(兼容性好)。

三、文件内容查看与处理 (The Surgery)

文本处理是 Linux 的灵魂,学会 grep/sed 效率翻倍。

命令

核心功能

实战场景与技巧

tail -f file

实时追踪文件末尾

运维高频:开双终端,一边操作一边看日志报错。

tail -n 100

看最后 100 行

快速看最近报错,无需打开几 GB 的大文件。

head -n 20

看前 20 行

确认 CSV 表头结构,或脚本解释器声明。

less file

分页查看大文件

支持搜索 (/kw),内存占用低,不会卡死终端。

grep "err" file

搜索关键词行

日志分析神器,秒级筛选 "Error" 或 "Exception"。

grep -r "str" .

递归搜索目录

代码审计:查找哪里调用了某个废弃函数。

sed -i 's/a/b/g' f

流编辑替换(原地)

批量修改配置文件中的 IP 或域名,无需人工编辑。

awk '{print $1}'

文本列提取

从 Nginx 日志提取第1列 IP,配合 uniq 统计访问量。

wc -l file

统计行数

统计日志有多少条,或代码总行数。

diff f1 f2

比较文件差异

对比修改前后的配置,确认改动点。

nano file

简易编辑器

新手首选,操作类似记事本,下方有快捷键提示。

vim file

编辑器之神

资深首选,支持正则、块操作,效率极高。

四、网络与连接 (The Nervous System)

网络不通,业务皆空。从 Ping 到 抓包。

命令

核心功能

实战场景与技巧

ping ip/dom

测试连通性

基础测试。注意:部分服务器防火墙会禁 Ping。

ip addr

显示网卡 IP

ifconfig 的现代替代品,查看本机内网 IP。

curl -I url

获取 HTTP 头

检查状态码 (200/301),确认 Gzip 是否开启。

curl -L url

跟随重定向

测试 301 跳转后的最终页面是否正常。

netstat -tulnp

显示端口及进程

查端口冲突:看 80 端口被谁占用,或是否仅监听内网。

ss -tulnp

高效查端口

高并发场景下 netstat 会卡,ss 速度飞快。

traceroute dom

追踪路由

排查网络延迟产生在哪一跳(本地 vs 骨干网)。

nslookup dom

查询 DNS 解析

验证域名是否解析正确,排除本地 DNS 污染。

nc -zv ip port

端口连通扫描

测试远程数据库端口 (如 3306) 是否开放,替代 Telnet。

tcpdump

网络抓包

终极排查:分析 TCP 握手失败、重传或丢包细节。

ufw status

查看防火墙(Ubuntu)

确认是否因防火墙拦截导致服务不可达。

五、进程管理 (The Traffic Cop)

杀掉僵尸进程,管理后台任务。

命令

核心功能

实战场景与技巧

ps aux

进程全快照

查看 PID、用户、CPU 占用,定位异常进程。

ps -ef | grep x

查找指定进程

确认 Nginx 是否在运行,或脚本是否卡死。

kill [pid]

结束进程 (SIGTERM)

通知程序正常退出(保存数据),优先使用。

kill -9 [pid]

强制杀死 (SIGKILL)

程序死锁无响应时的“拔电源”手段。

killall [name]

按名批量杀

重启 PHP:killall php-fpm,比一个个杀快。

nohup cmd &

后台防挂断运行

跑长任务(如备份),确保 SSH 断开后不中断。

jobs

查看后台任务

查看当前终端挂起 (Stopped) 或后台运行的任务。

六、用户与权限 (The Gatekeeper)

安全第一道防线。

命令

核心功能

实战场景与技巧

chmod 755 file

设置权限

解决脚本无法执行或 Web 403 问题 (755是标准权限)。

chmod +x file

赋予执行权

新写 .sh 脚本后的必要操作。

chown u:g file

修改所有者

修复 Nginx 权限报错(通常需改为 www-data)。

useradd -m user

创建用户

给新人开账号,-m 自动创建家目录。

passwd user

修改密码

定期改密或重置遗忘密码。

sudo cmd

以管理员执行

安全规范:日常用普通号,仅关键操作用 sudo。

w

查看登录用户

检查负载高的同时,看是否有别人在进行高危操作。

last

查看登录历史

审计:查谁登录过,发现陌生 IP 立即排查。

七、软件安装与服务 (The Engine)

Systemd 时代的大管家。

命令

核心功能

实战场景与技巧

apt update

更新源 (Debian)

装软件前必做,确保获取最新版本索引。

apt install pkg

装软件 (Debian)

一键安装并自动处理依赖。

yum update

系统更新 (CentOS)

保持内核和软件补丁最新(生产环境需谨慎)。

systemctl start

启动服务

systemctl start docker

systemctl status

查看状态

启动失败时,第一时间看这里的红色报错信息。

systemctl enable

设置开机自启

必做:防止服务器断电重启后业务停摆。

journalctl -u x

查看服务日志

当 status 信息被截断时,用这个看完整日志流。

crontab -e

编辑定时任务

设每日备份:0 2 * * * /path/backup.sh

八、Docker 容器化特别篇 (The Modern Stack)

云原生必备技能。

命令

核心功能

实战场景与技巧

docker ps

查看运行容器

检查容器状态 (Up) 和端口映射 (0.0.0.0:80)。

docker ps -a

查看所有容器

找异常退出 (Exited) 的容器 ID 以排查死因。

docker logs [id]

查看容器日志

容器起不来?看标准输出日志,等同于传统 tail。

docker exec -it

进入容器

docker exec -it [id] bash,进内部修配置。

docker restart

重启容器

内存泄露或改配置后重启。

docker-compose up -d

后台启动编排

一键拉起 Web+DB+Redis 复杂环境。

docker network ls

查看网络

排查容器间无法通过服务名互通的问题。

九、杂项与进阶 (The Magic)

提升效率的小工具。

命令

核心功能

实战场景与技巧

history

查看历史命令

找回刚才敲的长命令,配合 !序号 重复执行。

alias

别名

alias c='clear',让长命令变短,提升手速。

watch -n 1 cmd

周期执行

watch -n 1 nvidia-smi 实时监控显卡/文件变化。

scp local remote

SSH 传文件

类似 CP,但在两台服务器间安全传输。

ssh-keygen

生成密钥

配置 GitHub 或服务器免密登录,告别输密码。

echo "t" > f

覆盖写入

快速清空大日志:echo "" > app.log (不删文件)。

man cmd

官方手册

查冷门参数的终极权威。

十、系统服务管理 (The Engine)

Systemd 是现代 Linux 的大管家。

命令

核心功能

实战场景

systemctl start

启动服务

systemctl start docker

systemctl stop

停止服务

维护前停止服务,或停止冲突的服务。

systemctl restart

重启服务

修改配置文件后,重启使配置生效。

systemctl status

查看状态及最近日志

服务启动失败(Active: failed),第一时间看这里的报错红字。

systemctl enable

设置开机自启

确保服务器断电重启后,Web 服务和数据库自动恢复。

journalctl -u x

查看服务详细日志

status 信息不全时,用这个查看该服务完整的历史日志。

crontab -e

编辑定时任务

设置每天凌晨自动备份数据库:0 2 * * * /path/backup.sh


结语

这 100 多条命令,构成了 Linux 运维的基石。建议将本文收藏或打印。当你遇到“磁盘满了”能条件反射想到 df,遇到“网站打不开”能按顺序执行 ping -> systemctl -> logs 时,你就已经从“脚本小子”进阶为了合格的工程师。

本文首发于E路领航 (blog.oool.cc),转载请注明出处


评论