在日常Linux系统运维工作中,掌握一些常用的系统管理命令至关重要。本文将详细介绍文件操作、网络诊断和进程管理三个方面的常用命令。

1. 文件操作

查看目录大小

du 命令用于估算磁盘使用空间,是排查磁盘空间问题的利器。

# 查看指定目录大小
du -sh /var/log

# 查看当前目录下各子目录大小
du -h --max-depth=1

# 按大小排序显示
du -sh /var/log/* | sort -rh

常用参数说明:

  • -s:显示总计
  • -h:人类可读格式(KB/MB/GB)
  • --max-depth:指定显示目录层级

其他常用文件操作命令

# 查看文件或目录详细信息
ls -lh /var/log

# 查找大文件
find / -type f -size +100M

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

2. 网络诊断

检查端口占用

netstat 命令是网络诊断的瑞士军刀,可查看网络连接、路由表、接口统计等信息。

# 查看80端口占用情况
netstat -tlnp | grep 80

# 查看所有监听端口
netstat -tlnp

# 查看所有网络连接
netstat -an

# 查看TCP连接
netstat -tn

参数说明:

  • -t:显示TCP协议
  • -l:仅显示监听中的套接字
  • -n:显示数字地址
  • -p:显示进程信息

注意:在新版Linux系统中,netstat 已被 ss 命令逐渐取代。

# 使用ss命令替代netstat
ss -tlnp | grep 80

其他网络诊断工具

# 测试网络连通性
ping -c 4 google.com

# 追踪路由
traceroute google.com

# 查看网络接口配置
ip addr show

3. 进程管理

服务管理

systemctl 是systemd系统的管理工具,用于控制服务、查看系统状态等。

# 重启nginx服务
systemctl restart nginx

# 启动服务
systemctl start nginx

# 停止服务
systemctl stop nginx

# 查看服务状态
systemctl status nginx

# 设置服务开机自启
systemctl enable nginx

# 禁止服务开机自启
systemctl disable nginx

进程查看与管理

# 查看所有进程
ps aux

# 实时查看进程状态
top

# 按CPU/内存排序
htop

# 终止进程
kill -9 <PID>

# 按名称终止进程
pkill -9 nginx

日志查看

# 查看系统日志
journalctl -u nginx

# 查看最近20条日志
journalctl -n 20

# 实时查看日志
journalctl -f

总结

掌握以上Linux系统管理命令,可以有效提升运维效率。建议在实际工作中多加练习,熟练运用这些工具处理各种系统问题。


参考资料