百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

Linux常用指令简介(4):系统信息查看

nanshan 2024-10-24 11:42 16 浏览 0 评论

在这一系列文章中,将介绍一些常见的Linux命令,帮助您快速熟悉并开始在Linux系统上进行日常操作。具体的指令使用方法可能会因系统而异,注意根据其自身的 Linux 系统进行适当的调整,可以通过man或--help指令查询。

我将常用指令分成了如下几类介绍:用户和权限管理、文件和目录管理、压缩和解压缩、系统信息查看、软件包管理、日志查看和管理、文件搜索和过滤、网络相关、文本处理、数据备份和同步。

四、系统信息查看

1. uname:显示系统内核的信息,包括操作系统名称、主机名、内核版本等

uname -s:显示操作系统的名称。例如,Linux。
uname -r:显示内核的版本。例如,6.2.0-31-generic。
uname -v:显示操作系统版本的详细信息。例如,#31~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Wed Aug 16 13:45:26 UTC 2
uname -m:显示硬件架构的类型。例如,x86_64。
uname -p:显示处理器类型。例如,x86_64。
uname -o:显示操作系统的制造商。例如,GNU/Linux。
uname -a:显示所有可用的系统信息。包括内核名称、网络节点主机名、操作系统版本、内核版本、硬件架构和发布日期等。

