《Linux雜記:一》

目錄

    • CPU負載和CPU利用率
    • CPU負載很高,利用率卻很低的情況
    • 負載很低,利用率卻很高
    • 常用linux命令
      • 常用的文件、目錄命令
      • 常用的權限命令
      • 常用的壓縮命令

CPU負載和CPU利用率

可以通過 uptime , w 或者 top 命令看到CPU的平均負載。
在這里插入圖片描述
在這里插入圖片描述
Load Average :負載的3個數字,比如上圖的0.57、0.48、0.27,分別代表系統在過去的1分鐘,5分
鐘,15分鐘內的系統平均負載。他代表的是當前系統正在運行的和處于等待運行的進程數之和。也指的
是處于可運行狀態和不可中斷狀態的平均進程數。如果單核CPU的話,負載達到1就代表CPU已經達到滿負荷的狀態了,超過1,后面的進行就需要排隊等待處理了。
通過下面的命令可以查看CPU的情況。

cat /proc/cpuinfo | grep "model name"

在這里插入圖片描述
查看CPU的核數:

cat /proc/cpuinfo | grep "cpu cores"

在這里插入圖片描述
CPU 利用率:和負載不同,CPU利用率指的是當前正在運行的進程實時占用CPU的百分比,他是對一段
時間內CPU使用狀況的統計。

CPU負載很高,利用率卻很低的情況

cpu負載很高,利用率很低,說明處于等待狀態的任務很多,負載越高,代表可能有很多的僵死的進程。

通常這種情況是IO密集型的任務,大量請求在請求相同的IO,導致任務隊列堆積。

可以先通過top命令觀察當前是否是高負載低使用率,再通過命令 ps -axjf 查看是否存在狀態為 D+ 狀態的進程。D+狀態指的是不可中斷的睡眠狀態的進程,處于這個狀態的進程無法終止,也無法自行退出,只能通過恢復其以來的資源或者重啟系統來解決。
在這里插入圖片描述

負載很低,利用率卻很高

這表示CPU的任務并不多,但是任務執行的時間很長,可能是代碼有問題,通常是計算密集型任務生成了大量耗時間長的計算任務。

可以使用top命令找到使用率最高的任務,定位去查找。

常用linux命令

常用的文件、目錄命令

ls			用戶查看目錄下的文件
ls -a		查看隱藏文件
ls -l		看文件的詳細信息,包括權限、大小、所有者等信息

在這里插入圖片描述
touch :用于創建文件。如果文件不存在,則創建一個新的文件,如果文件已存在,則會修改文件的時
間戳。
cat :cat是英文 concatenate 的縮寫,用于查看文件內容。使用 cat 查看文件的話,不管文件的內容
有多少,都會一次性顯示,所以他不適合查看太大的文件。
more :more和cat有點區別,more用于分屏顯示文件內容。可以用 空格鍵 向下翻?, b 鍵向上翻?
less :和more類似,less用于分行顯示
tail :可能是平時用的最多的命令了,查看日志文件基本靠他了。一般用戶 tail -fn 100 xx.log 查
看最后的100行內容

常用的權限命令

chmod:修改權限命令。一般用+號添加權限,-號刪除權限,x代表執行權限,r代表讀取權限,w代表寫入權限。

如:chmod +x 文件名,用來添加執行權限。

還有一種寫法,使用數字來授權,因為r=4,w=2,x=1,所以執行命令chmod 777 文件名就代表最高權限了。

第一個數字 7 = 4 + 2 +1代表所有者的權限,第二個數字7代表所屬組的權限,第三個數字代表其他人的權限。

常見的權限數字還有:

644,所有者有讀寫權限,其他人只有只讀權限

755,其他人只有只讀和執行權限

chown:用于修改文件和目錄的所有者和所屬組。一般用法chown user 文件用于修改文件所有者,chown user:user 文件修改文件所有者和組,冒號前面是所有者,后面是組。

常用的壓縮命令

zip:壓縮zip文件命令,比如zip test.zip 文件 可以把文件壓縮成zip文件,如果壓縮目錄的話則需要添加 -r選項。

unzip :與zip對應,解壓zip文件命令。unzip xxx.zip直接解壓,還可以通過-d選項制定解壓目錄。

gzip:用于壓縮.gz后綴文件,gzip命令不能打包目錄。需要注意的是直接使用gzip 文件名源文件會消失,如果要保留源文件,可以使用gzip -c 文件名 > xx.gz,解壓縮直接使用 gzip -d xx.gz

tar:tar常用幾個選項,-x解打包,-c打包,-f指定壓縮包文件名,-v顯示打包文件過程,一般常用:

tar -cvf xx.tar 文件來打包,解壓則使用tar -xvf xx.tar

linux的打包和壓縮是分開操作,如果打包并且壓縮的話,必須先用tar打包,然后再用gzip雅座。當然還有更好的做法就是-z,打包并壓縮。

使用命令tar -zcvf xx.tar.gz 文件來打包壓縮,使用命令tar -zxvf xx.tar.gz來解壓縮。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/377044.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/377044.shtml
英文地址,請注明出處:http://en.pswp.cn/news/377044.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

IOS Plist操作

