CentOS 服务器常用命令大全|站长运维速查手册

CentOS 服务器常用命令大全|站长运维速查手册

本文整理CentOS7、CentOS8、CentOS Stream9常用运维命令速查手册,涵盖系统硬件信息、文件目录操作、用户权限、网络防火墙、进程服务管理、软件包管理、日志排查以及运维工具。所有命令可直接复制执行,同时附上实际使用中的注意事项与避坑要点,方便站长日常服务器维护查阅。

一、系统信息 / 硬件 / 内核

uname -r              # 查看内核版本
uname -a              # 查看全部系统信息
cat /etc/os-release   # 查看系统版本详情
cat /etc/redhat-release # 查看CentOS版本
hostname              # 查看主机名
hostnamectl set-hostname xxx  # 修改主机名(永久生效)
uptime                # 查看系统运行时间、CPU负载
dmesg                 # 查看内核启动日志,排查硬件报错
dmidecode             # 查看硬件信息(主板、CPU、内存,需要root)
lscpu                 # 查看CPU详细信息(核心、线程)
lsblk                 # 查看磁盘设备列表
blkid                 # 查看磁盘UUID(挂载磁盘用)
lsusb                 # 查看USB设备
lspci                 # 查看PCI设备(网卡、显卡等)
free -h               # 查看内存使用(人性化单位显示)
free -m               # 以MB为单位查看内存
df -h                 # 查看磁盘分区使用率
df -i                 # 查看inode使用情况(磁盘满但df‑h正常排查)
du -sh *              # 查看当前目录各文件/目录大小
du -sh /dir           # 查看指定目录总占用大小
mount                 # 查看已挂载的文件系统
mount /dev/sdb1 /mnt  # 挂载磁盘分区到指定目录
umount /mnt           # 卸载挂载点
fsck /dev/sdb1        # 磁盘文件检查⚠️必须先卸载磁盘再执行
sync                  # 强制内存缓存数据写入磁盘,关机前建议执行

二、文件与目录操作

ls                    # 列出当前目录文件
ls -a                 # 显示所有文件(包含隐藏文件)
ls -l                 # 详细列表(权限、大小、时间、属主)
ls -lh                # 详细列表,大小自动带单位
ls -lt                # 按修改时间从新到旧排序
ls -ltr               # 按修改时间从旧到新倒序排序
cd 目录                # 进入指定目录
cd ..                 # 返回上一级目录
cd ~                  # 回到当前用户家目录
cd -                  # 返回上一次所在目录
pwd                   # 打印当前工作绝对路径
mkdir 目录             # 创建单级目录
mkdir -p a/b/c        # 递归创建多级目录
touch 文件             # 创建空文件,也可更新文件时间戳
cp 源文件 目标        # 复制文件
cp -r 源目录 目标目录 # 递归复制目录
mv 源 目标            # 移动文件/重命名
rm 文件                # 删除文件,会有提示
rm -f 文件             # 强制删除文件(无确认提示)
rm -r 目录             # 递归删除目录,会提示
rm -rf 目录            # 强制递归删除目录 ⚠️高危,谨慎执行!
ln -s 源文件 软链接名  # 创建软链接
cat 文件               # 一次性输出文件全部内容
tac 文件               # 倒序输出文件内容
more 文件              # 分页查看,仅向下翻页
less 文件              # 分页查看,支持上下翻页,q退出
head -n 10 文件        # 查看文件前10行
tail -n 10 文件        # 查看文件末尾10行
tail -f 文件           # 实时追踪日志输出
tail -F 文件           # 文件轮转后依然可以继续追踪日志
vim 文件               # vim编辑器编辑文件
vi 文件                # vi基础编辑器
nl 文件                # 带行号打印文件内容

find /path -name "*.log"       # 根据文件名查找文件
find / -type f -size +100M     # 全盘查找大于100M的文件
find / -mtime -7               # 查找7天之内修改过的文件

grep '关键词' 文件       # 文件内搜索关键词
grep -i '关键词' 文件    # 搜索不区分大小写
grep -r '关键词' /dir    # 递归搜索整个目录下所有文件
grep -v '关键词' 文件    # 反向匹配,排除含关键词行

