Linux系統運維必備150個命令彙總

線上查詢及幫助命令(2個)

  • man:全拼manual,用來查看系統中自帶的各種參考手冊。
  • help:用於顯示shell內部命令的幫助信息。

文件和目錄操作命令(18個)

  • ls:全拼list,列出目錄的內容及其內容屬性信息。
  • cd:全拼change directory,切換當前工作目錄至dirName(目錄參數)。其中dirName表示法可爲絕對路徑或相對路徑。若目錄名稱省略,則變換至使用者的home目錄。另外,“~”也表示爲home目錄的意思,“.”是表示目前所在的目錄,“..”則表示目前目錄位置的上一層目錄。
  • cp:全拼copy,複製文件或目錄。
  • find:用來在指定目錄及目錄下查找文件。
  • mkdir:全拼make directories,創建目錄。
  • mv:全拼move,移動或重命名文件。
  • pwd:全拼print working directory,顯示當前工作目錄的絕對路徑。
  • rename:可用字符串替換的方式批量改變文件名。
  • rm:全拼remove,刪除一個或多個文件或目錄。必須格外小心地使用該命令。
  • rmdir:全拼remove empty directories,刪除空目錄。
  • touch:修改文件或者目錄的時間屬性,包括存取時間和更改時間。若文件不存在,系統會建立一個新的文件。
  • tree:以樹狀圖列出目錄的內容。它會列出指定目錄下的所有文件,包括子目錄裏的文件。
  • basename:顯示文件名。用於去掉文件名的目錄和後綴。
  • dirname:顯示給定路徑的目錄部分。
  • chattr:全拼change file attributes,改變文件的擴展屬性。
  • lsattr:全拼list file attributes,顯示文件擴展屬性。
  • file:用來識別文件類型。
  • md5sum:用於生成和校驗文件的md5值。它會逐位對文件的內容進行校驗,它常用於檢查文件的完整性。

查看文件及內容處理命令(21個)

  • cat:全拼concatenate,用於連接多個文件並且打印到屏幕輸出或重定向到指定文件中,可查看文件內容。
  • tac:cat的反向拼寫,因此命令的功能爲反向顯示文件內容。文件內容的最後一行先顯示,第一行最後顯示。
  • more:一頁一頁的形式顯示文件內容,更方便使用者逐頁閱讀,而最基本的指令就是按空白鍵(space)就往下一頁顯示,按 b 鍵就會往回(back)一頁顯示,而且還有搜尋字串的功能(與 vi 相似),使用中的說明文件,按 h 。
  • less:less 可以隨意瀏覽文件,而 more 僅能向前移動,卻不能向後移動,而且 less 在查看之前不會加載整個文件。
  • head:顯示文件的開頭的內容。在默認情況下,head命令顯示文件的頭10行內容。
  • tail:查看文件尾部內容,有一個常用的參數 -f 常用於查閱正在改變的文件。可以看到最新的文件內容。
  • cut:將文件的每一行按指定分隔符分割並輸出。
  • split:分割文件爲不同的小片段。
  • paste:用於合併文件的列。paste指令會把每個文件以列對列的方式,一列列地加以合併。
  • sort:將文本文件內容加以排序,sort可針對文本文件的內容,以行爲單位來排序。
  • uniq:全拼uniqique,用於檢查及刪除文本文件中重複出現的行列。
  • wc:統計文件的行數、單詞數或字節數等。
  • iconv:轉換文件的編碼格式。
  • dos2unix:是將Windows DOS格式文件轉換爲Unix、Linux格式的實用命令。Windows格式文件的換行符爲\r\n ,而Unix&Linux文件的換行符爲\n.。dos2unix命令其實就是將文件中的\r\n 轉換爲\n。
  • diff:全拼difference,diff以逐行的方式比較文件的差異。
  • vimdiff:命令行可視化文件比較工具,常用於文本文件。
  • rev:全拼reverse,rev命令將文件中的每行內容以字符爲單位反序輸出,即第一個字符最後輸出,最後一個字符最先輸出,依次類推。
  • grep/egrep:全拼(Extend)Global standard Research Expression Print out the line,是一種文本搜索工具,可以通過使用指定的通配符/正則表達式來實現文本搜索功能。
  • join:用於將兩個文件中,指定欄位內容相同的行連接起來。找出兩個文件中,指定欄位內容相同的行,並加以合併,再標準輸出。
  • tr:拼translate,tr命令用於轉換或刪除文件中的字符。tr 指令從標準輸入設備讀取數據,經過字符串轉譯後,將結果輸出到標準輸出設備。
  • vi/vim:vi編輯器是所有Unix及Linux系統下標準的編輯器,它的強大不遜色於任何最新的文本編輯器。Vim是從 vi 發展出來的一個文本編輯器。代碼補完、編譯及錯誤跳轉等方便編程的功能特別豐富,在程序員中被廣泛使用。

