news 2026/4/15 16:36:08

Linux 业务场景常用命令详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Linux 业务场景常用命令详解

一、系统监控与性能分析

1. 系统资源监控

# 实时监控系统资源 top htop # 增强版top,需安装 # 查看系统负载 uptime cat /proc/loadavg # 内存监控 free -h vmstat 2 5 # 每2秒采样,共5次 # CPU监控 mpstat -P ALL 1 # 每1秒查看所有CPU使用情况 sar -u 2 5 # 每2秒采样CPU,共5次

2. 磁盘监控

# 磁盘使用情况 df -hT lsblk # 磁盘I/O监控 iostat -x 1 3 iotop # 需安装,类似top的磁盘监控 # 大文件查找 find / -type f -size +100M -exec ls -lh {} \; 2>/dev/null

3. 网络监控

# 网络连接统计 netstat -tunlp ss -tunlp # 更快的netstat替代 # 实时网络流量 iftop -i eth0 # 需安装 nethogs # 按进程查看流量 # 网络性能测试 iperf3 -s # 服务端 iperf3 -c <server_ip> -t 30 # 客户端

二、故障排查与日志分析

1. 日志分析

# 实时查看日志 tail -f /var/log/syslog journalctl -f # systemd系统 # 日志过滤 grep "ERROR" /var/log/messages grep -A 5 -B 5 "关键字" /var/log/nginx/access.log # 日志时间范围查询 sed -n '/2024-01-01 10:00/,/2024-01-01 11:00/p' /var/log/messages

2. 进程排查

# 查找占用资源高的进程 ps aux --sort=-%cpu | head -10 ps aux --sort=-%mem | head -10 # 查看进程打开的文件 lsof -p <PID> lsof -i :8080 # 查看端口占用 # 进程树查看 pstree -ap <PID>

3. 系统调用追踪

# 跟踪系统调用 strace -p <PID> -f -tt strace -c <command> # 统计系统调用 # 动态库调用跟踪 ltrace -p <PID>

三、日常运维操作

1. 文件与目录管理

# 批量操作 find /var/log -name "*.log" -mtime +7 -delete find . -type f -exec grep -l "pattern" {} \; # 文件同步与备份 rsync -avz --progress source/ user@dest:/path/ rsync -avz --delete source/ dest/ # 镜像同步

2. 用户与权限管理

# 批量用户管理 for user in user1 user2 user3; do useradd $user echo "$user:Initial123" | chpasswd done # 权限修复 find /path -type d -exec chmod 755 {} \; find /path -type f -exec chmod 644 {} \; chown -R user:group /path

3. 定时任务

# 查看所有用户的cron任务 for user in $(cut -f1 -d: /etc/passwd); do echo "=== $user ==="; crontab -u $user -l 2>/dev/null; done # 一次性定时任务 echo "bash /path/script.sh" | at 02:00 tomorrow

四、网络配置与诊断

1. 网络配置

# IP配置 ip addr show ip route show ip link set eth0 up ip addr add 192.168.1.100/24 dev eth0 # 网络诊断 mtr -n 8.8.8.8 # 路由跟踪 tcpdump -i eth0 -n port 80 nc -zv host port # 端口检测

2. 防火墙管理

# iptables iptables -L -n -v iptables -A INPUT -s 192.168.1.0/24 -j ACCEPT # firewalld(CentOS/RHEL) firewall-cmd --list-all firewall-cmd --add-port=8080/tcp --permanent

五、容器与编排环境

1. Docker操作

# 容器管理 docker ps -a --format "table {{.ID}}\t{{.Names}}\t{{.Status}}\t{{.Ports}}" docker stats --no-stream docker logs -f --tail 100 <container> # 清理无用资源 docker system prune -af docker volume prune

2. Kubernetes操作

# 常用查询 kubectl get pods -o wide kubectl get events --sort-by='.lastTimestamp' kubectl top pods --containers # 日志查看 kubectl logs -f <pod> --tail=100 kubectl logs --since=1h <pod> # 故障排查 kubectl describe pod <pod> kubectl exec -it <pod> -- /bin/bash

六、Shell脚本技巧

1. 常用脚本片段

#!/bin/bash # 参数检查 if [ $# -ne 2 ]; then echo "Usage: $0 <arg1> <arg2>" exit 1 fi # 安全退出 set -euo pipefail trap "echo '脚本被中断'; exit 1" INT TERM # 并发控制 MAX_JOBS=5 for item in $(cat list.txt); do ((i=i%MAX_JOBS)); ((i++==0)) && wait process_item "$item" & done wait

2. 实用函数

