Linux系统的不同发行版的常用命令

Linux 系统的不同发行版在常用命令上存在一些差异,主要体现在 包管理命令服务管理命令 和 部分工具链 上。以下是主要区别对比:

一、包管理命令对比

1. Debian/Ubuntu 系(APT)
功能命令
更新软件源sudo apt update
安装软件sudo apt install <包名>
卸载软件sudo apt remove <包名>
搜索软件apt search <关键词>
列出已安装软件apt list --installed
升级所有软件sudo apt upgrade
2. Red Hat/CentOS/Fedora 系(YUM/DNF)
功能命令
更新软件源sudo yum makecache
安装软件sudo yum install <包名>
卸载软件sudo yum remove <包名>
搜索软件yum search <关键词>
列出已安装软件yum list installed
升级所有软件sudo yum update

:Fedora 及新版 CentOS/RHEL 使用 dnf(替代 yum),命令格式相同,如 sudo dnf install <包名>

3. Arch Linux 系(Pacman)
功能命令
更新软件源sudo pacman -Sy
安装软件sudo pacman -S <包名>
卸载软件sudo pacman -R <包名>
搜索软件pacman -Ss <关键词>
列出已安装软件pacman -Q
升级所有软件sudo pacman -Syu

二、服务管理命令对比

1. Systemd 系(主流发行版通用)
功能命令
启动服务sudo systemctl start <服务名>
停止服务sudo systemctl stop <服务名>
重启服务sudo systemctl restart <服务名>
查看服务状态systemctl status <服务名>
开机自启sudo systemctl enable <服务名>
禁用开机自启sudo systemctl disable <服务名>
2. 旧版 SysVinit(部分老系统)
功能命令
启动服务sudo service <服务名> start
停止服务sudo service <服务名> stop
查看服务状态service <服务名> status

:现代发行版(如 Ubuntu 18.04+、CentOS 7+)均已切换到 systemd

三、网络配置命令对比

1. 传统命令(通用)
功能命令
查看IP地址ifconfig(需安装 net-tools
测试网络连通性ping <目标IP>
2. 新版工具(推荐)
功能命令
查看IP地址ip addriproute2工具包)
配置路由ip route

ifconfig 已逐渐被 ip 命令取代,但需注意:

  • Debian/Ubuntu:默认未安装 ifconfig,需手动安装 net-tools

  • Arch Linux:直接使用 ip,不推荐 ifconfig

3.其他
命令说明示例
ping测试网络连通性ping google.com
ifconfig / ip查看网络接口ip a 或 ifconfig
netstat网络连接状态netstat -tulnp (监听端口)
ssh远程登录ssh user@192.168.1.1
scp安全复制文件scp file.txt user@host:/path
wget / curl下载文件wget https://example.com/file.zip

 

四、用户管理命令对比

1. 创建用户
发行版命令
Debian/Ubuntusudo adduser <用户名>
Red Hat/CentOSsudo useradd <用户名>
Arch Linuxsudo useradd -m <用户名>

区别

  • adduser(Debian系):交互式创建,自动生成家目录。

  • useradd(其他系):需加 -m 参数创建家目录。

2. 设置密码
命令说明
passwd <用户名>所有发行版通用
3.其他
命令说明示例
chmod修改权限chmod 755 script.sh (rwxr-xr-x)
chown修改所有者chown user:group file.txt
sudo提权执行sudo apt update
passwd修改密码passwd (当前用户)
useradd / userdel用户管理sudo useradd newuser

五、文件系统工具对比

1. 磁盘空间查看
功能命令(通用)
查看磁盘使用df -h
查看目录大小du -sh <目录路径>
2. 文件系统格式化
发行版命令示例
通用sudo mkfs.ext4 /dev/sdX1

:工具名称相同,但部分发行版需手动安装:

  • Ubuntu:sudo apt install e2fsprogs

  • CentOS:sudo yum install e2fsprogs

3.磁盘挂载
命令用途
mount挂载文件系统
umount卸载文件系统
mount -a挂载 /etc/fstab 中的所有条目
lsblk查看块设备信息
blkid查看设备 UUID 和文件系统类型

常用命令示例
1). 查看已挂载的文件系统

mount               # 显示所有已挂载的文件系统
mount | grep /dev/sd1  # 过滤特定设备
cat /proc/mounts    # 另一种查看方式(更底层)

2). 挂载设备(如U盘、硬盘)

sudo mount /dev/sdb1 /mnt/usb  # 将 /dev/sdb1 挂载到 /mnt/usb
/dev/sdb1:设备名(可通过 lsblk 或 fdisk -l 查看)

/mnt/usb:挂载点(需提前创建目录)

3). 挂载 ISO 文件

sudo mount -o loop ubuntu.iso /mnt/iso  # 挂载 ISO 到 /mnt/iso
#-o loop:将文件视为块设备挂载

4). 挂载网络共享(NFS/SMB)

# NFS 挂载
sudo mount -t nfs 192.168.1.100:/share /mnt/nfs

# SMB/CIFS 挂载(Windows 共享)
sudo mount -t cifs -o username=user,password=123 //192.168.1.100/share /mnt/smb

5). 挂载时指定文件系统类型

sudo mount -t ext4 /dev/sdc1 /mnt/data  # 指定 ext4 文件系统

常见文件系统类型:
ext4(Linux)
ntfs(Windows)
vfat(FAT32)
xfs(高性能文件系统)

6). 挂载时设置选项

sudo mount -o ro /dev/sdb1 /mnt/usb      # 只读挂载
sudo mount -o remount,rw /mnt/usb        # 重新挂载为可读写
sudo mount -o noexec /dev/sdb1 /mnt/usb  # 禁止执行该分区的程序