文件壓縮及解壓縮命令(4個)

  • tar:tar命令是用來建立,還原備份文件的工具程序,它可以加入,解開備份文件內的文件。
  • unzip:unzip命令用於解壓縮zip文件。
  • gzip:gzip命令用於壓縮文件。gzip是個使用廣泛的壓縮程序,文件經它壓縮過後,其名稱後面會多出".gz"的擴展名。
  • zip:zip命令可以用來將文件壓縮成爲常用的zip格式。

信息顯示命令(11個)

  • uname:全拼Unix name,用於顯示系統信息。
  • hostname:hostname命令用於顯示和設置系統的主機名稱。環境變量HOSTNAME也保存了當前的主機名。在使用hostname命令設置主機名後,系統並不會永久保存新的主機名,重新啓動機器之後還是原來的主機名。如果需要永久修改主機名,需要同時修改/etc/hosts和/etc/sysconfig/network的相關內容。
  • dmesg:全拼diagnostic message,用於顯示開機信息,診斷系統故障。kernel會將開機信息存儲在ring buffer中。若是開機時來不及查看信息,可利用dmesg來查看。開機信息亦保存在/var/log目錄中,名稱爲dmesg的文件裏。
  • uptime:顯示系統運行時間及負載。
  • stat:全拼status,用於顯示文件和文件系統狀態屬性。
  • du:全拼disk usage,顯示指定的目錄或文件所佔用的磁盤空間。
  • df:全拼disk free,用於顯示目前在Linux系統上的文件系統的磁盤使用情況統計。
  • top:top命令是Linux下常用的性能分析工具,能夠實時顯示系統中各個進程的資源佔用狀況,類似於Windows的任務管理器。top是一個動態顯示過程,即可以通過用戶按鍵來不斷刷新當前狀態。如果在前臺執行該命令,它將獨佔前臺,直到用戶終止該程序爲止。比較準確的說,top命令提供了實時的對系統處理器的狀態監視。
  • free:free命令顯示Linux系統中空閒的、已用的物理內存及swap內存,及被內核使用的buffer。在Linux系統監控的工具中,free命令是最經常使用的命令之一。
  • date:date命令可以用來顯示或設定系統的日期與時間,在顯示方面,使用者可以設定欲顯示的格式。
  • cal:全拼calendar,cal命令用來顯示公曆日曆。

搜索文件命令(4個)

  • which:which命令用於查找文件。which指令會在環境變量$PATH設置的目錄裏查找符合條件的文件。
  • find:從磁盤遍歷查找文件或目錄。
  • whereis:該指令會在特定目錄環境變量PATH路徑查找符合條件的文件。這些文件應屬於原始代碼、二進制文件,或是幫助文件。
  • locate:locate命令用於查找符合條件的文檔,他會去保存文檔和目錄名稱的數據庫內,查找合乎範本樣式條件的文檔或目錄。一般情況我們只需要輸入 locate your_file_name 即可查找指定文件。locate與find 不同: find 是去硬盤找,locate 只在資料庫中找。locate的速度比find快,它並不是真的查找,而是查數據庫。

