我個人是《新世紀福音戰士》的鐵粉,因此這裡引用一句台詞:「人們畏懼黑暗,因此努力在其中刻畫火焰的輪廓。」對於許多Linux新人來說,終端那陰沉的螢幕同樣是種黑暗-因此人們拼命利用GUI加以替代。
雖然圖形化使用者介面確實代表著現代計算友善的一面,且在多數情況下更易於使用。然而,有時命令列仍然擁有它的獨特優勢。只要擁有一些基本知識,大家就能夠在使用者介面無法啟動或需要進行維護時,運用命令列這一利器輕鬆解決問題。
對於初學者,只要掌握以下五個指令,即可輕鬆玩轉Linux。
sudo
#如果說命令也分階級的話,那麼最值得尊重的無疑是sudo。 Sudo的作用非常簡單:它將以超級使用者(或root)權限執行任何指令。無論是更新系統還是變更設定文件,配合sudo運行指令都是不可或缺的。
由於/mnt從屬於root,因此大家需要利用sudo方可在/mnt中建立目錄。
Sudo也允許使用者破壞系統或查看其他使用者的隱私。正因為如此,在初次使用sudo時,系統會給予以下提示:
我們相信您已經從本機系統管理員處獲得了常規指導。具體內容通常歸結為以下三點:
(1)尊重他人隱私。
(2)輸入前,再三斟酌。
(3)能力越大,責任越大。
如果大家希望在自有使用者的主目錄之外編輯或修改任何文件,那麼往往需要使用sudo。要使用sudo,您的用戶需要位於sudoers文件內或作為超級用戶群組(通常為‘wheel’或‘sudo’)中的一員。
上圖為一個典型的sudoers文件內容,其中指定了允許執行root存取的各組。請注意,不要為無需密碼的使用者或分組分配sudo存取權限。
由於sudo能量巨大,因此如果不清楚命令的具體作用,千萬不要隨意添加sudo。可能很多朋友都聽說過sudorm–R /這條惡作劇指令,它會以遞歸方式刪除系統上的每一個文件,且作業系統不會額外進行任何提示。所以正如之前提到,「輸入前再三斟酌。」
軟體套件管理器工具
#使用sudo的頭號理由就是需要透過軟體包管理器向PC內新增或移除程式。儘管這裡提到的三大主要軟體套件管理器各自擁有不同的命令參數與語法,但它們都能夠實現同樣的三項基本功能:安裝軟體包、刪除軟體包、升級系統上所有軟體包。 (注意:除非您以root使用者登錄,否則您需要新增sudo以執行這些命令。)
在Arch Linux上利用pacman進行系統升級。請注意,在pacman命令前使用sudo。
yum (红帽/Fedora/CentOS)
安裝軟體套件:
yum install
移除軟體套件:
yum remove
升級系統:
yum update apt (Debian/Ubuntu/Mint)
安裝軟體套件:
apt install
移除軟體套件:
apt remove
升級系統:
apt update apt upgrade pacman (Arch/Manjaro)
安裝軟體套件:
pacman -S
移除軟體套件:
pacman -R
升級系統:
pacman -Syu
各軟體套件管理器的功能當然不止於此,不過這裡列出的是大家最常用的三項功能。無論您選擇哪一種Linux發行版,都應該能夠熟練軟體包管理器的使用方式,並了解在哪裡可以找到說明文件。
systemctl
#長久以來,Linux中的後台程式——也就是守護程式——會使用一系列名為initscripts的腳本。對於新人,initscript往往難於閱讀以及解釋或修改。最近,initscript已經被一項名為Systemd的服務管理應用程式取代。如果大家使用的是較新的Linux發行版,那麼正合適了解如何利用Systemd啟動您需要的服務。
在引導時停用及重新啟用NetworkManager服務
能夠利用Systemd實現的功能多種多樣(Unix程式則通常只專注於一項功能,並把它做到極致),然而,大家在使用systemd時仍應考慮以下五個關鍵字。
啟動服務時,使用start關鍵字:
systemctl start
同樣的,如果需要對發生故障的服務進行重啟,或者變更其配置,則使用restart:
systemctl restart
要停止服務,使用stop:
systemctl stop
要在開機時啟用每項服務,請使用enable:
systemctl enable
最後,利用disable禁止服務在開機時啟動:
systemctl disable
ls
雖然簡單又直觀,但ls的作用卻超乎大家的想法。就效果而言,ls指令能夠列出特定路徑下的全部檔案與資料夾。在預設情況下,它會列出目前工作目錄(通常為使用者主目錄)中的檔案與資料夾。當然,大家也可以利用它來找出特定路徑下的內容。
大家可以為ls指令新增多種選項,其中最常用的是-l,它會顯示檔案權限與歸屬。
那麼,身為Linux版本的dir,為什麼ls擁有如此重要的作用?先提一點,它能夠幫助大家找到設定檔中的子目錄。它也能夠在無需GUI的前提下,查看某一環境下的檔案名稱。由於Linux檔名與指令具備大小寫敏感特性,因此它能夠輕鬆了解確切的拼字方式。總之,大家可以將ls當作自己的偵察機,用來探索週邊系統。
man
有時候,我們可能需要協助,但又無法連接網路。在這種可怕的狀況下,man能夠幫助大家脫離困境。
事實上,man指令就是manual,也就是手冊的縮寫,能夠將儲存在電腦內的資訊以「線上」方式進行指令文件顯示。如果大家需要了解chmod的作用,只需要在終端機內輸入man chmod。另外,大家可以使用上下箭頭或是PgUp及PgDn鍵進行man翻頁。閱讀完成後,按Q即可退出。
ls指令的手冊頁面
儘管man能夠在缺少網路的情況下帶來巨大幫助,但Google仍然是最強勁的資源獲取利器。需要指出的是,Google搜尋結果中首先顯示的其實就是像man頁面這樣的網頁版說明。
總結
當然,今天介紹的五個指令只是個開始,大家還需要學習更多指令,以便更了解自己的Linux系統。雖然在圖形化介面中能夠透過多種方式完成任務,但控制台命令仍是最快速的系統更新途徑。
另外,控制台指令在顯示錯誤訊息時也具有獨特的優勢。這意味著當更新錯誤時,當軟體包發生故障時或無法連接到網路時,命令列往往能夠更好地解決當前困境。
總而言之,只要勤於練習,每個人都能夠信心滿滿地運用終端命令,從而搞定工作與生活中的種種需求。
以上是新人掌握的五大Linux終端機指令的技巧的詳細內容。更多資訊請關注PHP中文網其他相關文章!