無論你是系統管理員、開發人員、DevOps、安全專家還是運維人員……有效地使用 linux 及其工具是你可以學習的最基本技能。Linux 是全球大部分服務器和應用程序的支柱。
在以前的大多數文章中,大家肯定讀了許多類似于“你必須了解的 9 個 Linux 命令”或“Linux 命令入門指南”的文章。我發現幾乎所有這些文章都是針對初學者的,教授大家如何使用 ls 或 echo。我相信我的大部分讀者至少熟悉 Linux 命令行所提供的基本命令。
我將記錄并呈現我在工作中每天使用的命令速查表。這個策劃清單超越了初學者的水平,而是關注于那些能幫助你進一步推進、更高效地管理 Linux 系統及其關鍵工具的命令。
本文將分為兩個部分:
第一部分:Linux 工具
(一)實用工具
1、rsync
使用示例:
$ rsync -vap --ignore-existing <source_file> <destination_file># Key flags:
v = verbrose, r = recursive, p = preserve permissions, g = group, o = owner, a = archive, --progress = progresss bar
用于將文件和目錄復制到目標位置,類似于 cp 命令。但是,它還允許復制到遠程位置,并可以提供進度條,通常用于備份。
2、mkpasswd
示例如下圖:
mkpasswd 是一個簡單但非常有用的命令,它可以生成指定長度的復雜隨機密碼。
3、screen
使用示例:
screen
$ screen # 啟動screen 會話
$ screen -ls # 列出正在運行的服務
$ screen -r # 附加到會話
Screen 是一個全屏窗口管理器;它創建一個帶有運行 shell 的單個窗口,并允許在單個會話中運行多個屏幕窗口。當你遠程運行一個長時間的任務并擔心你的 SSH 會話斷開并破壞一切時,它是最有益的。即使窗口對你不可見,Screen 也會在斷開連接后繼續運行并繼續運行你的命令。
4、Ldapsearch
使用示例:
$ ldapsearch -x -W -D <username | less# Key Flags
-x = simple authentication, -W = prompt for password, -D = Use distinguished binddn name to bind to LDAP directory
如果您經常使用 LDAP 數據庫,則必須使用 Ldapsearch 工具。該工具打開到 LDAP 服務器的連接,并允許您搜索、查找和調試數據庫中的條目。
(二)監控工具
1、Uptime
Uptime 返回有關服務器運行時間、當前時間、用戶數量和內存使用平均值的指標。如果服務器出現問題,這通常是第一個需要查看的信息。
‘w’ – 是的,只有一個字母。這是將 uptime 和 who 命令連續運行的絕妙組合。$ w
2、Wall
對于任何系統管理員來說,Wall 都是一個很方便的命令;它允許您向當前登錄到系統的所有用戶終端發送消息。這對于全系統范圍的公告非常有用。
傳訊息”hi” 給每一個使用者:
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com
? wall hi
3、Top
如下圖:
Top 命令可以自動刷新顯示 CPU 和關鍵內存使用情況以及 CPU 使用指標的進程列表。
4、Ncdu
如下圖:
ncdu 命令可以快速方便地查看磁盤使用情況,讓你可以快速輕松地查看哪些目錄占用了最多的磁盤空間。
5、lsof
lsof 命令的一個基本目的是列出打開的文件,當出現文件被占用的掛載問題時,這個命令非常有用。它可以快速識別哪些進程正在使用哪些文件。
(三)網絡工具
1?.NETcat
Netcat 或 nc 主要用于端口掃描,但實際上它是一種很好的網絡工具,系統管理員可以在任何任務中使用。Netcat 可以支持端口掃描、文件復制、端口轉發、代理服務器和主機服務器等多種功能,可以說它非常多才多藝。
Netcat 非常可定制化,如果您想了解更多,請查看這個鏈接:https://www.linuxmi.com/linux-netcat.html
2、NetStat
使用示例:
$ netstat -a #列出所有網絡端口
$ netstat -tlpn # 列出所有偵聽端口# Key Flags
-s = Show statistics, -v = verbrose, -r = show routing tables, -i display interface table, -g = show group memeberships
NetStat 返回各種網絡詳細信息,如路由表、網絡連接、成員、統計數據、標志等。
3、Nslookup
使用示例:
$ nslookup www.93139.com/tags/devops# Key Flags
-port = Change port number for connection, -type = Change type of query. -domain = Sets search list to name
Nslookup 是用于獲取 Internet 或本地網絡上的服務器信息的命令。它查詢 DNS 以查找名稱服務器信息,并可用于網絡調試。
4、TCPDump
TCPDump 用于捕獲和分析進出您系統的流量。它是一種強大而多才多藝的工具,專門用于調試和解決網絡問題,但也可以用作安全工具。