Linux运维必备的15个高频命令及实战技巧

发布时间:2026/7/17 14:02:40
Linux运维必备的15个高频命令及实战技巧 1. Linux高频命令的价值与适用场景作为在Linux环境下摸爬滚打多年的老运维我深知命令行工具就像外科医生的手术刀——用对了事半功倍用错了可能引发系统大出血。这次整理的15个高频命令都是经过生产环境千锤百炼的实用工具特别适合以下场景服务器突然响应缓慢需要快速定位瓶颈批量处理日志文件时避免vim打开几个G的文件远程传输重要数据时确保完整性和效率权限管理出现问题时快速精准调整这些命令覆盖了日常80%的运维需求记住它们能让你在终端前显得游刃有余。下面我就按照网络操作、文件管理、系统监控三个维度来详细解析。2. 网络相关高频命令2.1 网络诊断三板斧当网站无法访问时我通常会按这个顺序排查# 1. 检查基本连通性 ping example.com -c 4 # -c指定发包次数避免无限ping # 2. 检查端口开放情况 telnet example.com 80 # 或者更专业的 nc -zv example.com 80 # -z只扫描不发送数据 -v显示详细信息 # 3. 路由追踪 traceroute example.com # 新版Linux推荐用 tracepath example.com # 不需要root权限经验阿里云等云服务器默认禁ping这时候可以用telnet测试端口更靠谱2.2 网络连接状态分析# 查看所有活跃连接 ss -tulnp # 比netstat更高效参数说明 # -t TCP连接 -u UDP -l 监听状态 -n 数字格式显示 -p 显示进程 # 查看某个端口的连接数 ss -nt sport :80 | wc -l2.3 安全文件传输# 1. 加密传输整个目录 rsync -avz -e ssh /local/path userremote:/path # -a 归档模式 -v 详细输出 -z 压缩传输 # 2. 限速传输避免带宽打满 rsync --bwlimit1000 -avz /local/path userremote:/path # 限速1MB/s # 3. 断点续传 rsync --partial --progress -avz largefile userremote:/path3. 文件操作核心命令3.1 权限管理黄金组合# 递归修改目录所有者 chown -R nginx:nginx /var/www # 注意-R在多层目录时谨慎使用 # 精细化权限控制 setfacl -Rm u:user1:rwX,d:u:user1:rwX /shared # 关键点 # X与x的区别X只对目录设置执行权限 # d: 设置默认ACL影响后续新建文件3.2 空间分析神器# 1. 查看目录大小 du -h --max-depth1 / | sort -hr # --max-depth控制遍历深度 # 2. 查找大文件 find / -type f -size 100M -exec ls -lh {} # 100M表示大于100MB的文件 # 3. 实时查看磁盘IO iotop -oP # 只显示实际有IO的进程3.3 日志处理技巧# 1. 实时监控日志 tail -f /var/log/nginx/access.log | grep 500 # 2. 统计错误码出现次数 awk {print $9} access.log | sort | uniq -c | sort -nr # 3. 按时间范围提取日志 sed -n /10\/Nov\/2023:14:00/,/10\/Nov\/2023:15:00/p access.log4. 系统管理必备命令4.1 进程管理进阶# 1. 查找进程的启动命令 ps -ef | grep nginx # 第二列是PID可以用下面命令看详细信息 cat /proc/[PID]/cmdline # 2. 优雅重启服务 kill -HUP $(pgrep nginx) # 重新加载配置不中断服务 # 3. 监控进程资源占用 pidstat -p [PID] 1 5 # 每1秒采样共5次4.2 定时任务管理# 1. 编辑当前用户crontab crontab -e # 示例每天3点备份 0 3 * * * /usr/bin/rsync -a /data /backup # 2. 查看执行日志 grep CRON /var/log/syslog # Ubuntu系 grep CRON /var/log/cron # CentOS系4.3 系统信息速查# 1. 查看硬件信息 lscpu # CPU详情 lsblk # 磁盘分区 free -h # 内存使用 # 2. 查看系统负载 uptime # 输出三个数字分别代表1/5/15分钟平均负载 # 建议负载值超过CPU核心数就需要关注5. 高频问题解决方案5.1 文件已打开无法删除# 1. 查找占用进程 lsof /path/to/file # 2. 查看进程详情 ps -p [PID] -f # 3. 确认后终止进程 kill -9 [PID]5.2 磁盘空间不足但找不到大文件# 可能是被删除的文件仍被进程占用 lsof | grep deleted # 输出中看到文件大小找到对应进程重启即可释放5.3 SSH连接缓慢# 在/etc/ssh/sshd_config中添加 GSSAPIAuthentication no UseDNS no # 然后重启sshd systemctl restart sshd6. 效率提升技巧6.1 命令别名设置在~/.bashrc中添加alias llls -alF alias grepgrep --colorauto alias dfdf -h alias dudu -h6.2 历史命令优化# 在~/.bashrc中添加 export HISTTIMEFORMAT%F %T # 给历史命令加时间戳 export HISTSIZE10000 # 内存中保存数量 export HISTFILESIZE20000 # 文件保存数量6.3 终端复用神器tmux# 基础会话管理 tmux new -s session_name # 新建会话 tmux attach -t session_name # 接入会话 Ctrlb d # 分离会话 # 窗口管理 Ctrlb c # 新建窗口 Ctrlb , # 重命名窗口 Ctrlb 数字 # 切换窗口这些命令组合就像我的瑞士军刀在无数次深夜故障排查中救我于水火。建议新手先掌握基础用法再逐步深入参数细节。记住最有效的学习方式就是亲手复现每个示例然后举一反三应用到自己的工作中。