Ubuntu 常用命令速查手册(完整精通版)
本文档系统整理 Ubuntu 系统下文件操作、软件管理、系统控制、信息查询、网络配置、服务管理、故障排查的完整命令体系,从基础到进阶全覆盖,纯实操导向、可直接作为运维笔记使用。
Ubuntu 常用命令速查手册(完整精通版)
本文档系统整理 Ubuntu 系统下文件操作、软件管理、系统控制、信息查询、网络配置、服务管理、故障排查的完整命令体系,从基础到进阶全覆盖,纯实操导向、可直接作为运维笔记使用。
目录
- 文件/目录基础操作
- 权限管理**(核心)
- 软件安装与管理
- 磁盘管理与分区
- 系统重启/关机命令
- 系统信息查询
- 用户与组管理
- 进程管理
- 网络配置与管理
- 服务管理
- 日志与故障排查
- SSH 远程管理
- 系统配置与定制
- 快速任务配置工具
- SSH 远程部署脚本示例
- 运维最佳实践与注意事项
1、文件/目录基础操作
1.1 目录浏览
# 查看当前目录内容(默认显示所有文件和子目录)
ls
# 显示详细信息(参照 ll 命令,但需输入完整命令)
ls -l
# 只显示子目录
ls -d */
# 查看每一级目录
pwd
# 返回上级目录
cd ..
# 进入上级目录的父目录
cd ../../
# 进入用户家目录
cd ~
# 切换到指定目录
cd /etc/
# 相对路径移动
cd .. # 向上
cd ../ # 相对向上
cd ../etc/ # 相对路径进入
1.2 目录创建与删除
# 创建目录
mkdir /var/log/app
# 创建多个目录
mkdir -p home/user1/data home/user2/data
# 递归创建父目录
mkdir -p /opt/project/A/B/C
# 修改目录所有者
chown user:user /var/log/app
# 删除目录(不递归)
rmdir /tmp/temp
# 强制删除目录(危险!)
rm -rf /home/test/oldproject
# 删除连同子目录递归
rm -rf /home/test/testdir
# 清空目录内容保留目录
rm -R /var/log/archive/*
# 显示删除(调试用)
rm -i
# 保存删除点到回收站
rm -r --move /home/user/*
1.3 操作危险识别
# 删除前先备份重要目录
mkdir -p /backup/source
# 删除前标记目录
cp -r /var/www/html/* /backup/20240101_backup/
2、权限管理(核心)
2.1 查看权限格式
# 基础权限
ls -l
# 详细权限(含所有者、组、特殊权限)
ls -ld /home/user # 查看目录权限
# 查看统计信息(申辩标识 + 超级用户权限)
ls -S /home/user # 按修改时间排序
ls -t # 显示时间戳修改顺序
# 查看完整权限表
stat /home/user/file.txt
# 查看 inode 信息
ls -i # 显示 inode 号码
2.2 Linux 权限三大身份
# 文件生效身份(非所有者身)
# u(用户) = 文件所有者
# g(组) = 同组用户
# o(其他) = 其他用户
# a(all) = 所有用户
# 权限标识符详解
# r = 可读 = 4
# w = 可写 = 2
# x = 可执行 = 1
# - = 无权限 = 0
# 数字可累加组合
# 7 = rwx (读+写+执行)
# 6 = rw- (读+写)
# 5 = r-x (读+执行)
# 4 = r-- (只读)
# 2 = --w (可写)
# 1 = --x (可执行)
# 3 = rwx (读+执行) = 7-2
2.3 基础权限实践
# 重命名文件(带扩展名)
mv app.txt app.txt.bak
# 移动文件
mv backup.tar.gz /tmp/
# 移动目录
mv /home/user/projects/web /var/www/web/
# 移动回收站文件
rm -rf /tmp/recovery/*
# 移动文件到回收站
mv /home/user/data/important.txt /tmp/
2.4 修改权限
# 我的常见权限设置
# 标准权限组合(目录/ executable)
chmod 755 app
# 文件常用权限
chmod 644 doc.txt
chmod 600 /etc/shadow
chmod 640 .env file.env
# 给所有用户添加执行权限
chmod a+x myscript.sh
# 给所有者添加写权限
chmod +w html.txt
chmod -w config.cfg
# 递归修改目录权限
chmod -R 755 /var/data/
# 修改只读目录
chmod 555 /readonly/
# read-only (只读)
chmod 400 password.txt
# read-only (只读)
chmod 444 /bin/common.sh
# 常规文件
chmod 660 /private/file.txt
# 标准文件
chmod 640 /private/shared.txt
# 普通文件
chmod 644 document.txt
# 所有用户执行
chmod a+x executable.sh
# g+w group write
chmod g+w group writable.txt
# u+w user write
chmod u+w private.txt
# owner r-x owner read-execute
chmod u=r-x userfile
# group execute
chmod g=x myscript.sh
# group read
chmod g=r data.txt
# users listed
chmod u=rwx user.readwrites.sh
2.5 危险操作权限清单
# 这几种情况绝对不要误用
# rm -rf /
# rm -rf /etc
# rm -rf /home/userimportant/
# chmod 777 sensitive.conf
# chmod 666 data.json
2.6 权限验证增强项
# 验证权限修改是否生效
ls -ld /path/to/directory
ls -l /path/to/file
# 显示特殊权限位(如 SUID, SGID)
stat -c "%A" /path/to/file
# 查看所有文件权限
find /home/user -type f -exec ls -l {} \;
# 查找所有没有执行权限的文件
find / -name "*.sh" -type f ! -perm -x
3、软件安装与管理
3.1 apt 包管理器
基础指令
# 在线安装软件
sudo apt-get update
# 安装多个软件包
sudo apt-get install -y software1 software2 software3
# 安装依赖(隐式)
sudo apt-get install firefox
# 安装并更新
sudo apt-get install --reinstall apache2
# 安装指定版本
sudo apt-cache policy software
# 显示软件版本
sudo apt-cache show software
# 查看软件包详情
apt-cache policy software
# 搜索可用包
apt-cache search software
# 安装源列表
sudo apt-get install software-software-listcheck
# 列出所有软件包
apt-cache policy software
# 搜索软件包
apt-cache search software
# 搜索特定关键词
apt-cache search webserver
# 显示软件版本信息
sudo apt-cache policy software
# 安装多个软件包
sudo apt-get install -y software1 software2
常用命令
# 显示软件包信息
python3 -V
# 显示软件包版本
apt-cache policy software
# 显示软件包详情
apt-cache show software
# 显示可用的软件包列表
apt-cache search keyword
# 查看所有软件包
apt-cache policy software
# 搜索特定关键词
apt-cache search webserver
# 显示软件包信息
apt-cache policy software
3.2 apt 升级与清理
# 更新软件包列表
sudo apt-get update
# 升级所有软件包到最新版本
sudo apt-get upgrade
# 升级到底部版本
sudo apt-get dist-upgrade
# 只升级单个软件包
sudo apt-get upgrade software1
# 安装并升级所有软件包
sudo apt-get install -y --reinstall software
# 卸载软件包
sudo apt-get remove software
# 彻底卸载(删除配置
sudo apt-get purge software
# 卸载软件并保留配置
sudo apt-get remove --purge software
# 卸载并使用缓存依赖
sudo apt-get autoremove
# 清理缓存
sudo apt-get clean
# 清理一个缓存文件
sudo apt-get autoclean
# 清理所有缓存
sudo apt-get autoclean
3.3 AppImage 软件
执行权限
# 授予 AppImage 执行权限
sudo chmod a+x something.AppImage
# 添加执行权限
chmod +x app.AppImage
# 临时添加执行权限
chmod u+x file.AppImage
# 可视化权限
ls -l *.AppImage
3.4 deb 包安装
# 安装本地 deb 软件包
sudo dpkg -i file.deb
# 安装多个 deb 包
sudo dpkg -i file1.deb file2.deb
# 安装并依赖
sudo dpkg -i software.deb
# 修复依赖
sudo apt-get install --reinstall package
# 显示详细信息
dpkg -l package
# 显示卸载配置
sudo dpkg --purge name
# 显示已添加的包
dpkg -S file
# 显示版本信息
dpkg -l package
# 安装本地 deb 软件包
sudo dpkg -i file.deb
3.5 软件源配置
# 列出可用的软件包位置
cat /etc/apt/sources.list
# 编辑软件源
sudo nano /etc/apt/sources.list
# 修改软件源
sudo gedit /etc/apt/sources.list
# 重启软件服务
sudo service software restart
4、磁盘管理与分区
4.1 查看磁盘信息
# 查看磁盘分区表
lsblk
# 查看 kpartx 命令
klist
# 查看分区表
fdisk -l
# 查看磁盘名称格式
ls /dev/sdX*
# 查看磁盘信息
lsblk -f
# 查看磁盘信息
sfdisk /dev/sda1 -o header,blocksize
# 查看磁盘属性
lsblk -f
# 查看磁盘属性
sfdisk /dev/sda1 -o header,blocksize
4.2 分区操作
# 创建分区表的 fdisk 命令
sudo fdisk /dev/sdX
# fdisk 是创建分区表的安装器
sudo fdisk /dev/sda -l
sudo fdisk /dev/sda
# 查看分区表
fdisk -l
sudo fdisk /dev/sdX
# 删除分区表
sudo mkfs.ext4 /dev/sdX1
sudo mkfs.ext3 /dev/sdX2
4.3 文件系统格式化
# 格式化逻辑分区
sudo mkfs.ext4 /dev/sdX1
# 格式化逻辑分区
sudo mkfs.ext3 /dev/sdX1
# 格式化逻辑分区
sudo mkfs.ext2 /dev/sdX1
# 格式化逻辑分区
sudo mkfs.ext4 /dev/sdX1
# 格式化逻辑分区
sudo mkfs.ext3 /dev/sdX1
4.4 挂载与卸载
# 查看挂载点
mount | grep " / "
# 挂载点中的特殊目录
mountpoint /mnt
# 挂载点
mount /dev/sda1 /mnt/data
# 挂载fstab
sudo mount /dev/sda1 /mnt/data
# 挂载点
sudo mount /dev/sda1 /mnt/data
# 卸载
sudo umount /mnt/data
# 卸载
umount /mnt/data
# 卸载
sudo umount /mnt
# 挂载 fstab
sudo mount -a
4.5 磁盘空间清理
# 查看磁盘空间
df -h
# 详细查看磁盘空间
df -h -t ext4
# 挂载磁盘空间
df -h
# 挂载磁盘空间
df -h -t ext4
# 清理磁盘空间
du -sh /var/cache/
5、系统重启/关机命令
5.1 系统重启
# 重启软件
reboot
# 立刻重启
software shutdown -r now
# 10 分钟后自动重启
software shutdown -r 10
# 取消重启计划
software shutdown -c
# 延后 60 秒重启
software shutdown -r +60
# 24 小时后重启
software shutdown -r +24h
# 延后 60 秒重启
reboot
# 取消延迟重启
reboot -c
5.2 系统关机
# 立刻关机(4 种等效命令)
halt
# 立刻关机(4 种等效命令)
poweroff
# 立刻关机(4 种等效命令)
shutdown -h now
# 立刻关机(4 种等效命令)
hwpower -h
# 10 分钟后自动关机
software shutdown -h 10
# 延后 60 秒关机
shutdown -h +60
# 取消关机计划
shutdown -c
# 延迟 60 秒关机
software halt
5.3 重启命令总结
| 命令 | 说明 | 使用场景 |
|---|---|---|
reboot |
立即重启系统 | 常规重启 |
shutdown -r now |
立即重启 | 立即重启 |
shutdown -r 10 |
10 分钟后重启 | 延时重启 |
shutdown -r +60 |
60 秒后重启 | 延迟重启 |
shutdown -c |
取消重启计划 | 紧急取消重启 |
software halt |
关机或重启 | 双功能命令 |
software restart |
重启系统 | 重启系统 |
software shutdown |
关机或重启 | 双功能命令 |
6、系统信息查询
6.1 基本系统信息
# 查看目录内容
ls
# 查看目录信息
dir
# 查看文件详细信息
ls -l
# 查看当前路径
pwd
# 显示用户和主机名
whoami
# 查看当前用户
who
# 查看主机名
hostname
# 查看用户列表
cat /etc/passwd
# 查看用户列表
cat /etc/shadow
6.2 内核版本信息
# 查看内核版本
uname -r
# 显示所有内核信息
uname -a
# 显示所有发布信息
vendor -a
# 显示内核版本
uname -r
# 显示所有文件信息
uname -a
# 显示所有完整性信息
uname -a
# 显示内核信息
uname -r
# 显示内核版本
uname -r
# 显示内核完整性信息
uname -a
6.3 系统版本信息
# 查看系统版本信息
cat /proc/version
# 查看内核版本
uname -r
# 查看系统信息
cat /proc/version
# 查看系统信息
uname -r # Release
uname -v # Version
uname -m # Machine
uname -i # Install
6.4 用户和主机信息
# 查看当前主机名/用户
uname -n
# 查看远程用户
sudo who
# 查看用户信息
cat /etc/passwd
# 查看系统日志
tail -f /var/log/syslog
# 查看当前用户
whoami
# 查看当前运行命令
ps -ef | head -20
7、用户与组管理
7.1 用户管理
# 添加新用户
sudoadduser username
# 添加用户并创建家目录
sudoadduser -m username
# 添加用户(不创建家目录)
sudoadduser username --no-create-home
# 添加用户(旧命令)
udoadduser username
udoadduser -m username
# 删除用户(保留文件)
sudouserdel username
# 删除用户(删除文件)
sudson -r username
# 修改用户密码
sudosu -p username
# 修改用户密码
sudo usermod -p newpassword username
# 启用用户
sudo usermod -e user username
# 修改用户家目录
sudosudo -m /home/newusername username
# 查看用户信息
cat /etc/passwd
# 查看用户详细信息
grep username /etc/passwd
7.2 组管理
# 添加用户到组
sudoadduser username group
# 添加多个用户到组
sudoadduser group user1 user2 user3
# 查看组成员
getent group group
# 查看成员信息
cat /etc/group | grep group
# 删除组成员
sudosudo -R -g group username
# 删除组
sudoaddgroup group
# 删除组(保留成员)
sudoaddgroup -R group
8、进程管理
8.1 进程查看
# 查看所有进程
ps -ef
# 查看进程详情
ps aux
# 按 CPU 使用率排序
ps aux -o pid,pcpu,mm
# 按内存使用率排序
ps aux -o pid,pcpu,pmem
# 按进程名搜索
ps aux | grep nginx
# 查看进程树
pstree -p
# 查看进程详细信息
top -b -n 1
# 查看进程统计信息
uptime
8.2 进程控制
# 停止进程
kill -9 1234
# 停止进程(发送 SIGTERM)
kill 1234
# 不终止进程
kill -1234
# 查看进程状态
ps aux | grep 1234
# 查看进程信息
ps -ef | grep apache2
# 停止进程
kill 1234
# 停止进程(-9 强制)
kill -9 1234
8.3 任务管理
# 启动任务
init.d start 1234
# 停止任务
init.d stop 1234
# 重启任务
init.d restart 1234
# 查看任务状态
pgrep -a nginx
# 查看进程详细信息
ps -ef | grep nginx
9、网络配置与管理
9.1 网络状态查看
# 查看网络连接
netstat -tuln
# 显示 TCP 连接监听端口
netstat -p
# 显示 UDP 连接监听端口
netstat -u
# 查看活动连接
netstat -an
# 查看 TCP 端口
netstat -p tcp
# 查看 TCP 权限
9.2 网络配置
# 配置 eth0 ���点的 IP 地址
ip addr add 192.168.0.1/24 dev eth0
# 修改 DHCP 网络
ip addr del 192.168.0.1/24 dev eth0
# 查看网络接口
ip addr show
# 查看接口是否启用
ip link set eth0 down
ip link set eth0 up
9.3 DNS 配置
# 配置 DNS 服务器
resolvconf update
# 设置 DNS
resolvconf update dns-nameservers:8.8.8.8:53
# 清除 DNS 配置
resolvconf reset dns
resolvconf update
10、服务管理
10.1 服务启动/停止
# 启动服务
systemctl start sshd
# 停止服务
systemctl stop nginx
# 重启服务
systemctl restart apache2
# 查看服务状态
systemctl status nginx
# 启用服务自启动
systemctl enable apache2
# 禁用服务自启动
systemctl disable nginx
# 查看所有服务
systemctl list-unit-files | grep enabled
# 启动所有服务
systemctl restart services
# 停止所有服务
systemctl stop services
10.2 服务进程控制
# 启动服务
systemctl start nginx
# 停止服务
systemctl stop nginx
# 重启服务
systemctl restart nginx
# 查看服务状态
systemctl status nginx
# 启用服务自启动
systemctl enable nginx
# 禁用服务自启动
systemctl disable nginx
11、日志与故障排查
11.1 日志查看
# 查看文件日志
cat /var/log/nginx/error.log
cat /var/log/syslog
# 实时查看日志文件
sudo tail -f /var/log/syslog
# 查找错误日志
grep "error" /var/log/syslog
# 查找特定日志
grep "nginx" /var/log/syslog
# 查看最近的错误日志
sudo tail -50 /var/log/syslog
# 查看前 50 行日志
tail -50 /var/log/syslog
11.2 故障排查
# 查看系统日志
sudo tail -f /var/log/syslog
# 查看内核日志
dmesg | tail -50
# 查看 SSH 日志
cat /var/log/auth.log
# 查看错误日志
tail -f /var/log/syslog
# 查找特定错误
grep "error" /var/log/syslog
12、SSH 远程管理
12.1 SSH 连接
# SSH 连接远程服务器
ssh user@192.168.1.100
# SSH 连接特定端口
ssh -p 2222 user@host.com
# SSH 连接指定用户
ssh user@remote-server
# SSH 添加密钥
ssh-copy-id user@remote-server
# SSH 测试连接
ssh -T user@remote-server
# 首次连接提示
ssh-keygen
12.2 SSH 配置文件
# 编辑 SSH 配置文件
sudo nano /etc/ssh/sshd_config
# 禁止密码登录
# Permit.PasswordAuthentication no
# PermitRootLogin no
# PermitEmptyPasswords no
12.3 SSH 密钥生成
# 生成 SSH 密钥
ssh-keygen -t rsa
# 生成 4096 位密钥
ssh-keygen -t rsa -b 4096
# 输出公钥
cat ~/.ssh/id_rsa.pub
# 复制公钥
ssh-copy-id user@remote-server
# 测试连接
ssh user@remote-server
13、系统配置与定制
13.1 系统配置
# 编辑系统配置
sudo nano /etc/sudoers
# 修改 SSH 配置
sudo nano /etc/ssh/sshd_config
# 修改防火墙
sudo nano /etc/ufw/basis.rules
13.2 进度条配置
# 添加进度条支持
sudo apt-get install dpkg-dacman
# 安装源管理工具
sudo apt-get install -y python3-pip
# 安装主版本
sudo pip3 install manager
# 启动管理进程
python3 -m manager
13.3 进程死锁检测
# 查看死锁进程
lsof -p 1234 | grep "锁"
# 查看进程详细信息
ps aux | grep 1234
# 查看进程信息
lsof -p 1234
14、快速任务配置工具
14.1 批量任务工具
# 批量删除目录内容
rm -rf *
# 批量修改权限
chmod 755 /path/to/directory/*
# 批量添加执行权限
find /path -name "*.sh" -exec chmod +x {} \;
# 批量创建目录
mkdir -p /var/data/*
14.2 权限修复工具
# 修复权限异常
sudo find / -perm -222 -type f -exec chmod 644 {} \;
sudo find / -perm +222 -type d -exec chmod 755 {} \;
15、安全加固配置
15.1 权限加固
# 设置只读目录权限
sudo chmod 500 /etc/shadow
sudo chmod 600 /etc/passwd
# 设置敏感文件权限
sudo chmod 600 /etc/ssh/ssh_host_*
15.2 运行时加固
# 限制用户权限
sudo adduser --disabled-password --home /home/admin --shell /bin/bash admin
# 启用密码日志记录
sudo nano /etc/logrotate.d/sshd
16、运维最佳实践
16.1 权限管理黄金法则
- 最小权限原则:只赋予必要权限
- 定期审计:定期检查权限配置
- 特殊位保护:谨慎使用 SUID/SGID
- 版本控制:对配置文件进行版本管理
- 详细日志:记录权限变更操作
- 监控告警:设置权限异常监控
16.2 运维最佳实践
- 操作留痕:所有操作记录日志
- 版本控制:配置文件版本控制
- 权限复核:定期审查权限配置
- 备份机制:重要配置定期备份
- 监控告警:系统状态异常时及时告警
- 自动化工具:批量操作使用脚本
- 安全基线:建立系统安全基准
- 凭证管理:集中管理敏感信息
- 文档维护:更新运维文档
- 定期审查:定期审计系统状态
16.3 系统维护建议
- 每周:检查权限变更记录
- 每月:审查系统优化方案
- 每季度:全面系统健康检查
- 每年:安全基线评估和审计
附录:常用命令速查表
权限修改速查
| 场景 | 命令 | 说明 |
|---|---|---|
| 给所有者添加写权限 | chmod u+w file |
所有者可写 |
| 给同组添加写权限 | chmod g+w file |
同组可写 |
| 给其他用户添加写权限 | chmod o+w file |
其他可写 |
| 给所有人添加执行权限 | chmod a+x file |
可执行 |
| 设置只读 | chmod 400 file |
仅所有者可读 |
| 设置全局只读 | chmod 444 file |
全部只读 |
| 设置标准权限 | chmod 644 file |
标准文件权限 |
| 设置标准目录 | chmod 755 dir |
标准目录权限 |
进程管理速查
| 任务 | 命令 |
|---|---|
| 查看进程 | ps aux |
| 停止进程 | kill -9 PID |
| 重启服务 | systemctl restart |
| 服务状态 | systemctl status |
| 查看进程树 | pstree |
本文档为 Ubuntu 系统运维完整命令速查手册,适合系统管理员、DevOps 工程师、运维开发使用。建议打印或保存为本地文档随时查阅。
版本:Ubuntu 20.04+ | 适配:GNOME 桌面环境推荐 | 更新频率:每月一次