which 命令              # 查看命令程序路径
whereis 命令            # 查看命令二进制、手册、源码路径
locate 文件             # 快速数据库查找文件,需更新数据库
updatedb               # 更新locate检索数据库

三、用户与权限管理

whoami                # 查看当前登录用户
id                    # 查看当前用户UID、GID、所属组
w                     # 查看服务器在线用户及操作
last                  # 查看全部登录历史记录
lastb                 # 查看SSH失败登录记录(排查爆破)
useradd 用户名         # 创建普通用户
userdel -r 用户名      # 删除用户同时删除家目录
passwd 用户名          # 设置/修改用户密码
su 用户名              # 切换用户,不加载完整环境变量
su - 用户名            # 切换用户并完整加载用户环境
groupadd 组名          # 创建用户组
gpasswd -a 用户名 组名  # 将用户加入用户组
chmod 755 文件         # 数字方式修改文件权限
chmod +x 文件          # 给文件增加可执行权限
chown 用户:组 文件      # 修改文件所有者和所属组
chgrp 组名 文件         # 仅修改文件所属组
sudo 命令              # 使用root权限执行单条命令
visudo                # 编辑sudo授权配置,自带语法校验

四、网络操作

ip a                  # 查看网卡IP地址(替代ifconfig)
ip addr add 192.168.1.10/24 dev eth0  # 设置临时IP,重启失效
ip link set eth0 up   # 启用网卡
ping IP/域名           # 测试网络连通性
ping -c 4 IP/域名      # 发送4个数据包自动停止
curl 网址              # 请求网页/接口
curl -I 网址           # 仅获取HTTP响应头
curl -v 网址           # 完整输出请求调试过程
wget 网址              # 下载文件
wget -O 自定义文件名 网址 # 下载并重命名输出文件
netstat -tulpn         # 查看端口占用(需要net-tools包)
ss -tulpn              # 高性能查看端口监听,推荐使用
ss -s                  # 查看全量网络连接统计
traceroute IP/域名     # 路由追踪
mtr IP/域名            # 路由+丢包综合诊断
nslookup 域名          # DNS解析测试
dig 域名               # 完整DNS解析详情
hostname -I            # 输出本机所有IP地址
telnet IP 端口         # 测试端口连通性
nc -zv IP 端口         # nc工具测试端口连通性

# firewalld防火墙操作
systemctl start firewalld    # 启动防火墙
systemctl stop firewalld     # 停止防火墙
systemctl enable firewalld   # 设置开机自启
firewall-cmd --state         # 查看防火墙运行状态
firewall-cmd --list-all      # 打印全部防火墙规则
firewall-cmd --add-port=80/tcp --permanent  # 永久放行80端口
firewall-cmd --add-service=http --permanent # 放行http服务
firewall-cmd --reload        # 重载防火墙配置,修改规则必须执行
firewall-cmd --remove-port=80/tcp --permanent # 永久关闭80端口

五、服务与进程管理

ps aux                # 查看系统全部进程
ps -ef                # 全格式进程列表
top                   # 实时进程资源监控
htop                  # 美化版进程监控,需要安装
pidof 服务名           # 获取服务PID号
pstree                # 树形打印进程父子关系
kill PID              # 优雅终止进程
kill -9 PID           # 强制杀死进程,尽量少用
killall 进程名         # 根据进程名结束进程
pkill 进程名           # 根据进程名结束进程
nohup 命令 &           # 后台运行,断开SSH不会终止程序
jobs                  # 查看当前shell后台任务列表
fg %1                 # 将后台任务1切换到前台
bg %1                 # 将暂停任务放到后台运行

# systemd服务管理 CentOS7+
systemctl start 服务名   # 启动服务
systemctl stop 服务名    # 停止服务
systemctl restart 服务名 # 重启服务
systemctl reload 服务名  # 重载配置不停止进程(nginx适用)
systemctl status 服务名  # 查看服务运行状态
systemctl enable 服务名  # 设置服务开机自启
systemctl disable 服务名 # 关闭服务开机自启
systemctl daemon-reload  # 加载新增systemd服务单元
journalctl -u 服务名     # 查看指定服务日志
journalctl -f            # 实时跟踪全部系统日志
journalctl --since "10 min ago" # 查看最近10分钟日志

