在CentOS运维工作中,熟练掌握常用命令是高效管理服务器的基础,以下从系统监控、文件管理、进程管理、网络配置、软件包管理、用户权限、日志分析及系统维护八个维度,详细梳理核心运维命令及使用场景。

系统监控命令
系统监控是运维日常工作的重点,通过命令可实时掌握服务器运行状态。
- top:动态展示进程资源占用(CPU、内存),按
M
按内存排序、P
按CPU排序,k
可终止进程。 - htop:top的增强版,支持彩色显示、进程树及鼠标操作,需安装
yum install htop
。 - df -h:查看磁盘空间使用情况,
-h
以人类可读格式(GB/KB)显示。 - free -m:查看内存使用量,
-m
以MB为单位,-h
可自动选择单位。 - vmstat 1:每秒监控系统进程、内存、I/O等状态,
1
表示刷新间隔1秒。 - uptime:显示系统运行时间、负载平均值(1分钟/5分钟/15分钟)。
文件管理命令
文件操作是服务器维护的基础,需熟练掌握路径、权限及文本处理。
- ls -la:列出文件及详细信息,
-a
显示隐藏文件,-l
显示权限、大小、时间等。 - cp -r:递归复制目录,
-r
或-R
用于目录复制,-p
保留文件属性。 - mv:移动文件/目录或重命名,
-f
强制覆盖,-i
交互式确认。 - rm -rf:递归强制删除文件/目录,
-r
递归删除,-f
忽略不存在的文件,需谨慎使用。 - *find /path -name ".log"*按名称查找文件,
-name
支持通配符(如`.log-type f`仅查文件。 - grep "error" /var/log/messages:在文件中搜索关键词,
-i
忽略大小写,-n
显示行号。 - tar -czvf backup.tar.gz /data:打包并压缩目录,
-c
创建、-z
gzip压缩、-v
显示过程、-f
指定文件名。
进程管理命令
进程管理需关注启动、停止及资源占用排查。
- ps -ef:显示所有进程,
-e
显示所有进程,-f
显示完整格式。 - ps aux:查看进程详细资源占用(CPU、内存),
aux
组合显示所有进程及资源。 - kill -9 PID:强制终止进程,
-9
表示无条件终止,适用于普通kill
无效时。 - nohup command &:后台运行命令并忽略挂断信号,
&
表示后台运行,输出默认写入nohup.out
。 - jobs:查看后台任务,
fg %1
将任务1调至前台,bg %1
让后台任务继续运行。
网络配置命令
网络故障排查需结合多种命令定位问题。

- ifconfig:查看/配置网卡信息,
ifconfig eth0 up/down
启用/禁用网卡(需安装net-tools
)。 - ip addr:CentOS 7+推荐使用,显示IP地址、子网掩码等,
ip addr add 192.168.1.100/24 dev eth0
添加IP。 - ping -c 4 8.8.8.8:测试网络连通性,
-c
指定发送包数量,-i
设置间隔。 - netstat -tuln:查看监听端口,
-t
TCP、-u
UDP、-l
仅显示监听端口、-n
以数字显示IP/端口。 - ss -tuln:
netstat
的替代工具,性能更优,参数相同。 - curl -I http://www.example.com:检查HTTP响应状态,
-I
仅获取响应头。
软件包管理命令
CentOS使用yum
(RHEL 7+)或dnf
(RHEL 8+)管理软件包。
- yum install nginx:安装软件包,
-y
自动确认安装。 - yum remove nginx:卸载软件包,
-y
自动确认。 - yum update:更新所有已安装软件包,
yum update nginx
更新指定包。 - yum list installed:列出已安装软件包,
yum list available
列出可安装包。 - yum clean all:清理缓存释放空间,
yum makecache
生成缓存。
用户与权限管理
权限管理需遵循最小权限原则,避免安全风险。
- useradd -m -s /bin/bash testuser:创建用户并创建家目录,
-m
创建家目录,-s
指定默认Shell。 - passwd testuser:修改用户密码,
passwd -d testuser
清空密码。 - userdel -r testuser:删除用户及家目录,
-r
删除家目录。 - chmod 755 /data:修改文件权限,
755
表示所有者读写执行、组和其他用户读执行。 - chown -R user:group /data:递归修改文件所有者,
-R
递归修改目录下所有文件。 - sudo visudo:编辑
sudo
配置文件,为用户添加sudo权限(如testuser ALL=(ALL) NOPASSWD: ALL
)。
日志分析命令
日志是排查故障的关键,需掌握快速定位日志的方法。
- tail -f /var/log/messages:实时查看日志末尾,
-f
持续监控,-n 100
显示末尾100行。 - journalctl -xe:查看系统日志(CentOS 7+),
-x
显示详细信息,-e
显示最新日志。 - grep "warning" /var/log/syslog | tail -20:在日志中搜索关键词并显示最后20行。
- logrotate -f /etc/logrotate.conf:强制轮转日志,避免日志文件过大。
系统维护命令
定期维护可提升服务器稳定性,需谨慎操作。

- reboot:重启系统,
shutdown -r now
立即重启,shutdown -r +5 "5分钟后重启"
。 - shutdown -h now:立即关机,
halt
同样用于关机。 - yum update -y:更新系统及软件包,定期执行修复漏洞。
- crontab -e:编辑定时任务,如
0 2 * * * /usr/bin/backup.sh
每天2点执行备份。 - history | grep "yum":查看历史命令中包含
yum
的操作,history -c
清空历史记录。
相关问答FAQs
Q1:如何查看某个进程占用的端口号?
A:可通过netstat -tulnp | grep PID
或ss -tulnp | grep PID
查看指定进程(PID)监听的端口,其中-p
显示进程ID,若nginx进程PID为1234,执行netstat -tulnp | grep 1234
可查看其监听的80端口。
Q2:CentOS 7忘记root密码如何重置?
A:需通过单用户模式重置:1. 重启服务器,在GRUB引导界面按e
进入编辑模式;2. 找到linux16
或linux
行,在行尾添加rd.break
;3. 按Ctrl+X
进入紧急模式,执行mount -o remount,rw /sysroot
;4. 执行chroot /sysroot
切换到根环境;5. 使用passwd
修改root密码;6. 执行touch /.autorelabel
(可选,修复SELinux标签);7. 执行exit
和reboot
重启服务器。