CentOS7 常用命令(运维必看)

1、系统信息
类别命令说明
系统信息uname -r显示内核版本
lsb_release -a显示发行版信息(如 CentOS 7)
cat /etc/redhat-release查看 CentOS 版本信息
cat /proc/cpuinfo查看 CPU 详细信息
lscpu显示 CPU 架构和核心数
lsblk查看块设备和挂载点信息
hostnamectl查看和设置主机名、系统信息
cat /etc/os-release查看系统版本信息
whoami显示当前用户名
dmidecode -t system查看硬件系统信息(需 root)
lshw列出所有硬件信息(需安装 lshw)
free -h查看内存和交换区使用情况
swapon --show显示交换分区使用情况
uptime显示系统运行时间和负载
cat /proc/meminfo查看内存详细信息
nproc显示 CPU 核心数
lscpu | grep "Model name"查看 CPU 型号
cat /proc/uptime查看系统运行时间(秒)
cat /sys/class/dmi/id/product_name查看硬件产品名称
2、用户与组管理
类别命令说明
用户与组管理adduser <用户名>添加新用户
userdel -r <用户名>删除用户及其家目录
passwd <用户名>修改指定用户密码
passwd修改当前用户密码
sudo passwd root修改 root 用户密码
groupadd <组名>创建新组
groupdel <组名>删除组
usermod -aG <组名> <用户名>将用户添加到组
usermod -s /bin/bash <用户名>修改用户默认 Shell
id <用户名>查看用户 UID、GID 和组信息
getent passwd查看所有用户信息
getent group查看所有组信息
who显示当前登录用户
w显示登录用户及活动
last查看用户登录历史
lastlog查看所有用户最后登录时间
chage -l <用户名>查看用户密码过期信息
usermod -L <用户名>锁定用户账户
usermod -U <用户名>解锁用户账户
vipw安全编辑 /etc/passwd 文件
vigr安全编辑 /etc/group 文件
3、主机名与网络配置
类别命令说明
主机名与网络配置hostnamectl set-hostname <主机名>设置主机名
hostname显示当前主机名
echo <主机名> > /etc/hostname永久修改主机名(需重启生效)
vi /etc/sysconfig/network编辑网络配置文件,设置主机名
echo "nameserver 8.8.8.8" > /etc/resolv.conf设置 DNS(临时,重启可能失效)
vi /etc/sysconfig/network-scripts/ifcfg-<接口>编辑网络接口配置文件,添加 DNS
service network restart重启网络服务以应用 DNS
cat /etc/resolv.conf查看当前 DNS 配置
nslookup <域名>查询域名解析
dig <域名>详细 DNS 查询(需安装 bind-utils)
host <域名>简单 DNS 查询(需 bind-utils)
ip addr show显示所有接口的 IP 和状态
ip link show显示网络接口状态(无 IP)
ifconfig显示接口状态(需 net-tools)
ip link set <接口> up启用网络接口
ip link set <接口> down禁用网络接口
ip addr add <IP/掩码> dev <接口>手动添加 IP 地址
ip route show查看路由表
ip route add default via <网关>添加默认路由
ping <主机>测试连通性(如 ping 8.8.8.8)
traceroute <主机>跟踪路由路径(需 traceroute)
netstat -tuln查看监听端口(需 net-tools)
ss -tuln查看监听端口(替代 netstat)
curl <URL>获取网页内容
wget <URL>下载文件
4、SSH 管理
类别命令说明
SSH 管理ssh-keygen -t rsa生成 RSA 密钥对
ssh-keygen -t rsa -b 4096生成 4096 位 RSA 密钥对
ssh-copy-id <用户@主机>将公钥复制到远程主机
ssh <用户@主机>登录远程主机
ssh -p <端口> <用户@主机>指定端口登录远程主机
sudo systemctl restart sshd重启 SSH 服务
sudo systemctl status sshd检查 SSH 服务状态
sudo systemctl enable sshd设置 SSH 服务开机自启
cat ~/.ssh/id_rsa.pub查看本地公钥
ssh-add将私钥添加到 SSH 代理
sudo vi /etc/ssh/sshd_config编辑 SSH 服务配置文件
ssh -i <私钥文件> <用户@主机>使用指定私钥登录
ssh-keygen -R <主机>从 known_hosts 删除主机指纹
5、时间与时区管理
类别命令说明
时间与时区管理date显示当前日期和时间
timedatectl查看系统时间和时区状态
timedatectl set-timezone Asia/Shanghai设置时区为上海
timedatectl set-time "2025-04-10 10:00:00"手动设置系统时间
yum install ntp -y安装 NTP 服务
ntpdate pool.ntp.org手动同步时间
systemctl start ntpd启动 NTP 服务
systemctl enable ntpd设置 NTP 服务开机自启
hwclock查看硬件时钟
hwclock --systohc将系统时间同步到硬件时钟
hwclock --hctosys将硬件时钟同步到系统时间
timedatectl list-timezones列出所有可用时区
6、防火墙管理
类别命令说明
防火墙管理iptables -L -n -v查看 iptables 规则
iptables -A INPUT -p tcp --dport 22 -j ACCEPT允许 SSH 连接
iptables -A INPUT -p tcp --dport 80 -j ACCEPT允许 HTTP 连接
iptables -A INPUT -j DROP拒绝所有未匹配的连接
service iptables save保存 iptables 规则
service iptables restart重启 iptables 服务
firewall-cmd --state查看 firewalld 状态(需安装 firewalld)
firewall-cmd --permanent --add-service=ssh允许 SSH 服务
firewall-cmd --permanent --add-port=80/tcp开放 80 端口
firewall-cmd --reload重新加载 firewalld 规则
firewall-cmd --list-all查看当前区域的所有规则
7、SELinux 管理
类别命令说明
SELinux 管理getenforce查看当前 SELinux 状态
setenforce 0临时禁用 SELinux(0=关闭,1=启用)
setenforce 1临时启用 SELinux
vi /etc/selinux/config编辑 SELinux 配置文件
sestatus查看详细 SELinux 状态
semanage fcontext -a -t httpd_sys_content_t "/var/www(/.*)?"设置文件上下文(例如 Apache)
restorecon -R /var/www恢复目录的 SELinux 上下文
ausearch -m avc查看 SELinux 拒绝日志
semanage port -l列出 SELinux 端口策略
semanage port -a -t http_port_t -p tcp 8080添加自定义端口到 SELinux 策略
8、文件与目录管理
类别命令说明
文件与目录管理mkdir -p /路径/目录创建目录及其父目录
rmdir 目录名删除空目录
ls -lh列出目录内容(-a 显示隐藏文件)
ls -ld 目录名查看目录本身的详细信息
cp -r 源目录 目标目录递归复制目录及其内容
mv 源文件 目标文件移动或重命名文件/目录
rm -rf 目录名强制删除目录及其内容(谨慎使用)
touch 文件名创建空文件或更新时间戳
ln -s 源文件 链接名创建符号链接
ln 源文件 硬链接名创建硬链接
cat 文件名查看文件内容
less 文件名分页查看文件(q 退出)
more 文件名分页查看文件(空格翻页)
head -n 10 文件名查看文件前 10 行
tail -n 10 文件名查看文件后 10 行
tail -f 文件名实时查看文件末尾(日志用)
stat 文件名查看文件详细状态(权限、大小等)
file 文件名查看文件类型
9、文件搜索与文本处理
类别命令说明
文件搜索与文本处理find / -name "*.txt"查找所有 .txt 文件
find /路径 -type f -mtime -7查找 7 天内修改的文件
locate 文件名快速查找文件(需 updatedb)
whereis <命令>查找命令位置(如 whereis ls)
which <命令>显示命令路径(如 which python)
grep -r "模式" /路径递归搜索匹配文本
grep -i "模式" 文件名忽略大小写搜索文本
awk '{print $2}' 文件名打印文件第二列
sed 's/旧/新/g' 文件名替换文件中匹配文本(不修改原文件)
sed -i 's/旧/新/g' 文件名替换文件中匹配文本并保存
cut -d',' -f1 文件名按逗号分隔提取第一列
sort 文件名对文件内容排序
uniq 文件名去除重复行(需先排序)
wc -l 文件名统计文件行数
10、权限管理
类别命令说明
权限管理chmod 755 文件名修改文件权限(755 = rwx/r-x/r-x)
chmod -R 644 目录名递归修改目录下文件权限
chown -R 用户:组 目录递归更改所有者和组
chgrp 组名 文件名更改文件所属组
ls -l 文件名查看文件权限详情
setfacl -m u:用户:rwx 文件名设置文件 ACL 权限
getfacl 文件名查看文件 ACL 权限
11、进程管理
类别命令说明
进程管理ps aux列出所有正在运行的进程
ps -ef列出所有进程详细信息
kill -9 <PID>强制终止进程(PID 为进程 ID)
pkill -9 <进程名>按进程名强制终止
killall <进程名>终止所有匹配进程名的进程
top实时查看进程状态(q 退出)
htop更友好的进程查看工具(需安装)
jobs查看后台任务
bg将暂停任务放入后台
fg将后台任务切换到前台
nohup <命令> &后台运行命令并忽略挂起信号
nice -n 10 <命令>以指定优先级运行命令
renice 10 <PID>调整运行中进程优先级
12、日志查看与分析
类别命令说明
日志查看与分析journalctl -xe查看系统日志并跳转到末尾
journalctl -u <服务名>查看指定服务日志(如 sshd)
journalctl -b查看本次启动的日志
journalctl --since "YYYY-MM-DD"查看指定日期后的日志
tail -n 50 /var/log/messages查看系统日志最后 50 行
tail -f /var/log/secure实时查看安全日志(认证相关)
dmesg查看内核日志
dmesg --level=err查看错误级别的内核日志
ausearch -m avc查看 SELinux 拒绝日志
logrotate -f /etc/logrotate.conf强制执行日志轮转
13、磁盘与空间管理
类别命令说明
磁盘与空间管理df -h查看磁盘分区使用情况
df -i查看磁盘 inode 使用情况
du -sh /路径计算指定路径总大小
sudo fdisk -l列出磁盘分区信息(需 root)
lsblk列出块设备信息
parted -l查看分区表信息(需 parted)
mkfs.ext4 /dev/sdX格式化分区为 ext4(替换 /dev/sdX)
mkfs.xfs /dev/sdX格式化分区为 xfs
mount /dev/sdX /mnt挂载分区到指定目录
umount /mnt卸载挂载点
blkid查看块设备 UUID 和类型
parted /dev/sdX mklabel gpt创建 GPT 分区表
parted /dev/sdX mkpart primary 0% 100%创建主分区
resize2fs /dev/sdX调整 ext 文件系统大小
xfs_growfs /mnt扩展 xfs 文件系统大小
14、软件包管理(YUM)
类别命令说明
软件包管理yum update -y更新所有软件包
yum install <软件名> -y安装指定软件包(如 nginx)
yum remove <软件名> -y删除软件包
yum autoremove -y清理不再需要的依赖包
yum clean all删除缓存的软件包文件
yum list installed列出已安装的软件包
yum list available列出可安装的软件包
yum provides <文件>查找提供指定文件的软件包
yum info <软件名>查看软件包详细信息
yum groupinstall <组名>安装软件包组(如 "Development Tools")
yum repolist查看启用的软件源
yum-config-manager --add-repo <URL>添加第三方软件源(需 yum-utils)
yum history查看 YUM 操作历史
yum check-update检查可用更新
15、容器管理(Docker)
类别命令说明
容器管理yum install docker -y安装 Docker
systemctl start docker启动 Docker 服务
systemctl enable docker设置 Docker 开机自启
docker ps查看运行中的容器
docker ps -a查看所有容器(包括停止的)
docker run -d <镜像名>后台运行容器
docker run -it <镜像名> /bin/bash交互式运行容器
docker stop <容器名>停止容器
docker rm <容器名>删除容器
docker images查看本地镜像
docker pull <镜像名>拉取镜像
docker rmi <镜像名>删除镜像
docker build -t <镜像名> .从 Dockerfile 构建镜像
docker exec -it <容器名> /bin/bash进入容器终端
docker logs <容器名>查看容器日志
16、性能监控
类别命令说明
性能监控top实时查看进程状态(q 退出)
htop更友好的进程查看工具(需安装)
vmstat 1每秒刷新系统资源使用情况
iostat查看 CPU 和 IO 统计(需 sysstat)
iotop实时查看磁盘 IO(需 iotop)
mpstat 1每秒显示 CPU 使用情况(需 sysstat)
pidstat 1每秒显示进程资源使用(需 sysstat)
sar -u 1每秒显示 CPU 使用情况(需 sysstat)
free -m查看内存使用情况(以 MB 为单位)
17、备份与恢复
类别命令说明
备份与恢复tar -cvf backup.tar /路径创建备份文件
tar -xvf backup.tar解压备份文件
rsync -av /源 /目标同步备份文件/目录
dd if=/dev/sda of=/backup.img bs=4M创建磁盘镜像
dd if=/backup.img of=/dev/sda bs=4M恢复磁盘镜像
xfsdump -f /backup.xfs /mnt备份 xfs 文件系统(需 xfsdump)
18、内核模块管理
类别命令说明
内核模块管理lsmod列出已加载的内核模块
modprobe <模块名>加载内核模块
rmmod <模块名>卸载内核模块
modinfo <模块名>查看模块详细信息
depmod更新模块依赖
cat /proc/modules查看当前加载的模块
19、历史命令管理
类别命令说明
历史命令管理history查看历史命令
history | grep <关键词>搜索历史命令
echo "export HISTTIMEFORMAT='%F %T '" >> ~/.bashrc显示历史命令时间戳
history -c清空当前会话历史
ctrl + r交互式搜索历史命令
!<编号>执行指定编号的历史命令
20、系统维护
类别命令说明
系统维护reboot重启系统
shutdown -h now立即关闭系统
shutdown -r 1010 分钟后重启系统
systemctl rescue进入救援模式
systemctl emergency进入紧急模式
fsck /dev/sda1检查并修复文件系统(替换 /dev/sda1)
grub2-mkconfig -o /boot/grub2/grub.cfg更新 GRUB 配置文件
systemctl daemon-reload重新加载 systemd 配置
systemctl list-units列出所有 systemd 单元状态

注意事项

  1. 软件包管理:CentOS 7 使用 yum,不支持模块化软件包管理。
  2. 容器管理:CentOS 7 默认无 podman,需安装 Docker。
  3. 网络管理:CentOS 7 默认使用 network-scripts,nmcli 需安装 NetworkManager。
  4. SELinux:CentOS 7 默认启用 SELinux,部分命令需考虑 SELinux 上下文。
  5. 文件系统:CentOS 7 支持 ext4 和 xfs,默认多为 ext4。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李李网工日记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值