Linux常用的命令可以分為以下幾類:安裝和登錄命令、文件處理命令、系統(tǒng)管理相關(guān)命令、網(wǎng)絡(luò)操作命令、系統(tǒng)安全相關(guān)命令、其它命令。
創(chuàng)新互聯(lián)公司企業(yè)建站,10多年網(wǎng)站建設(shè)經(jīng)驗,專注于網(wǎng)站建設(shè)技術(shù),精于網(wǎng)頁設(shè)計,有多年建站和網(wǎng)站代運營經(jīng)驗,設(shè)計師為客戶打造網(wǎng)絡(luò)企業(yè)風格,提供周到的建站售前咨詢和貼心的售后服務(wù)。對于做網(wǎng)站、網(wǎng)站設(shè)計中不同領(lǐng)域進行深入了解和探索,創(chuàng)新互聯(lián)在網(wǎng)站建設(shè)中充分了解客戶行業(yè)的需求,以靈動的思維在網(wǎng)頁中充分展現(xiàn),通過對客戶行業(yè)精準市場調(diào)研,為客戶提供的解決方案。
安裝和登錄命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last。
文件處理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln。
系統(tǒng)管理相關(guān)命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab。
網(wǎng)絡(luò)操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup。
系統(tǒng)安全相關(guān)命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who。
其它命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。
Linux簡介
Linux,全稱GNU/Linux,是一套免費使用和自由傳播的類Unix操作系統(tǒng),是一個基于POSIX的多用戶、多任務(wù)、支持多線程和多CPU的操作系統(tǒng)。伴隨著互聯(lián)網(wǎng)的發(fā)展,Linux得到了來自全世界軟件愛好者、組織、公司的支持。
它除了在服務(wù)器方面保持著強勁的發(fā)展勢頭以外,在個人電腦、嵌入式系統(tǒng)上都有著長足的進步。使用者不僅可以直觀地獲取該操作系統(tǒng)的實現(xiàn)機制,而且可以根據(jù)自身的需要來修改完善Linux,使其最大化地適應(yīng)用戶的需要。
Linux不僅系統(tǒng)性能穩(wěn)定,而且是開源軟件。其核心防火墻組件性能高效、配置簡單,保證了系統(tǒng)的安全。在很多企業(yè)網(wǎng)絡(luò)中,為了追求速度和安全,Linux不僅僅是被網(wǎng)絡(luò)運維人員當作服務(wù)器使用,甚至當作網(wǎng)絡(luò)防火墻,這是Linux的一大亮點。
linux命令格式:
說明:command: 命令名,相應(yīng)功能的英文單詞或單詞的縮寫 [-options]:選項,可用來對命令進行控制,也可以省略,[]代表可選 parameter1 …:傳給命令的參數(shù):可以是零個一個或多個
一般是linux命令自帶的幫助信息
如:
man是linux提供的一個手冊,包含了絕大部分的命令、函數(shù)使用說明
該手冊分成很多章節(jié)(section),使用man時可以指定不同的章節(jié)來瀏覽。
例:man ls ; man 2 printf
man中各個section意義如下:
man是按照手冊的章節(jié)號的順序進行搜索的。
man設(shè)置了如下的功能鍵:
在敲出命令的前幾個字母的同時,按下tab鍵,系統(tǒng)會自動幫我們補全命令
當系統(tǒng)執(zhí)行過一些命令后,可按上下鍵翻看以前的命令,history將執(zhí)行過的命令列舉出來
ls是英文單詞list的簡寫,其功能為列出目錄的內(nèi)容,是用戶最常用的命令之一,它類似于DOS下的dir命令。
Linux文件或者目錄名稱最長可以有265個字符,“.”代表當前目錄,“..”代表上一級目錄,以“.”開頭的文件為隱藏文件,需要用 -a 參數(shù)才能顯示。
ls常用參數(shù):
Linux允許將命令執(zhí)行結(jié)果重定向到一個文件,本應(yīng)顯示在終端上的內(nèi)容保存到指定文件中。
如:ls test.txt ( test.txt 如果不存在,則創(chuàng)建,存在則覆蓋其內(nèi)容 )
注意: 輸出重定向會覆蓋原來的內(nèi)容,輸出重定向則會追加到文件的尾部。
查看內(nèi)容時,在信息過長無法在一屏上顯示時,會出現(xiàn)快速滾屏,使得用戶無法看清文件的內(nèi)容,此時可以使用more命令,每次只顯示一頁,按下空格鍵可以顯示下一頁,按下q鍵退出顯示,按下h鍵可以獲取幫助。
管道:一個命令的輸出可以通過管道做為另一個命令的輸入。
管道我們可以理解現(xiàn)實生活中的管子,管子的一頭塞東西進去,另一頭取出來,這里“ | ”的左右分為兩端,左端塞東西(寫),右端取東西(讀)。
clear作用為清除終端上的顯示(類似于DOS的cls清屏功能),也可使用快捷鍵:Ctrl + l ( “l(fā)” 為字母 )。
在使用Unix/Linux的時候,經(jīng)常需要更換工作目錄。cd命令可以幫助用戶切換工作目錄。Linux所有的目錄和文件名大小寫敏感
cd后面可跟絕對路徑,也可以跟相對路徑。如果省略目錄,則默認切換到當前用戶的主目錄。
使用pwd命令可以顯示當前的工作目錄,該命令很簡單,直接輸入pwd即可,后面不帶參數(shù)。
通過mkdir命令可以創(chuàng)建一個新的目錄。參數(shù)-p可遞歸創(chuàng)建目錄。
需要注意的是新建目錄的名稱不能與當前目錄中已有的目錄或文件同名,并且目錄創(chuàng)建者必須對當前目錄具有寫權(quán)限。
可使用rmdir命令刪除一個目錄。必須離開目錄,并且目錄必須為空目錄,不然提示刪除失敗。
可通過rm刪除文件或目錄。使用rm命令要小心,因為文件刪除后不能恢復(fù)。為了防止文件誤刪,可以在rm后使用-i參數(shù)以逐個確認要刪除的文件。
常用參數(shù)及含義如下表所示:
Linux鏈接文件類似于Windows下的快捷方式。
鏈接文件分為軟鏈接和硬鏈接。
軟鏈接:軟鏈接不占用磁盤空間,源文件刪除則軟鏈接失效。
硬鏈接:硬鏈接只能鏈接普通文件,不能鏈接目錄。
使用格式:
如果沒有-s選項代表建立一個硬鏈接文件,兩個文件占用相同大小的硬盤空間,即使刪除了源文件,鏈接文件還是存在,所以-s選項是更常見的形式。
注意:如果軟鏈接文件和源文件不在同一個目錄,源文件要使用絕對路徑,不能使用相對路徑。
Linux系統(tǒng)中g(shù)rep命令是一種強大的文本搜索工具,grep允許對文本文件進行模式查找。如果找到匹配模式, grep打印包含模式的所有行。
grep一般格式為:
在grep命令中輸入字符串參數(shù)時,最好引號或雙引號括起來。例如:grep‘a(chǎn) ’1.txt。
常用選項說明:
find命令功能非常強大,通常用來在特定的目錄下搜索符合條件的文件,也可以用來搜索特定用戶屬主的文件。
常用用法:
cp命令的功能是將給出的文件或目錄復(fù)制到另一個文件或目錄中,相當于DOS下的copy命令。
常用選項說明:
用戶可以使用mv命令來移動文件或目錄,也可以給文件或目錄重命名。
常用選項說明:
計算機中的數(shù)據(jù)經(jīng)常需要備份,tar是Unix/Linux中最常用的備份工具,此命令可以把一系列文件歸檔到一個大文件中,也可以把檔案文件解開以恢復(fù)數(shù)據(jù)。
tar使用格式 tar [參數(shù)] 打包文件名 文件
tar命令很特殊,其參數(shù)前面可以使用“-”,也可以不使用。
常用參數(shù):
tar與gzip命令結(jié)合使用實現(xiàn)文件打包、壓縮。 tar只負責打包文件,但不壓縮,用gzip壓縮tar打包后的文件,其擴展名一般用xxxx.tar.gz。
gzip使用格式如下:
gzip [選項] 被壓縮文件
常用選項:
tar與bzip2命令結(jié)合使用實現(xiàn)文件打包、壓縮(用法和gzip一樣)。
tar只負責打包文件,但不壓縮,用bzip2壓縮tar打包后的文件,其擴展名一般用xxxx.tar.gz2。
在tar命令中增加一個選項(-j)可以調(diào)用bzip2實現(xiàn)了一個壓縮的功能,實行一個先打包后壓縮的過程。
壓縮用法:tar -jcvf 壓縮包包名 文件...(tar jcvf bk.tar.bz2 *.c)
解壓用法:tar -jxvf 壓縮包包名 (tar jxvf bk.tar.bz2)
通過zip壓縮文件的目標文件不需要指定擴展名,默認擴展名為zip。
壓縮文件:zip [-r] 目標文件(沒有擴展名) 源文件
解壓文件:unzip -d 解壓后目錄文件 壓縮文件
whoami該命令用戶查看當前系統(tǒng)當前賬號的用戶名??赏ㄟ^cat /etc/passwd查看系統(tǒng)用戶信息。
由于系統(tǒng)管理員通常需要使用多種身份登錄系統(tǒng),例如通常使用普通用戶登錄系統(tǒng),然后再以su命令切換到root身份對傳統(tǒng)進行管理。這時候就可以使用whoami來查看當前用戶的身份。
who命令用于查看當前所有登錄系統(tǒng)的用戶信息。
常用選項:
如果是圖形界面,退出當前終端;
如果是使用ssh遠程登錄,退出登陸賬戶;
如果是切換后的登陸用戶,退出則返回上一個登陸賬號。
在Unix/Linux中添加用戶賬號可以使用adduser或useradd命令,因為adduser命令是指向useradd命令的一個鏈接,因此,這兩個命令的使用格式完全一樣。
useradd命令的使用格式如下:
useradd [參數(shù)] 新建用戶賬號
在Unix/Linux中,超級用戶可以使用passwd命令為普通用戶設(shè)置或修改用戶口令。用戶也可以直接使用該命令來修改自己的口令,而無需在命令后面使用用戶名。
可以通過su命令切換用戶,su后面可以加“-”。su和su –命令不同之處在于,su -切換到對應(yīng)的用戶時會將當前的工作目錄自動轉(zhuǎn)換到切換后的用戶主目錄:
注意:如果是ubuntu平臺,需要在命令前加“sudo”,如果在某些操作需要管理員才能操作,ubuntu無需切換到root用戶即可操作,只需加“sudo”即可。sudo是ubuntu平臺下允許系統(tǒng)管理員讓普通用戶執(zhí)行一些或者全部的root命令的一個工具,減少了root 用戶的登陸和管理時間,提高了安全性。
方法一:
方法二:
groupadd 新建組賬號 groupdel 組賬號 cat /etc/group 查看用戶組
使用方法:usermod -g 用戶組 用戶名
新創(chuàng)建的用戶,默認不能sudo,需要進行一下操作
-g用來制定這個用戶默認的用戶組
-G一般配合'-a'來完成向其它組添加
chmod 修改文件權(quán)限有兩種使用格式:字母法與數(shù)字法。
字母法:chmod u/g/o/a +/-/= rwx 文件
cal命令用于查看當前日歷,-y顯示整年日歷
設(shè)置時間格式(需要管理員權(quán)限):
date [MMDDhhmm[[CC]YY][.ss]] +format
CC為年前兩位yy為年的后兩位,前兩位的mm為月,后兩位的mm為分鐘,dd為天,hh為小時,ss為秒。如: date 010203042016.55。
顯示時間格式(date '+%y,%m,%d,%H,%M,%S'):
進程是一個具有一定獨立功能的程序,它是操作系統(tǒng)動態(tài)執(zhí)行的基本單元。
ps命令可以查看進程的詳細狀況,常用選項(選項可以不加“-”)如下:
top命令用來動態(tài)顯示運行中的進程。top命令能夠在運行后,在指定的時間間隔更新顯示信息。可以在使用top命令時加上-d 來指定顯示信息更新的時間間隔。
在top命令執(zhí)行后,可以按下按鍵得到對顯示的結(jié)果進行排序:
kill命令指定進程號的進程,需要配合 ps 使用。有些進程不能直接殺死,這時候我們需要加一個參數(shù)“ -9 ”,“ -9 ” 代表強制結(jié)束.
使用格式:
kill [-signal] pid
df命令用于檢測文件系統(tǒng)的磁盤空間占用和空余情況,可以顯示所有文件系統(tǒng)對節(jié)點和磁盤塊的使用情況。
du命令用于統(tǒng)計目錄或文件所占磁盤空間的大小,該命令的執(zhí)行結(jié)果與df類似,du更側(cè)重于磁盤的使用狀況。
du命令的使用格式如下: du [選項] 目錄或文件名
Linux系統(tǒng)中的命令實在是太多了,簡單包括兩類命令,一類是內(nèi)部命令,指的是Shell自身提供的功能,一類是外部命令,指的是第三方的控制臺應(yīng)用程序。
一般來說,沒必要完全學習所有的命令,大體上有個印象,用到的時候去查一下幫助文檔,久而久之,自然熟練。
下面是網(wǎng)友整理的20個最常用的Linux命令:
1. ls命令
ls命令是列出目錄內(nèi)容(List Directory Contents)的意思。運行它就是列出文件夾里的內(nèi)容,可能是文件也可能是文件夾。
2. lsblk命令
"lsblk"就是列出塊設(shè)備。除了RAM外,以標準的樹狀輸出格式,整齊地顯示塊設(shè)備。
3. md5sum命令
“md5sum”就是計算和檢驗MD5信息簽名。md5 checksum(通常叫做哈希)使用匹配或者驗證文件的文件的完整性,因為文件可能因為傳輸錯誤,磁盤錯誤或者無惡意的干擾等原因而發(fā)生改變。
4. dd命令
“dd”命令代表了轉(zhuǎn)換和復(fù)制文件??梢杂脕磙D(zhuǎn)換和復(fù)制文件,大多數(shù)時間是用來復(fù)制iso文件(或任何其它文件)到一個usb設(shè)備(或任何其它地方)中去,所以可以用來制作USB啟動器。
6. history命令
“history”命令就是歷史記錄。它顯示了在終端中所執(zhí)行過的所有命令的歷史。
7. sudo命令
“sudo”(super user do)命令允許授權(quán)用戶執(zhí)行超級用戶或者其它用戶的命令。通過在sudoers列表的安全策略來指定。
8. mkdir命令
“mkdir”(Make directory)命令在命名路徑下創(chuàng)建新的目錄。然而如果目錄已經(jīng)存在了,那么它就會返回一個錯誤信息"不能創(chuàng)建文件夾,文件夾已經(jīng)存在了"("cannot create folder, folder already exists")
9. touch 命令
“touch”命令代表了將文件的訪問和修改時間更新為當前時間。touch命令只會在文件不存在的時候才會創(chuàng)建它。如果文件已經(jīng)存在了,它會更新時間戳,但是并不會改變文件的內(nèi)容。
10. chmod 命令
“chmod”命令就是改變文件的模式位。chmod會根據(jù)要求的模式來改變每個所給的文件,文件夾,腳本等等的文件模式(權(quán)限)。
11. chown命令
“chown”命令就是改變文件擁有者和所在用戶組。每個文件都屬于一個用戶組和一個用戶。在你的目錄下,使用"ls -l",你就會看到像這樣的東西。
12. apt命令
Debian系列以“apt”命令為基礎(chǔ),“apt”代表了Advanced Package Tool。APT是一個為Debian系列系統(tǒng)(Ubuntu,Kubuntu等等)開發(fā)的高級包管理器,在Gnu/Linux系統(tǒng)上,它會為包自動地,智能地搜索,安裝,升級以及解決依賴。
13. tar命令
“tar”命令是磁帶歸檔(Tape Archive),對創(chuàng)建一些文件的的歸檔和它們的解壓很有用。
14. cal 命令
“cal”(Calender),它用來顯示當前月份或者未來或者過去任何年份中的月份。
16. cat命令
“cat”代表了連結(jié)(Concatenation),連接兩個或者更多文本文件或者以標準輸出形式打印文件的內(nèi)容。
17. cp 命令
“copy”就是復(fù)制。它會從一個地方復(fù)制一個文件到另外一個地方。
18. mv 命令
“mv”命令將一個地方的文件移動到另外一個地方去。
19. pwd 命令
“pwd”(print working directory),在終端中顯示當前工作目錄的全路徑。
20. cd 命令
最后,經(jīng)常使用的“cd”命令代表了改變目錄。它在終端中改變工作目錄來執(zhí)行,復(fù)制,移動,讀,寫等等操作。
Linux運維人員必會的120個命令
來自《跟老男孩學Linux運維:核心系統(tǒng)命令實戰(zhàn)》一書
前言
第1章 Linux命令行簡介 / 1
1.1Linux命令行概述 / 1
1.2在Linux命令行下查看命令幫助 / 4
1.3Linux shutdown reboot halt / 9
關(guān)機:
shutdown -h now
halt
init 0
第2章 文件和目錄操作命令 / 13
2.1pwd:顯示當前所在的位置 / 13
2.2cd:切換目錄 / 16
2.3tree:以樹形結(jié)構(gòu)顯示目錄下的內(nèi)容 / 18
2.4mkdir:創(chuàng)建目錄 / 22
2.5touch:創(chuàng)建空文件或改變文件的時間戳屬性 / 27
2.6ls:顯示目錄下的內(nèi)容及相關(guān)屬性信息 / 30
2.7cp:復(fù)制文件或目錄 / 39
2.8mv:移動或重命名文件 / 42
2.9rm:刪除文件或目錄 / 45
2.10rmdir:刪除空目錄 / 48
2.11ln:硬鏈接與軟鏈接 / 49
2.12readlink:查看符號鏈接文件的內(nèi)容 / 54
2.13find:查找目錄下的文件 / 55
2.14xargs:將標準輸入轉(zhuǎn)換成命令行參數(shù) / 68
2.15rename:重命名文件 / 71
2.16basename:顯示文件名或目錄名 / 72
2.17dirname:顯示文件或目錄路徑 / 72
2.18chattr:改變文件的擴展屬性 / 73
2.19lsattr:查看文件擴展屬性 / 75
2.20file:顯示文件的類型 / 76
2.21md5sum:計算和校驗文件的MD5值 / 77
2.22chown:改變文件或目錄的用戶和用戶組 / 80
2.23chmod:改變文件或目錄權(quán)限 / 81
2.24chgrp:更改文件用戶組 / 85
2.25umask:顯示或設(shè)置權(quán)限掩碼 / 86
2.26老男孩從新手成為技術(shù)大牛的心法 / 90
第3章 文件過濾及內(nèi)容編輯處理命令 / 91
3.1cat:合并文件或查看文件內(nèi)容 / 91
3.2tac:反向顯示文件內(nèi)容 / 103
3.3more:分頁顯示文件內(nèi)容 / 104
3.4less:分頁顯示文件內(nèi)容 / 107
3.5head:顯示文件內(nèi)容頭部 / 109
3.6tail:顯示文件內(nèi)容尾部 / 111
3.7tailf:跟蹤日志文件 / 114
3.8cut:從文本中提取一段文字并輸出 / 115
3.9split:分割文件 / 117
3.10paste:合并文件 / 118
3.11sort:文本排序 / 123
3.12join:按兩個文件的相同字段合并 / 127
3.13uniq:去除重復(fù)行 / 129
3.14wc:統(tǒng)計文件的行數(shù)、單詞數(shù)或字節(jié)數(shù) / 131
3.15iconv:轉(zhuǎn)換文件的編碼格式 / 133
3.16dos2unix:將DOS格式文件轉(zhuǎn)換成UNIX格式 / 134
3.17diff:比較兩個文件的不同 / 135
3.18vimdiff:可視化比較工具 / 138
3.19rev:反向輸出文件內(nèi)容 / 139
3.20tr:替換或刪除字符 / 140
3.21od:按不同進制顯示文件 / 143
3.22tee:多重定向 / 145
3.23vi/vim:純文本編輯器 / 147
3.24老男孩逆襲思想:做Linux運維的多個好處 / 152
第4章 文本處理三劍客 / 153
4.1grep:文本過濾工具 / 153
4.2sed:字符流編輯器 / 159
4.3awk基礎(chǔ)入門 / 165
第5章 Linux信息顯示與搜索文件命令 / 176
5.1uname:顯示系統(tǒng)信息 / 176
5.2hostname:顯示或設(shè)置系統(tǒng)的主機名 / 178
5.3dmesg:系統(tǒng)啟動異常診斷 / 179
5.4stat:顯示文件或文件系統(tǒng)狀態(tài) / 181
5.5du:統(tǒng)計磁盤空間使用情況 / 183
5.6date:顯示與設(shè)置系統(tǒng)時間 / 186
5.7echo:顯示一行文本 / 190
5.8watch:監(jiān)視命令執(zhí)行情況 / 193
5.9which:顯示命令的全路徑 / 195
5.10whereis:顯示命令及其相關(guān)文件全路徑 / 196
5.11locate:快速定位文件路徑 / 197
5.12updatedb:更新mlocate數(shù)據(jù)庫 / 199
5.13老男孩逆襲思想:新手在工作中如何問問題不會被鄙視 / 200
第6章 文件備份與壓縮命令 / 201
6.1tar:打包備份 / 201
6.2gzip:壓縮或解壓文件 / 208
6.3zip:打包和壓縮文件 / 211
6.4unzip:解壓zip文件 / 212
6.5scp:遠程文件復(fù)制 / 214
6.6rsync:文件同步工具 / 216
6.7老男孩逆襲思想:新手如何高效地提問 / 220
第7章 Linux用戶管理及用戶信息查詢命令 / 222
7.1 useradd:創(chuàng)建用戶 / 222
7.2usermod:修改用戶信息 / 227
7.3userdel:刪除用戶 / 229
7.4groupadd:創(chuàng)建新的用戶組 / 230
7.5groupdel:刪除用戶組 / 231
7.6passwd:修改用戶密碼 / 232
7.7chage:修改用戶密碼有效期 / 237
7.8chpasswd:批量更新用戶密碼 / 238
7.9su:切換用戶 / 240
7.10visudo:編輯sudoers文件 / 242
7.11sudo:以另一個用戶身份執(zhí)行命令 / 244
7.12id:顯示用戶與用戶組的信息 / 248
7.13w:顯示已登錄用戶信息 / 249
7.14who:顯示已登錄用戶信息 / 250
7.15users:顯示已登錄用戶 / 252
7.16whoami:顯示當前登錄的用戶名 / 253
7.17last:顯示用戶登錄列表 / 253
7.18lastb:顯示用戶登錄失敗的記錄 / 254
7.19lastlog:顯示所有用戶的最近登錄記錄 / 255
第8章 Linux磁盤與文件系統(tǒng)管理命令 / 257
8.1fdisk:磁盤分區(qū)工具 / 257
8.2partprobe:更新內(nèi)核的硬盤分區(qū)表信息 / 265
8.3tune2fs:調(diào)整ext2/ext3/ext4文件系統(tǒng)參數(shù) / 266
8.4parted:磁盤分區(qū)工具 / 268
8.5mkfs:創(chuàng)建Linux文件系統(tǒng) / 272
8.6dumpe2fs:導出ext2/ext3/ext4文件系統(tǒng)信息 / 274
8.7resize2fs:調(diào)整ext2/ext3/ext4文件系統(tǒng)大小 / 275
8.8fsck:檢查并修復(fù)Linux文件系統(tǒng) / 278
8.9dd:轉(zhuǎn)換或復(fù)制文件 / 281
8.10mount:掛載文件系統(tǒng) / 284
8.11umount:卸載文件系統(tǒng) / 288
8.12df:報告文件系統(tǒng)磁盤空間的使用情況 / 289
8.13mkswap:創(chuàng)建交換分區(qū) / 293
8.14swapon:激活交換分區(qū) / 294
8.15swapoff:關(guān)閉交換分區(qū) / 295
8.16sync:刷新文件系統(tǒng)緩沖區(qū) / 296
第9章 Linux進程管理命令 / 298
9.1ps:查看進程 / 298
9.2pstree:顯示進程狀態(tài)樹 / 305
9.3pgrep:查找匹配條件的進程 / 306
9.4kill:終止進程 / 307
9.5killall:通過進程名終止進程 / 310
9.6pkill:通過進程名終止進程 / 311
9.7top:實時顯示系統(tǒng)中各個進程的資源占用狀況 / 313
9.8nice:調(diào)整程序運行時的優(yōu)先級 / 320
9.9renice:調(diào)整運行中的進程的優(yōu)先級 / 323
9.10nohup:用戶退出系統(tǒng)進程繼續(xù)工作 / 324
9.11strace:跟蹤進程的系統(tǒng)調(diào)用 / 325
9.12ltrace:跟蹤進程調(diào)用庫函數(shù) / 332
9.13runlevel:輸出當前運行級別 / 334
9.14init:初始化Linux進程 / 335
9.15service:管理系統(tǒng)服務(wù) / 335
第10章 Linux網(wǎng)絡(luò)管理命令 / 338
10.1ifconfig:配置或顯示網(wǎng)絡(luò)接口信息 / 338
10.2ifup:激活網(wǎng)絡(luò)接口 / 343
ifup eth0
10.3ifdown:禁用網(wǎng)絡(luò)接口 / 343
ifdown eth0
service network restart(/etc/init.d/network restart) 激活整個網(wǎng)絡(luò),所有網(wǎng)卡。
10.4route:顯示或管理路由表 / 344
10.5arp:管理系統(tǒng)的arp緩存 / 350
10.6ip:網(wǎng)絡(luò)配置工具 / 351
10.7netstat:查看網(wǎng)絡(luò)狀態(tài) / 358
10.8ss:查看網(wǎng)絡(luò)狀態(tài) / 362
10.9ping:測試主機之間網(wǎng)絡(luò)的連通性 / 363
10.10traceroute:追蹤數(shù)據(jù)傳輸路由狀況 / 366
10.11arping:發(fā)送arp請求 / 367
10.12telnet:遠程登錄主機 / 369
10.13nc:多功能網(wǎng)絡(luò)工具 / 370
10.14ssh:安全地遠程登錄主機 / 373
10.15wget:命令行下載工具 / 376
10.16mailq:顯示郵件傳輸隊列 / 379
10.17mail:發(fā)送和接收郵件 / 381
10.18nslookup:域名查詢工具 / 386
10.19dig:域名查詢工具 / 389
10.20host:域名查詢工具 / 393
10.21nmap:網(wǎng)絡(luò)探測工具和安全/端口掃描器 / 394
10.22tcpdump:監(jiān)聽網(wǎng)絡(luò)流量 / 398
第11章 Linux系統(tǒng)管理命令 / 407
11.1lsof:查看進程打開的文件 / 407
11.2uptime:顯示系統(tǒng)的運行時間及負載 / 411
11.3free:查看系統(tǒng)內(nèi)存信息 / 411
11.4iftop:動態(tài)顯示網(wǎng)絡(luò)接口流量信息 / 413
11.5vmstat:虛擬內(nèi)存統(tǒng)計 / 415
11.6mpstat:CPU信息統(tǒng)計 / 419
11.7iostat:I/O信息統(tǒng)計 / 420
11.8iotop:動態(tài)顯示磁盤I/O統(tǒng)計信息 / 423
11.9sar:收集系統(tǒng)信息 / 425
11.10chkconfig:管理開機服務(wù) / 430
11.11ntsysv:管理開機服務(wù) / 433
11.12 setup:系統(tǒng)管理工具 / 434
11.13ethtool:查詢網(wǎng)卡參數(shù) / 436
11.14mii-tool:管理網(wǎng)絡(luò)接口的狀態(tài) / 437
11.19rpm:RPM包管理器 / 443
11.20yum:自動化RPM包管理工具 / 446
top命令
第12章 Linux系統(tǒng)常用內(nèi)置命令 / 450
12.1Linux內(nèi)置命令概述 / 450
12.2Linux內(nèi)置命令簡介 / 450
12.3Linux常用內(nèi)置命令實例 / 452
1.列出文件清單命令:ls
ls命令能夠列出當前目錄下的所有內(nèi)容。ls 命令的執(zhí)行方式為:
# ls [-選項] [文件名或者目錄名]
進入到Linux命令行中后,我們至少要知道當前所處的位置有哪些內(nèi)容,這些信息就可以使用ls命令來獲得。
在Linux中,ls命令是最常使用的命令之一,因為在命令行下要隨時查看目錄內(nèi)容。如果不加任何選項的話,ls命令僅列出當前目錄下的文件和目錄名,例如,想要查看/etc目錄下的內(nèi)容,可以使用下列命令:
# ls /etc
如果想要列出當前目錄下所有文件,則可以使用下列命令:
# ls -a
2、cat命令
功能:在標準輸出上顯示文件。
語法:cat [-vTEuAte] 文件
例子: cat example.txt
cat -A exam2.txt
cat file1 file2 file2
3、more命令
功能:在終端屏幕按屏顯示文本文件。
語法: more [-pcdls] 文件
例子: more example.c
more -dc example.c
more -c -10 example.c
4、less命令
less命令的功能幾乎和more命令一樣,也是用來按頁顯示文件,不同之處在于less命令在顯示文件時允許用戶既
可以向前又可以向后翻閱文件。
5、head命令
功能:顯示指定文件的前若干行。缺省設(shè)置為顯示10行
語法:head [-n] 文件
例子: head example.c
head -3 example.c
6、tail命令
功能:顯示指定文件的末尾若干行。缺省設(shè)置為顯示10行
語法:tail [+ / - num ] [參數(shù)] 文件
+num 從第num行以后開始顯示。- num 從距文件尾num行處開始顯示。
例子: tail example.c
tail -4 example.c
7、grep、fgrep和egrep命令
功能:
這組命令以指定模式搜索文件,并通知用戶在什么文件中搜索到與指定的模式匹配的字符串,并打印出所有包含該字符串的文本行,在該文本行的最前面是該行所在的文件名。grep命令一次只能搜索一個指定的模式;egrep命令檢索擴展的正則表達式(包括表達式組和可選項);fgrep命令檢索固定字符串,它不識別正則表達式,是快速搜索命令。
語法:
grep [-EFbcihlnvxef] [查找模式] [文件名1,文件名2,……]
egrep [選項] [查找模式] [文件名1,文件名2,……]
fgrep [選項] [查找模式] [文件名1,文件名2,……]
例子: grep "text file" example
grep data *
grep goto *.c
一、 su 、sudo 、限制root遠程登陸
su- username
帶用戶環(huán)境切換用戶
su- -c"touch /tmp/123.txt"user1
以user1用戶創(chuàng)建/tmp/123.txt 文件
沒有家目錄的用戶可以用模板新建家目錄
mkdir-p /home/user4chownuser4:user4? /home/user4cp /etc/skel/.bash*/home/user4chown-R user4:user4 /home/user4/
普通用戶臨時授權(quán)root用戶權(quán)限去執(zhí)行一條命令
visudo
可以查看sudo配置文件
在命令前加入NOPASSWD: 執(zhí)行sudo時就不需要再輸入用戶的密碼
例子:
User_Alias USER=chen1,chen2
Cmnd_Alias SU=/usr/bin/su
USER ALL=(ALL) NOPASSWD:SU
禁止root用戶遠程登陸
vi/etc/ssh/sshd_configPermitRootLoginno//修改此處systemctl restart sshd.service
二、df命令、du命令、磁盤分區(qū)
df-h
自動適應(yīng)文件大小的單位,查看磁盤使用情況
free
可以查看swap的使用情況
df-i
查看各個分區(qū)inode的使用情況
有的時候明明磁盤的內(nèi)存還有剩余,但是卻無法寫入新文件,這時候就可能是inode用完了。
du-sh
自動適應(yīng)單位顯示文件或文件夾大小
du不加后綴的時候和du -l 一樣,顯示文件夾下文件的大小
du-lh
自動適應(yīng)單位顯示文件夾下文件的大小
fdisk-l
列出linux 的磁盤信息
fdisk/dev/sdb
m幫助,直接按p是查看分區(qū)情況 n新建分區(qū) p建立主分區(qū) e擴展分區(qū) d刪除分區(qū),起始扇區(qū)默認2048就可以啦,last 扇區(qū) +2G 就是將分區(qū)一的大小設(shè)置為2G;輸錯命令用ctrl +u清除
BLOCKS是分區(qū)的大小,system是分區(qū)的類型,主分區(qū)和邏輯分區(qū)都是linux,擴展分區(qū)是extended
主分區(qū)的分區(qū)號可以為空,而邏輯分區(qū)的分區(qū)號必須連續(xù);邏輯分區(qū)以sdb5開始,分區(qū)之后輸入w可以保存分區(qū),q則不保存操作直接退出
三、磁盤格式化、磁盤掛載、手動增加swap空間
1.磁盤格式化
cat/etc/filesystems? //查看系統(tǒng)支持的文件格式,centos7默認xfs,centos6默認ext4
mount//查看系統(tǒng)的文件格式
mke2fs
-t指定文件格式 ext4 、ext3
-b指定塊大小,文件都比較大時,塊可以大一點,比如視頻、高清圖片
比較小時可以將塊設(shè)置小一點,加快讀取速度
-m指定給root用戶預(yù)留的空間大小,1就是1%,0.1就是0.1%
-i指定多少字節(jié)占一個inode號
如果不指定-t文件格式,則默認為ext2格式
mkfs.ext4/dev/sdb1? //將分區(qū)格式化為ext4格式mkfs.xfs? -f/dev/sdb1? //將分區(qū)格式化為xfs格式\
分區(qū)只有掛載了才可以使用mount查詢到,沒有掛載的分區(qū)可以用
blkid/dev/sdb1
mkfs.ext4 == mke2fs -t ext4
mkfs.ext4與mke2fs支持的選項相同
xfs格式只能用mkfs.xfs 創(chuàng)建
2.磁盤掛載
mount/dev/sdb? /mnt///將 /dev/sdb掛載到mnt下 mount UUID="2d8e7749-f2f7-4de5-b1b9-b6bf758d2f37"/mnt///這里的uuid是用blkid /dev/sdb 查到的
卸載磁盤
umount/dev/sdb
如果當前目錄在/dev/sdb下則需要退出當前分區(qū)
也可以直接用
umount-l/dev/sdb? umount-l/mnt/
mount
man mount 可以查看mount的具體用法
/defaults 可以查找默認用法
找到下面這一行
Use default options: rw, suid, dev, exec, auto, nouser, and async.
rw讀寫權(quán)限
suid可以設(shè)置suid權(quán)限
dev,系統(tǒng)默認不用管
exec可執(zhí)行
auto自動掛載
nouser是否允許普通用戶掛載,默認不允許
async 不實時同步內(nèi)存的東西到磁盤(減輕磁盤壓力)
mount -o remount,rw/dev/sdb? //重新掛載
vi/etc/fstab? //系統(tǒng)開機都掛載哪些文件
四、手動增加虛擬內(nèi)存
ddif=/dev/zeroof=/tmp/newdisk? bs=1M count=100//創(chuàng)建虛擬磁盤
if指定源,一般寫/dev/zero,它是unix系統(tǒng)特有的一個文件,可以源源不斷的提供'0',of指定目標文件,bs指定塊大小,count指定塊的數(shù)量
mkswap -f /tmp/newdisk//格式化為swapswapon? /tmp/newdisk//將新建的swap加載free-m//顯示內(nèi)存使用大小,-m指定單位為mswapoff? /tmp/newdisk//將虛擬內(nèi)存卸載
五、lvm
lvm創(chuàng)建過程
創(chuàng)建物理卷創(chuàng)建卷組創(chuàng)建邏輯分區(qū)格式化為需要的格式掛載分區(qū)
具體介紹日志
fdisk /dev/sdb
t 選擇分區(qū),8e //將分區(qū)轉(zhuǎn)換為lvm格式 ,w退出
創(chuàng)建物理卷
1.
yumprovides"/*/pvcreate"
通配查詢pvcreate命令的軟件包名
yum install -y lvm2//安裝lvm
partprobe //生成分區(qū)文件
2.
pvcreate/dev/sdb1pvcreate? /dev/sdb2pvcreate? /dev/sdb3
pvdisplay查看已經(jīng)創(chuàng)建的物理卷
創(chuàng)建卷組
1.pvs
可以直觀的查看物理卷有哪些
2.創(chuàng)建卷組,將sdb1和sdb2設(shè)置為一個卷組
vgcreatevg1 /dev/sdb1 /dev/sdb2
vgdisplay可以查看卷組信息
創(chuàng)建邏輯分區(qū)
lvcreate-L100M-n lv1 vg1
從vg1卷組中創(chuàng)建名字為lv1大小100M的邏輯分區(qū)
-L指定分區(qū)大小
-n指定分區(qū)名字
將分區(qū)格式化為ext4格式
mkfs.ext4 /dev/vg1/lv1
然后將文件掛載
mount/dev/vg1/lv1 /mnt
ext4擴容邏輯分區(qū)
umount/mnt///卸載分區(qū)lvresize -L200M/dev/vg1/lv1? //擴展分區(qū)e2fsck -f/dev/vg1/lv1? //檢查磁盤是否有錯誤resize2fs/dev/vg1/lv1? //更新邏輯分區(qū)大小,不然重新掛載會無法識別擴容的大小
ext4縮容
umount/mnt///卸載分區(qū)e2fsck -f/dev/vg1/lv1? ? //檢查磁盤是否有錯誤resize2fs/dev/vg1/lv1 100M? //將分區(qū)縮小為100Mlvresize -L100M/dev/vg1/lv1? ? //重新設(shè)置卷大小
xfs擴容
1.擴容與縮容不會更改分區(qū)中的文件,xfs只可以擴容不可以縮容;
2.如果磁盤已經(jīng)掛載要先umount 卸載
然后格式化為xfs.
mkfs.xfs-f/dev/vg1/lv1
XFS的擴容不需要先卸載,直接擴容即可
lvresize -L200M /dev/vg1/lv1? xfs_growfs/dev/vg1/lv1? //更新分區(qū)大小
關(guān)于擴容縮容的總結(jié)
ext4可以擴容和縮容而且需要卸載后操作,xfs只可以擴容,不需要卸載
ext4擴容
lvresize -L 100M /dev/vg1/lv1e2fsck-f/dev/vg1/lv1resize2fs /dev/vg1/lv1
縮容
e2fsck-f/dev/vg1/lv1resize2fs /dev/vg1/lv1 100Mlvresize -L 100M /dev/vg1/lv1
xfs擴容
lvresize-L100M/dev/vg1/lv1xfs_growfs /dev/vg1/lv1
在分區(qū)空間用完之后就需要擴容卷組,然后再擴容
卷組擴容
vgextendvg1 /dev/sdb3
將 /dev/sdb3加入到vg1卷組