Linux必懂知識大總結(補)

關機

1. 數據同步寫入磁盤 sync

為了加快對磁盤上文件的讀寫速度,位于內存中的文件數據不會立即同步到磁盤上,因此關機之前需要先進行 sync 同步操作。

2. shutdown

# /sbin/shutdown [-krhc] [時間] [警告訊息]

-k : 不會關機,只是發送警告訊息,通知所有在線的用戶

-r : 將系統的服務停掉后就重新啟動

-h : 將系統的服務停掉后就立即關機

-c : 取消已經在進行的 shutdown 指令內容

3. 其它關機指令

reboot、halt、poweroff。

運行等級

0:關機模式 1:單用戶模式(可用于破解root密碼) 2:無網絡支持的多用戶模式 3:有網絡支持的多用戶模式(文本模式,工作中最常用的模式) 4:保留,未使用 5:有網絡支持的 X-windows 支持多用戶模式(桌面) 6:重新引導系統,即重啟

BIOS

BIOS 是開機的時候計算機執行的第一個程序,這個程序知道可以開機的磁盤,并讀取磁盤第一個扇區的 MBR,由 MBR 執行其中的開機管理程序,這個開機管理程序的會加載操作系統的核心文件。

?

MBR 中的開機管理程序提供以下功能:選單、載入核心文件以及轉交其它開機管理程序。轉交這個功能可以用來實現了多重引導,只需要將另一個操作系統的開機管理程序安裝其它分區的啟動扇區上,在啟動 MBR 中的開機管理程序時,就可以選擇啟動當前的操作系統或者轉交給其它開機管理程序從而啟動另一個操作系統。

?

指令搜索順序

1.??? 以絕對或相對路徑來執行指令,例如 /bin/ls 或者 ./ls ;

2.??? 由別名找到該指令來執行;

3.??? 由 Bash 內建的指令來執行;

4.??? 按 $PATH 變量指定的搜索路徑的順序找到第一個指令來執行。

數據流重定向

重定向有5種方式,分別是: 輸出重定向、輸入重定向、錯誤重定向、追加重定向以及同時實現輸出和錯誤的重定向。

?

重定向就是使用文件代替標準輸入、標準輸出和標準錯誤輸出。

?

標準輸入 (stdin)????? :代碼為 0 ,使用 < 或 << ;

標準輸出 (stdout)??? :代碼為 1 ,使用 > 或 >> ;

標準錯誤輸出(stderr):代碼為 2 ,使用 2> 或 2>> ;

其中,有一個箭頭的表示以覆蓋的方式重定向,而有兩個箭頭的表示以追加的方式重定向。

?

可以將不需要的標準輸出以及標準錯誤輸出重定向到 /dev/null ,相當于扔進垃圾箱。

?

如果需要將標準輸出以及標準錯誤輸出同時重定向到一個文件,需要將某個輸出轉換為另一個輸出,例如 2>&1 表示將標準錯誤輸出轉換為標準輸出。

?

$ find /home -name .bashrc > list 2>&1

靜態鏈接庫和動態鏈接庫的區別

靜態連接庫就是把(lib)文件中用到的函數代碼直接鏈接進目標程序,程序運行的時候不再需要其它的庫文件;動態鏈接就是把調用的函數所在文件模塊(DLL)和調用函數在文件中的位置等信息鏈接進目標程序,程序運行的時候再從DLL中尋找相應函數代碼,因此需要相應DLL文件的支持。

?

靜態鏈接庫與動態鏈接庫都是共享代碼的方式,如果采用靜態鏈接庫,則無論你愿不愿意,lib 中的指令都全部被直接包含在最終生成的 EXE 文件中了。但是若使用 DLL,該 DLL 不必被包含在最終 EXE 文件中,EXE 文件執行時可以“動態”地引用和卸載這個與 EXE 獨立的 DLL 文件。靜態鏈接庫和動態鏈接庫的另外一個區別在于靜態鏈接庫中不能再包含其他的動態鏈接庫或者靜態庫,而在動態鏈接庫中還可以再包含其他的動態或靜態鏈接庫。動態庫就是在需要調用其中的函數時,根據函數映射表找到該函數然后調入堆棧執行。如果在當前工程中有多處對dll文件中同一個函數的調用,那么執行時,這個函數只會留下一份拷貝。但是如果有多處對lib文件中同一個函數的調用,那么執行時,該函數將在當前程序的執行空間里留下多份拷貝,而且是一處調用就產生一份拷貝。

?

孤兒進程和僵死進程

孤兒進程

一個父進程退出,而它的一個或多個子進程還在運行,那么那些子進程將成為孤兒進程。孤兒進程將被 init 進程(進程號為 1)所收養,并由 init 進程對它們完成狀態收集工作。由于孤兒進程會被 init 進程收養,所以孤兒進程不會對系統造成危害

