📄 Linux 常用命令参考手册

涵盖文件操作、系统管理、网络、用户权限、防火墙等,标注 Debian / CentOS 适用范围

适用说明: 两者通用 表示该命令在 Debian(Ubuntu)和 CentOS(RHEL/Rocky)均适用; 仅 Debian 表示仅适用于 Debian/Ubuntu 系; 仅 CentOS 表示仅适用于 CentOS/RHEL/Rocky 系。 防火墙部分:CentOS 7+ 默认使用 firewalld,Debian/Ubuntu 常用 ufw,也可使用 iptables(两者均支持)。
两者通用 Debian + CentOS
仅 Debian Debian / Ubuntu
仅 CentOS CentOS / RHEL / Rocky
文件操作命令
命令说明与示例适用系统
ls
列出目录内容ls -la /var/log
两者通用
cp
复制文件或目录(-r 递归复制目录)cp -r /src /dst
两者通用
mv
移动或重命名文件/目录mv old.txt new.txt
两者通用
rm
删除文件或目录(-rf 强制递归删除,谨慎使用)rm -rf /tmp/testdir
两者通用
cat
查看文件全部内容cat /etc/hostname
两者通用
more / less
分页查看文件内容,less 支持前后翻页less /var/log/syslog
两者通用
head
查看文件前 N 行(默认 10 行)head -20 /etc/passwd
两者通用
tail
查看文件末尾 N 行;-f 实时跟踪日志tail -f /var/log/nginx/access.log
两者通用
touch
创建空文件或更新文件时间戳touch newfile.txt
两者通用
ln
创建链接(-s 软链接)ln -s /etc/nginx /home/nginx_cfg
两者通用
find
按条件查找文件find /var -name "*.log" -mtime +7
两者通用
file
查看文件类型file /bin/bash
两者通用
stat
查看文件详细属性(大小、权限、时间等)stat /etc/passwd
两者通用
wc
统计文件行数、字数、字节数wc -l /etc/passwd
两者通用
diff
比较两个文件差异diff file1.txt file2.txt
两者通用
tar
打包/解压(czf 压缩,xzf 解压)tar czf backup.tar.gz /data  |  tar xzf backup.tar.gz
两者通用
zip / unzip
压缩/解压 zip 文件zip -r out.zip dir/  |  unzip out.zip
两者通用
gzip / gunzip
gzip 压缩/解压(压缩单个文件,不打包目录)gzip file.log  |  gzip -d file.gz
两者通用
bzip2 / bzcat
bzip2 压缩/查看(比 gzip 压缩率更高)bzip2 largefile  |  bzcat largefile.bz2 | head
两者通用
echo
输出文本或写入文件(> 覆盖写,>> 追加写)echo "hello" > test.txt  |  echo $PATH
两者通用
which / whereis
查找命令的可执行文件路径which python3  |  whereis nginx
两者通用
dd
底层磁盘复制/镜像(制作 ISO、备份分区)dd if=/dev/sda of=backup.img bs=4M status=progress
两者通用
md5sum / sha256sum
计算文件的校验和(验证下载文件完整性)sha256sum download.iso
两者通用
base64
Base64 编码/解码echo "text" | base64  |  echo "dGV4dA==" | base64 -d
两者通用
chattr / lsattr
设置/查看文件特殊属性(+i 不可修改,+a 只可追加)sudo chattr +i /etc/passwd  |  lsattr /etc/passwd
两者通用
rename
批量重命名文件(Debian 用 perl 版,CentOS 需安装)rename 's/.log/.bak/' *.log
两者通用
nano — 新手友好的终端编辑器
用法:nano 文件名  |  打开/新建并编辑文件
常用快捷键(底部有提示): • Ctrl+O → 保存文件(按 Enter 确认文件名)
• Ctrl+X → 退出编辑器(未保存会先提示保存)
• Ctrl+W → 搜索文字
• Ctrl+K → 剪切当前行
• Ctrl+U → 粘贴剪切的行
• Ctrl+\ → 全部替换(搜索→输入旧内容→输入新内容)
• Ctrl+_ → 跳转到指定行号
nano /etc/nginx/nginx.conf    # 编辑 nginx 配置,Ctrl+O 保存,Ctrl+X 退出
两者通用
vim / vi — 强大的模式化编辑器
用法:vim 文件名  |  vi 是 vim 的兼容版(功能较少),推荐直接用 vim
⚠️ vim 有多种模式!刚打开是【普通模式】,需要按 i 或 a 才能进入【插入模式】开始打字。 基本流程:vim 文件 → 按 i 进入插入模式 → 编辑内容 → 按 Esc 回到普通模式 → 输入 :wq 保存退出 普通模式(默认)常用命令:i 在光标前进入插入模式 | A 在行尾进入插入模式 | o 在下方新建一行并进入插入
dd 删除当前行 | yy 复制当前行 | p 粘贴到下方 | P 粘贴到上方
u 撤销 | Ctrl+r 重做
/关键词 向下搜索 | ?关键词 向上搜索 | n 下一个匹配 | N 上一个匹配
G 跳到文件末尾 | gg 跳到文件开头 | 42G 跳到第 42 行
底线命令模式(按 Esc 后输入 : 开头)::w 保存 | :q 退出 | :wq 保存并退出(等价于 :x
:q! 强制放弃修改退出 | :w! 强制写入(只读文件需 sudo)
:set number 显示行号 | :set nonumber 隐藏行号
:syntax on 开启语法高亮
vim /etc/ssh/sshd_config    # 编辑 SSH 配置:i 编辑 → Esc → :wq 保存退出
两者通用
目录与磁盘命令
命令说明与示例适用系统
pwd
显示当前工作目录路径pwd
两者通用
cd
切换目录(cd ~ 回到家目录,cd - 返回上一目录)cd /var/log
两者通用
mkdir
创建目录(-p 递归创建多级目录)mkdir -p /opt/app/config
两者通用
rmdir
删除空目录rmdir /tmp/emptydir
两者通用
df
查看磁盘分区使用情况(-h 人性化显示)df -h
两者通用
du
查看目录或文件占用磁盘大小du -sh /var/log/*
两者通用
lsblk
列出所有块设备(磁盘/分区树状结构)lsblk
两者通用
fdisk
磁盘分区管理(-l 查看分区表)fdisk -l
两者通用
mount / umount
挂载/卸载文件系统mount /dev/sdb1 /mnt/data
两者通用
blkid
查看块设备 UUID 和文件系统类型blkid /dev/sda1
两者通用
parted
高级分区管理工具(支持 GPT 大于 2TB 磁盘)parted /dev/sdb print
两者通用
fsck / e2fsck
文件系统检查修复(e2fsck 专用于 ext2/3/4)sudo e2fsck -y /dev/sda1
两者通用
lsof
列出被进程打开的文件(排查端口占用)lsof -i :80  |  lsof /var/log/syslog
两者通用
fuser
查找使用指定文件或端口的进程fuser -k 80/tcp  |  fuser -m /mnt/data
两者通用
系统版本查询(区分发行版)
命令说明与示例适用系统
cat /etc/os-release
查看操作系统详细信息(名称、版本号、代号)cat /etc/os-release
两者通用
cat /etc/redhat-release
查看 CentOS/RHEL 具体版本号cat /etc/redhat-release    # 输出如: CentOS Linux release 7.9.2009
仅 CentOS
cat /etc/debian_version
查看 Debian 版本号cat /etc/debian_version
仅 Debian
lsb_release -a
查看 Ubuntu/Debian 详细 LSB 信息(需安装 lsb-release)lsb_release -a
仅 Debian
hostname
显示当前主机名(不修改)hostname
两者通用
硬件信息查询
命令说明与示例适用系统
lscpu
查看 CPU 详细信息(型号、核心数、架构等)lscpu
两者通用
free
查看内存使用情况(-h 人性化显示)free -h
两者通用
lsusb
列出所有 USB 设备lsusb
两者通用
lspci
列出所有 PCI 设备(网卡、显卡等)lspci | grep -i ethernet
两者通用
dmidecode
详细硬件信息(BIOS/主板/内存/序列号,需 root)sudo dmidecode -t system
两者通用
系统与进程命令
命令说明与示例适用系统
top
实时查看系统资源和进程(按 q 退出)top
两者通用
htop
更友好的交互式进程查看器(需安装)htop
两者通用
ps
查看进程列表ps aux | grep nginx
两者通用
kill / killall
终止进程(kill 按 PID,killall 按名称)kill -9 1234  |  killall nginx
两者通用
free
查看内存使用情况(-h 人性化显示)free -h
两者通用
uptime
查看系统运行时间与负载uptime
两者通用
uname
查看系统内核信息(-a 全部信息)uname -a
两者通用
hostnamectl
查看/设置主机名和系统信息hostnamectl set-hostname myserver
两者通用
date
查看/设置系统时间date "+%Y-%m-%d %H:%M:%S"
两者通用
timedatectl
管理时区和 NTP 同步timedatectl set-timezone Asia/Shanghai
两者通用
reboot / shutdown
重启或关机reboot  |  shutdown -h now
两者通用
env / export
查看/设置环境变量export PATH=$PATH:/usr/local/bin
两者通用
crontab
管理定时任务(-e 编辑,-l 查看,-r 删除)crontab -e
两者通用
dmesg
查看内核环形缓冲区日志(硬件/启动错误)dmesg | tail -30
两者通用
history
查看命令历史记录(!N 重新执行第 N 条)history | grep ssh  |  !123
两者通用
last / lastb
查看登录成功/失败历史(lastb 仅失败记录)last -10  |  lastb -20
两者通用
w / who
查看当前登录用户及运行中的进程(w 更详细)w  |  who
两者通用
pgrep / pkill
按名称模式查找/终止进程(比 killall 更灵活)pgrep -u nginx nginx  |  pkill -9 -f "python.*script"
两者通用
nohup
让命令在退出终端后继续后台运行nohup ./long_task.sh > output.log 2>&1 &
两者通用
jobs / bg / fg
管理后台任务(Ctrl+Z 暂停,bg 后台继续,fg 调回前台)jobs  |  bg %1  |  fg %2
两者通用
nice / renice
调整进程优先级(-20 最高,19 最低,默认 0)nice -n 10 ./heavy.sh  |  renice +5 -p 1234
两者通用
watch
周期性执行命令并刷新显示(默认每 2 秒)watch -n 1 'df -h'    # 每秒刷新磁盘使用情况
两者通用
time
测量命令执行耗时time tar czf backup.tar.gz /data/
两者通用
clear
清空当前终端屏幕clear
两者通用
man / info / whatis
查看命令手册页(man 最常用,whatis 简要描述)man grep  |  whatis ls  |  apropos "list directory"
两者通用
alias / unalias
创建/删除命令别名(临时生效,写入 ~/.bashrc 持久化)alias ll='ls -la'  |  unalias ll
两者通用
网络命令
命令说明与示例适用系统
ip addr / ip a
查看网卡 IP 地址(推荐,替代 ifconfig)ip addr show eth0
两者通用
ifconfig
查看/配置网络接口(旧版,需安装 net-tools)ifconfig eth0
两者通用
ip route
查看路由表ip route show
两者通用
ping
测试网络连通性ping -c 4 8.8.8.8
两者通用
traceroute
追踪数据包路由路径traceroute baidu.com
两者通用
netstat
查看网络连接/监听端口(旧版,需 net-tools)netstat -tunlp
两者通用
ss
查看 Socket 连接(推荐,替代 netstat)ss -tunlp | grep 80
两者通用
curl
发送 HTTP 请求、下载文件curl -I https://example.com  |  curl -O url
两者通用
wget
下载文件(支持断点续传)wget -c https://example.com/file.tar.gz
两者通用
nslookup / dig
DNS 查询nslookup baidu.com  |  dig baidu.com
两者通用
scp
基于 SSH 的远程文件传输scp file.txt user@192.168.1.10:/tmp/
两者通用
rsync
增量同步文件(本地或远程)rsync -avz /src/ user@host:/dst/
两者通用
tcpdump
网络抓包工具(分析网络流量,需 root)sudo tcpdump -i eth0 port 80 -n
两者通用
telnet
测试端口连通性(简单替代 nc)telnet 192.168.1.1 80
两者通用
mtr
网络诊断(结合 ping + traceroute,实时显示路径质量)mtr -r baidu.com
两者通用
host
DNS 域名查询(比 nslookup 更直观)host -a example.com
两者通用
ip link
查看/管理网络接口状态(启停网卡)ip link show  |  sudo ip link set eth0 down/up
两者通用
nmcli
NetworkManager 命令行工具(配置 IP/DNS/WiFi)nmcli device status  |  nmcli connection show
两者通用
nmtui
NetworkManager 文本用户界面(TUI 图形化配置网络,适合新手)nmtui    # 打开图形化终端菜单,可配置连接、激活/停用、修改主机名
提示:打开后用方向键选择,Enter 确认,Tab 切换按钮,q 或 Esc 退出。无需记命令语法。
两者通用
route
旧版路由表操作(已被 ip route 替代)route -n
两者通用
ethtool
查看和配置以太网接口参数(速率、双工模式)sudo ethtool eth0
两者通用
用户与权限命令
命令说明与示例适用系统
whoami
显示当前登录用户名whoami
两者通用
id
显示用户 UID、GID 和所属组id username
两者通用
useradd
创建新用户useradd -m -s /bin/bash newuser
两者通用
adduser
交互式创建用户(Debian 更友好)adduser newuser
仅 Debian
userdel
删除用户(-r 同时删除家目录)userdel -r olduser
两者通用
passwd
修改用户密码passwd username
两者通用
groupadd / groupdel
创建/删除用户组groupadd devteam
两者通用
usermod
修改用户属性(-aG 追加组)usermod -aG sudo username
两者通用
su
切换用户(su - 切换并加载环境)su - root
两者通用
sudo
以管理员权限执行命令sudo systemctl restart nginx
两者通用
chmod
修改文件权限(数字或符号模式)chmod 755 script.sh  |  chmod +x run.sh
两者通用
chown
修改文件所有者和所属组chown www-data:www-data /var/www/html
两者通用
visudo
安全编辑 sudoers 文件(授予 sudo 权限)visudo
两者通用
last / lastb
查看用户登录成功/失败记录last -5  |  lastb
两者通用
groups
查看当前/指定用户所属的所有组groups  |  groups username
两者通用
finger
显示用户详细信息(需安装 finger 包)finger username
两者通用
passwd 锁定/解锁
锁定(-l)或解锁(-u)用户账号sudo passwd -l username    # 锁定账号禁止登录
两者通用
chpasswd
批量修改用户密码(从 stdin 读取)echo 'user:newpass' | chpasswd
两者通用
软件包管理命令
Debian / Ubuntu 系 (apt)
命令说明与示例适用系统
apt update
更新软件包索引(必须先执行)apt update
仅 Debian
apt upgrade
升级所有可更新软件包apt upgrade -y
仅 Debian
apt install
安装软件包apt install -y nginx
仅 Debian
apt remove / purge
卸载软件包(purge 同时删除配置文件)apt purge nginx
仅 Debian
apt autoremove
自动删除不再需要的依赖包apt autoremove
仅 Debian
apt search
搜索软件包apt search python3
仅 Debian
dpkg -l
列出已安装的 deb 包dpkg -l | grep nginx
仅 Debian
CentOS / RHEL / Rocky 系 (yum / dnf)
命令说明与示例适用系统
yum install
安装软件包(CentOS 7 及以下使用 yum)yum install -y nginx
仅 CentOS
dnf install
安装软件包(CentOS 8+ / Rocky 推荐使用)dnf install -y nginx
仅 CentOS
yum update / dnf update
更新所有软件包yum update -y
仅 CentOS
yum remove / dnf remove
卸载软件包yum remove nginx
仅 CentOS
yum search / dnf search
搜索软件包yum search python3
仅 CentOS
rpm -qa
列出所有已安装的 RPM 包rpm -qa | grep nginx
仅 CentOS
防火墙操作命令
ufw — Debian / Ubuntu 系推荐防火墙
命令说明与示例适用系统
ufw status
查看防火墙状态及规则列表ufw status verbose
仅 Debian
ufw enable
启动(开启)防火墙ufw enable
仅 Debian
ufw disable
停止(关闭)防火墙ufw disable
仅 Debian
ufw reload
重载防火墙规则(不中断连接)ufw reload
仅 Debian
ufw reset
重置防火墙为默认状态(清空所有规则)ufw reset
仅 Debian
ufw allow
允许端口/服务ufw allow 22/tcp  |  ufw allow 80  |  ufw allow 'Nginx Full'
仅 Debian
ufw deny
拒绝端口访问ufw deny 3306
仅 Debian
ufw delete
删除规则ufw delete allow 80  |  ufw delete 3
仅 Debian
ufw allow from
仅允许指定 IP 访问特定端口ufw allow from 192.168.1.0/24 to any port 22
仅 Debian
firewalld — CentOS 7+ / Rocky 推荐防火墙 - 文件路径 /etc/firewalld/zones/public.xml
命令说明与示例适用系统
systemctl status firewalld
查看 firewalld 服务状态systemctl status firewalld
仅 CentOS
systemctl start firewalld
启动防火墙服务systemctl start firewalld
仅 CentOS
systemctl stop firewalld
停止防火墙服务systemctl stop firewalld
仅 CentOS
systemctl restart firewalld
重启防火墙服务systemctl restart firewalld
仅 CentOS
systemctl enable firewalld
设置防火墙开机自启动systemctl enable firewalld
仅 CentOS
systemctl disable firewalld
取消防火墙开机自启动systemctl disable firewalld
仅 CentOS
firewall-cmd --state
查看 firewalld 运行状态firewall-cmd --state
仅 CentOS
firewall-cmd --list-all
列出当前区域的所有规则firewall-cmd --list-all
仅 CentOS
firewall-cmd --add-port
开放端口(--permanent 永久生效)firewall-cmd --permanent --add-port=80/tcp && firewall-cmd --reload
仅 CentOS
firewall-cmd --remove-port
关闭端口firewall-cmd --permanent --remove-port=80/tcp && firewall-cmd --reload
仅 CentOS
firewall-cmd --add-service
按服务名开放(如 http、https、ssh)firewall-cmd --permanent --add-service=http
仅 CentOS
firewall-cmd --reload
重载防火墙规则(使 permanent 规则生效)firewall-cmd --reload
仅 CentOS
iptables — 两者均可使用的底层防火墙 - 文件路径 /etc/sysconfig/iptables
命令说明与示例适用系统
iptables -L
查看当前防火墙规则列表iptables -L -n -v
两者通用
iptables -A INPUT
添加入站规则(允许端口)iptables -A INPUT -p tcp --dport 80 -j ACCEPT
两者通用
iptables -D INPUT
删除入站规则iptables -D INPUT -p tcp --dport 80 -j ACCEPT
两者通用
iptables -F
清空所有规则(谨慎!可能断开 SSH 连接)iptables -F
两者通用
iptables-save
保存当前规则到文件(重启后生效)iptables-save > /etc/iptables/rules.v4
两者通用
服务管理命令 (systemctl)
命令说明与示例适用系统
systemctl status
查看服务状态systemctl status nginx
两者通用
systemctl start
启动服务systemctl start nginx
两者通用
systemctl stop
停止服务systemctl stop nginx
两者通用
systemctl restart
重启服务(会中断连接)systemctl restart nginx
两者通用
systemctl reload
重载配置(不中断服务,推荐)systemctl reload nginx
两者通用
systemctl enable
设置开机自启动systemctl enable nginx
两者通用
systemctl disable
取消开机自启动systemctl disable nginx
两者通用
systemctl is-enabled
查看是否设置开机自启systemctl is-enabled nginx
两者通用
systemctl list-units
列出所有已加载的服务单元systemctl list-units --type=service
两者通用
systemctl daemon-reload
重新加载 systemd 配置(修改 unit 文件后执行)systemctl daemon-reload
两者通用
service
旧版服务管理(兼容 SysVinit)service nginx restart
两者通用
日志查看与文本处理
命令说明与示例适用系统
journalctl
查看 systemd 日志(-u 指定服务,-f 实时跟踪)journalctl -u nginx -f  |  journalctl --since "1 hour ago"
两者通用
grep
文本搜索(-i 忽略大小写,-r 递归,-n 显示行号)grep -rn "error" /var/log/nginx/
两者通用
awk
文本处理/列提取利器awk '{print $1, $7}' access.log
两者通用
sed
流编辑器(替换/删除文本行)sed -i 's/old/new/g' config.txt
两者通用
sort
排序文本行(-r 倒序,-n 数字排序)sort -rn access.log | head -20
两者通用
uniq
去重(通常与 sort 配合,-c 统计次数)sort file.txt | uniq -c | sort -rn
两者通用
cut
按分隔符截取列cut -d: -f1 /etc/passwd
两者通用
xargs
将管道输出作为参数传递给其他命令find . -name "*.log" | xargs rm -f
两者通用
tee
同时输出到屏幕和文件ping 8.8.8.8 | tee ping.log
两者通用
logrotate
日志文件轮转管理(配合 cron 使用)logrotate -f /etc/logrotate.conf
两者通用
tr
字符替换/删除/压缩(常配合管道使用)echo "HELLO" | tr 'A-Z' 'a-z'  |  tr -d '0-9'
两者通用
strings
从二进制文件中提取可打印字符串strings /usr/bin/ls | head -20
两者通用
tac / rev / nl
tac 反向显示文件;rev 反转每行;nl 加行号tac file.log  |  rev file.txt  |  nl -ba config.conf
两者通用
join / paste
join 按公共字段合并两个文件;paste 并行拼接行join file1.txt file2.txt  |  paste a.txt b.txt
两者通用
远程连接 & SSH 命令
命令说明与示例适用系统
ssh
远程登录服务器(默认端口 22)ssh user@192.168.1.10  |  ssh -p 2222 root@host
两者通用
ssh-keygen
生成 SSH 密钥对(免密码登录的基础)ssh-keygen -t rsa -b 4096 -C "mykey"
两者通用
ssh-copy-id
将公钥复制到远程服务器(配置免密登录)ssh-copy-id user@192.168.1.10
两者通用
sftp
基于 SSH 的安全文件传输交互式工具sftp user@192.168.1.10
两者通用
ssh-agent / ssh-add
SSH 密钥管理器(缓存私钥,避免重复输入密码短语)eval $(ssh-agent) && ssh-add ~/.ssh/id_rsa
两者通用
SSH 服务端管理与排错
命令说明与示例适用系统
systemctl status sshd
查看 SSH 服务状态systemctl status sshd (CentOS)  |  systemctl status ssh (Debian)
两者通用
systemctl restart sshd
重启 SSH 服务(修改配置后执行)sudo systemctl restart sshd
两者通用
查看 SSH 日志
排查登录失败、暴力破解等问题tail -f /var/log/auth.log (Debian)  |  tail -f /var/log/secure (CentOS)
两者通用
cat ~/.ssh/known_hosts
查看已信任的远程主机指纹列表cat ~/.ssh/known_hosts
两者通用
ssh-keyscan
获取远程服务器的公钥(用于批量添加 known_hosts)ssh-keyscan -H 192.168.1.10 >> ~/.ssh/known_hosts
两者通用
ssh -v
调试模式连接(输出详细连接过程,用于排错)ssh -v user@host
两者通用
终端会话复用(screen / tmux)— 长任务不断开
命令说明与示例适用系统
screen — 终端会话复用器
用法:  screen -S 会话名 → 在新会话中运行命令 → Ctrl+A 然后按 D 脱离(任务继续后台运行)→ screen -r 会话名 恢复
screen -S mytask — 创建并命名新会话
Ctrl+A, D — 脱离会话(detach,不关闭)
screen -r mytask — 重新连接到已脱离的会话
screen -ls — 列出所有会话
Ctrl+A, C — 在当前 session 中新建窗口
Ctrl+A, [0-9] — 切换到第 N 个窗口
-X -S name quit — 强制结束指定会话 screen -S backup && tar czf ... # 执行长时间备份后 Ctrl+A+D 安全退出,任务不会中断
两者通用
tmux — 更强大的终端多路复用器
用法:  tmux new -s 会话名 → 运行任务 → Ctrl+B 然后按 D 脱离 → tmux attach -t 会话名恢复
tmux new -s work — 创建新会话
Ctrl+B, D — 脱离会话(前缀键是 Ctrl+B)
tmux attach -t worktmux a -t work — 重连会话
tmux ls — 列出所有会话
Ctrl+B, % — 左右分屏 | Ctrl+B, " — 上下分屏
Ctrl+B, 方向键 — 切换面板 | Ctrl+B, c — 新建窗口
Ctrl+B, [ — 进入复制模式(可滚动/搜索/复制) tmux new -s deploy && npm run build # 部署时网络断了?tmux attach -t deploy 一秒恢复
两者通用
Docker 常用命令
镜像操作 (Image)
命令说明与示例适用系统
docker pull
从仓库拉取镜像docker pull nginx:latest  |  docker pull mysql:8.0
两者通用
docker images
列出本地所有镜像docker images  |  docker images --format "{{.Repository}}:{{.Tag}} {{.Size}}"
两者通用
docker rmi
删除本地镜像(-f 强制删除)docker rmi nginx:latest  |  docker rmi -f $(docker images -q)
两者通用
docker build
从 Dockerfile 构建镜像docker build -t myapp:v1 .  |  docker build --no-cache -t app:v2 ./docker/
两者通用
docker tag / push
给镜像打标签 / 推送到仓库docker tag myapp:v1 registry.cn/myapp:v1 && docker push registry.cn/myapp:v1
两者通用
docker save / load
导出/导入镜像为 tar 文件(离线迁移)docker save -o img.tar nginx:latest && docker load -i img.tar
两者通用
容器操作 (Container)
命令说明与示例适用系统
docker run
创建并启动容器(核心命令,参数丰富)docker run -d --name web -p 8080:80 -v /data:/usr/share/nginx/html nginx
两者通用
docker ps
列出容器(-a 含已停止的)docker ps -a --format "table {{.Names}}\t{{.Status}}\t{{.Ports}}"
两者通用
docker start / stop
启动 / 停止容器(可接多个容器名)docker stop web db && docker start web db
两者通用
docker restart
重启容器docker restart web
两者通用
docker rm
删除已停止的容器(-f 强制运行中的也可删)docker rm web  |  docker rm -f $(docker ps -aq)
两者通用
docker exec
进入正在运行的容器内部执行命令docker exec -it web /bin/bash  |  docker exec -it mysql mysql -uroot -p
两者通用
docker logs
查看容器日志(-f 实时跟踪,--tail 末尾行数)docker logs -f --tail 100 web
两者通用
docker inspect
查看容器/镜像详细 JSON 信息(IP、挂载、环境变量等)docker inspect web --format '{{.NetworkSettings.IPAddress}}'
两者通用
docker cp
在宿主机和容器之间复制文件docker cp host.txt web:/tmp/  |  docker cp web:/etc/nginx/nginx.conf ./nginx.conf
两者通用
docker stats
实时显示容器资源使用情况(CPU/内存/网络)docker stats --no-stream
两者通用
docker top
查看容器内运行的进程docker top web
两者通用
docker commit
将容器的当前状态保存为新镜像docker commit -m "added config" web myapp:v2
两者通用
清理与维护
命令说明与示例适用系统
docker system prune
清理未使用的资源(停止的容器、无用网络、悬空镜像)(-a 清理全部未使用)docker system prune -af --volumes
两者通用
docker volume 操作
数据卷管理:创建、列出、删除、查看详情docker volume create data && docker volume ls  |  docker volume prune
两者通用
docker network
网络管理:创建、列出、检查网络docker network create mynet && docker network ls  |  docker network inspect bridge
两者通用
Docker Compose 编排
命令说明与示例适用系统
docker compose up
启动编排的所有服务(-d 后台运行)docker compose up -d
两者通用
docker compose down
停止并移除编排的服务及网络(-v 同时移除卷)docker compose down -v
两者通用
docker compose ps / logs
查看各服务状态 / 查看所有服务的日志docker compose ps  |  docker compose logs -f web
两者通用
docker compose restart / exec
重启指定服务 / 进入服务容器内执行命令docker compose restart web  |  docker compose exec db bash
两者通用
docker compose build
重新构建服务的镜像(--no-cache 无缓存构建)docker compose build --no-cache web
两者通用
其他说明
功能说明与示例适用系统
linux常用分区
1、/biosboot 2M(BIOS 2M,UEFI 500M-1G) 2、/boot 1G 3、/swap 16G (看内存大小,16G或32G) 4、/ 剩余全部硬盘(LVM)
两者通用
磁盘测速
写入 sync; dd if=/dev/zero of=/tmp/testfile bs=1G count=1 oflag=direct
读取 sync; dd if=/tmp/testfile of=/dev/null bs=1G iflag=direct
测试完记得删掉测试文件:rm -f /tmp/testfile
两者通用
Linux 常用命令参考手册  ·  涵盖 Debian / Ubuntu 和 CentOS / RHEL / Rocky 两大发行版体系
闽ICP备2025118274号 闽公网安备35021202000842号