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

1. 文件操作

查看目录大小

du 命令用于估算文件或目录占用的磁盘空间,是排查磁盘空间问题的常用工具。

du -sh /var/log

命令参数说明:

  • -s:显示总计,不显示每个子目录的详情
  • -h:以人类可读的方式显示(KB、MB、GB)

常见用法:

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

# 查看最大的10个目录
du -ah /var | sort -rh | head -n 10

# 排除特定目录
du -sh --exclude='*.log' /var/log

2. 网络诊断

检查端口占用

netstat 命令用于显示网络连接、路由表、接口统计等信息。在排查服务端口问题时非常有用。

netstat -tlnp | grep 80

命令参数说明:

  • -t:显示 TCP 协议连接
  • -l:只显示监听状态的套接字
  • -n:显示数字地址和端口号(不解析主机名)
  • -p:显示进程信息

替代命令(现代 Linux 推荐使用 ss):

ss -tlnp | grep 80

常见用法:

# 查看所有连接状态
netstat -an

# 查看 UDP 端口
netstat -ulnp

# 查看特定端口被哪个进程占用
lsof -i :80

3. 进程管理

重启服务

systemctl 是 systemd 系统和服务管理器的控制工具,用于管理系统服务。

systemctl restart nginx

常用服务管理命令:

# 启动服务
systemctl start nginx

# 停止服务
systemctl stop nginx

# 查看服务状态
systemctl status nginx

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

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

# 查看服务是否正在运行
systemctl is-active nginx

# 查看所有已启动的服务
systemctl list-units --type=service

总结

掌握以上这些基础命令,可以帮助运维人员快速完成日常的系统管理工作。建议在实际环境中多加练习,熟练运用这些工具处理各种系统问题。


参考资料