用戶管理命令(10個)

  • useradd:建立用戶帳號。使用useradd指令所建立的帳號,實際上是保存在/etc/passwd文本文件中。
  • usermod:修改系統已經存在的用戶屬性。
  • userdel:userdel命令用於刪除用戶帳號。若不加參數,則僅刪除用戶帳號,而不刪除相關文件。
  • groupadd:用於創建一個新的用戶工作組。新工作組的信息將被添加到系統文件中。
  • passwd:全拼password,passwd命令用來更改使用者的密碼。
  • chage:全拼change,chage命令是用來修改帳號和密碼的有效期限。
  • id:顯示用戶以及所屬羣組的實際與有效ID。
  • su:全拼Switch User,su命令用於變更爲其他使用者的身份,除 root 外,需要鍵入該使用者的密碼。
  • visudo:visudo編輯/etc/sudoers文件的專屬命令。sudoers文件的默認權限是440,即默認無法修改,visudo需要超級用戶權限,可以在不更改sudoers文件權限的情況下,直接修改sudoers文件。
  • sudo:sudo命令可以把某些超級用戶權限分類有針對性授權給指定的普通用戶,並且普通用戶不需要知道root密碼就可以使用得到的授權。也就是說,經由 sudo 所執行的指令就好像是 root 親自執行。這樣用戶就可以通過自己的普通帳戶登錄實現利用root的權限來管理系統了,當然也就不需要有root賬號及密碼了。

基礎網絡操作命令(11個)

  • telnet:telnet命令使用TELNET協議遠程登錄。執行telnet指令開啓終端機階段作業,並登入遠端主機。
  • ssh:使用SSH加密協議遠程登錄。
  • scp:全拼secure copy,用於不同主機之間複製文件。, scp 是 linux 系統下基於 ssh 登陸進行安全的遠程文件拷貝命令。
  • wget:用來從指定的URL下載文件。
  • ping:測試主機之間網絡的連通性。
  • route:顯示和設置linux系統的路由表。
  • ifconfig:全拼interfaces config,通常需要以root身份登錄或使用sudo以便在Linux機器上使用ifconfig工具。ifconfig工具不僅可以被用來簡單地獲取網絡接口配置信息,還可以修改這些配置。
  • ifup:啓動網卡。
  • ifdown:關閉網卡。
  • netstat:顯示網絡狀態。利用netstat指令可讓你得知整個Linux系統的網絡情況。
  • ss:全拼Socket Statistics,用來獲取socket統計信息,它可以顯示和netstat類似的內容。ss的優勢在於它能夠顯示更多更詳細的有關TCP和連接狀態的信息,而且比netstat更快速更高效。

深入網絡操作命令(9個)

  • nmap:全拼Network Mapper,是Linux下的網絡掃描和嗅探工具包。nmap是在網絡安全滲透測試中經常會用到的強大的掃描器。
  • lsof:全名list open files,列出當前系統打開文件的工具。在linux系統環境下,任何事物都可以以文件形式存在,通過文件不僅可以訪問常規的數據,還可以訪問網絡連接和硬件。
  • mail:電子郵件發送和接收工具。
  • mutt:郵件管理命令。
  • nslookup:交互式查詢互聯網DNS服務器的命令。
  • dig:常用的域名查詢工具,可以用來測試域名系統工作是否正常。
  • host:常用的分析域名查詢工具,可以用來測試域名系統工作是否正常。
  • traceroute:顯示數據包到主機間的路徑。traceroute指令讓你追蹤網絡數據包的路由途徑,預設數據包大小是40Bytes,用戶可另行設置。
  • tcpdump:免費的網絡分析工具。TcpDump可以將網絡中傳送的數據包的“頭”完全截獲下來提供分析。