?

僵尸進程

一個子進程的進程描述符在子進程退出時不會釋放,只有當父進程通過 wait 或 waitpid 獲取了子進程信息后才會釋放。如果子進程退出,而父進程并沒有調用 wait 或 waitpid,那么子進程的進程描述符仍然保存在系統中,這種進程稱之為僵死進程。

?

僵死進程通過 ps 命令顯示出來的狀態為 Z。

?

系統所能使用的進程號是有限的,如果大量的產生僵死進程,將因為沒有可用的進程號而導致系統不能產生新的進程。

?

要消滅系統中大量的僵死進程,只需要將其父進程殺死,此時所有的僵死進程就會變成孤兒進程,從而被 init 所收養,這樣 init 就會釋放所有的僵死進程所占有的資源,從而結束僵死進程。

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

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

相關文章

(十八)深入淺出TCPIP之HTTP和HTTPS

專欄其他文章: 理論篇: (一)深入淺出TCPIP之理解TCP報文格式和交互流程 (二)深入淺出TCPIP之再識TCP,理解TCP三次握手(上) (三)深入淺出TCPIP之再識TCP,理解TCP四次揮手(上) (四)深入淺出TCPIP之TCP三次握手和四次揮手(下)的抓包分析 (五)深入淺出TCPIP之TCP流…

leetcode118. 楊輝三角

給定一個非負整數 numRows&#xff0c;生成楊輝三角的前 numRows 行。 在楊輝三角中&#xff0c;每個數是它左上方和右上方的數的和。 示例: 輸入: 5 輸出: [ [1], [1,1], [1,2,1], [1,3,3,1], [1,4,6,4,1] ] 思路&#xff1a;沒什么可說的&#xff0c;依次…

抖音快手小視頻推薦算法之--協同過濾算法剖析

有人說抖音摧毀了中國的年輕人,也有人說抖音改變了自己的生活形態,還有人說抖音讓自己的生活過的更加有意義……一千個人眼中,有一千個哈姆雷特,各人有各個行使自己話語的權力,我們無從爭辯。 對于做自媒體的同仁們來說抖音就是粉絲變現的另外一個渠道,那抖音具體的算法…

如何抓住QQ小游戲買量紅利:休閑與內購小游戲買量優化方法分享

2019年5月&#xff0c;Qzone小游戲、玩一玩整合升級為全新QQ小游戲平臺&#xff0c;其以開放的社交生態和關系鏈&#xff0c;為開發者帶來了巨大的流量紅利。 為了幫助更多開發者適應和了解新市場。本文將介紹QQ小游戲投放規模現狀以及各項扶持政策&#xff0c;并解讀輕度小游…

(一)容器從入門到深入-容器和鏡像

一、容器與鏡像 什么是容器&#xff1f; 在介紹容器的具體概念之前&#xff0c;先簡單回顧一下操作系統是如何管理進程的。 首先&#xff0c;當我們登錄到操作系統之后&#xff0c;可以通過 ps 等操作看到各式各樣的進程&#xff0c;這些進程包括系統自帶的服務和用戶的應用…

leetcode461. 漢明距離

兩個整數之間的漢明距離指的是這兩個數字對應二進制位不同的位置的數目。 給出兩個整數 x 和 y&#xff0c;計算它們之間的漢明距離。 注意&#xff1a; 0 ≤ x, y < 231. 示例: 輸入: x 1, y 4 輸出: 2 解釋: 1 (0 0 0 1) 4 (0 1 0 0) ↑ ↑ 上面的箭…

(二)容器從入門到深入-初識Kubernetes

Kubernetes 是什么 Kubernetes 脫胎于 Google 的 Borg 系統&#xff0c;是一個功能強大的容器編排系統。Kubernetes 及其整個生態系統&#xff08;工具、模塊、插件等&#xff09;均使用 Go 語言編寫&#xff0c;從而構成一套面向 API、可高速運行的程序集合&#xff0c;這些程…

記一次海外大型SLG游戲服務器進程被OOM的修復經歷

事情經過 最近剛接手一個多次獲得海外GooglePlay推薦的SLG的游戲項目,服務器是java的netty框架寫的,客戶端是cocos lua。 好吧既然服務器進程運行在jvm之上,吃內存倒是挺厲害的,我一個16G內存的服務器被吃的滿滿的,這個時候為了解決內存不足,我開啟了4G的虛擬內存,方法…

leetcode50. Pow(x, n)