# 日志函数 log() { local level=$1 shift echo "$(date '+%Y-%m-%d %H:%M:%S') [$level] $@" } # 检查服务状态 check_service() { systemctl is-active --quiet $1 if [ $? -eq 0 ]; then log "INFO" "Service $1 is running" return 0 else log "ERROR" "Service $1 is not running" return 1 fi }

七、性能优化命令

1. 内核参数调优

# 查看当前参数 sysctl -a | grep tcp cat /proc/sys/vm/swappiness # 临时修改 sysctl -w net.core.somaxconn=1024 # 永久修改 echo "net.core.somaxconn=1024" >> /etc/sysctl.conf sysctl -p

2. 文件系统优化

# I/O调度器 cat /sys/block/sda/queue/scheduler echo "deadline" > /sys/block/sda/queue/scheduler # 文件系统检查 tune2fs -l /dev/sda1 # ext文件系统 xfs_info /dev/sdb1 # xfs文件系统

八、安全审计

1. 安全检查

# SSH安全检查 grep -E "PermitRootLogin|PasswordAuthentication" /etc/ssh/sshd_config # 文件完整性检查 rpm -Va # RHEL/CentOS debsums # Debian/Ubuntu # 异常进程检查 ps aux | awk '$3>30 || $4>30 {print $0}'

2. 入侵检测

# 检查异常登录 last -f /var/log/wtmp | head -20 grep "Failed password" /var/log/auth.log # 检查可疑文件 find / -type f \( -perm -4000 -o -perm -2000 \) -exec ls -l {} \; find / -type f -name "*.php" -exec grep -l "eval(" {} \;

九、实用组合命令

1. 监控组合

# 一键系统健康检查 echo "=== $(date) ===" echo "Load: $(uptime)" echo "Memory: $(free -h | grep Mem)" echo "Disk: $(df -h / | tail -1)" echo "Top CPU: $(ps aux --sort=-%cpu | head -3 | tail -2)" echo "Top MEM: $(ps aux --sort=-%mem | head -3 | tail -2)"

2. 批量操作

# 并行执行命令 parallel -j 10 ssh {} "hostname" ::: server{1..20} # 批量文件处理 find /data -name "*.log" -type f -size +1G | while read file; do gzip "$file" done

最佳实践建议

  1. 命令别名:将常用命令添加到~/.bashrc

alias ll='ls -alhF' alias ports='netstat -tunlp' alias df='df -hT'

2. 历史命令优化

export HISTSIZE=10000 export HISTFILESIZE=20000 export HISTTIMEFORMAT='%F %T '

3. 使用screen/tmux:保持会话持久化

screen -S session_name tmux new -s session_name

4. 定期清理

# 清理旧内核 apt autoremove --purge # Debian/Ubuntu package-cleanup --oldkernels --count=2 # CentOS/RHEL
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/11 15:58:24

想他了,撒撒娇,男人真的很吃这一套

&#x1f496; 我今天没吃糖&#xff0c;却甜到发慌——因为满脑子都是你呀&#xff5e;&#x1f319; 月亮都睡了&#xff0c;我还在想你&#xff0c;快补偿我一个晚安吻&#x1f618;&#x1f388; 想做你的专属小尾巴&#xff0c;你走哪我粘哪&#xff0c;甩都甩不掉&#x…

作者头像 李华
网站建设 2026/4/14 7:17:51

虚拟机安装麒麟操作系统如何重置root密码

最近我们主要学习的是关于如何在虚拟机里面使用麒麟操作系统进行相关的学习。其中&#xff0c;麒麟操作系统属于国产操作系统&#xff0c;它其实和类似于 Ubuntu、CentOS 这样主流的 Linux 操作系统操作起来没有太大的区别。 但是我在实践的过程中遇到了如下的问题&#xff1a;…

作者头像 李华
网站建设 2026/4/12 9:37:03

为什么你的Bonding总是单线跑?一文讲透layer2/layer2+3/layer3+4

文章目录前言一、Linux Bonding驱动底层架构简述二、Hash Policy三、 策略解析&#xff08;layer2 / layer23 / layer34&#xff09;1.layer22.layer233.layer34四、 底层实现细节&#xff08;以Kernel源码为例&#xff09;总结前言 今天同事在部署环境的时候遇到了一个奇怪的…

作者头像 李华
网站建设 2026/4/15 8:11:21

大数据领域数据交易的商业模式探讨

大数据领域数据交易的商业模式探讨:解锁数据价值新密码 关键词:大数据、数据交易、商业模式、数据安全、数据隐私、数据市场、数据应用 摘要:在当今数字化时代,数据已成为一种极具价值的资产。大数据领域的数据交易如同一片新兴的商业蓝海,吸引着众多参与者。本文将深入…

作者头像 李华