2. hostname:用于显示或设置当前系统的主机名(主机名是用来标识网络上的计算机或设备的名称

以下是一些常见的用法和示例:

hostname:显示当前系统的主机名。
hostname -f:显示完整的主机名,包括域名。
hostname -s:显示仅主机名,不包括域名。
hostname -d:显示域名部分。
hostname -i:显示 IP 地址。
hostname newhostname:将主机名临时设置为"newhostname"。
//该指令会影响到整个系统,而不仅仅是当前终端会话。需要以管理员权限运行此命令。

注意:要使新的主机名永久生效,需要修改主机的配置文件,如/etc/hostname和/etc/hosts,并重新启动系统。

扩展:

1.终端命令行的格式通常是:

用户名@主机名:当前工作目录$

其中:

用户名 是当前登录用户的用户名。

主机名 是计算机的主机名。

当前工作目录 是当前所在的路径。

例如,如果当前登录用户是 “user”,主机名是 “ubuntu”,当前工作目录是 “/home/user”,那么终端命令行的格式将是:

user@ubuntu:~$

2. localhost:localhost是一个特殊的主机名,用于指代本地计算机或本地主机。当你在计算机上使用localhost作为主机名时,它会映射到本地回环地址(loopback address)即127.0.0.1。这意味着通过使用localhost或者回环地址,你可以从本地计算机上访问自己的网络服务而无需经过网络物理接口。

3. 在没有DNS关联的情况下,主机名将失去其实际的意义。没有DNS记录来映射主机名到IP地址,其他设备将无法使用主机名来访问或识别设备。

3. whoami:用于显示当前登录用户的用户名

4. uptime:用于显示系统的运行时间和负载情况如:

23:12:22 up 27 min, 1 user, load average: 0.00, 0.00, 0.01

时间:当前时间是 23:12:22。

运行时间:系统已经连续运行了27分钟。

用户:当前有1个用户登录系统。

负载平均值:系统负载平均值显示为0.00, 0.00, 0.01。这里的三个数字分别代表过去1分钟、5分钟和15分钟内的平均负载。

负载平均值并不仅仅表示CPU的使用情况,还包括其他资源的使用情况,例如磁盘IO、内存等。

负载平均值为 1:当负载平均值超过 1 时,表示系统正在处理多个进程,但仍在其处理能力范围内。负载平均值低于 1 表示系统处于轻负荷状态。

负载平均值超过 CPU 核心数:如果负载平均值持续超过可用 CPU 核心数(例如,负载平均值为 8,而系统有 4 个 CPU 核心),表示系统处理能力已经达到或超过极限。

5. top:实时显示系统的资源使用情况,包括 CPU 使用率、内存使用情况、进程列表等

在终端中输入top命令并按回车键执行后,会出现一个实时监控的界面,它以表格形式显示了系统的各项性能指标和进程信息。

在默认视图下,top会显示当前系统中运行的进程列表,包括进程的PID、用户、CPU占用率、内存占用率、进程名称等。此外,top还提供了交互式的操作方式,你可以使用不同的按键来进行排序、筛选和控制显示等操作。

下面是一些常用的top命令的交互按键:

1:切换到全局视图,显示每个CPU核心的性能指标。
M:按内存使用量进行排序。
P:按CPU使用率进行排序。
T:按时间累积排序。
k:向进程发送信号以终止它。
r:重新调整进程的优先级。
q:退出top命令。
//注意:区分大小写。

6. ps:用于查看当前系统中正在运行的进程信息

默认情况下,终端直接输ps只会显示与当前终端会话关联的进程信息。

ps -e 或 ps -A:显示所有进程,而不仅仅是当前终端会话关联的进程。
ps -f:显示完整的进程信息,包括进程的PID、PPID(父进程的PID)、CPU使用率、内存使用量、启动时间等。
ps -u username:显示指定用户的进程列表。
ps -p PID:显示指定PID的进程信息。
ps aux:以全格式显示进程信息,包括所有用户的所有进程。
ps -o:通过指定字段来自定义显示的进程信息,例如ps -o pid,ppid,cmd可以只显示进程的PID、PPID和命令。
//通过结合不同的选项,可以根据需要获取特定的进程信息。

7. free:用于查看系统内存的使用情况。

输出结果的单位通常是以千字节(kilobytes)为基准,也可以通过命令参数进行调整。以下是free命令最常见的输出结果的解释:

total:总共可用的物理内存量。

used:已使用的物理内存量。

free:空闲的物理内存量。

shared:被多个进程共享的内存量。

buffers/cached:被内核缓存和缓冲区占用的内存量,包括文件系统缓存等。

available:可用的物理内存量,即包括空闲的内存和缓存的内存。

可以通过这些参数来调整输出的格式和显示的信息。下面是一些常见的free命令参数:

-h:以人类可读的方式显示内存大小,自动选择合适的单位(如GB、MB、KB)。
-b:以字节为单位显示内存大小。
-k:以千字节(KB)为单位显示内存大小。
-m:以兆字节(MB)为单位显示内存大小。
-g:以吉字节(GB)为单位显示内存大小。
-s <延迟秒数>:持续输出内存使用情况,并且每隔一定秒数刷新一次。
-c <刷新次数>:显示指定次数的内存使用情况后退出。
-w:宽显示模式,适用于宽屏终端,将buffers/cached列分离显示。
-o:不显示内存总量和已使用内存的行。

8. du:用于估算目录或文件的磁盘使用量(磁盘占用)。“du"代表"disk usage”(磁盘使用)

du:显示当前目录的磁盘使用量,并递归地显示其子目录的磁盘使用量。
du -h:以人类可读的格式显示磁盘使用量,自动选择合适的单位(如GB、MB、KB)。
du -s:仅显示总体磁盘使用量,而不显示每个子目录的详细信息。
du -c:在最后一行显示总体磁盘使用量总和。
du -a:显示目录中每个文件的磁盘使用量,而不仅仅是目录总体使用量。
du -d <深度>:限制递归显示的目录深度。
du -k:以千字节(KB)为单位显示磁盘使用量。
du -m:以兆字节(MB)为单位显示磁盘使用量。
du -g:以吉字节(GB)为单位显示磁盘使用量。

9. lscpu:显示系统的 CPU 信息,包括制造商、型号、核心数、线程数等。

10. lsblk:列出系统的块设备信息,包括磁盘、分区和挂载点等。

输出字段及其含义:

NAME:设备的名称。

MAJ:MIN:设备的主、次设备号。

RM:如果设备是可移动设备,则该字段为1,否则为0。

SIZE:设备的大小。

RO:如果设备为只读,则为1,否则为0。

TYPE:设备的类型,如磁盘、分区、逻辑卷等。

MOUNTPOINT:如果设备被挂载,该字段显示挂载点的路径;否则为空。

11. lshw:显示硬件信息,包括 CPU、内存、磁盘、网卡等详细信息。

12. lsusb:显示连接到 USB 总线上的设备列表。

相关推荐

删库之后不要着急跑路,教你神不知鬼不觉找回数据

在工作中,我们误删数据或者数据库,我们一定需要跑路吗?我看未必,程序员一定要学会自救,神不知鬼不觉的将数据找回。在mysql数据库中,我们知道binlog日志记录了我们对数据库的所有操作,所以...

数据库告警不可用,增删改受阻(数据库限制删除)

前言:昨晚,突然出现服务不可用告警,查看日志上线报文入库到数据库很慢并受阻,出现数据不同步问题。排查问题查看发现服务都是在执行update、insert这些DML命令的时候,报的数据库执行超时。经过一...

Binlog实现MySQL复制,5个关键步骤,务必掌握!

复制是MySQL最重要的功能之一,MySQL集群的高可用、负载均衡和读写分离都是基于复制来实现的。Binlog就是实现主从复制的关键,主数据库将修改操作记录到Binlog中,从数据库通过解...

MySQL数据实时增量同步到Elasticsearch

Mysql到Elasticsearch的数据同步,一般用ETL来实现,但性能并不理想,目前大部分的ETL是定时查询Mysql数据库有没有新增数据或者修改数据,如果数据量小影响不大,但如果几百万上千万的...

MySQL 数据库恢复:如何执行时间点恢复(PITR)以挽救受损数据?

天津鸿萌科贸发展有限公司从事数据安全服务二十余年,致力于为各领域客户提供专业的数据恢复、数据备份、数据取证、数据迁移、网络安全、数据清除等解决方案,并针对企业面临的数据安全风险,提供专业的相关数据安全...

阿里面试:MySQL Binlog有哪些格式?底层原理?优缺点?

binlog的格式也有三种:STATEMENT、ROW、MIXED,下面我详解binlog三种模式@mikechenStatement模式Statement模式:是基于SQL语句的复制(statem...

快速带你读懂MySQL的binlog写入机制

深入讲解MySQL中的重要日志binlog的写入机制以及影响IO性能的关键配置,并且介绍了如何利用binlog去恢复数据,保证MySQL的可靠性。Q:binlog写入时机binlog的写入逻辑并...

MySQL 误删除数据恢复全攻略:基于 Binlog 的实战指南

在MySQL的世界里,二进制日志(Binlog)就是我们的"时光机"。它默默记录着数据库的每一个重要变更,就像一位忠实的史官,为我们在数据灾难中提供最后的救命稻草。本文将带您深入掌握如...

一文了解MySQL Binlog(一文了解肝脏有益和有害的食物)

MySQL的Binlog日志是一种二进制格式的日志,Binlog记录所有的DDL和DML语句(除了数据查询语句SELECT、SHOW等),以Event的形式记录,同时记录语句执行时...

数据丢失?别慌!MySQL备份恢复攻略

想象一下,某个晴朗的午后,你正享受着咖啡,突然接到紧急电话:你的网站或APP彻底挂了!系统崩溃,界面全白。虽然心头一紧,但你或许还能安慰自己:系统崩溃只是暂停服务,数据还在,修复修复就好了。然而,如果...

Mysql中的bin log、redo log、undo log的区别

最近在整理面试题,在看mvcc的时候看到了undolog,今天索性把这三个log都记录一遍。MySQL的逻辑架构说之前先说一下MySQL的基本架构,MySQL主要分为两层:Server层和存储引...

binlog日志定时清理(binlog清理规则)

binlog日志binlog是MySQL数据库的一种日志文件,用于记录所有对数据的修改操作。binlog全称为binarylog,它以二进制格式记录MySQL服务器上所有的修改操作,包括对哪个数据库...

茶水间炸锅了!菜鸟误删用户表,运维老张的MySQL救命三招!

(公司茶水间,运维老张、开发小王和新人小李围着咖啡机)小李:(紧张兮兮)张哥!我...我好像把测试库的用户表删了!下午演示咋办啊?老张:(淡定喝咖啡)慌啥?昨晚的备份是吃干饭的?走,教你恢复!一、基础...

解决运维痛点,提高运维安全性-雷池 SafeLine WAF新功能身份认证

雷池介绍使用雷池SafeLineWAF已经两年多了,在1.5.x版本时就已经开始测试使用,并在推出LTS版本后转入LTS分支。近期雷池SafeLineWAF重点更新了身份认证功能,并提供了SS...

【Docker 新手入门指南】第十五章:常见故障排除

一、前期准备:收集关键信息在排查问题前,建议先获取以下系统数据,便于精准定位故障:1.系统基础信息#查看Docker版本(确认是否为最新稳定版)dockerversion#查看...

取消回复欢迎 发表评论: