0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Linux中的uptime命令详解

Linux爱好者 来源:csdn 作者:恋猫大鲤鱼 2020-12-29 10:51 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

1.命令简介

uptime 用于显示系统总共运行了多长时间和系统的平均负载。

无选项 uptime 命令会显示一行信息,依次为:当前时间、系统已经运行了多长时间、目前有多少用户登录、系统在过去的 1 分钟、5 分钟和 15 分钟内的平均负载。输出结果等同于 top 命令汇总区的第一行。

2.命令格式

uptime [options]

3.选项说明

-p, --pretty 采用可读友好的格式输出系统已运行时长 -h, --help 显示帮助信息 -s, --since 以格式 yyyy-mm-dd HHSS format 输出系统启动时间 -V, --version 显示版本信息

4.常用示例

(1)查看系统运行时长与平均负载。

uptime 2255 up 445 days, 9:38, 5 users, load average: 0.08, 0.08, 0.06

显示的信息依次为:当前时间(2255)、系统已经运行了多长时间(up 445 days, 9:38,表示 445 天 9 时 38 分钟)、目前有多少登录用户(5 users)、系统在过去的 1 分钟、5 分钟和 15 分钟内的平均负载(load average: 0.08, 0.08, 0.06)。

(2)查看系统启动时间。

uptime -s 2018-07-20 1321

(3)只输出系统运行时长。

uptime -p up 1 year, 11 weeks, 4 days, 9 hours, 43 minutes

5.拓展知识

5.1 什么是系统平均负载

系统平均负载指单位时间内,系统中处于可运行状态和不可中断状态的进程数,也就是平均活跃进程数,他和 CPU 使用率没有直接关系。

可运行状态的进程指正在使用 CPU 或正在等待使用 CPU 的进程,也就是我们常用 ps 命令看到的,处于 R 状态(Running 或 Runnable)的进程。

不可中断状态的进程指正在等待某些 I/O 的进程,即我们在 ps 命令中看到的 D 状态(Uninterruptible Sleep,也称为 Disk Sleep)的进程。例如等待磁盘 I/O,当一个进程向磁盘读写数据时,为了保证数据的一致性,在得到磁盘回复前,它是不能被其他进程打断的,这个时候的进程就处于不可中断状态。如果此时的进程被打断了,就容易出现磁盘数据与进程数据不一致的问题。所以,不可中断状态实际上是系统对进程和硬件设备的一种保护机制。

5.2 系统平均负载多少时合理

uptime 命令给出的三个时间段的平均负载并不是标准化的,因为系统中 CPU 核心数量是不定的。所以平均负载为 1 意味着拥有一个 CPU 核心的系统一直在忙碌,而在一个拥有 4 个 CPU 核心的系统上,意味着系统 75% 的时间是空闲的。

所以,当系统平均负载除以 CPU 核心数小于等于 1表示系统没有出现过载的情况。最理想的情况是每个CPU 上都刚好运行一个进程,这样 CPU 就得到了充分的利用。

三个时间段统计出的系统平均负载,我们以哪个数字为准?一分钟?五分钟?还是十五分钟?我们应该着眼于五分钟或者十五分钟的平均数值,如果前一分钟的负载情况是 1.00,那么仍可以说明认定服务器情况还是正常的,但是如果十五分钟的数值仍然保持在 1.00,那么就值得注意了。

另外,读取文件 /proc/loadavg 可直接查看系统平均负载。

cat /proc/loadavg 0.04 0.03 0.05 1/319 21900

除了前 3 个数字表示系统平均负载外,后面的一个分数,分母表示系统进程总数,分子表示正在运行的进程数;最后一个数字表示最近运行的进程 ID。

5.3 获取系统 CPU 核心数

使用 lscpu 命令查看。

或者直接访问文件 /proc/cpuinfo 获取 CPU 核心数。

grep ‘model name’ /proc/cpuinfo | wc -l 6

5.4 平均负载与 CPU 使用率的关系

在日常使用中,我们经常容易把平均负载和CPU使用率混淆,这里我们做下区分。

平均负载是指单位时间内,系统中处于可运行状态和不可中断状态的进程数,所以,他不仅包扩了正在使用CPU 的进程,还包括等待 CPU 和等待 I/O 的进程。

而 CPU 使用率,是单位时间内 CPU 繁忙情况的统计,和平均负载并不一定完全对应。比如:

(1)CPU 密集型进程,使用大量 CPU 会导致平均负载升高,此时这两者是一致的;

(2)I/O 密集型进程, 等待 I/O 也会导致平均负载升高,但是 CPU 使用率不一定很高;

(3)存在大量等待 CPU 调用的进程也会导致平均负载升高,此时的 CPU 使用率也会比较高。

给我们公号发送 命令 二字,获取“每天一个Linux命令”系列的完整目录。

原文标题:每天一个 Linux 命令(72): uptime 命令

文章出处:【微信公众号:Linux爱好者】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    88

    文章

    11826

    浏览量

    219624
  • 命令
    +关注

    关注

    5

    文章

    759

    浏览量

    24018
  • 代码
    +关注

    关注

    30

    文章

    4977

    浏览量

    74435

