新用戶不可不知的Linux命令
在Fedora上使用dnf命令,通過命令行來管理系統更新。
基于Linux系統的魅力之一就是,你可以直接從終端使用命令行來管理整個系統。而使用命令行的優點就是,你可以使用同樣的知識和技能來管理任何一個Linux發行版。
這不可能通過圖形用戶界面(GUI)來做到,因為每個發行版和桌面環境提供了各自的用戶界面。確切地說,有些情況下你需要不同的命令在不同的發行版上執行某些任務,不過概念和想法多少仍然一樣。
我們在本文中將介紹新的Linux用戶應該知道的一些基本命令。我會介紹如何在三個主要的發行版:Unbuntu(它還包括諸多版本和衍生版以及Debian)、openSUSE和Fedora上,使用命令行來更新系統、管理軟件、處理文件和切換到根用戶。
閑話少說!
讓系統保持安全和最新
Linux從設計上來說很安全,不過這是不爭的事實:所有軟件都有缺陷(bug),可能還有安全漏洞。所以時常更新系統至關重要。不妨這么來考慮:運行過時的操作系統就好比待在門沒有上鎖的裝甲坦克。裝甲保護得了你嗎?誰都可以通過敞開的門進入,大搞破壞。同樣,你的操作系統里面可能會有未打上補丁的漏洞,它們會危及你的系統。不像專有軟件社區,開源社區極其積極地打補丁,所以如果你時常更新系統,就可以保持安全。
平時要關注新聞網站,留意安全漏洞。要是發現了某個漏洞,閱讀關于漏洞的新聞,一旦發布了補丁,要第一時間更新系統。不管怎樣,都要養成每星期在生產機器上至少運行一次更新命令的習慣。如果你在運行一臺復雜的服務器,格外要注意,仔細檢查變更日志(changelog),確保更新沒有破壞你的定制。
Ubuntu:請牢記一點,你必須在升級系統或安裝任何軟件之前總是要更新軟件庫(即repo)。在Ubuntu上,你可以使用下列命令來更新系統。第一個命令更新軟件庫:
sudo apt-get update
一旦軟件庫更新完畢,現在就可以運行系統更新命令了:
sudo apt-get upgrade
然而,這個命令并不更新內核和另外一些程序包,所以你還要運行這個命令:
sudo apt-get dist-upgrade
openSUSE:如果你是在openSUSE上,可以使用這些命令來更新系統(如往常一樣,第一個命令用來更新軟件庫)
sudo zypper refresh
sudo zypper up
Fedora:如果你是在Fedora上,可以使用“dnf”命令,它“有點”相當于zypper和apt-get:
sudo dnf update
sudo dnf upgrade
軟件安裝和刪除
你只能安裝你系統上已被啟用的軟件庫里面才有的那些程序包。每個發行版在默認情況下都啟用了某些官方軟件庫或第三方軟件庫。
Ubuntu:想把任何程序包安裝到Ubuntu上,先更新軟件庫,然后使用這個語法:
sudo apt-get install [package_name]
例子:
sudo apt-get install gimp
openSUSE:這些命令將是:
sudo zypper install [package_name]
Fedora:Fedora丟棄了“yum”,現在使用“dnf”,于是命令將是:
sudo dnf install [package_name]
刪除軟件的過程一樣,只要將“install”換成“remove”就行。
Ubuntu:
sudo apt-get remove [package_name]
openSUSE:
sudo zypper remove [package_name]
Fedora:
sudo dnf remove [package_name]
如何管理第三方軟件?
Linux有龐大的開發者社區,廣大開發者向用戶提供軟件。不同的發行版使用不同的機制將第三方軟件提供給用戶。它還取決于開發者如何將軟件提供給用戶;一些開發者提供二進制代碼,另一些通過軟件庫來提供。
Ubuntu高度依賴PPA(個人程序包歸檔),但是遺憾的是,沒有內置工具可以幫助用戶搜索PPA。你需要用谷歌搜索PPA,然后手動添加軟件庫,之后才能安裝軟件。你將任何PPA添加到系統上的方法如下:
sudo add-apt-repository ppa:<repository-name>
例子:假設我想把LibreOffice PPA添加到自己的系統上。我會用谷歌搜索該PPA,然后從Launchpad獲得軟件庫名稱,這里是“libreoffice/ppa”。然后,使用下面這個命令來添加該PPA:
sudo add-apt-repository ppa:libreoffice/ppa
它會要求你按回車鍵,以便導入密鑰。一旦導入完畢,用“update”命令更新軟件庫,然后安裝程序包。
openSUSE為第三方應用程序提供了一個巧妙的解決方案。你可以訪問software.opensuse.org,搜索程序包,然后點擊一下鼠標即可安裝它。它會將軟件庫自動添加到系統上。如果你想手動添加任何軟件庫,則使用這個命令:
sudo zypper ar -f url_of_the_repo name_of_repo
sudo zypper ar -f
http://download.opensuse.org/repositories/LibreOffice:Factory/openSUSE_13.2/LibreOffice:Factory.repo LOF
然后更新軟件庫,安裝軟件:
sudo zypper refresh
sudo zypper install libreoffice
Fedora用戶只要添加RPMFusion(包括免費和非免費的軟件庫),里面含有大多數應用程序。萬一你確實需要添加軟件庫,就使用這個命令:
dnf config-manager --add-repo http://www.example.com/example.repo
一些基本命令
我之前寫過幾篇文章,介紹如何使用命令行接口管理系統上的文件,下面是在所有發行版當中通用的幾個基本命令。
將文件或目錄拷貝到新位置:
cp path_of_file_1 path_of_the_directory_where_you_want_to_copy/
將某個目錄的所有文件拷貝到新位置(請注意斜杠和星號,這表明該目錄下的所有文件):
cp path_of_files/* path_of_the_directory_where_you_want_to_copy/
將文件從一個位置移到另一個位置(末尾斜杠意味著該目錄下):
mv path_of_file_1 path_of_the_directory_where_you_want_to_move/
將所有文件從一個位置移到另一個位置:
mv path_of_directory_where_files_are/* path_of_the_directory_where_you_want_to_move/
刪除文件:
rm path_of_file
刪除目錄:
rm -r path_of_directory
清除目錄中的所有內容,只留下目錄文件夾:
rm -r path_of_directory/*
創建新目錄
想創建新目錄,先要輸入你想要創建目錄的所在位置。假設你想在Documents目錄里面創建一個“foundation”文件夾。不妨使用cd(更改目錄)命令,更改目錄:
cd /home/swapnil/Documents
(把“swapnil”換成你系統上的用戶)
然后用mkdir命令創建目錄:
mkdir foundation
你還可以從任何地方創建目錄,只要給出目錄路徑。比如說:
mdkir /home/swapnil/Documents/foundation
如果你想創建父-子目錄,這意味著其他目錄里面的目錄,那么使用-p選項。它會在特定的路徑下創建所有目錄:
mdkir -p /home/swapnil/Documents/linux/foundation
成為根用戶
你需要成為根用戶或者用戶擁有sudo權利,才能執行一些管理任務,比如管理程序包,或者更改根目錄或根文件。一個例子就是編輯詳細記錄已掛載硬驅的“fstab”文件。它在“etc”目錄里面,該目錄又在根目錄里面。你只有以超級用戶的身份來更改這個文件。在大多數發行版中,只要“switching user”(切換用戶)就能成為根用戶。假設在openSUSE上,我想成為根用戶,以便可以在根目錄里面進行一番操作。你可以使用命令:
sudo su -
或者
su -
這會要求輸入密碼,然后你就擁有根權限。牢記一點:千萬不要以根用戶的身份運行系統,除非你知道自己在干什么。要注意的另一個重要事項就是,你以根用戶身份改動文件或目錄后,那些文件的所有權也會從某個對應用戶或特定服務改成根用戶。你得恢復那些文件的所有權,要不然服務或用戶無法訪問或寫入那些文件。想更改用戶,使用這個命令:
sudo chown -R user:user /path_of_file_or_directory
如果你的分區來自掛載在系統上的其他發行版,可能需要這個命令。如果你試圖訪問這類分區上的文件,就會遇到拒絕訪問錯誤。只要更改這類分區的所有權,就可以訪問它們。務必要格外小心,別隨意更改根目錄的權限或所有權。
以上就是任何新的Linux用戶需要知道的一些基本命令。要是你還有什么問題,或者希望我們探討某個話題,歡迎留言交流。
相關文章:
