每位系统管理员都应掌握的 50 个必备 Linux 命令

本页内容

  • 用于系统信息和监控的 Linux 命令
  • 用于文件和目录管理的基础 Linux 命令
  • Linux 网络命令
  • Linux 安全命令
  • EventLog Analyzer 如何帮助进行 Linux 监控

Linux 是最广泛使用的操作系统之一,尤其是在 服务器 环境中。对于系统管理员来说,掌握 Linux 命令对日常任务至关重要。无论是故障排除、文件管理还是系统安全,深入理解 Linux 命令都能节省时间并提高效率。本文提供了一份 Linux 备忘单,列出了每位系统管理员应掌握的 50 个顶级 Linux 命令。

基础 Linux 命令速查表

50 个顶级 Linux 命令备忘单

以下是所有 Linux 命令的完整列表:

系统信息与监控

  • uname: 显示系统信息(内核、操作系统等)。
  • uptime: 提供系统运行时间和负载平均值信息。
  • top: 显示实时系统进程及其资源消耗。
  • htop: top 命令的交互式版本,提供增强的进程查看器。
  • df: 显示磁盘空间使用统计。
  • du: 显示文件和目录的磁盘使用详情。
  • free: 显示内存使用情况(RAM 和交换空间)。
  • vmstat: 报告系统性能指标(CPU、内存、IO)。
  • iostat: 显示 CPU、设备和网络性能统计。
  • who: 列出已登录用户。
  • w: 显示谁已登录及其当前操作。

文件和目录管理

  • ls: 列出当前目录中的所有文件和目录。
  • pwd: 显示当前目录的路径。
  • cd: 切换到指定目录。
  • mkdir: 创建新目录。
  • rmdir: 删除空目录。
  • touch: 创建空文件或更新现有文件的访问和修改时间戳。
  • chmod: 修改文件权限以控制访问。
  • cp: 复制文件和目录到其他位置。
  • mv: 移动或重命名文件和目录。
  • rm: 删除文件或目录。
  • find: 根据特定条件搜索文件。
  • locate: 使用预建数据库快速定位文件。
  • cat: 显示文件内容。
  • less: 分页查看文件内容。
  • more: 类似 less,但功能较少。
  • head: 显示文件的前几行。
  • tail: 显示文件的最后几行。
  • sort: 以特定顺序整理文件内容。
  • uniq: 删除文件中连续重复的行。
推荐阅读:

想了解更多关于Linux文件和目录管理的内容吗?请查看我们关于Linux文件完整性监控、在Linux中定位文件以及从Linux机器中删除或删除目录的操作指南。

用户管理

  • whoami: 显示当前登录用户的用户名。
  • id: 显示当前用户的用户和组ID。
  • passwd: 更改指定用户的密码。
  • adduser: 向系统添加新用户。
  • deluser: 从系统中删除用户。
  • usermod: 修改现有用户账户的属性。
  • groups: 列出用户所属的所有组。
  • sudo: 以提升的权限(超级用户)执行命令。
  • su: 切换到另一个用户账户,通常是root。显示当前用户。
  • last: 显示登录历史。
推荐阅读:

想了解更多关于Linux用户管理的内容?请查看我们关于在Linux系统中列出用户和在Linux机器中将用户添加到组的操作指南。

网络

  • ping: 检查与主机的连通性。
  • wget: 通过HTTP、HTTPS或FTP协议从互联网检索文件。
  • curl: 使用包括HTTP、FTP等多种协议向服务器传输和接收数据。
  • ifconfig: 显示和配置网络接口(已弃用,已被ip命令取代)。
  • iftop: 监控网络接口的实时带宽使用情况。
  • nmap: 扫描网络以检测开放端口、服务和网络设备。
  • tcpdump: 捕获和分析网络数据包,用于故障排除和安全监控。
  • nslookup: 查询DNS以将域名解析为IP地址。
  • ip: 配置和管理网络接口及路由表。
  • netstat: 显示网络连接和监听端口。

时间紧张?获取Linux命令速查表PDF,快速访问并作为您的常用参考!

用于系统信息和监控的 Linux 命令

这些Linux命令帮助系统管理员收集有关系统性能、硬件详情和资源使用的关键信息,实现主动管理和故障排除。

