Linux 系統管理員的 10 份速查表
作為一名系統管理員,你做所的不是一件工作,而是全部工作,而且往往每一件工作都是隨時隨地出現,毫無預兆。除非你每天都只做一項任務,否則當需要的時候,你可能並不總是都能將所有的命令和選項都記在腦海里。這就是為什麼我喜歡速查表的原因。
速查表可以幫助你避免愚蠢的錯誤,它們可以讓你不必翻閱數頁的文檔,並讓你高效地完成任務。我為每位系統管理員挑選了我最喜歡的 10 個速查表,無論他的經驗水平如何。
網路
我們的《Linux 網路》速查表是速查表界的的瑞士軍刀,它包含了最常見的網路命令的簡單提醒,包括 nslookup
、tcpdump
、nmcli
、netstat
、traceroute
等。最重要的是,它用了 ip
命令,所以你終於可以不用再默認使用 ifconfig
命令了!
防火牆
系統管理員有兩種:了解 iptables
的和使用前一類人編寫的 iptables
配置文件的。如果你是第一類人,你可以繼續使用你的 iptables
配置,有沒有 firewalld 都無所謂。
如果你是第二類人,你終於可以放下你的 iptables 焦慮,擁抱 firewalld 的輕鬆。閱讀《用 firewall-cmd 保護你的 Linux 網路》,然後下載我們的《firewalld 速查表》來記住你所學到的東西,保護你的網路埠從未如此簡單。
SSH
許多系統管理員都用的是 POSIX shell,所以可以在別人的計算機上運行的遠程 shell 是 Linux 上最重要的工具之一也就不足為奇了。任何學習伺服器管理的人通常很早就學會了使用 SSH,但我們中的許多人只學習了基礎知識。
當然,SSH 可以在遠程機器上打開一個互動式的 shell,但它的功能遠不止這些。比如說,你需要在遠程機器上進行圖形化登錄。遠程主機的用戶要麼不在鍵盤旁邊,要麼無法理解你啟用 VNC 的指令。只要你有 SSH 許可權,就可以為他們打開埠。
$ ssh -L 5901:localhost:5901 <remote_host>
通過我們的《SSH 速查表》了解更多。
Linux 用戶和許可權
傳統的大型機和 UNIX 超級計算機風格的用戶賬戶現在基本上已經被 Samba、LDAP 和 OpenShift等系統所取代。然而,這並沒有改變對管理員和服務賬戶仔細管理的需求。為此,你仍然需要熟悉useradd
、usermod
、chown
、chmod
、passwd
、gpasswd
、umask
等命令。
把我的《用戶和許可權速查表》放在手邊,你就可以隨時對與用戶管理有關的任務進行合理的概覽,並有實例命令演示你需要做的任何事情的正確語法。
基本的 Linux 命令
並不是所有的系統管理員都會把所有的時間花在終端上。無論你是否喜歡在桌面上工作,還是剛開始使用 Linux,有時為常用的終端命令提供一個任務導向的參考是很好的。
對於一個為靈活性和即興性而設計的界面來說,找到所有你可能需要的東西是很困難的,但我的《常用命令速查表》是相當全面的。這張速查表以任何技術型桌面用戶的典型生活為藍本,涵蓋了用命令在計算機內導航、尋找文件的絕對路徑、複製和重命名文件、建立目錄、啟動系統服務等內容。
Git
在計算機的歷史上,版本控制曾經是只有開發者才需要的東西。但那是過去,而 Git 是現在。對於任何希望跟蹤從 Bash 腳本到配置文件、文檔和代碼的變化的人來說,版本控制是一個重要的工具。Git 適用於每個人,包括程序員、網站可靠性工程師(SRE),甚至系統管理員。
獲取我們的《Git 速查表》來學習要領、基本工作流程和最重要的 Git 標誌。
Curl
Curl 不一定是系統管理員專用的工具,從技術上講,它「只是」一個用於終端的非互動式 Web 瀏覽器。你可能幾天都不用它一次。然而,你很有可能會發現 Curl 對你每天要做的事情很有用,不管是快速參考網站上的一些信息,還是排除網路主機的故障,或者是驗證你運行或依賴的一個重要 API。
Curl 是一個向伺服器傳輸數據的命令,它支持的協議包括 HTTP、FTP、IMAP、LDAP、POP3、SCP、SFTP、SMB、SMTP 等。它是一個重要的網路工具,所以下載我們的《Curl 速查表》,開始探索 Curl 吧。
SELinux
Linux 的安全策略在默認情況下是很好的,root 許可權和用戶許可權之間有很強的分離,但 SELinux 使用標籤系統對其進行了改進。在配置了 SELinux 的主機上,每個進程和每個文件對象(或目錄、網路埠、設備等)都有一個標籤。SELinux 提供了一套規則來控制進程標籤對對象(如文件)標籤的訪問。
有時候你需要調整 SELinux 策略,或者調試一些安裝時沒有正確設置的東西,或者深入了解當前的策略。我們的《SELinux 速查表》可以提供幫助。
Kubectl
無論你是已經遷移到了開放的混合雲、封閉的私有雲,還是你還在研究這樣的遷移需要準備什麼,你都需要了解 Kubernetes。雖然雲確實還需要人去擺弄物理伺服器,但作為一個系統管理員,你的未來肯定會涉及到容器,而沒有什麼比 Kubernetes 更能做到這一點。
雖然 OpenShift 為 Kubernetes 提供了流暢的「儀錶盤」體驗,但有時需要一種直接的方法,這正是 kubectl
提供的。下一次當你不得不到處推送容器時,請確保你手頭有我們的《kubectl 速查表》。
awk
近幾年來,Linux 經歷了很多創新,有虛擬機、容器、新的安全模型、新的初始化系統、雲等等。然而有些東西似乎永遠不會改變。尤其是,系統管理員需要從日誌文件和其它無盡的數據流中解析和隔離信息。仍然沒有比 Aho、Weinberger 和 Kernighan 的經典 awk
命令更適合這項工作的工具。
當然,自從 1977 年它被編寫出來後,awk
已經走過了很長的路,新的選項和功能使它更容易使用。但如果你不是每天都在使用 awk
,那麼多的選項和語法可能會讓你有點不知所措。下載我們的《awk 速查表》,了解 GNU awk 的工作原理。
贈品:Bash 腳本編程
速查表是有用的,但如果你想找更全面的東西,你可以下載我們的《Bash 腳本編程手冊》。這本指南教你如何將你從速查表中了解到的所有命令和經驗結合到腳本中,幫助你建立一個隨時能用的自動化解決方案庫來解決你的日常問題。本書內容豐富,詳細講解了 Bash 的工作原理、腳本與互動式命令的區別、如何捕捉錯誤等。
賦能系統管理員
你是一名系統管理員嗎?
你正在成為一名系統管理員的路上嗎?
你是否對系統管理員一天都在做什麼感到好奇?
如果是的話,請查看《賦能系統管理員》,這裡有來自業界最勤奮的系統管理員的新文章,講述他們的工作,以及 Linux 和開源如何讓這一切成為可能。
via: https://opensource.com/article/20/7/sysadmin-cheat-sheets
作者:Seth Kenlon 選題:lujun9972 譯者:wxy 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive