日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux基本功系列之uptime命令实战

發布時間:2023/12/20 linux 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux基本功系列之uptime命令实战 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 一. uptime命令介紹
  • 二. 語法格式及常用選項
  • 三. 參考案例
    • 3.1 顯示當前系統運行負載情況
    • 3.2 顯示機器正常運行的時間
    • 3.3 顯示機器啟動時間
    • 3.4 關于平均負載的介紹
  • 總結

前言🚀🚀🚀
想要學好Linux,命令是基本功,企業中常用的命令大約200多個,不管是寫shell腳本還是管理操作系統,最常用的命令必須要牢牢掌握,像我們以前學乘法口訣一樣,爛熟于心,唯有如此,才能打牢基礎。
💓 知識最重要的是記憶
💓 入門須知: 想要人生從容,必須全力以赴,努力才是你最終的入場券🚀🚀🚀
💕 最后: 努力成長自己,愿我們都能在看不到的地方閃閃發光 ,一起加油進步🍺🍺🍺

一. uptime命令介紹

Linux系統中的uptime命令主要用于獲取主機運行時間和查詢Linux系統負載等信息。

uptime命令可以顯示系統已經運行了多長時間,信息顯示依次為:現在時間、系統已經運行了多長時間、目前有多少登錄用戶、系統在過去的1分鐘、5分鐘和15分鐘內的平均負載。 uptime命令用法十分簡單,直接輸入uptime即可查看系統負載情況。

二. 語法格式及常用選項

使用幫助命令查看具體的參數和語法格式:
uptime --help

[root@mufenggrow ~]# uptime --helpUsage:uptime [options]Options:-p, --pretty show uptime in pretty format-h, --help display this help and exit-s, --since system up since-V, --version output version information and exitFor more details see uptime(1).

可以看到,uptime后面可以直接跟選項。

參數描述
-p采用可讀友好的格式輸出系統已運行時長
-h–help 顯示幫助信息
-s–since 以格式 yyyy-mm-dd HHSS format 輸出系統啟動時間
-V–version 顯示版本信息

三. 參考案例

3.1 顯示當前系統運行負載情況

不加任何參數直接執行uptime,如下:

[root@mufenggrow ~]# uptime22:53:55 up 3:05, 3 users, load average: 0.00, 0.02, 0.05

以上列出的參數解釋:

參數描述
22:53:55當前系統的時間
up 3:05系統已經運行了3個小時零5分
3users當前登錄用戶數
load average: 0.00, 0.02, 0.05系統負載,即任務隊列的平均長度。 三個數值分別為 1分鐘、5分鐘、15分鐘前到現在的平均值。

系統負載,即任務隊列的平均長度。 三個數值分別為 1分鐘、5分鐘、15分鐘前到現在的平均值。

經驗:單核心,1分鐘的系統平均負載不要超過3

基于以上經驗:

如果服務器的CPU為1核心,則load average中的數字 >=3 負載過高,如果服務器的CPU為4核心,則load average中的數字 >=12 負載過高。

3.2 顯示機器正常運行的時間

此處只顯示機器的正常運行時間,所以需要用到-參數

[root@mufenggrow ~]# uptime -p up 3 hours, 12 minutes

可以看到顯示的時間為3小時12分鐘,這是系統運行時間,一般等于你開機的時間,比如:

[root@master-21 ~]# uptime -p up 7 hours, 43 minutes

3.3 顯示機器啟動時間

我們知道系統運行的時間之后,想知道是從哪個時間點運行的,就可以使用-s參數

[root@mufenggrow ~]# uptime -s 2023-01-31 19:48:26

可以看到-s顯示的是具體的系統啟動運行時間。

3.4 關于平均負載的介紹

平均負載:

平均負載是指單位時間內,系統處于可運行狀態和不可中斷狀態的平均進程數,也就是平均活躍進程數,它和CPU使用率并沒有直接關系。

  • 可運行狀態:是指正在使用CPU或者正在等待CPU的進程,也就是ps命令看到的處于R狀態的進程
  • 不可中斷狀態:是指正在處于內核態關鍵流程中的進程,并且這些進程是不可打斷的,比如常見的等待硬件設備的IO操作,也就是ps命令看到的處于D狀態的進程