原文标题:每天一个 Linux 命令(72): uptime 命令

文章出处:【微信号:LinuxHub,微信公众号:Linux爱好者】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Linux系统这三个命令的完整功能和正确查看方法

    Linux 系统的日常运维,监控进程资源使用情况是最频繁的工作之一。当服务器 CPU 突然飙高、内存告警、或者业务响应变慢时,运维工程师首先要做的事情就是查看系统资源使用状况。top、ps、free 这三个命令几乎是每个运
    的头像 发表于 04-21 11:45 217次阅读

    Linux新手最常踩的10个命令坑介绍

    从事运维工作十余年,带过不少新人,发现有些命令错误几乎是每个Linux使用者都曾经遇到过的。这些错误轻则导致操作失败、浪费时间,重则引发数据丢失、服务中断、生产事故。本篇文章结合2026年
    的头像 发表于 04-09 10:11 232次阅读

    Linux新手必看!3个命令搞定所有“求助”,再也不用到处查文档

    其实根本不用慌——Linux 早就自带了 “说明书”,学会 3 个核心帮助命令,就能解决 90% 的操作疑问,比百度还快!
    的头像 发表于 02-03 15:28 889次阅读
    <b class='flag-5'>Linux</b>新手必看!3个<b class='flag-5'>命令</b>搞定所有“求助”,再也不用到处查文档

    Kubernetes kubectl命令行工具详解

    kubectl是Kubernetes官方提供的命令行工具,作为与Kubernetes集群交互的主要接口,它通过调用Kubernetes API Server实现对集群资源的全面管理。在生产环境,运维工程师需要熟练掌握kubectl命令
    的头像 发表于 02-02 16:40 636次阅读

    Linux 下开发嵌入式必备命令速查表

    在嵌入式开发Linux系统几乎成为必备的开发环境。不管你是在做STM32、RaspberryPi、还是基于ARM的板子,熟练掌握Linux命令不仅能加快开发效率,还能让你在调试、交
    的头像 发表于 01-19 09:06 1065次阅读
    <b class='flag-5'>Linux</b> 下开发嵌入式必备<b class='flag-5'>命令</b>速查表

    Linux13个基本Cat命令示例

    和test1终端的文件。 # cat test test1 Hello everybody Hi world, 3、用 cat 命令创建文件 我们将创建一个名为test2带有以下命令的文件。 # cat
    发表于 12-26 06:09

    测试工程师都在用的Linux命令清单(建议收藏)

    作为一名工程师,熟练掌握Linux命令是基本功的基本功。无论是日常工作的系统维护,还是面试时的技术考核,Linux
    的头像 发表于 08-08 10:06 858次阅读
    测试工程师都在用的<b class='flag-5'>Linux</b><b class='flag-5'>命令</b>清单(建议收藏)

    Linux基础命令which详解

    Linux系统,which命令用于查找并显示指定命令的可执行文件路径。这对于系统管理员和开发人员来说是一个非常有用的工具,可以帮助定位命令
    的头像 发表于 07-29 17:58 1082次阅读

    linux系统awk特殊字符命令详解

    Linux系统,awk 是一种非常强大的文本处理工具,能够对文本数据进行分析、格式化和筛选。利用其内置的特殊字符和操作符,用户可以实现复杂的数据处理任务。以下对一些常见的awk特殊字符和操作符
    的头像 发表于 07-28 16:38 761次阅读

    一文掌握Linux命令

    作为一名运维工程师,熟练掌握Linux命令是基本功的基本功。无论是日常工作的系统维护,还是面试时的技术考核,Linux
    的头像 发表于 07-22 15:23 748次阅读

    详解Linux网络管理的关键命令

    本文档概述了网络管理的关键命令,如ifconfig配置网络接口,ip管理路由,ping测试连通性,以及nmap进行安全扫描。还介绍了nslookup和dig用于域名解析,tcpdump抓包分析,以及arp操作和nmap的深入应用。
    的头像 发表于 07-04 11:37 1585次阅读
    <b class='flag-5'>详解</b><b class='flag-5'>Linux</b>网络管理<b class='flag-5'>中</b>的关键<b class='flag-5'>命令</b>

    达梦数据库常用管理SQL命令详解

    达梦数据库常用管理SQL命令详解
    的头像 发表于 06-17 15:12 7708次阅读
    达梦数据库常用管理SQL<b class='flag-5'>命令</b><b class='flag-5'>详解</b>

    SSH常用命令详解

    SSH常用命令详解
    的头像 发表于 06-04 11:30 2218次阅读

    详解Linux系统的服务管理

    Linux,无论何时当你安装任何带有服务和守护进程的包,系统默认会把这些服务的初始化及 systemd脚本添加进去,不过此时它们并没有被启用。
    的头像 发表于 05-23 15:10 956次阅读
    <b class='flag-5'>详解</b><b class='flag-5'>Linux</b>系统<b class='flag-5'>中</b>的服务管理

    Linux系统管理的核心概念

    在前一篇文章,我们深入探讨了Linux的文件操作命令,如cp、mv、rm,以及文本处理命令grep、wc和管道符。本文将继续深入
    的头像 发表于 05-15 17:05 855次阅读