每位新人必須掌握的五大Linux終端命令
【51CTO.com快譯】有時(shí)候我們不可避免地要使用終端,但它絕對(duì)沒有大家想象中那么可怕。
Tux,Linux吉祥物。
我個(gè)人是《新世紀(jì)福音戰(zhàn)士》的鐵粉,因此這里引用一句臺(tái)詞:“人們畏懼黑暗,因此努力在其中刻畫火焰的輪廓。”對(duì)于很多Linux新人來說,終端那陰沉的屏幕同樣是種黑暗——因此人們拼命利用GUI加以替代。
雖然圖形化用戶界面確實(shí)代表著現(xiàn)代計(jì)算友好的一面,且在多數(shù)情況下更易于使用。然而,有時(shí)命令行仍然擁有它的獨(dú)特優(yōu)勢(shì)。只要擁有一些基本知識(shí),大家就能夠在用戶界面無(wú)法啟動(dòng)或者需要進(jìn)行維護(hù)時(shí),運(yùn)用命令行這一利器輕松解決問題。
對(duì)于初學(xué)者,只要掌握以下五條命令,即可輕松玩轉(zhuǎn)Linux。
1. sudo
如果說命令中也分階級(jí)的話,那么最值得尊重的無(wú)疑是sudo。Sudo的作用非常簡(jiǎn)單:它將以超級(jí)用戶(或者root)權(quán)限運(yùn)行任何命令。無(wú)論是更新系統(tǒng)還是變更配置文件,配合sudo運(yùn)行命令都是必不可少的。
由于/mnt從屬于root,因此大家需要利用sudo方可在/mnt中創(chuàng)建目錄。
Sudo還允許用戶破壞系統(tǒng)或者查看其他用戶的隱私。正因?yàn)槿绱?,在初次使用sudo時(shí),系統(tǒng)會(huì)給出以下提示:
我們相信您已經(jīng)從本地系統(tǒng)管理員處獲得了常規(guī)指導(dǎo)。具體內(nèi)容通常歸結(jié)為以下三點(diǎn):
1)尊重他人隱私。
2)輸入前再三斟酌。
3)能力越大,責(zé)任越大。
如果大家希望在自有用戶的主目錄之外編輯或者修改任何文件,那么往往需要使用sudo。要使用sudo,您的用戶需要位于sudoers文件內(nèi)或者作為超級(jí)用戶群組(通常為‘wheel’或者‘sudo’)中的一員。
上圖為一個(gè)典型的sudoers文件內(nèi)容,其中指定了允許執(zhí)行root訪問的各組。請(qǐng)注意,不要為無(wú)需密碼的用戶或者分組分配sudo訪問權(quán)限。
由于sudo能量巨大,因此如果不清楚命令的具體作用,千萬(wàn)不要隨意添加sudo??赡芎芏嗯笥讯悸犝f過sudorm–R /這條惡作劇命令,它會(huì)以遞歸方式刪除系統(tǒng)上的每一個(gè)文件,且操作系統(tǒng)不會(huì)額外進(jìn)行任何提示。所以正如之前提到,“輸入前再三斟酌。”
2.軟件包管理器工具(yum、apt或者pacman)
使用sudo的頭號(hào)理由就是需要通過軟件包管理器向PC內(nèi)添加或者刪除程序。盡管這里提到的三大主要軟件包管理器各自擁有不同的命令參數(shù)與語(yǔ)法,但它們都能夠?qū)崿F(xiàn)同樣的三項(xiàng)基本功能:安裝軟件包、刪除軟件包、升級(jí)系統(tǒng)上所有軟件包。(注意:除非您以root用戶登錄,否則您需要添加sudo以運(yùn)行這些命令。)
在Arch Linux上利用pacman進(jìn)行系統(tǒng)升級(jí)。請(qǐng)注意,在pacman命令前使用sudo。
- yum (紅帽/Fedora/CentOS)
安裝軟件包:
yum install <package>
移除軟件包:
yum remove <package>
升級(jí)系統(tǒng):
yum update
- apt (Debian/Ubuntu/Mint)
安裝軟件包:
apt install <package>
移除軟件包:
apt remove <package>
升級(jí)系統(tǒng):
apt update
apt upgrade
- pacman (Arch/Manjaro)
安裝軟件包:
pacman -S <package>
移除軟件包:
pacman -R <package>
升級(jí)系統(tǒng):
pacman -Syu
各軟件包管理器的功能當(dāng)然不止于此,不過這里列出的是大家最為常用的三項(xiàng)功能。無(wú)論您選擇哪一種Linux發(fā)行版,都應(yīng)該能夠熟練掌握軟件包管理器的使用方式,并了解在哪里可以找到說明文檔。
3. systemctl (Systemd)
長(zhǎng)久以來,Linux中的后臺(tái)程序——即守護(hù)程序——會(huì)使用一系列名為initscripts的腳本。對(duì)于新人,initscript往往難于閱讀以及解釋或者修改。最近,initscript已經(jīng)被一項(xiàng)名為Systemd的服務(wù)管理應(yīng)用所取代。如果大家使用的是較新的Linux發(fā)行版,那么正合適了解如何利用Systemd啟動(dòng)您需要的服務(wù)。
在引導(dǎo)時(shí)禁用及重新啟用NetworkManager服務(wù)。
能夠利用Systemd實(shí)現(xiàn)的功能多種多樣(Unix程序則通常只專注于一項(xiàng)功能,并把它做到***),然而,大家在使用systemd時(shí)仍應(yīng)考慮以下五個(gè)關(guān)鍵詞。
啟動(dòng)服務(wù)時(shí),使用start關(guān)鍵詞:
- systemctl start <service name>
同樣的,如果需要對(duì)發(fā)生故障的服務(wù)進(jìn)行重啟,或者變更其配置,則使用restart:
- systemctl restart <service name>
要停止服務(wù),使用stop:
- systemctl stop <service name>
要在引導(dǎo)時(shí)啟用每項(xiàng)服務(wù),則使用enable:
- systemctl enable <service name>
***,利用disable禁止服務(wù)在引導(dǎo)時(shí)啟動(dòng):
- systemctl disable <service name>
4. ls
雖然簡(jiǎn)單且直觀,但ls的作用卻超乎大家的想法。就效果而言,ls命令能夠列出特定路徑下的全部文件與文件夾。在默認(rèn)情況下,它會(huì)列出當(dāng)前工作目錄(通常為用戶主目錄)中的文件與文件夾。當(dāng)然,大家也可以利用它查找特定路徑下的內(nèi)容。
大家可以為ls命令添加多種選項(xiàng),其中最常用的是-l,它會(huì)顯示文件權(quán)限與歸屬。
那么,作為L(zhǎng)inux版本的dir,為什么ls擁有如此重要的作用?先提一點(diǎn),它能夠幫助大家查找配置文件中的子目錄。它還能夠在無(wú)需GUI的前提下,查看某一環(huán)境下的文件名。由于Linux文件名與命令具備大小寫敏感特性,因此它能夠輕松了解確切的拼寫方式??傊?,大家可以將ls作為自己的偵察機(jī),用于探索周邊系統(tǒng)。
5. man
有時(shí)候,我們可能需要幫助,但又無(wú)法接入互聯(lián)網(wǎng)。在這種可怕的狀況下,man能夠幫助大家脫離困境。
事實(shí)上,man命令就是manual,即手冊(cè)的縮寫,能夠?qū)⒋鎯?chǔ)在計(jì)算機(jī)內(nèi)的信息以“在線”方式進(jìn)行命令文檔顯示。如果大家需要了解chmod的作用,只需要在終端內(nèi)輸入man chmod即可。另外,大家可以使用上下箭頭或者PgUp及PgDn鍵進(jìn)行man翻頁(yè)。閱讀完成后,按下Q即可退出。
ls命令的手冊(cè)頁(yè)面。
盡管man能夠在缺少互聯(lián)網(wǎng)的情況下帶來巨大幫助,但谷歌仍然是***勁的資源獲取利器。需要指出的是,谷歌搜索結(jié)果中首先顯示的其實(shí)就是像man頁(yè)面這樣的網(wǎng)頁(yè)版說明。
總結(jié)
當(dāng)然,今天介紹的五條命令只是個(gè)開始,大家還需要學(xué)習(xí)更多命令,從而更好地了解自己的Linux系統(tǒng)。雖然在圖形化界面中能夠通過多種方式完成任務(wù),但控制臺(tái)命令仍是最為快捷的系統(tǒng)更新途徑。
另外,控制臺(tái)命令在顯示錯(cuò)誤信息時(shí)也具有獨(dú)特的優(yōu)勢(shì)。這意味著當(dāng)更新錯(cuò)誤時(shí),軟件包發(fā)生故障時(shí)或者無(wú)法接入互聯(lián)網(wǎng)時(shí),命令行往往能夠更好地解決當(dāng)前困境。
總而言之,只要勤于練習(xí),每個(gè)人都能夠信心滿滿地運(yùn)用終端命令,從而搞定工作與生活中的種種需要。
原文標(biāo)題:5 terminal commands every Linux newbie should know ,作者:Alex Campbell
【51CTO譯稿,合作站點(diǎn)轉(zhuǎn)載請(qǐng)注明原文譯者和出處為51CTO.com】