Rocky Linux 9常用命令备忘录(不定时更新)
liuian 2025-07-14 18:21 1 浏览
Rocky Linux 9常用命令备忘录(不定时更新)
大家好,我是星哥,上次介绍了<Rocky Linux 9 系统安装配置图解教程并做简单配置>:https://mp.weixin.qq.com/s/Kku738eYzI80kOQh0G_KFw
今天来介绍一下,Rocky Linux 9的常用命令。
Rocky Linux 是一款稳定、安全、开源的企业级 Linux 操作系统,适合作为服务器部署环境。本文将不定期更新记录我在日常使用 Rocky Linux 9 过程中常用、实用的命令,以便查阅和分享给同样在使用该系统的你。以下命令全部在root下进行,如果没有root权限可以在命令前添加 'sudo'。
不定期更新首发版:
https://vuepress-v2.xgss.net/Rocky-Linux/2.Rocky-Linux-9常用命令备忘录.html
基础信息查询
查看系统版本
# 查看系统版本
cat /etc/os-release
# 查看当前系统的发行版本信息
cat /etc/redhat-release
# 查看内核版本
uname -r
# 查看CPU架构
lscpu
# 查看内存信息
free -m
# 查看磁盘信息
lsblk
df -h
配置固定IP
Rocky 9.x放弃了之前的网络配置目录/etc/sysconfig/network-scripts/,采用新的存储目录
#进入网络配置文件目录
cd /etc/NetworkManager/system-connections
vi /etc/NetworkManager/system-connections/ens160.nmconnection
[connection]
id=ens160
uuid=332fef8b-1a06-386a-a585-d59df1f5ef61
type=ethernet
autoconnect-priority=-999
interface-name=ens160
timestamp=1749758331
[ethernet]
[ipv4]
method=auto
[ipv6]
addr-gen-mode=eui64
method=auto
[proxy]
找到 [ipv4] 部分,并修改 address 和 dns 设置。比如,将 IP 地址修改为 192.168.152.139,网关为 192.168.152.1
修改[ipv4]里面的地址
method=auto
自动获取改为
address=192.168.152.139/24,192.168.152.1
dns=114.114.114.114;8.8.8.8
method=manual
:wq! #保存退出
再重启系统
reboot
修改主机名
设置主机名为 node139
#设置主机名为 node139
hostnamectl set-hostname node139
配置国内软件源
1.备份默认源
cp -a /etc/yum.repos.d/ /etc/yum.repos.d-bak/
2.替换阿里云源
sed -e 's|^mirrorlist=|#mirrorlist=|g' \
-e 's|^#baseurl=http://dl.rockylinux.org/$contentdir|baseurl=https://mirrors.aliyun.com/rockylinux|g' \
-i.bak \
/etc/yum.repos.d/[Rr]ocky*.repo
或者替换清华大学源
sudo sed -e 's|^mirrorlist=|#mirrorlist=|g' \
-e 's|^#baseurl=http://dl.rockylinux.org/$contentdir|baseurl=https://mirrors.tuna.tsinghua.edu.cn/rocky|g' \
-i.bak \
/etc/yum.repos.d/Rocky-*.repo
3.清理缓存并更新
dnf clean all
dnf makecache
软件管理(dnf)
安装常用工具
dnf install -y vim wget curl lrzsz net-tools lsof bash-completion yum-utils tar zip unzip sudo cronie chrony policycoreutils-python-utils
更新系统
dnf update -y
更新软件包索引
dnf check-update
安装软件包
dnf install -y 软件名
删除软件包
dnf remove -y 软件名
搜索软件包
dnf search 软件名
列出已安装的软件
dnf list installed
用户与权限管理
# 添加用户
useradd 用户名
# 设置用户密码
passwd 用户名
# 添加用户到sudo组
usermod -aG wheel 用户名
# 删除用户及其家目录
userdel -r 用户名
禁用SELinux
为什么要禁用SELinux?
某些软件或应用程序可能没有正确配置 SELinux 策略,导致它们无法正常运行。例如,一些旧版软件可能不支持 SELinux,需要禁用 SELinux 来避免访问被限制或拒绝。
1.确认grubby软件包是否已经安装
[root@node139 ~]# rpm -q grubby
grubby-8.40-64.el9.x86_64
[root@node139 ~]# getenforce
Enforcing
2.添加selinux=0到内核命令行
grubby --update-kernel ALL --args selinux=0
3.重启系统
shutdown -r now
或者
reboot
4.查看结果,结果为Disabled 则修改成功
[root@node139 ~]# getenforce
Disabled
常用开关机、重启命令
重启系统
reboot
或:
systemctl reboot
init 6
init 6 和reboot有什么区别:
为什么不推荐 init 6
init 6 是老式 System V 风格的命令,依赖 /etc/inittab 等老旧机制。
在 systemd 中,它是由兼容层模拟支持,未来可能会移除。
某些系统上 init 6 可能无法处理挂载点、服务优雅终止等过程,存在稳定性隐患。
关机
poweroff
shutdown -h now
systemctl poweroff
init 0
定时关机(例如5分钟后关机)
(+5 表示 5 分钟后)
shutdown -h +5
定时重启(例如22:30重启)
shutdown -r 22:30
取消已设置的定时关机/重启
shutdown -c
重启进入紧急(emergency)模式
systemctl emergency
重启进入救援(rescue)模式
systemctl rescue
其他有用的相关命令
注销当前用户(退出会话)
logout
或(在 GUI 或图形界面环境中):
gnome-session-quit
查看系统启动时间
uptime
或更详细:
who -b
查看系统上次重启日志
last reboot
系统服务管理
# 启动服务
systemctl start 服务名
# 停止服务
systemctl stop 服务名
# 重启服务
systemctl restart 服务名
# 查看服务状态
systemctl status 服务名
# 设置服务开机启动
systemctl enable 服务名
# 禁用服务开机启动
systemctl disable 服务名
防火墙常用命令
最常用的命令
# 查看状态
# systemctl status firewalld
开启端口:
# firewall-cmd --zone=public --add-port=80/tcp --permanent
# firewall-cmd --zone=public --add-port=443/tcp --permanent
#允许某个IP
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" accept'
# 查看所有端口
# firewall-cmd --zone=public --list-ports
# 查询端口号80 是否开启:
# firewall-cmd --query-port=80/tcp
重启防火墙:
# firewall-cmd --reload
配置防火墙允许SSH
允许 SSH 服务:
firewall-cmd --permanent --add-service=ssh
firewall-cmd --reload
一、基本操作命令
启动 firewalld
systemctl start firewalld
停止 firewalld
systemctl stop firewalld
重启 firewalld
systemctl restart firewalld
设置firewalld开机启动
systemctl enable firewalld
关闭firewalld开机启动
systemctl disable firewalld
查看firewalld状态
systemctl status firewalld
检查防火墙是否运行
firewall-cmd --state
二、firewall-cmd开放或关闭端口
临时开放端口
firewall-cmd --zone=public --add-port=80/tcp
移除临时端口
firewall-cmd --zone=public --remove-port=80/tcp
永久开放端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
移除永久端口
firewall-cmd --zone=public --remove-port=80/tcp --permanent
重载规则(永久更改后必须)
firewall-cmd --reload
三、firewall-cmd管理服务
查看支持的服务列表
firewall-cmd --get-services
添加服务(如 http、ssh)
firewall-cmd --zone=public --add-service=http --permanent
删除服务
firewall-cmd --zone=public --remove-service=http --permanent
IP 与接口管理
允许某个IP访问
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" accept'
拒绝某个IP访问
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" reject'
限制某接口的区域
firewall-cmd --zone=public --change-interface=eth0
示例-放开某个网段
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.0.0/24" accept'
firewall-cmd --reload
小技巧
--permanent 表示永久修改配置,否则是临时修改(重启防火墙后失效);
--zone=public 指的是区域名,可以替换为 home, internal, external 等;
建议修改完永久规则后执行 firewall-cmd --reload 应用更改。
四、firewall-cmd查看当前配置
查看默认区域
firewall-cmd --get-default-zone
在 firewalld 中,“区域(zone)”表示一组网络接口或源地址对应的一套防火墙规则。默认区域是指:
没有特别指定区域的网络接口,或者新添加的接口,会默认套用这个区域的规则。
查看所有区域
firewall-cmd --get-zones
实际
[root@node139 ~]# firewall-cmd --get-default-zone
public
[root@node139 ~]# firewall-cmd --get-zones
block dmz drop external home internal nm-shared public trusted work
查看当前活动的区域
firewall-cmd --get-active-zones
查看某个区域详细信息
firewall-cmd --zone=public --list-all
网络常用命令
安装常用网络工具包
推荐一次装好
dnf install -y net-tools iproute bind-utils traceroute telnet nmap nc ethtool tcpdump
比较常用的常用命令
# 查看IP地址
ip a
# 配置静态IP(修改/etc/sysconfig/network-scripts/)
# 重启网络服务
systemctl restart NetworkManager
# 查看开放端口
ss -tuln
netstat -tunpl
# 测试连通性
ping 地址
curl 地址
一、网络配置与查看
目的命令说明查看 IP 地址ip a 或 ip addr替代 ifconfig,查看所有网卡的 IP 地址查看网络接口信息ip link查看网络接口设备状态启用某个网卡ip link set eth0 up启动指定接口禁用某个网卡ip link set eth0 down关闭指定接口查看路由信息ip route查看当前路由表添加临时路由ip route add 192.168.1.0/24 via 192.168.0.1添加静态路由(临时)
二、网络诊断与测试
目的命令说明Ping 测试ping 8.8.8.8 或 ping www.baidu.com测试网络连通性Traceroute 路由追踪traceroute 8.8.8.8查看数据包经过路径(需安装)DNS 查询dig www.google.com 或 nslookup www.baidu.comDNS 解析测试(需安装)查看端口连接ss -tuln查看监听端口,替代 netstat检查端口连通性telnet 192.168.0.1 80 或 nc -zv 192.168.0.1 80测试端口是否开放
三、网络服务与状态管理
如果你希望完全使用传统的 network.service,你需要手动禁用 NetworkManager 并启用传统的网络管理服务:
禁用 NetworkManager 服务
systemctl stop NetworkManager
systemctl disable NetworkManager
启用 network.service 服务:
dnf install -y network-scripts
systemctl enable network
systemctl start network
目的命令说明重启网络服务(旧方式)systemctl restart network仅适用于 network 服务启用情况使用 NetworkManager 重启网络nmcli networking off && nmcli networking on推荐使用方式查看当前连接状态nmcli device status查看网络接口状态设置静态 IP(命令行)nmtui图形化 TUI 工具,推荐新手使用
图形化 TUI 工具
四、NetworkManager 工具(nmcli)
命令说明nmcli connection show显示所有连接配置文件nmcli device show显示所有设备的详细信息nmcli connection up eth0启动指定连接nmcli connection down eth0停止指定连接nmcli connection edit编辑连接(高级用法)
五、其他常用命令
命令说明hostname / hostnamectl查看或设置主机名ethtool eth0查看网卡驱动、速率等信息(需安装)tcpdump -i eth0抓包分析工具(需安装)curl ifconfig.me查看公网 IP 地址
#重启网络
nmcli n off && nmcli n on
#用修改后的ip登录系统,查看ip地址
ip addr
# 显示网络设备的运行状态
ip link
# 显示更详细的设备信息
ip -s link
# 仅显示ens160的信息
ip link show dev ens160
# 仅显示处于激活状态的设备
ip link show up
# 停ens160网络
ip link set ens160 down down
# 激活ens160
ip link set ens160 up
# 显示设备状态
nmcli device status
# 显示全部网络接口属性
nmcli device show
# 显示ens160网络接口属性
nmcli device show ens160
# 激活网卡
nmcli device connect ens160
# 停用网卡
nmcli device disconnect ens160
# 掉ens160设备
nmcli connection down ens160 down
# 启用ens160设备
nmcli connection up ens160
# 重新加载网卡
nmcli con reload
# 可以查看帮助
nmcli con add help
文件查找与处理
# 查找文件
find /path -name 文件名
# 快速定位(需先创建索引)
updatedb
locate 文件名
# 搜索内容
grep "关键词" 文件名
# 批量替换
sed -i 's/旧内容/新内容/g' 文件
最后
以上命令大多是我在实际部署和维护 Rocky Linux 9 时使用频率较高的命令。为了方便回顾和积累,我会持续更新这个命令备忘录,也欢迎你留言补充!
写文不易,如果你都看到了这里,请点个赞和在看,分享给更多的朋友;也别忘了关注星哥玩云!这里有满满的干货分享,还有轻松有趣的技术交流~点个赞、分享给身边的小伙伴,一起成长,一起玩转技术世界吧!
相关推荐
- Optional是个好东西,如果用错了就太可惜了
-
原文出处:https://xie.infoq.cn/article/e3d1f0f4f095397c44812a5be我们都知道,在Java8新增了一个类-Optional,主要是用来解决程...
- IDEA建议:不要在字段上使用@Autowire了!
-
在使用IDEA写Spring相关的项目的时候,在字段上使用@Autowired注解时,总是会有一个波浪线提示:Fieldinjectionisnotrecommended.纳尼?我天天用,咋...
- Spring源码|Spring实例Bean的方法
-
Spring实例Bean的方法,在AbstractAutowireCapableBeanFactory中的protectedBeanWrappercreateBeanInstance(String...
- Spring技巧:深入研究Java 14和SpringBoot
-
在本期文章中,我们将介绍Java14中的新特性及其在构建基于SpringBoot的应用程序中的应用。开始,我们需要使用Java的最新版本,也是最棒的版本,Java14,它现在还没有发布。预计将于2...
- Java开发200+个学习知识路线-史上最全(框架篇)
-
1.Spring框架深入SpringIOC容器:BeanFactory与ApplicationContextBean生命周期:实例化、属性填充、初始化、销毁依赖注入方式:构造器注入、Setter注...
- 年末将至,Java 开发者必须了解的 15 个Java 顶级开源项目
-
专注于Java领域优质技术,欢迎关注作者:SnailClimbStar的数量统计于2019-12-29。1.JavaGuideGuide哥大三开始维护的,目前算是纯Java类型项目中Sta...
- 字节跨平台框架 Lynx 开源:一个 Web 开发者的原生体验
-
最近各大厂都在开源自己的跨平台框架,前脚腾讯刚宣布计划四月开源基于Kotlin的跨平台框架「Kuikly」,后脚字节跳动旧开源了他们的跨平台框架「Lynx」,如果说Kuikly是一个面向...
- 我要狠狠的反驳“公司禁止使用Lombok”的观点
-
经常在其它各个地方在说公司禁止使用Lombok,我一直不明白为什么不让用,今天看到一篇文章列举了一下“缺点”,这里我只想狠狠地反驳,看到列举的理由我竟无言以对。原文如下:下面,结合我自己使用Lomb...
- SpringBoot Lombok使用详解:从入门到精通(注解最全)
-
一、Lombok概述与基础使用1.1Lombok是什么Lombok是一个Java库,它通过注解的方式自动生成Java代码(如getter、setter、toString等),从而减少样板代码的编写,...
- Java 8之后的那些新特性(六):记录类 Record Class
-
Java是一门面向对象的语言,而对于面向对象的语言中,一个众所周知的概念就是,对象是包含属性与行为的。比如HR系统中都会有雇员的概念,那雇员会有姓名,ID身份,性别等,这些我们称之为属性;而雇员同时肯...
- 为什么大厂要求安卓开发者掌握Kotlin和Jetpack?优雅草卓伊凡
-
为什么大厂要求安卓开发者掌握Kotlin和Jetpack?深度解析现代Android开发生态优雅草卓伊凡一、Kotlin:Android开发的现代语言选择1.1Kotlin是什么?Kotlin是由...
- Kotlin这5招太绝了!码农秒变优雅艺术家!
-
Kotlin因其简洁性、空安全性和与Java的无缝互操作性而备受喜爱。虽然许多开发者熟悉协程、扩展函数和数据类等特性,但还有一些鲜为人知的特性可以让你的代码从仅仅能用变得真正优雅且异常简洁。让我们来看...
- 自行部署一款免费高颜值的IT资产管理系统-咖啡壶chemex
-
在运维时,ICT资产太多怎么办,还是用excel表格来管理?效率太低,也不好多人使用。在几个IT资产管理系统中选择比较中,最终在Snipe-IT和chemex间选择了chemex咖啡壶。Snip...
- PHP对接百度语音识别技术(php对接百度语音识别技术实验报告)
-
引言在目前的各种应用场景中,语音识别技术已经越来越常用,并且其应用场景正在不断扩大。百度提供的语音识别服务允许用户通过简单的接口调用,将语音内容转换为文本。本文将通过PHP语言集成百度的语音识别服务,...
- 知识付费系统功能全解析(知识付费项目怎么样)
-
开发知识付费系统需包含核心功能模块,确保内容变现、用户体验及运营管理需求。以下是完整功能架构:一、用户端功能注册登录:手机号/邮箱注册,第三方登录(微信、QQ)内容浏览:分类展示课程、文章、音频等付费...
- 一周热门
-
-
Python实现人事自动打卡,再也不会被批评
-
【验证码逆向专栏】vaptcha 手势验证码逆向分析
-
Psutil + Flask + Pyecharts + Bootstrap 开发动态可视化系统监控
-
一个解决支持HTML/CSS/JS网页转PDF(高质量)的终极解决方案
-
再见Swagger UI 国人开源了一款超好用的 API 文档生成框架,真香
-
网页转成pdf文件的经验分享 网页转成pdf文件的经验分享怎么弄
-
C++ std::vector 简介
-
系统C盘清理:微信PC端文件清理,扩大C盘可用空间步骤
-
10款高性能NAS丨双十一必看,轻松搞定虚拟机、Docker、软路由
-
python使用fitz模块提取pdf中的图片
-
- 最近发表
- 标签列表
-
- python判断字典是否为空 (50)
- crontab每周一执行 (48)
- aes和des区别 (43)
- bash脚本和shell脚本的区别 (35)
- canvas库 (33)
- dataframe筛选满足条件的行 (35)
- gitlab日志 (33)
- lua xpcall (36)
- blob转json (33)
- python判断是否在列表中 (34)
- python html转pdf (36)
- 安装指定版本npm (37)
- idea搜索jar包内容 (33)
- css鼠标悬停出现隐藏的文字 (34)
- linux nacos启动命令 (33)
- gitlab 日志 (36)
- adb pull (37)
- table.render (33)
- python判断元素在不在列表里 (34)
- python 字典删除元素 (34)
- vscode切换git分支 (35)
- python bytes转16进制 (35)
- grep前后几行 (34)
- hashmap转list (35)
- c++ 字符串查找 (35)