Rocky Linux 9 系统管理命令合辑
文章目录
系统基础命令
系统信息查看
1# 查看系统版本
2cat /etc/redhat-release
3hostnamectl
4
5# 查看内核版本
6uname -a
7
8# 查看CPU信息
9lscpu
10
11# 查看内存信息
12free -h
进程与网络
1# 查看网络监听端口(推荐使用 ss 替代 netstat)
2ss -tuln # 查看所有监听端口
3ss -tulnp # 查看监听端口及对应进程
4
5# 查看后台进程
6ps aux | grep [进程名]
7ps -ef | grep [进程名]
8
9# 查看进程树
10pstree -p
文件查找
1# 全盘查找文件
2find / -type f -name "[文件名]"
3
4# 在指定目录中按内容查找(如 /etc)
5grep -r "content" /etc/ 2>/dev/null
6
7# 使用 find + xargs 组合
8find /etc -type f -print0 | xargs -0 grep "content"
9
10# 查找大文件(大于100M)
11find / -type f -size +100M -exec ls -lh {} \;
关机与重启
1# ========== systemctl 方式 ==========
2systemctl reboot # 重启
3systemctl poweroff # 关机(切断电源)
4systemctl halt # 停机(不切断电源)
5
6# ========== shutdown 方式 ==========
7shutdown -h now # 立即关机
8shutdown -h +2 # 2分钟后关机
9shutdown -h 10:01 # 10:01关机
10shutdown -r now # 立即重启
11shutdown -r +2 # 2分钟后重启
12shutdown -c # 取消已计划的关机/重启
13
14# ========== init 方式(传统SysV风格,兼容) ==========
15init 0 # 关机(运行级别0)
16init 6 # 重启(运行级别6)
17init 1 # 单用户模式
18init 3 # 多用户命令行模式
19init 5 # 图形界面模式
20
21# ========== 其他快捷命令 ==========
22reboot # 重启(通用)
23halt # 停机(不切断电源)
24poweroff # 关机(切断电源)
25
26# ========== 查看当前运行级别 ==========
27runlevel # 显示 当前级别 和 上次级别
28who -r # 查看当前运行级别
29systemctl get-default # 查看默认启动目标
网络与主机名
1# 临时禁ping
2echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
3
4# 临时启用ping
5echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all
6
7# 释放并重新获取IP(需安装 dhcp-client)
8dnf install -y dhcp-client
9dhclient -r # 释放IP
10dhclient # 重新获取IP
11
12# 设置主机名
13hostnamectl set-hostname [新主机名]
systemctl 服务管理
1# 服务启动/停止/重启/状态
2systemctl start [服务名]
3systemctl stop [服务名]
4systemctl restart [服务名]
5systemctl status [服务名]
6
7# 示例:管理防火墙
8systemctl start firewalld
9systemctl stop firewalld
10systemctl restart firewalld
11systemctl status firewalld
12
13# 允许/禁止服务开机启动
14systemctl enable [服务名]
15systemctl disable [服务名]
16
17# 查看服务是否开机启动
18systemctl is-enabled [服务名]
19
20# 列出所有正在运行的服务
21systemctl list-units --type=service --state=running
22
23# 列出所有已安装服务的开机自启状态
24systemctl list-unit-files | grep enabled
25
26# 查看所有服务(含未运行的)
27systemctl list-unit-files --type=service
系统运行级别(目标)设置
Rocky Linux 9 使用 systemd 目标替代传统的运行级别。
| 运行级别 | 对应目标 | 说明 |
|---|---|---|
| 0 | poweroff.target | 关机 |
| 1 | rescue.target | 单用户模式 |
| 3 | multi-user.target | 多用户命令行模式 |
| 5 | graphical.target | 图形界面模式 |
| 6 | reboot.target | 重启 |
1# 查看当前默认目标
2systemctl get-default
3
4# 设置默认启动为命令行模式(原运行级别3)
5systemctl set-default multi-user.target
6
7# 设置默认启动为图形界面模式(原运行级别5)
8systemctl set-default graphical.target
9
10# 临时切换当前运行级别
11systemctl isolate multi-user.target # 切换到命令行
12systemctl isolate graphical.target # 切换到图形界面
13
14# 查看当前运行级别(兼容旧命令)
15runlevel
压缩与解压缩
tar.gz
1# 压缩
2tar czf my.tar.gz dirname
3tar czvf my.tar.gz file1 file2 file3 # -v 显示详细过程
4
5# 解压
6tar -xzvf my.tar.gz
7tar -xzvf my.tar.gz -C /www # 解压到指定目录
tar.bz2
1# 压缩
2tar cjf my.tar.bz2 dirname
3
4# 解压
5tar -xjvf file.tar.bz2
tar.Z(需安装 ncompress)
1dnf install -y ncompress
2
3# 压缩
4tar cZf my.tar.Z dirname
5
6# 解压
7tar -xZvf file.tar.Z
zip / unzip
1# 压缩
2zip -r my.zip dirname # -r 递归压缩目录
3
4# 解压
5unzip file.zip
6unzip file.zip -d /target/dir # 解压到指定目录
rar(需安装 unrar)
1dnf install -y epel-release
2dnf install -y unrar
3
4# 解压
5unrar x file.rar # 保留目录结构
6unrar e file.rar # 解压到当前目录(不保留结构)
磁盘信息查询
1# 查看所有磁盘及分区信息
2fdisk -l
3
4# 查看磁盘可用空间及挂载情况
5df -lh
6df -Th # 带文件系统类型
7
8# 查看目录占用空间
9du -sh [目录] # 汇总大小
10du -h --max-depth=1 [目录] # 查看第一级子目录
11
12# 列出块设备信息
13lsblk
14lsblk -f # 显示文件系统类型和UUID
15
16# 查询分区文件系统类型和UUID
17blkid
18blkid /dev/sda1
19
20# 查看磁盘IO情况
21iostat -x 1 # 每秒刷新(需安装 sysstat)
22dnf install -y sysstat
23
24# 查看磁盘性能
25iotop # 实时查看进程IO(需安装)
26dnf install -y iotop
防火墙配置 (firewalld)
基础操作
1# 查看帮助
2firewall-cmd --help
3
4# 显示防火墙状态
5firewall-cmd --state
6
7# 查看所有规则
8firewall-cmd --list-all
9
10# 查看所有区域
11firewall-cmd --get-zones
12
13# 查看当前活动区域
14firewall-cmd --get-active-zones
15
16# 查看指定接口所属区域
17firewall-cmd --get-zone-of-interface=eth0
18
19# 重载防火墙规则(不中断现有连接)
20firewall-cmd --reload
端口与服务管理
1# 查看已开放的端口
2firewall-cmd --list-ports
3
4# 查看已开放的服务
5firewall-cmd --list-services
6
7# 开放端口(--permanent 永久生效)
8firewall-cmd --add-port=80/tcp --permanent
9firewall-cmd --add-port=10050-10060/tcp --permanent
10
11# 开放服务
12firewall-cmd --add-service=http --permanent
13firewall-cmd --add-service=https --permanent
14firewall-cmd --add-service=samba --permanent
15
16# 移除端口/服务
17firewall-cmd --remove-port=80/tcp --permanent
18firewall-cmd --remove-service=http --permanent
19
20# 使永久规则生效
21firewall-cmd --reload
紧急模式
1# 拒绝所有包(紧急模式)
2firewall-cmd --panic-on
3
4# 取消紧急模式
5firewall-cmd --panic-off
6
7# 查看是否处于紧急模式
8firewall-cmd --query-panic
网络配置 (ip / nmcli)
ip 命令(通用)
1# 查看网络接口信息
2ip link show
3ip addr show
4ip addr show eth0
5
6# 启用/关闭网卡
7ip link set eth0 up
8ip link set eth0 down
9
10# 添加/删除IP地址
11ip addr add 192.168.0.1/24 dev eth0
12ip addr del 192.168.0.1/24 dev eth0
13
14# 查看路由表
15ip route list
16
17# 添加路由
18ip route add 192.168.4.0/24 via 192.168.0.254 dev eth0
19ip route add default via 192.168.0.254 dev eth0
20
21# 删除路由
22ip route del 192.168.4.0/24
23ip route del default
24
25# 设置网卡参数
26ip link set eth0 mtu 1400 # 设置MTU
27ip link set eth0 txqueuelen 1200 # 设置队列长度
nmcli 命令(推荐)
1# 查看 NetworkManager 状态
2nmcli general status
3nmcli general hostname
4
5# 查看所有连接
6nmcli con show
7nmcli con show --active # 仅显示活动连接
8
9# 查看设备状态
10nmcli dev status
11nmcli dev show eth0
12
13# 启用/禁用设备
14nmcli dev connect eth0
15nmcli dev disconnect eth0
配置静态IP
1# 1. 添加新连接[连接名称为 static-eth0, 绑定到网络接口 eth0]
2# 注【也可以直接修改 eth0】
3nmcli con add type ethernet con-name static-eth0 ifname eth0
4
5# 2. 配置IP参数
6nmcli con mod static-eth0 \
7 ipv4.method manual \
8 ipv4.addresses 192.168.1.240/24 \
9 ipv4.gateway 192.168.1.1 \
10 ipv4.dns "8.8.8.8 114.114.114.114" \
11 autoconnect yes
12
13# 3. 激活连接
14nmcli con up static-eth0
15
16# 添加多个IP地址
17nmcli con mod static-eth0 +ipv4.addresses 192.168.200.1/24
配置DHCP
1# 1. 添加DHCP连接
2nmcli con add type ethernet con-name dhcp-eth0 ifname ens160
3
4# 2. 配置为DHCP
5nmcli con mod dhcp-eth0 \
6 ipv4.method auto \
7 autoconnect yes
8
9# 3. 激活
10nmcli connection up dhcp-eth0
修改现有连接
1# 修改DNS(添加/覆盖)
2nmcli con mod "static-eth0" ipv4.dns "8.8.8.8 4.4.4.4"
3nmcli con mod "static-eth0" +ipv4.dns 114.114.114.114
4
5# 修改IP地址
6nmcli con mod "static-eth0" ipv4.addresses 192.168.1.250/24
7
8# 重启连接生效
9nmcli con down static-eth0 && nmcli con up static-eth0
10
11# 删除连接
12nmcli con del static-eth0
修改IP配置文件方式
传统 ifcfg 文件方式
Rocky Linux 9 仍支持 /etc/sysconfig/network-scripts/ifcfg-* 格式,但需确保 NetworkManager 的 ifcfg-rh 插件已启用。
1# 编辑网卡配置文件
2vim /etc/sysconfig/network-scripts/ifcfg-eth0
配置文件示例(静态IP):
1DEVICE=eth0
2BOOTPROTO=static
3ONBOOT=yes
4IPADDR=192.168.145.130
5NETMASK=255.255.255.0
6GATEWAY=192.168.145.1
7DNS1=8.8.8.8
8DNS2=114.114.114.114
配置文件示例(DHCP):
1DEVICE=eth0
2BOOTPROTO=dhcp
3ONBOOT=yes
生效配置:
1# 重启网络服务(推荐使用nmcli)
2nmcli con reload
3nmcli con up eth0
4
5# 或重启NetworkManager
6systemctl restart NetworkManager
keyfile 方式(NetworkManager 原生)
NetworkManager 的配置实际存储在 /etc/NetworkManager/system-connections/ 目录下:
1# 查看所有连接配置
2ls -la /etc/NetworkManager/system-connections/
3
4# 查看具体配置(示例)
5cat /etc/NetworkManager/system-connections/static-eth0.nmconnection
6
7# 推荐使用 nmcli 修改,而非直接编辑
常用软件安装
基础工具
1# 网络工具包(ifconfig, netstat, route等)
2dnf install -y net-tools
3
4# DNS查询工具(dig, nslookup)
5dnf install -y bind-utils
6
7# 下载工具
8dnf install -y wget curl
9
10# 文本编辑器
11dnf install -y vim-enhanced
12
13# 系统监控工具
14dnf install -y htop iotop
服务器服务
1# DNS服务器 (Bind)
2dnf install -y bind
3
4# DHCP服务器
5dnf install -y dhcp-server
6
7# Samba文件共享
8dnf install -y samba samba-client samba-common
9
10# Web服务器
11dnf install -y httpd # Apache
12dnf install -y nginx # Nginx
13
14# 数据库
15dnf install -y mariadb-server # MariaDB
16dnf install -y postgresql-server # PostgreSQL
开发工具
1# 开发工具组(gcc, make, git等)
2dnf groupinstall -y "Development Tools"
3
4# 安装EPEL仓库(提供额外软件包)
5dnf install -y epel-release
6
7# 安装Python相关
8dnf install -y python3 python3-pip
9
10# 安装容器工具
11dnf install -y podman # Podman(替代Docker)
12dnf install -y docker # Docker(需启用额外仓库)
系统维护与日志
日志查看 (journalctl)
1# 查看所有系统日志
2journalctl
3
4# 查看最新日志(实时跟踪)
5journalctl -f
6
7# 查看最后N条日志
8journalctl -n 100
9
10# 查看特定服务的日志
11journalctl -u firewalld
12journalctl -u sshd
13
14# 查看特定时间的日志
15journalctl --since "2026-06-20 10:00:00"
16journalctl --since "1 hour ago"
17
18# 查看错误级别及以上日志
19journalctl -p err
20
21# 查看内核日志
22journalctl -k
SELinux
Rocky Linux 9 默认启用 SELinux。
1# 查看SELinux状态
2getenforce # Enforcing / Permissive / Disabled
3sestatus # 详细信息
4
5# 临时切换模式
6setenforce 0 # 切换为宽容模式(Permissive)
7setenforce 1 # 切换为强制模式(Enforcing)
8
9# 永久修改(需重启生效)
10vim /etc/selinux/config
11# 修改 SELINUX=enforcing 为 SELINUX=permissive 或 disabled
系统资源监控
1# 查看系统负载
2uptime
3top # 实时进程监控
4htop # 增强版top
5
6# 查看内存使用
7free -h
8vmstat 1 5 # 每秒刷新,共5次
9
10# 查看磁盘使用
11df -Th
12du -sh /* 2>/dev/null | sort -hr | head -10 # 查看根目录下最大的10个目录
用户与权限
1# 用户管理
2useradd [用户名]
3passwd [用户名]
4userdel -r [用户名] # 删除用户及家目录
5
6# 用户组管理
7groupadd [组名]
8usermod -aG [组名] [用户名] # 将用户添加到组
9
10# 查看用户信息
11id [用户名]
12whoami
13who # 查看当前登录用户
14last # 查看最近登录记录
15
16# 权限管理
17chmod 755 [文件/目录]
18chown [用户]:[组] [文件/目录]
计划任务 (Cron)
1# 编辑当前用户的计划任务
2crontab -e
3
4# 查看当前用户的计划任务
5crontab -l
6
7# 编辑系统计划任务
8vim /etc/crontab
9
10# 计划任务格式示例
11# 每天凌晨2点执行备份脚本
120 2 * * * /root/backup.sh
13
14# 每5分钟执行一次
15*/5 * * * * /usr/bin/command
防火墙规则持久化(补充)
1# 查看当前运行时规则与永久规则差异
2firewall-cmd --check-config
3
4# 将当前运行时规则保存为永久规则
5firewall-cmd --runtime-to-permanent
6
7# 直接编辑永久规则文件(不推荐)
8ls -la /etc/firewalld/zones/
📌 版本对照备忘
| 功能 | CentOS 7/8 命令 | Rocky Linux 9 命令 |
|---|---|---|
| 包管理 | yum |
dnf(yum仍可用) |
| 网络查看 | ifconfig |
ip addr 或 nmcli |
| 路由查看 | route -n |
ip route |
| 网络服务 | network-scripts |
NetworkManager (nmcli) |
| 运行级别 | /etc/inittab |
systemctl set-default |
| 系统日志 | /var/log/messages |
journalctl |
| 服务管理 | service |
systemctl |