适用:CentOS7/8、麒麟 Kylin V10、Rocky、Ubuntu;覆盖日常运维、故障排查、文件、网络、进程、磁盘、权限、软件、日志、压缩、shell、系统状态。 标注常用★,生产高频重点标记。
一、基础系统信息
uname -a # ★查看内核、系统全部信息
uname -r # 内核版本
cat /etc/os-release # ★查看发行版本(麒麟、CentOS)
hostname # 主机名
hostnamectl set-hostname app01 # 修改主机名
uptime # ★系统运行时间、负载
date # 当前时间
timedatectl # ★时区时间状态
timedatectl set-timezone Asia/Shanghai # 设置上海时区
whoami # 当前用户
who # 登录用户
w # ★登录用户+负载
last # 登录历史
history # ★历史命令
history -c # 清空当前会话历史
二、文件与目录操作
pwd # ★显示当前路径
ls # 列出文件
ls -l # ★详细列表
ls -la # ★含隐藏文件
ls -lh # ★人性化大小显示
ls -lt # 按时间排序
cd /data # 切换目录
cd .. # 返回上一级
cd ~ # 回到家目录
cd – # 返回上一次目录
mkdir test # 创建文件夹
mkdir -p /data/logs/tomcat # ★递归创建多级目录
rm file.txt # 删除文件
rm -rf dir # ★强制递归删除(高危!谨慎)
cp a.txt /tmp/ # 复制文件
cp -r dir1 dir2 # 复制目录
mv old.txt new.txt # ★移动/重命名
touch file.txt # 创建空文件
find /data -name "*.log" # ★查找文件
find /data -type f -size +100M # 查找大于100M文件
find /data -mtime -7 # 7天内修改文件
ln -s /usr/local/tomcat9 /tomcat # ★软链接
ln 源 目标 # 硬链接
三、文件查看编辑
cat file.txt # 全部输出
more file.txt # 分页浏览
less file.txt # ★推荐分页查看,q退出
head -n20 file.txt # ★看前20行
tail -n20 file.txt # ★看末尾20行
tail -f catalina.out # ★实时跟踪日志
tail -F catalina.out # ★日志轮转也可跟踪
grep "error" catalina.out # ★过滤关键字
grep -i "error" catalina.out # 忽略大小写
grep -v "info" catalina.out # 排除匹配行
grep -rn "Exception" /data/tomcat # ★递归目录搜索关键字
vi /etc/profile # vi编辑器
# vi快捷键
i # 编辑
esc # 退出编辑
:w # 保存
:q # 退出
:wq # ★保存退出
:q! # ★强制不保存退出
dd # 删除一行
yy # 复制一行
p # 粘贴
/关键词 # 向下搜索
?关键词 # 向上搜索
set nu # 显示行号
四、权限 & 用户管理
id # 查看当前用户uid gid
useradd tomcat # 创建用户
userdel -r tomcat # 删除用户+家目录
passwd tomcat # 设置密码
usermod -aG wheel tomcat # 添加到sudo组
chmod 755 run.sh # ★修改权限
chmod +x run.sh # ★增加执行权限
chown tomcat:tomcat /data/tomcat9 -R # ★递归修改属主属组
su – tomcat # ★切换用户,加载环境变量
sudo command # 管理员执行
# 权限数字记忆
# r=4 w=2 x=1
# 755:rwxr-xr-x
# 644:rw-r–r–
五、磁盘空间
df -h # ★磁盘分区使用
df -i # inode使用
du -sh * # ★当前目录各文件大小
du -sh /data # 目录总大小
du -sh /data/* | sort -hr # ★按大小排序,找大文件
lsblk # 查看块设备
fdisk -l # 磁盘分区
mount /dev/sdb1 /data # 挂载
umount /data # 卸载
blkid # 获取UUID
cat /etc/fstab # ★开机挂载配置文件
六、进程、内存、CPU
top # ★系统资源监控
# top快捷键
P 按CPU排序
M 按内存排序
q 退出
htop # 增强top(需安装)
free -h # ★内存、swap
ps -ef # ★查看全部进程
ps aux # 进程详细
ps -ef | grep tomcat # ★过滤进程
pgrep -f tomcat # 获取进程PID
kill 1234 # 正常终止进程
kill -9 1234 # ★强制杀进程(尽量少用)
nice / renice # 调整进程优先级
# 查看线程
ps -T -p PID
top -Hp PID
七、网络命令
ip addr # ★查看网卡IP
ifconfig # 老工具
ip route # 路由表
route -n
ping 192.168.1.100 # ping测试连通
telnet 192.168.1.100 8080 # ★端口连通测试
curl -v http://127.0.0.1:8080 # ★访问http服务
wget url # 下载文件
netstat -tulnp # ★查看监听端口(需net-tools)
ss -tulnp # ★替代netstat,性能更好
ss -s # 统计连接数
# 防火墙 firewalld(CentOS/麒麟V10)
firewall-cmd –list-all
firewall-cmd –add-port=8080/tcp –permanent
firewall-cmd –reload
systemctl status firewalld
systemctl stop firewalld
# ubuntu ufw
ufw status
ufw allow 8080
ufw reload
# DNS
cat /etc/resolv.conf
nslookup baidu.com
dig baidu.com
# 抓包
tcpdump -i any port 8080 -w test.pcap
tcpdump -i eth0 host 192.168.1.10
八、服务管理 systemd(CentOS7+/ 麒麟 V10)
systemctl list-unit-files –type=service # 列出所有服务
systemctl start tomcat # ★启动
systemctl stop tomcat # ★停止
systemctl restart tomcat # ★重启
systemctl status tomcat # ★查看状态
systemctl enable tomcat # ★开机自启
systemctl disable tomcat # 取消开机自启
systemctl daemon-reload # ★修改service后重载
journalctl -u tomcat -f # ★查看systemd服务日志实时
journalctl -u tomcat –since "2026-09-07 10:00:00" # 指定时间日志
九、软件包管理
YUM(CentOS / Kylin V10)
yum list installed # 已安装包
yum search xxx
yum install -y xxx # ★安装
yum remove -y xxx # 卸载
yum update -y # 更新
yum clean all # 清理缓存
yum install -y net-tools lsof wget vim telnet tcpdump
APT(Ubuntu)
apt update
apt install -y xxx
apt remove xxx
apt list –installed
RPM(本地包)
rpm -ivh xxx.rpm # 安装rpm包
rpm -qa | grep java # 查询已安装
rpm -e xxx # 卸载
十、压缩解压
# tar.gz 最常用
tar -zcvf app.tar.gz /data/app # ★压缩
tar -zxvf app.tar.gz -C /tmp # ★解压到指定目录
# tar.bz2
tar -jcvf xxx.tar.bz2 dir
tar -jxvf xxx.tar.bz2
# zip/unzip
zip -r app.zip /data/app
unzip app.zip -d /tmp
gzip file
gunzip file.gz
十一、文本处理(sed awk sort cut)
cut -d: -f1 /etc/passwd # 按:分割取第1列
sort file.txt # 排序
sort -hr # 人类数字大小排序
uniq -c # 去重统计行数
sed -i 's/old/new/g' a.txt # ★sed替换文件内容
sed -i '/^#/d' file.conf # 删除#开头行
awk '{print $1,$3}' test.txt # ★awk打印第1、3列
awk '/error/{print}' log.txt # 匹配行输出
十二、定时任务 cron
crontab -e # ★编辑定时任务
crontab -l # ★查看定时任务
crontab -r # 删除定时任务
# cron格式 分 时 日 月 周
# 0 2 * * * /bin/sh /data/backup.sh >>/data/backup.log 2>&1
# 每天凌晨2点执行脚本
systemctl status crond # centos
systemctl status cron # ubuntu
十三、系统调试故障排查
lsof -i :8080 # ★查看哪个进程占用8080端口
lsof | grep deleted # ★查找已删除未释放文件(磁盘不释放)
vmstat 1 # ★系统状态每秒输出
iostat -x 1 # ★磁盘IO监控
sar -n DEV 1 # ★网络流量监控
dmesg # ★内核日志,硬件、OOM报错
dmesg | grep -i oom
cat /var/log/messages # ★系统日志 centos/麒麟
cat /var/log/syslog # ubuntu
# OOM查看
grep -i oom-killer /var/log/messages
十四、远程传输
ssh root@192.168.1.100 # ssh登录
scp /data/file.tar.gz root@192.168.1.100:/tmp # ★本地传到远程
scp root@192.168.1.100:/tmp/file.tar.gz ./ # 远程下载到本地
# rsync增量同步(生产备份)
rsync -avz /data/ root@192.168.1.100:/backup/
十五、环境变量
env # 查看全部环境变量
echo $JAVA_HOME # 打印变量
# 全局环境变量
/etc/profile # 所有用户登录加载
/etc/bashrc # shell打开加载
~/.bash_profile # 当前用户
~/.bashrc # 当前用户shell
source /etc/profile # ★生效配置
export JAVA_HOME=/xxx # 设置环境变量
十六、shell 脚本常用内置
$0 #脚本名
$1 $2 #第1、2传入参数
$# #参数个数
$? # ★上一条命令返回值,0成功非0失败
&& # 前面成功才执行后面
|| # 前面失败执行后面
; # 顺序执行
# 判断示例
if [ $? -eq 0 ];then echo ok;fi
十七、快捷实用小技巧
!123 # 执行history编号123命令
!! # 重复上一条命令
ctrl + c # 终止当前运行程序
ctrl + z # 挂起程序到后台
jobs # 后台任务
bg %1 # 后台运行
fg %1 # 切回前台
> log.txt # ★清空文件内容(不要rm,文件被占用时rm不释放空间)
十八、生产故障排查速查清单(命令组合)
df -h # 查看各个磁盘分区使用率、挂载点,-h人性化显示单位GB/MB
du -sh /* | sort -hr # 统计根目录下所有目录总大小,sort -hr按文件大小从大到小排序,快速定位大目录
lsof | grep deleted # 查找已经被rm删除,但进程还持有句柄未释放的文件;文件删除空间不释放必查
ss -tulnp |grep 8080 # ss:新一代网络工具;-t tcp,-u udp,-l监听端口,-n数字不解析主机名,-p显示进程PID;过滤8080,查哪个进程在监听该端口
lsof -i :8080 # lsof(list open files),-i指定网络;查询占用8080端口的进程PID、用户
top # 系统实时监控面板,查看整体CPU、内存,按P可按CPU使用率排序,M按内存排序
ps -efH # -e全部进程,-f完整格式,-H显示进程父子树关系;看进程父子关系,定位业务进程PID
top -Hp PID # -H显示线程,-p指定PID;查看该进程内部各个线程CPU占用,定位Java等程序高CPU线程
free -h # 查看总内存、已用、空闲、缓存buffer/cache、swap交换分区使用情况
vmstat 1 # 虚拟内存统计,每秒刷新1次;观察si(换入)、so(换出),判断是否内存不足发生swap交换
dmesg |grep -i oom # dmesg读取内核环形日志;过滤OOM Killer日志,OOM即内存溢出,内核杀掉进程时会打印记录
tail -f xxx.log # -f实时跟踪日志文件末尾输出;动态看应用滚动日志,中断按Ctrl+C
grep -i error xxx.log # -i忽略大小写;在日志文件中筛选所有包含error的报错行
journalctl -u 服务名 -f # -u指定systemd服务单元,-f实时跟踪;查看systemd托管服务的系统日志(如tomcat.service)
网硕互联帮助中心


评论前必须登录!
注册