有關磁盤與文件系統的命令(16個)

  • mount:用於掛載Linux系統外的文件。
  • umount:用於卸除文件系統。
  • fsck:全拼file system check,用來檢查和維護不一致的文件系統。若系統掉電或磁盤發生問題,可利用fsck命令對文件系統進行檢查。
  • parted: 磁盤分區命令,沒有磁盤大小限制。針對大於2TB的硬盤,需要採用GPT分區,使用parted命令進行操作 。
  • mkfs:全拼make filesystem,格式化創建Linux文件系統。常見的文件系統有ext2,ext3, ext4 , vfat等。
  • partprobe:從kernel重新讀取分區信息。
  • e2fsck:檢查ext2/ext3/ext4類型文件系統。
  • mkswap:用於設置交換區(swap area)。mkswap可將磁盤分區或文件設爲Linux的交換區。
  • swapon:啓用交換分區。
  • swapoff:關閉交換分區。
  • sync:在 linux/unix 系統中,在文件或數據處理過程中一般先放到內存緩衝區中,等到適當的時候再寫入磁盤,以提高系統的運行效率。sync 命令則可用來強制將內存緩衝區中的數據立即寫入磁盤。
  • resize2fs:調整ext2/ext3/ext4文件系統大小。

系統權限及用戶授權相關命令(4個)

  • chmod:全拼Change mode,Linux/Unix 的文件調用權限分爲三級 : 文件擁有者、羣組、其他。chmod命令可以控制文件如何被他人所調用。
  • chown:全拼Change owner,Linux/Unix 是多人多工操作系統,所有的文件皆有擁有者。chown將指定文件的擁有者改爲指定的用戶或組 。
  • chgrp:全拼Change group,用於變更文件或目錄的所屬羣組。
  • umask:顯示或設置權限掩碼。在linux系統中,我們創建一個新的文件或者目錄的時候,這些新的文件或目錄都會有默認的訪問權限,umask命令與文件和目錄的默認訪問權限有關。若用戶創建一個文件,則文件的默認訪問權限爲 -rw-rw-rw- ,創建目錄的默認權限 drwxrwxrwx ,而umask值則表明了需要從默認權限中去掉哪些權限來成爲最終的默認權限值。

查看系統用戶登陸信息的命令(7個)

  • whoami:顯示當前有效的用戶名稱。
  • who:顯示目前登錄系統的用戶信息。
  • w:顯示已經登陸系統的用戶列表,並顯示用戶正在執行的指令。
  • last:用於顯示用戶最近登錄信息。
  • lastlog:顯示系統中所有用戶最近一次登錄信息。
  • users:顯示當前登錄系統的所有用戶的用戶列表。
  • finger:顯示本地主機現在所有的用戶的登陸信息。

內置命令及其它(19個)

  • echo:打印變量,或直接輸出指定的字符串。
  • printf:將結果格式化輸出到標準輸出。
  • rpm:管理rpm包的命令。rpm(redhat package manager) 原本是 Red Hat Linux 發行版專門用來管理 Linux 各項套件的程序,由於它遵循 GPL 規則且功能強大方便,因而廣受歡迎。逐漸受到其他發行版的採用。RPM 套件管理方式的出現,讓 Linux 易於安裝,升級,間接提升了 Linux 的適用度。
  • yum:yum( Yellow dog Updater, Modified)是一個在Fedora和RedHat以及SUSE中的Shell前端軟件包管理器。基於RPM包管理,能夠從指定的服務器自動下載RPM包並且安裝,可以自動處理依賴性關係,並且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝。yum提供了查找、安裝、刪除某一個、一組甚至全部軟件包的命令。
  • watch:週期性的執行給定的命令,並將命令的輸出以全屏方式顯示。
  • alias:用於設置指令的別名。若僅輸入alias,則可列出目前所有的別名設置。alias的效力僅及於該次登入的操作。若要每次登入是即自動設好別名,可在/etc/profile(全局生效)或.bashrc(當前用戶生效)中設定指令的別名。別名的作用:1)通過給危險命令加一些保護參數,防止人爲誤操作。2)把很多複雜的字符串或命令變成一個簡單的字符串或命令。
  • unalias:用於刪除別名。
  • date:用來顯示或設定系統的日期與時間,在顯示方面,使用者可以設定欲顯示的格式。
  • clear:清除屏幕。
  • history:顯示歷史記錄和執行過的指令命令。
  • eject:彈出光驅。
  • time:用於測量一個命令的運行時間。
  • nc:一個功能強大的網絡工具,通過它不僅可以探測端口,還能作爲客戶端連接服務。
  • xargs:全拼extended arguments,給命令傳遞參數的一個過濾器,也是組合多個命令的一個工具。
  • exec:用於調用並執行指令的命令。exec命令通常用在shell腳本程序中,可以調用其他的命令。如果在當前終端中使用命令,則當指定的命令執行完畢後會立即退出終端。
  • export:設置或者顯示環境變量。
  • unset:刪除變量或函數。
  • type:用來顯示指定命令的類型,判斷給出的指令是內部指令還是外部指令。
  • bc:任意精度計算器語言,通常在linux下當計算器用。

