插件窝 干货文章 如何使用Linux命令行工具进行日常运维工作

如何使用Linux命令行工具进行日常运维工作

查看 bash log 文件 1003    来源:    2025-04-10

Linux命令行工具日常运维指南

作为IT工程师,掌握Linux命令行工具是日常运维工作的核心技能。以下是一些常用场景和工具的使用方法:

1. 系统监控与性能分析

基本监控命令

# 查看系统负载
uptime

# 查看内存使用情况
free -h

# 查看磁盘使用情况
df -h

# 查看磁盘I/O情况
iostat -x 1

# 查看网络连接
ss -tulnp  # 或 netstat -tulnp (较旧系统)

进程管理

# 查看进程树
pstree

# 动态查看进程
top  # 或更现代的 htop

# 按CPU使用率排序
ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu | head

# 杀死进程
kill -9 [PID]

2. 日志分析

常用日志文件

/var/log/messages   # 通用系统消息
/var/log/syslog     # 系统日志
/var/log/auth.log   # 认证日志
/var/log/kern.log   # 内核日志
/var/log/dmesg      # 启动消息

日志分析工具

# 查看最新日志
tail -f /var/log/syslog

# 查找错误
grep -i error /var/log/syslog

# 统计日志中404错误
grep " 404 " /var/log/nginx/access.log | wc -l

# 使用awk分析日志
awk '{print $1}' /var/log/nginx/access.log | sort | uniq -c | sort -nr

3. 网络诊断

基本网络工具

# 测试网络连通性
ping example.com

# 查看路由路径
traceroute example.com

# 检查DNS解析
dig example.com

# 网络接口信息
ip addr show  # 或 ifconfig (较旧系统)

# 查看网络连接
netstat -antp  # 或 ss -antp

高级网络分析

# 抓包分析
tcpdump -i eth0 port 80 -w capture.pcap

# 测试端口连通性
nc -zv example.com 22

# 带宽测试
iperf -s  # 服务端
iperf -c server_ip  # 客户端

4. 文件与权限管理

文件操作

# 查找大文件
find / -type f -size +100M -exec ls -lh {} \;

# 查找并删除旧文件
find /var/log -name "*.log" -mtime +30 -exec rm {} \;

# 统计目录大小
du -sh /var/*

权限管理

# 修改文件权限
chmod 755 script.sh

# 修改文件所有者
chown user:group file.txt

# 设置SUID
chmod u+s /usr/bin/program

# 检查SUID/SGID文件
find / -perm -4000 -o -perm -2000 -type f -exec ls -la {} \;

5. 自动化运维

定时任务

# 编辑crontab
crontab -e

# 示例:每天凌晨备份
0 0 * * * /usr/bin/backup-script.sh

Shell脚本基础

#!/bin/bash
# 简单备份脚本示例
BACKUP_DIR="/backups"
DATE=$(date +%Y%m%d)
tar -czf "$BACKUP_DIR/backup-$DATE.tar.gz" /var/www/html
find $BACKUP_DIR -name "*.tar.gz" -mtime +7 -exec rm {} \;

6. 软件包管理

Debian/Ubuntu (APT)

# 更新软件包列表
sudo apt update

# 升级已安装的包
sudo apt upgrade

# 安装新软件
sudo apt install nginx

# 删除软件
sudo apt remove nginx

RHEL/CentOS (YUM/DNF)

# 更新系统
sudo yum update

# 安装软件
sudo yum install httpd

# 删除软件
sudo yum remove httpd

7. 安全相关

用户管理

# 添加用户
useradd -m newuser

# 设置密码
passwd newuser

# 查看登录用户
who

# 查看登录历史
last

SSH安全

# 生成SSH密钥
ssh-keygen -t rsa -b 4096

# 复制公钥到远程服务器
ssh-copy-id user@remote_host

# 限制root登录(编辑/etc/ssh/sshd_config)
PermitRootLogin no

8. 实用技巧

命令行生产力

# 快速返回之前目录
cd -

# 重复上条命令
!!

# 以sudo执行上条命令
sudo !!

# 创建并进入目录
mkdir -p /path/to/new/dir && cd $_

# 快速清空文件
> file.log

系统信息

# 查看Linux发行版
cat /etc/*release

# 查看内核版本
uname -a

# 查看CPU信息
lscpu

# 查看硬件信息
lshw

掌握这些命令和技巧,可以高效完成大多数Linux系统运维工作。根据具体需求,可以进一步学习更专业的工具如Ansible、Prometheus、Grafana等自动化运维和监控工具。