命令描述示例示例输出
uname显示系统详情,包括内核版本和系统架构。uname -a输出详细信息,如内核名称、版本和架构。
df报告已挂载文件系统的磁盘空间使用情况。df -h以人类可读格式显示文件系统详情(大小、已用、可用空间和挂载点)。
du显示文件和目录的磁盘使用情况。du -sh /path汇总指定目录的大小。
free显示内存使用情况,包括总内存、已用内存和空闲内存。free -h以人类可读的格式输出内存详细信息。
vmstat提供有关内存、CPU 和 I/O 活动的详细信息。vmstat 5每 5 秒输出一次系统性能数据。
last显示最近登录用户列表,有助于识别任何可疑的登录尝试。last列出最近的登录信息,包括用户名、登录时间和源 IP 地址。
who显示当前登录的用户,包括他们的登录时间和来源 IP 地址。who列出已登录用户及其登录时间。(例如,“user tty7 2024-12-08 10:00”)
w类似于 who 命令,但还显示用户的活动情况。w显示系统运行时间、登录用户和每个用户的活动进程摘要。
iostat跟踪 CPU 使用率和磁盘 I/O 统计信息。iostat -x显示设备的扩展 I/O 统计信息。
Linux 命令速查表

用于文件和目录管理的基础 Linux 命令

文件管理 对于维护系统的组织性以及确保数据的可访问性和安全性至关重要。这些 Linux 命令帮助管理文件、目录和存储,从创建和修改文件到搜索文件。

命令描述示例示例输出
ls显示当前目录中的文件和目录。ls -l以详细的长列表格式显示文件,包括权限、所有权和大小。
pwd打印当前工作目录,显示从根目录开始的完整路径。pwd该命令显示用户当前工作的目录。(例如,“/home/user/documents”)
mkdir在指定位置创建新目录。mkdir new_folder在当前目录中创建名为 new_folder 的文件夹。
rmdir删除空目录。rmdir old_folder如果目录为空,则删除名为 old_folder 的目录。
cd更改当前目录。cd /home/user切换到/home/user目录。
cp复制文件或目录。cp file1.txt file2.txt将file1.txt复制到file2.txt。
mv移动或重命名文件和目录。mv file1.txt newdir/将file1.txt移动到newdir目录。
rm删除文件或目录。rm file.txt删除file.txt。
find根据条件搜索文件和目录。find /path -name "*.txt"查找指定路径中所有.txt文件。
locate使用预构建数据库快速搜索文件。locate file.txt显示数据库中file.txt的位置。
touch创建空文件或更新文件时间戳。touch newfile.txt创建newfile.txt或更新其时间戳。
chmod修改文件权限以控制访问。chmod 755 file.sh赋予所有者读、写和执行权限,赋予其他用户读和执行权限。
cat显示文件的全部内容。cat file.txt将file.txt的全部内容打印到终端。
less一页一页地显示文件内容。less file.txt打开file.txt以分页查看并支持导航。
more 类似于less命令,但仅支持向前导航。more file.txt一页一页地显示file.txt内容。
head 显示文件的前几行head -n 5 file.txt显示 file.txt 的前 5 行。
tail显示文件的最后几行。tail -n 10 file.txt显示 file.txt 的最后 10 行。
nano 一个基本的命令行文本编辑器。nano file.txt在 Nano 编辑器中打开file.txt 进行编辑。
vim 一个功能丰富的高级文本编辑器。vim file.txt在 Vim 中打开file.txt 进行高级编辑。
sort 按字母或数字顺序排序文件中的行。sort file.txt显示按行排序后的 file.txt。
uniq 删除文件中的重复行。sort file.txt | uniq显示 file.txt 中的唯一行。
find、locate、chmod、cd、ls 和 cat 命令在 linux 中的使用

Linux 网络配置和管理命令

这些 Linux 网络命令对于配置网络接口、监控网络连接和诊断网络相关问题至关重要。