六、软件包管理 yum / dnf

CentOS7 使用yum;CentOS8 / Stream9 使用dnf,yum为dnf软链接

# YUM(CentOS7)
yum install -y 包名    # 安装软件,-y自动确认
yum remove 包名         # 卸载软件
yum update             # 更新全部系统软件包
yum check-update       # 检查可更新包,不执行更新
yum list installed     # 列出本机已安装软件
yum search 关键词       # 搜索软件包
yum provides 命令       # 查询该命令属于哪个rpm包

# DNF(CentOS8 / Stream9)
dnf install 包名        # 安装软件包
dnf remove 包名         # 卸载软件包
dnf update             # 更新全部系统包

七、压缩解压

# tar 压缩解压
tar -zcvf 输出.tar.gz 目录  # 压缩为tar.gz
tar -zxvf 文件.tar.gz      # 解压tar.gz
tar -jcvf 输出.tar.bz2 目录 # bz2格式压缩
tar -jxvf 文件.tar.bz2     # 解压bz2

# zip
zip 输出.zip 文件/目录     # 生成zip压缩包
unzip 文件.zip            # 解压zip
unzip -o 文件.zip         # 解压直接覆盖不提示

八、日志操作

# 关键日志路径
/var/log/messages    # 系统综合日志
/var/log/secure      # SSH登录、账号安全日志
/var/log/cron        # crontab定时任务日志
/var/log/nginx/      # Nginx访问&错误日志(安装后生成)

journalctl                     # 系统日志总入口
journalctl -u nginx            # 查看nginx服务日志
tail -f /var/log/messages      # 实时查看系统日志
grep 'error' /var/log/messages # 筛选日志中的error错误

九、服务器运维工具集

9.1 一键安装全套工具

# CentOS7
yum install -y wget curl vim net-tools htop lsof telnet tree ncdu iotop iftop
# CentOS8 / Stream9
dnf install -y wget curl vim net-tools htop lsof telnet tree ncdu iotop iftop

9.2 端口、进程排查

lsof -i:80             # 查看哪个进程占用80端口
lsof 文件               # 查看哪些进程正在读写该文件

9.3 系统监控

htop                   # 交互式进程监控
iotop                  # 磁盘IO读写监控
iftop                  # 网卡实时流量监控
nmon                   # CPU/内存/磁盘/网络综合监控

9.4 磁盘目录分析

tree                    # 树形打印目录结构
tree -L 2               # 只展示2级目录
ncdu                    # 交互式磁盘占用分析,查找大文件神器

9.5 文本处理

awk '{print $1}' 文件    # 提取文本第一列
awk '/关键词/' 文件      # 匹配包含关键词的行
sed -i 's/旧文本/新文本/g' 文件 # 文件全局批量替换
sort 文件                # 文本行排序
uniq                    # 去重(一般配合sort使用)
wc -l 文件               # 统计文件行数

9.6 时间与时区

date                    # 查看系统时间
date -s "2026-02-28 12:00:00" # 设置系统时间
timedatectl status      # 查看时区与时间状态
timedatectl set-timezone Asia/Shanghai # 设置上海时区
ntpdate ntp.aliyun.com  # 同步阿里云时间服务器

9.7 SELinux安全模块

getenforce              # 查看SELinux运行状态
setenforce 0            # 临时关闭SELinux,重启失效
setenforce 1            # 临时开启SELinux
sestatus                # SELinux完整状态信息

9.8 Crontab定时任务

crontab -l              # 查看当前用户定时任务
crontab -e              # 编辑定时任务
systemctl start crond   # 启动定时任务服务
systemctl enable crond  # 设置crond开机自启
实战备忘 1. rm -rf 绝对不要后面直接跟 /,会摧毁整个系统;
2. lastb 默认文件可能不存在,需要执行 touch /var/log/btmp 才能记录失败登录;
3. CentOS Stream9 默认没有net-tools,ifconfig/netstat需要手动安装;
4. 修改DNS、网卡后,优先用nslookup验证解析;
5. journalctl日志会持续占用磁盘,可定期做日志轮转。
文章广告横幅
网络违法犯罪举报平台 广告
© 版权声明
THE END
喜欢就支持一下吧
点赞128 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容