Linux系统排查命令详解:用户信息、历史命令、端口与进程检查

需积分: 0 0 下载量 45 浏览量 更新于2024-08-04 收藏 488KB DOCX 举报
本文主要介绍了Linux系统中常用的排查命令,包括查看用户信息、历史命令、端口状态以及进程管理等方面,旨在帮助系统管理员更好地维护和诊断Linux系统。 1. 查看用户信息 - `/etc/passwd` 文件包含了所有用户的基本信息,如用户名、主目录、默认Shell等。 - `/etc/shadow` 文件存储了加密的用户密码以及其他密码相关的设置。 - 使用 `awk -F: '$3==0{print $1}' /etc/passwd` 查找uid为0(特权用户)的账户,通常只有root用户。 - `who` 命令显示当前登录的用户。 - `w` 命令提供更详细的信息,包括用户活动和系统负载。 - `uptime` 显示系统运行时间、当前在线用户数以及系统负载。 - `passwd -d username` 可以删除指定用户的密码,使账户无法通过密码登录。 - `stat /etc/passwd` 查看密码文件的修改时间,判断是否存在异常。 - 使用 `grep` 过滤 `/etc/passwd` 文件,检查是否有新的用户或root权限账户。 - 查找可以远程登录的账号和具有sudo权限的账号。 2. 历史命令 - `.bash_history` 文件存储了用户的历史命令记录,位于每个用户的家目录下。 - `history` 命令显示用户的历史命令列表。 - `cat .bash_history >> history.txt` 将历史命令保存到文本文件。 3. 查看端口 - `netstat -antp` 列出所有活动的TCP连接及其进程信息。 - 通过`/proc/pid/exe` 查看对应进程的文件路径。 - `ls -l /proc/*/exe | grep xxx` 查找特定名称的进程。 - 通过可疑IP地址查找相关进程的PID。 4. 查看进程 - `ps -aux` 显示系统中所有进程的详细信息。 - `ps -aux | grep pid` 查找指定PID的进程。 - 监控特定应用的线程数,例如SSH。 - 监控网络客户端连接数,通过 `netstat` 和 `grep` 过滤特定端口。 - `ps aux --sort=pcpu | head -10` 查看CPU使用率最高的前10个进程。 这些命令是Linux系统管理中的基础工具,用于诊断系统问题、安全审计和性能监控。熟悉并熟练使用它们将极大地提升运维效率。