常用选项:
ro / rw:只读 / 读写
noexec:禁止执行程序
nosuid:忽略 SUID 权限
sync / async:同步 / 异步写入

7). 卸载文件系统

umount /mnt/usb    # 卸载挂载点
umount /dev/sdb1   # 或通过设备名卸载
umount -l /mnt/usb # 强制卸载(lazy unmount,适用于文件系统忙时)
4. 磁盘 I/O

iostat - 磁盘 I/O 统计

iostat -x 1  # 每秒显示一次详细磁盘统计
  • 关键指标

    • %util:设备利用率(接近100%表示饱和)

    • await:平均 I/O 响应时间(ms)

    • r/sw/s:读写请求数

    • rkB/swkB/s:读写吞吐量(KB/s)

iotop - 类似 top 的 I/O 监控

sudo iotop -o  # 只显示实际有 I/O 的进程

   按 r 反向排序,o 只显示活跃进程

dstat - 综合监控

dstat -d  # 磁盘读写监控
dstat -D sda  # 监控指定磁盘

六、文件与目录操作

命令说明示例
ls列出目录内容ls -l (详细列表)
cd切换目录cd /home 或 cd .. (返回上级)
pwd显示当前路径pwd
mkdir创建目录mkdir new_dir
rm删除文件/目录rm file.txt (文件)
rm -r dir (递归删除目录)
cp复制文件/目录cp file1.txt file2.txt
cp -r dir1 dir2 (复制目录)
mv移动/重命名mv old.txt new.txt (重命名)
mv file.txt /tmp (移动)
touch创建空文件touch newfile.txt
find查找文件find /home -name "*.txt"

七、文件内容查看与编辑

命令说明示例
cat显示文件内容cat file.txt
less / more分页查看文件less large_file.log
head显示文件开头head -n 10 file.log (前10行)
tail显示文件末尾tail -f log.txt (实时追踪日志)
grep文本搜索grep "error" log.txt (搜索关键词)
vim / nano文本编辑vim file.txt

八、系统信息与管理

命令说明示例
top / htop查看进程/资源占用top (实时监控)
ps查看进程`ps auxgrep nginx`
kill终止进程kill -9 1234 (强制终止PID 1234)
df磁盘空间df -h (人类可读格式)
du目录大小du -sh /home (统计总大小)
free内存使用free -m (以MB显示)
uname系统信息uname -a (内核版本等)

九、压缩与解压

命令说明示例
tar打包/解包tar -czvf archive.tar.gz dir/ (压缩)
tar -xzvf archive.tar.gz (解压)
zip / unzipZIP压缩zip archive.zip file1 file2
gzip / gunzipGZ压缩gzip file.txt

十、进程

ps - 查看当前进程快照
ps aux       # 查看所有运行中的进程(BSD风格)
ps -ef       # 查看所有进程(标准UNIX风格)
ps -u user   # 查看特定用户的进程
ps -p PID    # 查看指定PID的进程
ps -eo pid,comm,%cpu,%mem --sort=-%cpu | head  # 按CPU使用率排序
top / htop - 动态查看进程
top          # 实时监控进程(按CPU排序,q退出)
htop         # 增强版top(需安装,支持交互式操作)
pstree - 以树状显示进程
pstree -p    # 显示进程树(包含PID)
kill - 通过信号控制进程
kill -9 PID      # 强制终止进程(SIGKILL信号)
kill -15 PID     # 优雅终止进程(SIGTERM信号,默认)
killall nginx    # 终止所有名为"nginx"的进程
pkill -f "python script.py"  # 根据名称匹配终止进程
xkill - 图形界面强制关闭窗口(X11环境)
xkill          # 点击崩溃的窗口强制关闭
后台进程管理
& / jobs / fg / bg
command &     # 后台运行命令
jobs          # 查看当前会话的后台任务
fg %1        # 将任务1调到前台
bg %1        # 继续在后台运行任务1
nohup - 退出终端后仍运行
nohup command &  # 忽略SIGHUP信号,日志默认写入nohup.out
pgrep - 根据名称查找PID
pgrep -l nginx  # 查找名为"nginx"的进程及PID
常用组合示例
  1. 查找并终止进程

    ps aux | grep nginx    # 查找nginx进程
    kill -9 $(pgrep nginx) # 强制终止所有nginx进程
  2. 监控高CPU进程

    top -o %CPU          # 按CPU使用率排序
  3. 后台运行并保存输出

    nohup ./script.sh > output.log 2>&1 &

十一、其他实用命令

命令说明示例
history查看命令历史`historygrep "apt"`
alias设置别名alias ll='ls -alh'
crontab定时任务crontab -e (编辑计划任务)
ln创建链接ln -s /path/file link_name (软链接)

 

十二、总结:如何快速适应不同发行版?

  1. 记住核心差异

    • 包管理:apt(Debian) vs yum/dnf(Red Hat) vs pacman(Arch)

    • 服务管理:systemctl(主流) vs service(旧版)

  2. 查询工具所属包

    # Debian/Ubuntu
    dpkg -S $(which <命令名>)
    # Red Hat/CentOS
    rpm -qf $(which <命令名>)
  3. 通用命令优先

    • 文件操作(ls/cp/mv)、文本处理(grep/sed/awk)等命令在所有发行版中完全一致。

  4. 使用 man 文档

    man <命令名>  # 查看具体用法
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

byxdaz

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

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

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

打赏作者

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

抵扣说明:

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

余额充值