不可中斷狀態是系統對進程和硬件設備的一種保護機制

說通俗點,平均負載其實就是平均活躍進程數。最理想的平均活躍進程數就是每個CPU上都剛好運行著一個進程,這樣每個CPU都得到了充分的利用。

當一個進程向磁盤讀寫數據時,為了保證數據的一致性,在得到磁盤回復前,它是不能被其他進程或者中斷打斷的,這個時候的進程就處于不可中斷狀態。如果此時的進程被打斷了,就容易出現磁盤數據與進程數據不一致的問題

除了使用uptime,我們用 cat /proc/loadavg命令也可以查看平均負載:

[root@mufenggrow ~]# cat /proc/loadavg 0.00 0.01 0.05 1/514 14655

前三個數字與uptime一致,后面的:
1/514 表示正在運行的進程數有一個,分母是總進程數
14655 表示正在運行的進程ID為 14655

關于cpu我們之前介紹過一些概念:

CPU個數:即物理CPU數,主板實際插入的CPU數量,可以數不重復的 physical id 有幾個(physical id)
CPU核數:單塊CPU上面能處理數據的芯片組的數量,如雙核,四核等(cpu cores)

邏輯CPU數:一般情況下,邏輯CPU=物理CPU個數x每顆核數。如果不等,表示CPU支持超線程技術

平均負載和cpu個數有一定的關系 比如平均負載為4時意味著什么呢?

多核cpu和多個cpu效果類似

# cat /proc/cpuinfo #查看CPU的信息 # grep -c ‘model name’ /proc/cpuinfo #返回CPU的總核心數
  • 在只有4個CPU的系統上,意味著所有的CPU都剛好被完全占用。
  • 在8個CPU的系統上,意味著CPU有50%的空閑。
  • 而在有2個CPU系統上,意味著有一半的進程競爭不到CPU。

其他經驗:

如果1分鐘,5分鐘,15分鐘的三個值基本相同,或者相差不大,那就說明系統負載很平穩。

如果1分鐘的值遠小于15分鐘的值,就是說在15分鐘之前負載很高,到了1分鐘的時候已經下降很多了,甚至負載已經不高了,這時候只需要關注下為什么在15分鐘高就行了,不需要介入處理。。

但如果1分鐘的值遠大于15分鐘的值,說明近1分鐘負載在增加,這種情況可能是臨時性的,也可能還會持續,要持續觀察,一旦1分鐘的平均負載超過了CPU的數量,意味著系統正在發生過載的問題。

例如:一個單核系統上,平均負載為1.78,0.60,6.56,說明1分鐘內,系統有78%的超載,而在15分鐘內有556%的超載。

實際生產中,平均負載多高時需要關注

當系統負載持續大于0.7,就要開始排查了,防止情況惡化;
當系統負載持續大于1.0,你就必須手動尋找解決辦法,把這個值降下來;
當系統負載達到5.0,就表明你的系統有很嚴重的問題,長時間沒有響應,或者接近死機了,一般不允許讓系統達到這個值

常用的性能排查工具

  • stress:Linux 系統壓力測試工具,這里我們用作異常進程模擬平均負載升高的場景。
  • mpstat:是一個常用的多核 CPU 性能分析工具,用來實時查看每個 CPU 的性能指標,以及所有CPU的平均指標。
  • pidstat:是一個常用的進程性能分析工具,用來實時查看進程的 CPU、內存、I/O 以及上下文切換等性能指標。

總結

💕💕💕 好啦,這就是今天要分享給大家的全部內容了,我們下期再見!? ? ?
🍻🍻🍻如果你喜歡的話,就不要吝惜你的一鍵三連了~


總結

以上是生活随笔為你收集整理的linux基本功系列之uptime命令实战的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。