我们日常办公和开发大多在 Windows 或 macOS 环境下进行,用得那叫一个如鱼得水,不过总有要用Linux系统的时候吧,这时候也许就会手速 -50%,自信 -80%,光
apt还是yum就能卡三秒,这篇笔记就是为 “低频但关键” 的 Linux 操作场景而写。✅ 聚焦 RHEL系(CentOS/Rocky) 与 Debian系(Ubuntu/Debian) 的共性与差异
✅ 按功能模块组织(系统、网络、服务、包管理……)
✅ 所有命令实测可用,标注现代推荐替代(如 ip 代替 ifconfig)
—— 不求精通,但求关键时刻,敲对命令,一次成功。
适用于 RHEL系(CentOS / Rocky / Alma / RHEL)与 Debian系(Ubuntu / Debian)
✅ 共性命令|⚠️ 系统差异|🔧 现代替代|📌 实用提示
🔍 一、系统信息
| 功能 | 命令 | 说明 |
|---|---|---|
| 内核/架构/主机名 | uname -a | ✅ 通用。输出示例:Linux host 5.15.0-xx-generic #xx-Ubuntu SMP … x86_64 |
| 操作系统版本 | cat /etc/os-release(推荐)lsb_release -a(Debian系默认可用;RHEL需装 redhat-lsb-core) | ✅ 通用。比 /etc/issue 更标准、信息更全 |
| CPU 信息 | lscpu(简洁)cat /proc/cpuinfo(详细) | ✅ 通用 |
| 主机名 | hostname(查看)hostnamectl(查看+设置,systemd 系统通用) | ✅ 通用(hostnamectl set-hostname xxx 可持久修改) |
| PCI 设备 | lspci -tv | ✅ 通用(树状输出) |
| USB 设备 | lsusb -tv | ✅ 通用 |
| 加载的内核模块 | lsmod | ✅ 通用 |
| 环境变量 | env 或 printenv | ✅ 通用 |
💡 提示:
hostnamectl是现代推荐方式,修改后立即生效且持久化(写入/etc/hostname)- 避免依赖
/etc/issue——它可能被定制或为空;/etc/os-release是 LSB 标准文件。
📊 二、资源监控
| 功能 | 命令 | 说明 |
|---|---|---|
| 内存 & 交换区 | free -h(推荐,-h 自动单位)free -m(MB 单位) | ✅ 通用(-h 更直观) |
| 磁盘分区使用 | df -hT(-T 显示文件系统类型) | ✅ 通用 |
| 目录占用大小 | du -sh /path(概览)du -h --max-depth=1 /path(子目录明细) | ✅ 通用 |
| 内存总量/空闲 | grep MemTotal /proc/meminfogrep MemFree /proc/meminfo | ✅ 通用(底层准确) |
| 系统运行时长 & 负载 | uptime | ✅ 通用(输出:运行时间、用户数、1/5/15分钟平均负载) |
| 负载详情 | cat /proc/loadavg | ✅ 通用(前3个数 = uptime 的负载;第4个 = 当前运行进程数/总数) |
⚠️ 注意:MemFree≠ 可用内存!Linux 会缓存文件到内存(buffers/cache),真实可用看free输出的available列。
💾 三、磁盘与分区
| 功能 | 命令 | 说明 | |||
|---|---|---|---|---|---|
| 当前挂载点 | `mount | column -t(对齐美观)<br>findmnt`(推荐,systemd 工具,更清晰) | ✅ 通用 | ||
| 分区表 | lsblk(推荐,简洁树状)fdisk -l(传统,需 root) | ✅ 通用(lsblk 无需 sudo) | |||
| 交换分区 | swapon -scat /proc/swaps | ✅ 通用 | |||
| IDE 设备参数(已过时) | hdparm -i /dev/sda(仅限旧 IDE,现代多为 SATA/NVMe) | ⚠️ 基本废弃;用 smartctl -a /dev/sda(需 smartmontools)查健康状态更佳 | |||
| 启动硬件检测日志 | `dmesg | grep -i "sd\ | nvme\ | ata"` | ✅ 通用(比 IDE 更普适) |
🔧 现代建议:
- 新磁盘分区用
fdisk(MBR)或gdisk(GPT)- 文件系统创建:
mkfs.ext4 /dev/sdb1(通用)- 挂载:
sudo mount /dev/sdb1 /mnt/data+ 写入/etc/fstab实现开机挂载
🌐 四、网络管理
| 功能 | 传统命令(仍可用) | 现代推荐(优先使用) | 说明 |
|---|---|---|---|
| 网络接口 | ifconfig | ip a 或 ip addr show | ✅ 通用;ifconfig 属 net-tools,多数新系统默认未装 |
| 路由表 | route -n | ip route | ✅ 通用 |
| 防火墙规则 | iptables -L -n -v | nft list ruleset(若用 nftables) | ⚠️ RHEL8+/Debian11+ 默认用 nftables 替代 iptables |
| 监听端口 | netstat -lntp | ss -lntp(快10倍+) | ✅ 通用;ss 是 iproute2 工具集,已预装 |
| 所有连接 | netstat -antp | ss -antp | 同上 |
| 网络统计 | netstat -s | ss -s(简略)或 nstat | ss -s 足够日常诊断 |
🔒 防火墙补充:
- RHEL系:
firewalld(动态管理,用firewall-cmd)- Debian系(Ubuntu):
ufw(简单封装,sudo ufw allow 22)临时关闭(调试):
# RHEL sudo systemctl stop firewalld # Ubuntu sudo ufw disable
🧵 五、进程管理
| 功能 | 命令 | 说明 |
|---|---|---|
| 所有进程 | ps aux(BSD风格,更常用)ps -ef(SysV风格) | ✅ 通用 |
| 实时监控 | top(基础)htop(强烈推荐,彩色/交互/树状,需安装) | htop:RHEL → sudo dnf install htop;Ubuntu → sudo apt install htop |
| 进程树 | pstree -p | ✅ 通用(显示父子关系) |
| 按名查进程 | pgrep nginx → pkill nginx | ✅ 通用 |
💡 技巧:top中按P按 CPU 排序,M按内存,k杀进程。
👤 六、用户与权限
| 功能 | 命令 | 说明 |
|---|---|---|
| 当前活跃用户 | w | ✅ 通用(含终端、运行命令、负载) |
| 用户信息 | id username | ✅ 通用(UID/GID/所属组) |
| 登录历史 | last | ✅ 通用(读 /var/log/wtmp) |
| 所有用户 | cut -d: -f1 /etc/passwd | ✅ 通用(含系统用户) |
| 所有用户组 | cut -d: -f1 /etc/group | ✅ 通用 |
| 当前用户计划任务 | crontab -l | ✅ 通用 |
| 添加用户(交互) | sudo adduser username | ✅ Debian系默认;RHEL系可用,但传统用 useradd |
| 添加用户(非交互) | sudo useradd -m -s /bin/bash username | ✅ 通用;-m 创建家目录,-s 指定 shell |
| 授予 sudo 权限 | usermod -aG wheel username(RHEL)usermod -aG sudo username(Debian) | ⚠️ 关键差异!组名不同 |
🔐 权限速查:
chmod 755 file→ owner:rwx, group/others: rxchmod u+x file→ 给 owner 加执行权chown user:group file→ 改属主/属组
⚙️ 七、服务管理
✅ RHEL 7+/Debian 8+ 均使用 systemd,命令完全通用!# 查看所有服务状态
systemctl list-units --type=service --state=running
# 启动/停止/重启/重载(以nginx服务为例)
sudo systemctl start nginx
sudo systemctl stop nginx
sudo systemctl restart nginx
sudo systemctl reload nginx
# 开机自启
sudo systemctl enable nginx
sudo systemctl disable nginx
# 查看服务详情(含日志)
systemctl status nginx
journalctl -u nginx -f # 实时追踪日志📌 注意:
- 旧命令
chkconfig(RHEL) /update-rc.d(Debian)已淘汰,仅用于 SysV init 系统(如 CentOS 6)- 服务名差异仍存在:
httpd(RHEL) vsapache2(Debian)
📦 八、软件包管理
1. RHEL系(RPM + DNF/YUM)
| 操作 | CentOS 7 | CentOS 8/9 / Rocky/Alma | |
|---|---|---|---|
| 安装 | sudo yum install pkg | sudo dnf install pkg(dnf 是 yum v4+) | |
| 升级 | sudo yum update | sudo dnf upgrade | |
| 卸载 | sudo yum remove pkg | sudo dnf remove pkg | |
| 搜索 | yum search keyword | dnf search keyword | |
| 列出已安装 | `rpm -qa \ | grep pkg` | 同左;或 dnf list installed |
| 安装本地 RPM | sudo rpm -ivh pkg.rpm | 同左(推荐 dnf install ./pkg.rpm 自动解依赖) |
2. Debian系(DEB + APT)
| 操作 | 命令 |
|---|---|
| 更新索引 | sudo apt update |
| 升级软件 | sudo apt upgrade(不删旧包)sudo apt full-upgrade(可删/换包) |
| 安装 | sudo apt install pkg |
| 卸载 | sudo apt remove pkg(保留配置)sudo apt purge pkg(删配置) |
| 搜索 | apt search keyword |
| 列出已安装 | dpkg -l \(竖线) grep pkgapt list --installed |
| 安装本地 DEB | sudo dpkg -i pkg.deb → sudo apt install -f(修依赖) |
🔑 常见包名差异对照表
| 功能 | RHEL系 | Debian系 |
|---|---|---|
| Web 服务器 | httpd | apache2 |
| MySQL 客户端 | mysql(MariaDB) | mysql-client / default-mysql-client |
| 开发工具组 | @Development Tools | build-essential |
| EPEL 等扩展源 | sudo dnf install epel-release | sudo apt install software-properties-common + add-apt-repository |
🛠️ 九、实用技巧 & 避坑指南
| 场景 | 方案 |
|---|---|
| 命令找不到? | RHEL:sudo yum install yum-utils && yum provides "*/cmd"Debian: sudo apt install apt-file && apt-file update && apt-file search cmd |
| 中文乱码? | 安装语言包: RHEL: sudo dnf install langpacks-zh_CNDebian: sudo apt install language-pack-zh-hans并设 export LANG=zh_CN.UTF-8 |
| SSH 免密登录 | ssh-keygen → ssh-copy-id user@host(通用) |
| 快速压缩/解压 | tar -czvf archive.tar.gz dir/(gzip)tar -xzf archive.tar.gz(解压) |
| 命令历史增强 | history \(竖线) grep keyword;或装 fzf + Ctrl+R 模糊搜索 |
📎 极简速查表
| 类别 | RHEL系 | Debian系 | 通用 |
|---|---|---|---|
| 安装软件 | sudo dnf install xxx | sudo apt install xxx | snap install xxx(跨平台,慎用) |
| 更新系统 | sudo dnf upgrade | sudo apt update && sudo apt upgrade | — |
| 服务控制 | systemctl start xxx | 同左 | ✅ |
| 防火墙 | firewall-cmd --add-port=80/tcp --permanent | ufw allow 80 | — |
| 查IP | ip a | 同左 | ✅ |
| 看端口 | ss -lntp | 同左 | ✅ |
评论已关闭