實現 pow(x, n) &#xff0c;即計算 x 的 n 次冪函數。 示例 1: 輸入: 2.00000, 10 輸出: 1024.00000 示例 2: 輸入: 2.10000, 3 輸出: 9.26100 示例 3: 輸入: 2.00000, -2 輸出: 0.25000 解釋: 2-2 1/22 1/4 0.25 說明: -100.0 < x < 100.0 n 是 32 位有符號整數…

GCC在C語言中內嵌匯編 asm __volatile__

在內嵌匯編中,可以將C語言表達式指定為匯編指令的操作數,而且不用去管如何將C語言表達式的值讀入哪個寄存器,以及如何將計算結果寫回C 變量,你只要告訴程序中C語言表達式與匯編指令操作數之間的對應關系即可, GCC會自動插入代碼完成必要的操作。 1、簡單的內嵌匯編 例: …

MYSQL增量備份和全量備份腳本

首先配置下mysql增量備份: server-id = 1 log_bin = /var/log/mysql/mysql-bin.log binlog-ignore-db = sys, mysql, information_schema, performance_schema #設置日志格式 binlog_format = mixed #設置日志路徑,注意路經需要mysql用戶…

MYSQL增量備份和全量備份腳本分享

mysql的全量備份與增量備份全量備份&#xff1a;可以使用mysqldump直接備份整個庫或者是備份其中某一個庫或者一個庫中的某個表。增量備份&#xff1a;增量備份是針對于數據庫的bin-log日志進行備份的&#xff0c;需要開始數據庫的bin-log日志。增量備份是在全量的基礎上進行操…

leetcode48. 旋轉圖像

給定一個 n n 的二維矩陣表示一個圖像。 將圖像順時針旋轉 90 度。 說明&#xff1a; 你必須在原地旋轉圖像&#xff0c;這意味著你需要直接修改輸入的二維矩陣。請不要使用另一個矩陣來旋轉圖像。 示例 1: 給定 matrix [ [1,2,3], [4,5,6], [7,8,9] ], 原地旋轉…

(一)nodejs循序漸進-nodejs環境安裝(基礎篇)

目錄 Node Node的優點 Node.js 安裝配置 使用nvm管理不同版本的 node 與 npm nvm 與 n 的區別 卸載全局安裝的 node/npm Windows 安裝 Linux 安裝 安裝多版本 node/npm 在不同版本間切換 列出已安裝實例 在多環境中&#xff0c;npm該如何使用呢&#xff1f; 其他命…

leetcode49. 字母異位詞分組

給定一個字符串數組&#xff0c;將字母異位詞組合在一起。字母異位詞指字母相同&#xff0c;但排列不同的字符串。 示例: 輸入: ["eat", "tea", "tan", "ate", "nat", "bat"], 輸出: [ ["ate",&quo…

(二)nodejs循序漸進-nodejs基本類型和循環條件語法篇(基礎篇)

目錄 入門之helloworld 進階之helloworld http服務器 步驟一、引入 required 模塊 步驟二、創建服務器 基本語法篇 變量聲明 基礎類型 if else 循環語句 for for ... in while do和do while 運算符 加減乘除 , , !, ! typeof null&#xff0c;undefine…

(三)nodejs循序漸進-值傳遞和引用傳遞,深拷貝和淺拷貝(基礎篇)

值傳遞和引用傳遞 值類型變量&#xff1a; 存在內存的堆中&#xff0c;比如:a1引用類型變量 &#xff1a; 1.指針存在于棧中&#xff0c;2.引用類型的具體內容存在于堆中 ex:let a{b:1} a的指針指向 堆中的地址0xffac0ec 正如我在 第二章 說的&#xff0c; numberstringbo…

(四)nodejs循序漸進-函數,類和對象(基礎篇)

上一篇文章講到了基本數據類型和運算符&#xff0c;相信大家都能做簡單的運算&#xff0c;本篇文章將講述函數&#xff0c;類&#xff0c;對象。 函數 在nodejs中&#xff0c;一個函數可以作為另一個函數的參數。我們可以先定義一個函數&#xff0c;然后傳遞&#xff0c;也可…

leetcode38. 外觀數列

「外觀數列」是一個整數序列&#xff0c;從數字 1 開始&#xff0c;序列中的每一項都是對前一項的描述。前五項如下&#xff1a; 1. 1 2. 11 3. 21 4. 1211 5. 111221 1 被讀作 "one 1" ("一個一") , 即 11。 11 被讀作 "two …

(五)nodejs循序漸進-回調函數和異常處理(基礎篇)

上篇文章我們講完了類和對象&#xff0c;接下來我們將要說回調函數. 我在第一篇說到nodejs的一個優勢是異步IO&#xff0c;實際上異步IO直接體現就是使用回調函數&#xff0c;當然不是用了回調函數&#xff0c;他就一定是異步IO的&#xff0c;因為inodejs是一個單線程函數&…