命令描述示例示例输出
ping通过 ICMP 数据包测试与远程主机的连接。ping google.com向 google.com 发送 ICMP 回显请求并显示响应时间。
ifconfig 配置或显示网络接口(已被 ip 命令取代)。ifconfig eth0显示 eth0 的 IP 地址、子网掩码及其他详细信息。
ip配置网络接口和路由。ip addr show显示所有网络接口的 IP 地址信息。
netstat 显示网络连接、路由表和接口统计信息。netstat -tuln列出监听端口及其关联的服务。
ss显示套接字统计信息,是 netstat 命令的更快替代方案。ss -tuln显示监听端口和活动连接列表。
traceroute跟踪数据包到目标主机的路径。traceroute google.com显示到达 google.com 的路由和跳数。
nslookup 查询 DNS 以获取域名或 IP 地址信息。nslookup example.com显示与 example.com 关联的 IP 地址。
curl使用多种协议在服务器之间传输数据。curl -O http://example.com/file.zip从 example.com 下载 file.zip。
wget从互联网下载文件。wget http://example.com/file.zip将 file.zip 下载到当前目录。
scp在系统之间安全复制文件。scp file.txt user@remote:/path将 file.txt 复制到远程服务器的 /path 目录。
rsync在两个位置之间同步文件和目录,可以是本地或远程。rsync -av source/ dest/从 source 复制文件到 dest,同时保留权限、时间戳和符号链接。
iftop显示网络接口的实时带宽使用情况,帮助识别异常流量模式。Iftop按 IP 显示带宽使用情况。
nmap扫描系统或网络上的开放端口,此命令有助于识别暴露的服务。nmap -sP 192.168.1.0/24主机 192.168.1.1 在线。
tcpdump捕获并分析网络数据包,用于故障排除和监控网络流量。tcpdump -i eth0监控 eth0 接口上的数据包。
Linux 终端命令

Linux 安全与监控命令

对于系统安全、用户管理以及关键系统资源的持续监控,这些 Linux 安全命令是必不可少的。

命令描述示例示例输出
sudo 授予执行命令的超级用户权限。sudo apt update以超级用户身份运行更新。
passwd 更改用户密码以保护账户安全。passwd username提示为指定用户输入新密码。
fail2ban-client管理 Fail2Ban,通过禁止 IP 防止暴力破解攻击。fail2ban-client status显示 Fail2Ban 服务状态及被禁止的 IP。
iptables 配置 Linux 防火墙规则。iptables -L列出当前防火墙规则。
ufw管理和配置防火墙设置。ufw allow 80/tcp允许端口 80 上的 HTTP 流量。
auditd记录与安全相关的事件,如登录尝试和访问违规,维护系统安全的审计轨迹。auditctl -l显示当前的审计规则。
top显示实时系统资源使用情况。(使用 Shift + M 按内存使用排序)top实时显示 CPU、内存和进程利用率。
htoptop 命令的增强版本,提供更友好、交互式的系统进程视图。htop提供资源使用的可视化和交互式显示。
ps列出当前运行的进程及其资源使用情况。ps aux显示所有活动进程及详细信息。
uptime显示系统运行时间,有助于发现异常停机。uptime显示运行时间、登录用户和系统负载。(例如,“10:15:23 up 5 days, 4:32, 3 users, load average: 0.24, 0.20, 0.22”)
lsof列出与运行中的进程相关联的打开文件。对故障排除非常有用。lsof /path/to/file显示所有访问 /path/to/file 文件的进程。

通过掌握这些命令,系统管理员可以显著提高生产力和故障排除能力。但保障 Linux 环境的安全需要更深层次的监控和事件响应。这就是 EventLog Analyzer 的作用,它提供了先进的日志管理功能,补充了 Linux 命令行的专业知识。

ps、top、lsof 和 sudo 命令在 linux 中的使用

EventLog Analyzer 如何帮助进行 Linux 监控

ManageEngine EventLog Analyzer 是一款全面的 日志管理 和 合规工具,通过集中来自所有 Linux 发行版的 Linux 监控syslog ,简化了监控流程。虽然 Linux 命令赋予了系统操作的能力,EventLog Analyzer 确保每个操作都被记录并分析以发现安全事件。

以下是 EventLog Analyzer 如何增强 Linux 监控的方式:

通过集中 syslog 实现 Linux 监控
 
 

跟踪 Unix 系统上的所有事件,如 cron 任务、会话连接与断开、停用服务等。

 
 

选择时间范围以筛选事件。

 
 

选择导出数据的所需格式(例如 CSV、PDF 或 Excel)。

失败的 sudo 命令执行
 
 

失败的 sudo 命令执行随时间的可视化表示。

 
 

列出用户尝试执行的具体失败 sudo 命令,有助于跟踪未授权或错误的特权命令执行。

 
 

每个失败命令执行占总失败尝试的比例,提供对最常尝试命令的洞察。

接下来是什么?

通过 30 天免费试用,探索 EventLog Analyzer 的 Linux 监控功能。