系統管理與性能監視命令(9個)

  • chkconfig:用於檢查,設置系統的各種服務。這是Red Hat公司遵循GPL規則所開發的程序,它可查詢操作系統在每一個執行等級中會執行哪些系統服務,其中包括各類常駐服務。
  • vmstat:全拼Virtual Memory Statistics,用來顯示Linux系統虛擬內存狀態,也可以報告關於進程、內存、I/O等系統整體運行狀態。
  • mpstat:全拼Multiprocessor Statistics,實時系統監控工具。其報告與CPU的一些統計信息,這些信息存放在/proc/stat文件中。在多CPU系統裏,其不但能查看所有CPU的平均狀況信息,而且能夠查看特定CPU的信息。
  • iostat:用於輸出CPU和磁盤I/O相關的統計信息。
  • sar:全拼System Activity Reporter,目前 Linux 上最爲全面的系統性能分析工具之一,可以從多方面對系統的活動進行報告。
  • ipcs:用於報告linux中進程間通信設施的狀態,顯示的信息包括消息列表、共享內存和信號量的信息。
  • ipcrm:用來刪除一個或更多的消息隊列、信號量集或者共享內存標識。
  • strace:用於診斷、調試Linux用戶空間跟蹤器。我們用它來監控用戶空間進程和內核的交互,比如系統調用、信號傳遞、進程狀態變更等。
  • ltrace:用來跟蹤進程調用庫函數的情況。

關機/重啓/註銷和查看系統信息的命令(6個)

  • shutdown:用來進行關機程序,並且在關機以前傳送訊息給所有使用者正在執行的程序,shutdown 也可以用來重開機。
  • halt:用來關閉正在運行的Linux操作系統。halt命令會先檢測系統的runlevel,若runlevel爲0或6,則關閉系統,否則即調用shutdown來關閉系統。
  • poweroff:用來關閉計算機操作系統並且切斷系統電源
  • logout:退出當前登錄的Shell。
  • exit:退出當前登錄的Shell。
  • Ctrl+d:退出當前登錄的Shell的快捷鍵。

進程管理相關命令(15個)

  • bg:將一個在後臺暫停的命令,變成繼續執行。
  • fg:將後臺中的命令調至前臺繼續運行。
  • jobs:查看當前有多少在後臺運行的命令。
  • kill:用於刪除執行中的程序或工作。
  • killall:用於終止某個指定名稱的服務所對應的全部進程。
  • pkill:通過進程名終止進程。
  • crontab:用來定期執行程序的命令。當安裝完成操作系統之後,默認便會啓動此任務調度命令。
  • ps:全拼Processes Status,用來列出系統中當前運行的那些進程。ps命令列出的是當前那些進程的快照,就是執行ps命令的那個時刻的那些進程,如果想要動態的顯示進程信息,就可以使用top命令。
  • pstree:將所有行程以樹狀圖顯示。
  • nice/renice:爲未運行命令指定運行時調度優先級的,如果是已運行的命令則需要renice命令。
  • nohup:全拼no hang up,讓後臺工作在離開操作終端時,也能夠正確地在後臺執行。
  • pgrep:通過程序的名字來查詢進程的工具,一般是用來判斷程序是否正在運行。
  • runlevel:查看系統當前運行級別。
  • init:用於切換到指定的運行級別。
  • service:用於管理Linux操作系統中服務的命令。它可以啓動、停止、重新啓動和關閉系統服務,還可以顯示所有系統服務的當前狀態。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章