代碼:copy BUNDLE下的plist文件 到 library下面。 bundle下不支持些,library,doc路徑支持讀與寫。 (void)copyUserpigListToLibrary {NSFileManager *fileManager [NSFileManager defaultManager];NSArray *paths NSSearchPathForDirector…

《線程管理:線程基本操作》

目錄線程管理啟動線程與(不)等待線程完成特殊情況下的等待(使用trycath或rall)后臺運行線程線程管理 啟動線程與(不)等待線程完成 提供的函數對象被復制到新的線程的存儲空間中,函數對象的執行…

scala特質_Scala的特質

scala特質Scala特質 (Scala traits) Traits in Scala are like interfaces in Java. A trait can have fields and methods as members, these members can be abstract and non-abstract while creation of trait. Scala中的特性類似于Java中的接口 。 特征可以具有作為成員的…

優化PHP代碼的40條建議(轉)

優化PHP代碼的40條建議 40 Tips for optimizing your php Code 原文地址:http://reinholdweber.com/?p3 英文版權歸Reinhold Weber所有,中譯文作者yangyang(aka davidkoree)。雙語版可用于非商業傳播,但須注明英文版作…

Iptables入門教程

轉自:http://drops.wooyun.org/tips/1424 linux的包過濾功能,即linux防火墻,它由netfilter 和 iptables 兩個組件組成。 netfilter 組件也稱為內核空間,是內核的一部分,由一些信息包過濾表組成,這些表包含內…

《線程管理:傳遞參數、確定線程數量、線程標識》

參考《c Concurrency In Action 》第二章做的筆記 目錄傳遞參數量產線程線程標識傳遞參數 thread構造函數的附加參數會拷貝至新線程的內存空間中,即使函數中的采納數是引用類型,拷貝操作也會執行。如果我們期待傳入一個引用,必須使用std::re…

手把手玩轉win8開發系列課程(14)

這節的議程就是——添加appbar appbar是出現在哪兒了,出現在屏幕的底部。他能使用戶能用手勢或者使用鼠標操作程序。metro UI 重點是在主要的控件使用許多控件,使其用戶使用win8電腦更加的方便。而appBar使其用戶體驗更好。在這節中,我將告訴…

No identities are available for signing 的解決辦法

今天重新上傳做好的app提交到app store,結果就出現標題上的錯誤。“No identities are available for signing”。 以后碰到這樣的問題按照下面幾個步驟來做: 進入Distribution -----下載發布證書 -----雙擊安裝-----重啟Xcode就能上傳了 其他細節 如果再…

半連接反連接

半連接&反連接 1. 半連接 半連接返回左表中與右表至少匹配一次的數據行,通常體現為 EXISTS 或者 IN 子查詢。左表驅動右表。只返回左表的數據,右表作為篩選條件。 可以用 EXISTS、 IN 或者 ANY 舉例:表t1和表t2做半連接,t…

匿名方法和Lambda表達式

出于MVVM學習的需要,復習下匿名方法和Lambda表達式,因為之前用的也比較少,所以用的也不是很熟練,Baidu下相關的知識,寫了這個Demo,目標是用簡單的方法展示這個怎么用。 這里偏重的和LINQ中的Lambda表達式 …

爛橘子

Problem Statement: 問題陳述: Given a matrix of dimension r*c where each cell in the matrix can have values 0, 1 or 2 which has the following meaning: 給定尺寸r * C的矩陣,其中矩陣中的每個單元可以具有其具有以下含義的值0,1或2…

android junit 測試程序

http://blog.csdn.net/to_cm/article/details/5704783 Assert.assertEquals(2, t); 斷言轉載于:https://www.cnblogs.com/wjw334/p/3714120.html

MySQL 8.0.22執行器源碼分析HashJoin —— BuildHashTable函數細節步驟

BuildHashTable函數細節步驟 該函數位置處于hash_join_iterator.cc 403 ~ 560行 step1:如果被驅動表迭代器沒有更多的行數,更新m_state為EOR,然后返回false,表明創建hash表失敗 if (!m_build_iterator_has_more_rows) {m_state…

《那些年啊,那些事——一個程序員的奮斗史》——125

距離離職交接的一個月時間還剩幾天,本來應該是平淡無事的,卻沒想到最后還是波瀾四起。昨天下班前,公司突然停了電。這本是件普通得不能再普通的事情,可沒想到過了一會來電了,或許是波峰電壓太大,或許是穩壓…

python中的元類_Python中的元類

python中的元類Python元類 (Python metaclass) A metaclass is the class of a class. A class defines how an instance of a class i.e.; an object behaves whilst a metaclass defines how a class behaves. A class is an instance of a metaclass. 元類是類的類。 一個類…

MySQL 8.0.22執行器源碼分析HashJoin —— 一些初始化函數的細節步驟

目錄InitRowBuffer(101行~126行)InitProbeIterator(142行~153行)*HashJoinIterator* 的Init(155行~240行)InitializeChunkFiles(364行~401行)InitWritingToProbeRowSavingFile&#…

c語言的宏定義學習筆記

宏定義 在預處理之前,c預處理器會對代碼進行翻譯,譬如用blank替換注釋,去掉多余的空格,刪除末尾的\來拼接行等。 例如: int /*注釋*/ x; 會被翻譯成 int x; printf("this is a s\ entence."); 會被翻譯成 pr…

攝氏溫度轉換華氏溫度_什么是攝氏溫度?

攝氏溫度轉換華氏溫度攝氏溫度 (Celsius) Celsius is a temperature measuring scale which as a SI unit derived from the seven base units stated and described by the International System of Units (SI). 攝氏溫度是一種溫度測量刻度,它是由國際單位制(SI)所…

別人的算法學習之路

http://www.cnblogs.com/figure9/p/3708351.html 我的算法學習之路 關于 嚴格來說,本文題目應該是我的數據結構和算法學習之路,但這個寫法實在太繞口——況且CS中的算法往往暗指數據結構和算法(例如算法導論指的實際上是數據結構和算法導論&a…

git config命令使用第二篇——section操作,多個key值操作,使用正則

接上一篇,git config命令使用第一篇——介紹,基本操作,增刪改查:http://blog.csdn.net/hutaoer06051/article/details/8275069 1. 刪除一個section 命令參數 --remove-section 格式:git config [--local|--global|--system] --rem…