Ubuntu系统服务器常用命令大全
技术/帮助
2026-02-28 16:45
2181
Ubuntu 服务器常用命令大全
一、系统信息 / 硬件 / 内核
uname -r # 查看内核版本 uname -a # 查看全部系统信息 cat /etc/os-release # 查看Ubuntu版本详情 lsb_release -a # 查看发行版详细信息(Ubuntu专属) hostname # 查看主机名 hostnamectl set-hostname xxx # 修改主机名(永久生效) uptime # 查看系统运行时间、负载情况 dmesg # 查看内核日志 dmidecode # 查看硬件信息(主板、CPU、内存) lscpu # 查看CPU详细信息 lsblk # 查看磁盘设备列表 blkid # 查看磁盘UUID lsusb # 查看USB设备 lspci # 查看PCI设备(网卡、显卡等) free -h # 查看内存使用(人性化显示) free -m # 以MB为单位查看内存 df -h # 查看磁盘使用率 df -i # 查看inode使用情况 du -sh * # 查看当前目录各文件/目录大小 du -sh /dir # 查看指定目录总大小 mount # 查看已挂载的文件系统 mount /dev/sdb1 /mnt # 挂载磁盘到指定目录 umount /mnt # 卸载挂载点 fsck /dev/sdb1 # 磁盘检查(需卸载后执行) sync # 将内存数据写入磁盘 apt install hardinfo # 安装硬件信息查看工具(图形/命令行) lshw # 查看硬件配置(需安装:apt install lshw)
二、文件与目录操作
ls # 列出当前目录文件 ls -a # 显示所有文件(含隐藏文件) ls -l # 详细列表(权限、大小、时间) ls -lh # 详细列表(大小带单位) ls -lt # 按修改时间排序 ls -ltr # 按修改时间倒序排序 cd 目录 # 进入指定目录 cd .. # 返回上一级目录 cd ~ # 进入当前用户家目录 cd - # 返回上一次所在目录 pwd # 显示当前工作路径 mkdir 目录 # 创建目录 mkdir -p a/b/c # 递归创建多级目录 touch 文件 # 创建空文件 cp 源 文件 目标 # 复制文件 cp -r 源 目标 # 递归复制目录 mv 源 目标 # 移动/重命名文件/目录 rm 文件 # 删除文件 rm -f 文件 # 强制删除文件(不提示) rm -r 目录 # 递归删除目录 rm -rf 目录 # 强制递归删除目录(慎用!) ln -s 源 文件 目标 # 创建软链接 cat 文件 # 查看文件全部内容 tac 文件 # 倒序查看文件内容 more 文件 # 分页查看文件(向下翻) less 文件 # 分页查看文件(上下翻,更灵活) head -n 10 文件 # 查看文件前10行 tail -n 10 文件 # 查看文件后10行 tail -f 文件 # 实时刷新查看日志 tail -F 文件 # 日志切割后仍能继续追踪 vim 文件 # 编辑文件(高级编辑器) nano 文件 # 编辑文件(Ubuntu默认简易编辑器) nl 文件 # 带行号查看文件内容 find /path -name "*.log" # 按文件名查找 find / -type f -size +100M # 查找大于100M的文件 find / -mtime -7 # 查找7天内修改的文件 grep '关键词' 文件 # 在文件中搜索关键词 grep -i '关键词' 文件 # 搜索(不区分大小写) grep -r '关键词' /dir # 递归搜索目录下所有文件 grep -v '关键词' 文件 # 反向匹配(排除关键词) which 命令 # 查看命令的可执行文件路径 whereis 命令 # 查看命令的所有相关文件 locate 文件 # 快速查找文件(需先执行updatedb) updatedb # 更新locate数据库
三、用户与权限管理
whoami # 查看当前登录用户 id # 查看当前用户UID、GID w # 查看在线用户及操作 last # 查看用户登录历史 lastb # 查看用户失败登录记录 adduser 用户名 # 创建新用户(Ubuntu推荐,交互式) useradd 用户名 # 创建新用户(极简模式) userdel -r 用户名 # 删除用户并删除家目录 passwd 用户名 # 修改用户密码 su 用户名 # 切换用户(不加载环境) su - 用户名 # 切换用户并加载环境 usermod -aG sudo 用户名 # 将用户加入sudo组(赋予管理员权限) groupadd 组名 # 创建用户组 gpasswd -a 用户名 组名 # 将用户加入指定组 chmod 755 文件 # 修改文件权限(数字方式) chmod +x 文件 # 给文件添加执行权限 chown 用户名:组名 文件 # 修改文件所有者和所属组 chgrp 组名 文件 # 修改文件所属组 sudo 命令 # 以root权限执行命令 visudo # 编辑sudoers配置文件
四、网络操作
ip a # 查看网卡IP地址 ip addr add 192.168.1.10/24 dev eth0 # 设置临时IP ip link set eth0 up # 启用网卡 ping IP/域名 # 测试网络连通性 ping -c 4 IP/域名 # 发送4个数据包后停止 curl 网址 # 请求网页/接口内容 curl -I 网址 # 只查看响应头信息 curl -v 网址 # 查看详细请求过程 wget 网址 # 下载文件 wget -O 自定义文件名 网址 # 下载文件并自定义名称 netstat -tulpn # 查看端口占用情况 ss -tulpn # 更快的端口查看工具 ss -s # 查看网络连接统计 traceroute IP/域名 # 路由追踪(需安装:apt install traceroute) mtr IP/域名 # 路由+丢包综合诊断(需安装:apt install mtr) nslookup 域名 # DNS解析测试 dig 域名 # 详细DNS解析信息 hostname -I # 查看本机所有IP telnet IP 端口 # 测试端口是否通(需安装:apt install telnet) nc -zv IP 端口 # 测试端口连通性(需安装:apt install netcat) # 防火墙(UFW,Ubuntu默认) ufw status # 查看防火墙状态 ufw enable # 启用防火墙 ufw disable # 禁用防火墙 ufw allow 80/tcp # 允许80端口TCP流量 ufw allow 22 # 允许22端口(SSH) ufw deny 3306 # 拒绝3306端口 ufw delete allow 80 # 删除80端口允许规则 ufw reload # 重载防火墙规则
五、服务与进程管理
ps aux # 查看所有进程 ps -ef # 全格式查看进程 top # 实时监控进程 htop # 更友好的进程监控(需安装:apt install htop) pidof 服务名 # 获取指定服务的PID pstree # 以树状显示进程关系 kill PID # 温和结束进程 kill -9 PID # 强制结束进程 killall 进程名 # 按进程名结束进程 pkill 进程名 # 按进程名结束进程 nohup 命令 & # 后台运行命令(断开SSH不终止) jobs # 查看后台任务 fg %1 # 将后台任务1切到前台 bg %1 # 将前台任务1切到后台 # systemd 服务管理(Ubuntu 16.04+) systemctl start 服务名 # 启动服务 systemctl stop 服务名 # 停止服务 systemctl restart 服务名 # 重启服务 systemctl reload 服务名 # 重载服务配置 systemctl status 服务名 # 查看服务状态 systemctl enable 服务名 # 设置服务开机自启 systemctl disable 服务名 # 关闭服务开机自启 systemctl daemon-reload # 重新加载systemd配置 # service 命令(兼容旧版本) service 服务名 start # 启动服务 service 服务名 stop # 停止服务 service 服务名 restart # 重启服务 # 日志查看 journalctl -u 服务名 # 查看指定服务日志 journalctl -f # 实时查看系统日志 journalctl --since "10 min ago" # 查看10分钟前的日志
六、软件包管理(APT)
# 基础操作 apt update # 更新软件源列表 apt upgrade # 更新已安装的软件包 apt full-upgrade # 完整升级(可处理依赖变更) apt install 包名 # 安装软件包 apt install 包名 -y # 安装软件包(自动确认) apt remove 包名 # 卸载软件包(保留配置) apt purge 包名 # 彻底卸载(删除配置) apt autoremove # 自动删除无用依赖包 # 查询操作 apt list --installed # 查看已安装的包 apt search 关键词 # 搜索软件包 apt show 包名 # 查看包详细信息 apt-cache policy 包名 # 查看包的安装状态和版本 # 清理缓存 apt clean # 清理所有下载的包缓存 apt autoclean # 清理旧的包缓存 # 添加PPA源(Ubuntu专属) add-apt-repository ppa:源地址 # 添加PPA源 apt update # 添加后更新源列表
七、压缩与解压
# tar 压缩/解压 tar -zcvf 文件名.tar.gz 目录 # 压缩为gz格式 tar -zxvf 文件名.tar.gz # 解压gz格式文件 tar -jcvf 文件名.tar.bz2 目录 # 压缩为bz2格式 tar -jxvf 文件名.tar.bz2 # 解压bz2格式文件 tar -Jcvf 文件名.tar.xz 目录 # 压缩为xz格式(Ubuntu常用) tar -Jxvf 文件名.tar.xz # 解压xz格式文件 # zip 压缩/解压(需安装:apt install zip unzip) zip 压缩名.zip 文件/目录 # 压缩为zip格式 unzip 压缩名.zip # 解压zip格式文件 unzip -o 压缩名.zip # 覆盖解压zip文件 # rar 压缩/解压(需安装:apt install rar unrar) rar a 压缩名.rar 文件/目录 # 压缩为rar格式 unrar x 压缩名.rar # 解压rar格式文件
八、日志操作
# 常用日志路径 /var/log/syslog # 系统核心日志(Ubuntu专属) /var/log/auth.log # 认证/登录日志 /var/log/cron.log # 定时任务日志 /var/log/apache2/ # Apache日志(安装后) /var/log/nginx/ # Nginx日志(安装后) # 日志查看命令 journalctl # 查看系统日志 journalctl -u 服务名 # 查看指定服务日志 tail -f /var/log/syslog # 实时查看系统日志 grep 'error' /var/log/syslog # 筛选日志中的错误信息 cat /var/log/auth.log | grep 'Failed' # 查看登录失败记录
九、服务器常用工具
9.1 一键安装常用工具
apt install -y wget curl vim net-tools htop lsof telnet tree ncdu iotop iftop
9.2 进程/端口/文件工具
lsof -i:80 # 查看80端口被哪个进程占用 lsof 文件 # 查看哪个进程正在使用该文件 fuser -n tcp 80 # 查看80端口占用进程(Ubuntu常用)
9.3 系统监控工具
htop # 增强版进程监控(替代top) iotop # 实时监控磁盘IO iftop # 实时监控网络流量 nmon # 全能系统监控(需安装:apt install nmon) vmstat # 虚拟内存统计 iostat # 磁盘IO统计
9.4 目录/磁盘分析工具
tree # 树状显示目录结构(需安装:apt install tree) tree -L 2 # 只显示2级目录 ncdu # 交互式磁盘空间分析工具(需安装:apt install ncdu) duf # 现代化磁盘查看工具(需安装:apt install duf)
9.5 文本处理工具
awk '{print $1}' 文件 # 提取文件第一列内容
awk '/关键词/' 文件 # 过滤包含关键词的行
sed -i 's/旧内容/新内容/g' 文件 # 批量替换文件内容
sort 文件 # 对文件内容排序
uniq # 去除重复行(需配合sort使用)
wc -l 文件 # 统计文件行数
cut -d ':' -f 1 /etc/passwd # 按分隔符提取列(Ubuntu常用)
9.6 时间/日期工具
date # 查看当前时间 date -s "2026-02-28 12:00:00" # 设置系统时间 timedatectl status # 查看时间/时区状态 timedatectl set-timezone Asia/Shanghai # 设置时区为上海 apt install ntpdate # 安装时间同步工具 ntpdate ntp.ubuntu.com # 同步Ubuntu官方时间服务器
9.7 定时任务工具
crontab -l # 查看当前用户定时任务 crontab -e # 编辑定时任务 service cron start # 启动定时任务服务 service cron enable # 设置定时任务开机自启 systemctl status cron # 查看cron服务状态