在 linux 系统中,你可以使用多个命令来查看当前机器的配置信息,包括 CPU、内存、磁盘和操作系统等信息。以下是一些常用的命令:
1. 查看 CPU 信息
- lscpu:显示 CPU 架构信息,如型号、核心数等。
lscpu 命令在 Linux 系统中用于显示有关 CPU 架构的信息,包括其数量、型号、核心数、架构类型等。这个命令是查看处理器信息的快速且方便的方式,尤其对于确定系统的 CPU 性能和处理能力非常有用。
主要输出内容
运行 lscpu 会显示类似于以下的信息:
- 架构(Architecture):显示处理器的架构,如 x86_64、i686(32位)、ARM 等。
- CPU 运行模式(CPU op-mode(s)):显示 CPU 支持的操作模式,例如 32位、64位。
- 字节序(Byte Order):显示系统的字节序,通常是 Little Endian 或 Big Endian。
- CPU 个数(CPUs):显示物理 CPU 的总数。
- 每个 CPU 的核心数(On-line CPU(s) list):显示每个物理 CPU 上的核心数量。
- 线程数(Thread(s) per core):显示每个核心的线程数。多线程技术(如 Intel 的 Hyper-Threading)允许每个核心同时执行多个线程。
- 每个套接字的核心数(Core(s) per socket):显示每个 CPU 套接字上的核心数。
- 套接字数(Socket(s)):显示物理 CPU 套接字的数量。
- NUMA 节点数(NUMA node(s)):显示 NUMA(非一致性内存访问)节点的数量。这与 CPU 如何访问内存有关。
- 供应商 ID(Vendor ID):显示 CPU 制造商。
- CPU 系列(CPU family):显示 CPU 的系列号。
- 型号(Model):显示 CPU 的型号号。
- CPU MHz(CPU MHz):显示 CPU 的速度(兆赫兹)。
- CPU 最大 MHz(CPU max MHz)和 CPU 最小 MHz(CPU min MHz):显示 CPU 的最大和最小频率。
- 虚拟化(Virtualization):显示 CPU 是否支持虚拟化技术,以及使用的虚拟化类型。
使用场景
lscpu 命令非常适合于:
- 快速检查服务器或工作站的 CPU 配置。
- 识别系统中的 CPU 性能,例如在选择编译选项或优化软件性能时。
- 确定系统是否支持特定的 CPU 指令集或特性,例如虚拟化。
2. 查看内存信息
- free -h:显示内存使用情况,包括总内存、已使用、空闲等。
free -h 是一个在 Linux 系统中用来查看内存使用情况的命令。它提供了关于系统内存(RAM)和交换空间(swap)使用的信息。这个命令对于监控系统的内存使用情况非常有用,尤其是当你在调试内存相关问题或优化系统性能时。
命令说明
- free:这是实际的命令,用于显示内存信息。
- -h:这个选项意味着 "human-readable"(人类可读的)。它将输出格式化为更易于阅读的方式,例如使用 MB、GB 而不是以字节为单位。
total used free shared buff/cache avAIlable
Mem: 7.7G 3.1G 1.2G 598M 3.4G 3.7G
Swap: 2.0G 0B 2.0G
- total:显示总内存(Mem)或交换空间(Swap)的大小。
- used:显示已使用的内存或交换空间量。
- free:显示未被使用的内存或交换空间量。
- shared:显示多个进程共享的内存总量。
- buff/cache:显示被用作缓冲和缓存的内存量。
- available:显示可用于新进程的内存估计量,不会引起交换。这是因为一部分 buff/cache 内存实际上是可回收的。
使用场景
- 监控内存使用:定期检查系统的内存使用情况,特别是当运行内存密集型应用时。
- 调试性能问题:如果你的应用或服务表现出性能问题,free -h 可以帮助你确定是否是由于内存不足造成的。
- 系统配置:根据系统的内存使用情况调整相关配置,例如调整交换空间大小或优化内存使用。
3. 查看磁盘使用情况
df -h 是一个在 Linux 和类 Unix 系统中常用的命令,用于显示文件系统的磁盘空间使用情况。这个命令非常有用,特别是在管理磁盘空间和确保足够空间用于存储和应用程序运行时。
命令说明
- df:这是实际的命令,代表 "disk filesystem"。它用于报告文件系统的磁盘空间使用情况。
- -h:这个选项意味着 "human-readable"(人类可读的)。它使命令的输出以更易于阅读的格式显示,例如自动选择 KB、MB 或 GB 作为单位
输出内容
运行 df -h 通常会显示如下输出:
- Filesystem:显示文件系统的名称或标识。
- Size:显示文件系统的总大小。
- Used:显示已使用的空间量。
- Avail:显示还剩余多少空间可用。
- Use%:显示已使用空间的百分比。
- Mounted on:显示文件系统挂载的目录。
使用场景
- 监控磁盘空间:定期检查系统的磁盘空间使用情况,特别是当运行数据密集型应用时。
- 预防空间不足:确保关键分区(如 /、/home、/var 等)有足够的空间,以避免由于空间不足导致的应用或系统故障。
- 磁盘管理:帮助决定何时需要清理磁盘空间或增加存储容量。
4. 查看操作系统信息
uname -a 是 Linux 和类 Unix 系统中的一个命令,用于显示关于系统和内核的详细信息。这个命令对于了解正在运行的系统的核心信息非常有用。
命令说明
- uname:这个命令代表 "unix name",用于打印系统信息。
- -a:这个选项意味着 "all",命令将输出所有可用的系统信息。
输出内容
运行 uname -a 通常会显示如下输出:
Linux hostname 4.15.0-54-generic #58-Ubuntu SMP Mon Jun 24 10:55:24 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
这个输出包含以下信息:
- 内核名称:如 Linux。
- 节点名称:即系统的主机名。
- 内核发行版本:显示内核的版本号。
- 内核版本:提供更详细的内核版本信息,包括编译时间和编译器信息。
- 机器硬件名称:显示硬件平台名称(如 x86_64 表示 64 位系统)。
- 处理器类型:显示处理器类型,通常与机器硬件名称相同。
- 硬件平台:显示硬件平台(在一些系统中这与处理器类型相同)。
- 操作系统:显示操作系统信息,如 GNU/Linux。
使用场景
uname -a 命令非常适用于:
- 快速查看系统信息:了解正在运行的系统版本和内核信息。
- 故障排除和支持:在解决系统问题或寻求技术支持时提供必要的系统信息。
- 脚本和自动化:在编写脚本时,根据系统类型和版本作出相应的逻辑判断
5. 查看网络配置
ip addr 是一个在 Linux 系统中用于显示和管理网络接口地址的命令。它是 iproute2 包的一部分,用于替代过时的 ifconfig 命令。ip addr 提供了关于网络接口的详细信息,包括 IP 地址、子网掩码、广播地址和接口状态等
命令说明
- ip:这是用于显示和操作路由、设备、策略路由和隧道的工具。
- addr:这个子命令专注于管理和显示网络接口地址。
输出内容
运行 ip addr 通常会显示如下输出:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
.NET 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:1e:67:a4:45:00 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.100/24 brd 192.168.1.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::21e:67ff:fea4:4500/64 scope link
valid_lft forever preferred_lft forever
这个输出包含以下信息:
- 接口名称和状态:例如 lo(回环接口)和 eth0(以太网接口),以及它们的状态(如 UP、DOWN)。
- MTU(Maximum Transmission Unit):最大传输单元,即数据包的最大长度。
- qdisc(Queuing Discipline):排队规则。
- link/ether:物理地址(mac 地址)。
- inet:IPv4 地址。
- inet6:IPv6 地址。
- brd:广播地址。
- scope:地址范围(例如 host、link、global)。
- valid_lft 和 preferred_lft:地址有效期和首选期。
使用场景
ip addr 命令非常适用于:
- 查看 IP 地址:快速检查系统的 IP 地址和子网掩码。
- 诊断网络问题:帮助诊断网络连接问题。
- 网络配置和管理:用于配置网络接口和调整设置。
6. 查看硬盘和分区的详细信息
fdisk -l 是一个在 Linux 系统中用于查看和管理磁盘分区的命令。这个命令提供了关于系统中所有磁盘分区的详细信息,包括每个磁盘的大小、分区类型、分区表类型等。
命令说明
- fdisk:这是一个用于操作磁盘分区的命令行工具。
- -l:这个选项意味着 "list",命令将列出系统中所有磁盘的分区信息。
输出内容
运行 fdisk -l 通常会显示类似于以下的输出:
Disk /dev/sda: 931.5 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: ST1000DM010-2EP1
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 5C8F67AD-A911-4F0A-9E3B-78B9B3D8FDEE
Device Start End Sectors Size Type
/dev/sda1 2048 1050623 1048576 512M EFI System
/dev/sda2 1050624 1953523711 1952473088 931G Linux filesystem
这个输出包含以下信息:
- 磁盘设备:如 /dev/sda,显示磁盘的设备文件。
- 磁盘大小:显示磁盘的总大小。
- 磁盘型号:显示磁盘的型号(如果可用)。
- 单位:显示磁盘分区的单位,通常是扇区。
- 扇区大小:显示逻辑和物理扇区的大小。
- I/O 大小:显示磁盘的最小和最佳 I/O 大小。
- 磁盘标签类型:如 gpt 或 mbr,表示磁盘分区表的类型。
- 磁盘标识符:显示磁盘的唯一标识符。
- 分区表:列出每个分区的起始和结束扇区、总扇区数、大小和类型。
使用场景
fdisk -l 命令非常适用于:
- 查看磁盘分区:快速检查系统中所有磁盘的分区布局。
- 规划磁盘分区:在添加新磁盘或重新分配磁盘空间时了解当前分区情况。
- 故障排除:帮助诊断与磁盘分区相关的问题。
7. 查看系统运行时间和负载
- 7.1 uptime:显示系统运行时间、用户数量和系统负载。
uptime 是一个在 Linux 和其他类 Unix 系统中用来显示系统运行时间、用户登录数量以及系统负载的命令。它提供了一个快速了解系统运行状态的简洁概览。
命令说明
- uptime:这个命令用于报告自上次启动以来系统已经运行了多长时间。
输出内容
运行 uptime 通常会显示如下输出:
12:34:56 up 1 day, 2:03, 2 users, load average: 0.01, 0.05, 0.07
这个输出包含以下信息:
- 当前时间:显示命令执行时的系统时间,如 12:34:56。
- 系统运行时间:显示自系统上次启动以来经过的时间,如 up 1 day, 2:03 表示系统已运行 1 天又 2 小时 3 分钟。
- 用户数量:显示当前登录到系统的用户数量,如 2 users。
- 系统负载平均值:显示过去 1 分钟、5 分钟和 15 分钟的平均系统负载(load average)。系统负载是指在特定时间间隔内等待 CPU 时间的平均进程数。负载值提供了系统当前和近期的活动水平概览。
使用场景
uptime 命令非常适用于:
- 快速检查系统运行状态:了解系统是否稳定运行以及运行了多久。
- 监控系统负载:观察系统负载是否超过正常范围,特别是在性能调优和故障排除时。
- 脚本和自动化:在脚本中用于检查系统运行时间,可以用于自动化报告和监控。
- 7.2 top 或 htop(如果安装了 htop):实时显示系统进程和资源使用情况。
top 命令是 Linux 和其他类 Unix 系统中用于实时显示系统进程和资源使用情况的一个非常有用的工具。它提供了一个动态更新的视图,显示系统中的进程列表,并按资源使用情况进行排序(通常是 CPU 使用率)。
命令说明
- top:这个命令用于实时显示系统的进程和当前资源使用情况。
输出内容
运行 top 命令通常会显示类似以下的输出:
- PID:进程标识号。
- USER:运行进程的用户。
- PR:进程优先级。
- NI:进程的“nice”值,影响其优先级。
- VIRT:虚拟内存大小。
- RES:常驻内存大小。
- SHR:共享内存大小。
- S:进程状态(例如,S 表示睡眠,R 表示运行)。
- %CPU:进程占用的 CPU 百分比。
- %MEM:进程占用的物理内存百分比。
- TIME+:进程占用 CPU 的总时间。
- COMMAND:启动进程的命令。
控制和交互
在 top 运行时,你可以使用不同的按键进行交互和调整显示:
- 按 h 或 ?:显示帮助。
- 按 P:按 CPU 使用率排序。
- 按 M:按内存使用率排序。
- 按 T:按累积时间排序。
- 按 k:杀死(kill)进程。
- 按 f:选择要显示的字段。
- 按 q:退出 top。
注意
部分命令可能需要 root 权限才能查看所有信息,例如 fdisk -l。这些命令会为你提供关于 Linux 系统硬件和软件配置的详细概览。