
1. 為什么在VM里裝Ubuntu 20.04 LTS依然是個好選擇最近幫幾個剛入行的朋友搭開發(fā)環(huán)境發(fā)現(xiàn)他們還在糾結選哪個Linux發(fā)行版和版本。我直接建議別想太多先在虛擬機里裝個Ubuntu 20.04 LTS。這話一說有人就問了“這都2024年了Ubuntu都出到24.04了為啥還推薦一個四年前的‘老’版本” 這問題問得好也恰恰點出了很多新手甚至一些老手在環(huán)境搭建第一步就容易踩的坑——盲目追新。Ubuntu 20.04 LTS代號Focal Fossa發(fā)布于2020年4月。LTS代表“長期支持”官方提供長達5年的標準支持直到2025年4月對于企業(yè)用戶還可以購買擴展安全維護。這意味著什么意味著它的核心系統(tǒng)、軟件倉庫在2025年之前都會持續(xù)收到安全更新和關鍵Bug修復系統(tǒng)基石是穩(wěn)固的。對于學習、開發(fā)、甚至是輕度生產(chǎn)環(huán)境來說穩(wěn)定性遠比擁有幾個花哨的新特性重要。你肯定不希望正在調(diào)試一個復雜的項目時系統(tǒng)自動更新了一個不兼容的庫導致環(huán)境崩掉。其次生態(tài)兼容性無敵。經(jīng)過四年的沉淀幾乎所有主流軟件、開發(fā)工具、第三方庫都對Ubuntu 20.04提供了近乎完美的支持。無論是Docker、Kubernetes、各種編程語言環(huán)境Python、Node.js、Go、Java還是像VS Code、IntelliJ IDEA這類IDE你都能找到大量現(xiàn)成的、經(jīng)過驗證的安裝教程和配置方案。社區(qū)里你遇到的99%的問題幾乎都能搜到針對20.04的解決方案。而新版本如22.04、24.04雖然也兼容大部分軟件但偶爾會遇到一些依賴庫版本沖突、驅(qū)動不完善等“先鋒隊”才會遇到的問題。對于初學者一個“踩坑少、資料多”的環(huán)境能讓你把精力集中在學習核心內(nèi)容上而不是和系統(tǒng)環(huán)境搏斗。最后從虛擬機VM實踐的角度來看Ubuntu 20.04 LTS對硬件資源的要求相對溫和在虛擬機里跑起來更流暢。你的宿主機可能是Windows或macOS分配給虛擬機的內(nèi)存和CPU資源有限。一個更成熟、優(yōu)化更好的系統(tǒng)版本在有限的虛擬資源下往往能提供更穩(wěn)定和跟手的體驗。所以無論你是想學習Linux命令、搭建Web服務器、進行軟件開發(fā)還是單純想有一個隔離的沙盒環(huán)境做實驗在VM里安裝Ubuntu 20.04 LTS都是一個非常穩(wěn)妥且高效的起點。2. 虛擬機軟件選型與宿主機準備要點工欲善其事必先利其器。在下載Ubuntu鏡像之前得先把“房子”虛擬機軟件準備好。目前主流的選擇有三個VMware Workstation Player個人版免費、VirtualBox完全免費開源和Hyper-VWindows專業(yè)版/企業(yè)版自帶。我的建議是如果你是Windows用戶且系統(tǒng)是專業(yè)版以上可以優(yōu)先考慮Hyper-V否則VMware Workstation Player是更省心的選擇。為什么這么選VirtualBox雖然免費但在性能和與宿主機特別是Windows 11/10最新版的兼容性上有時會出一些幺蛾子比如USB設備識別、顯卡加速、文件拖拽等方面的問題可能需要額外折騰。對于新手我們不希望把時間浪費在解決虛擬機軟件本身的問題上。VMware Workstation Player在易用性和性能上做得更均衡安裝過程簡單對Ubuntu的“開箱即用”支持非常好提供了完善的VMware Tools增強功能包能無縫實現(xiàn)宿主機和虛擬機之間的文件共享、剪貼板共享、屏幕自適應調(diào)整。它的個人免費版對于學習和開發(fā)完全夠用。如果你使用的是Windows 10/11專業(yè)版、企業(yè)版或教育版那么內(nèi)置的Hyper-V是一個強大的替代方案。它是Type-1類型的裸機虛擬化性能理論上更優(yōu)資源開銷更小。啟用方法也簡單打開“控制面板” - “程序” - “啟用或關閉Windows功能”勾選“Hyper-V”包括管理工具重啟即可。之后你就可以在開始菜單找到“Hyper-V管理器”了。不過要注意開啟Hyper-V后你的Windows本身也會運行在Hyper-V虛擬化層之上這可能會導致一些傳統(tǒng)的虛擬機軟件如VMware、VirtualBox無法以硬件加速模式運行或者與某些依賴VT-x/AMD-V的軟件如某些安卓模擬器沖突。如果你電腦上還有其他這類軟件就需要權衡一下。對于macOS用戶主流選擇是VMware Fusion Player個人免費或開源的UTM。Parallels Desktop雖然體驗極佳但它是收費的。新手用VMware Fusion Player足以。在安裝虛擬機軟件前務必進入你電腦的BIOS/UEFI設置確認并開啟CPU的虛擬化技術Intel VT-x 或 AMD-V。這個選項通常在“Advanced”或“CPU Configuration”菜單里名稱可能是“Intel Virtualization Technology”、“VT-d”、“AMD SVM”等。這是虛擬機能夠高效運行的基礎沒開啟的話后續(xù)安裝會報錯或性能極差。最后為你的Ubuntu虛擬機規(guī)劃好“住處”。建議在SSD硬盤上預留至少25GB的可用空間這是安裝系統(tǒng)本身的最小建議如果你想在里面放很多項目文件建議50GB以上。內(nèi)存方面分配給虛擬機至少2GB2048MB才能保證基本流暢如果宿主機內(nèi)存有8GB或以上分配4GB是更舒適的選擇。處理器核心數(shù)分配2個核心通常就能滿足大部分學習開發(fā)需求。3. 獲取系統(tǒng)鏡像與創(chuàng)建虛擬機的關鍵步驟準備好了虛擬機軟件接下來就是獲取“建筑材料”——Ubuntu 20.04 LTS的ISO鏡像文件。務必從官方渠道下載這是保證系統(tǒng)純凈、安全的第一步。直接訪問Ubuntu官方網(wǎng)站的下載頁面找到20.04 LTS的版本。通常你會看到“Desktop image”和“Server image”兩個選項我們選擇“Desktop image”它包含圖形化界面更適合初學者上手。下載下來的文件大概2.6GB左右是一個以.iso結尾的文件比如ubuntu-20.04.6-desktop-amd64.iso。后面的“6”代表這是第6個更新版本集成了截至發(fā)布時的所有更新比最初發(fā)布的20.04.0更穩(wěn)定。以最常用的VMware Workstation Player為例我們一步步創(chuàng)建虛擬機打開VMware點擊“創(chuàng)建新虛擬機”。選擇“典型”配置即可下一步。在“安裝程序光盤映像文件”這一項點擊“瀏覽”找到你剛才下載的.iso文件。VMware會自動檢測到這是Ubuntu 64位系統(tǒng)。接下來需要設置一個“簡易安裝信息”。這里有個小技巧強烈建議在這里預先設置好你的用戶名、密碼和計算機名。勾選“使用簡易安裝”然后填入信息。比如全名可以寫Your Name用戶名用dev或ubuntu小寫無空格密碼設一個你記得住的。這樣在安裝過程中系統(tǒng)會自動跳過手動創(chuàng)建用戶那一步實現(xiàn)無人值守安裝非常省事。為虛擬機命名并選擇存儲位置。位置請選在你之前預留了足夠空間的磁盤分區(qū)。指定磁盤容量。默認的20GB對于只裝系統(tǒng)來說勉強夠用但如前所述我建議至少調(diào)到40GB或更多。選擇“將虛擬磁盤存儲為單個文件”這樣性能更好管理也方便。在最后一步“已準備好創(chuàng)建虛擬機”時先別急著點完成點擊“自定義硬件...”。這里是精細化配置的關鍵。內(nèi)存根據(jù)宿主機情況調(diào)整例如宿主機16GB可以分4GB給虛擬機。處理器數(shù)量選2每個處理器的核心數(shù)也選2即總共2核心2線程或根據(jù)你CPU邏輯核心數(shù)合理分配。網(wǎng)絡適配器默認的“NAT”模式就行。這種模式下虛擬機會共享宿主機的IP地址上網(wǎng)就像你家路由器下的另一臺設備宿主機和虛擬機可以互相訪問虛擬機也能直接訪問外網(wǎng)是最省心的網(wǎng)絡模式。顯示器將“加速3D圖形”勾選上這對后續(xù)使用圖形界面有性能提升。確認無誤后關閉硬件設置窗口點擊“完成”。虛擬機創(chuàng)建好后VMware會自動啟動并開始運行簡易安裝流程。你基本上只需要看著它自動完成分區(qū)、拷貝文件、安裝系統(tǒng)等一系列操作期間可能會重啟一兩次。最終它會進入Ubuntu的登錄界面用你之前設置的用戶名和密碼登錄即可。如果安裝過程中沒有使用簡易安裝預設密碼那么第一次啟動時會提示你創(chuàng)建用戶。注意在安裝過程中如果遇到“Install third-party software for graphics and Wi-Fi hardware and additional media formats”這個選項建議勾選。它會安裝一些額外的驅(qū)動和編解碼器如MP3播放支持讓系統(tǒng)體驗更完整。雖然這涉及非自由軟件但對于個人桌面使用來說非常方便。4. 安裝后的首要十件事從能用變好用當你第一次進入Ubuntu 20.04的桌面一個干凈的系統(tǒng)呈現(xiàn)在眼前。但要讓這個系統(tǒng)真正成為一個順手的開發(fā)或?qū)W習環(huán)境我們還需要進行一些關鍵的初始設置。這些事情做與不做后續(xù)的使用體驗天差地別。4.1 更換軟件源與系統(tǒng)更新系統(tǒng)安裝后第一件事就是更換軟件源服務器地址。默認的源服務器可能在國外更新和下載軟件速度會很慢。我們需要將其替換為國內(nèi)的鏡像源比如阿里云、騰訊云、清華大學的鏡像站。打開“軟件和更新”程序可以在應用菜單里搜索。點擊“下載自”旁邊的下拉框選擇“其他...”。在彈出的服務器列表里找到“China”然后選擇一個鏡像站比如mirrors.aliyun.com。選擇后系統(tǒng)會要求你重新加載軟件源信息。關閉窗口系統(tǒng)會自動刷新。接下來打開終端快捷鍵CtrlAltT執(zhí)行全面的系統(tǒng)更新sudo apt update # 刷新軟件源列表獲取最新的軟件包信息 sudo apt upgrade # 升級所有已安裝的軟件包到最新版本 sudo apt dist-upgrade # 處理升級過程中可能出現(xiàn)的依賴關系變更更智能這個過程會下載并安裝大量更新需要一些時間。更新完成后強烈建議重啟一次系統(tǒng)以確保所有更新特別是內(nèi)核更新完全生效。4.2 安裝VMware Tools / Open VM Tools這是讓虛擬機體驗脫胎換骨的一步。它提供了宿主機和虛擬機之間的一系列集成功能剪貼板共享可以在宿主機和虛擬機之間復制粘貼文本。文件拖放可以直接將文件從宿主機桌面拖到虛擬機里反之亦然。屏幕自適應調(diào)整虛擬機窗口大小時Ubuntu桌面分辨率會自動適應。更好的性能特別是圖形和鼠標響應。對于VMware如果你使用的是Workstation 16及以上版本Ubuntu 20.04通常已經(jīng)自帶了開源的open-vm-tools并且默認啟用。我們可以驗證并確保其完整安裝sudo apt install open-vm-tools-desktop安裝后重啟虛擬機即可生效。如果你使用的是較老的VMware或者發(fā)現(xiàn)功能不正常也可以嘗試安裝VMware官方的Tools。在VMware菜單欄點擊“虛擬機” - “安裝VMware Tools”這會在虛擬機內(nèi)掛載一個光盤鏡像里面包含安裝腳本。但通常來說open-vm-tools是更推薦的選擇因為它通過系統(tǒng)包管理器管理更新更方便。4.3 配置基礎開發(fā)環(huán)境作為一個準開發(fā)環(huán)境一些基礎工具鏈必不可少。安裝Build Essential編譯工具集這是一組包含GCC、G、make等編譯和構建軟件必需的工具包。很多軟件的源碼安裝都依賴它。sudo apt install build-essential安裝Git版本控制工具這是現(xiàn)代開發(fā)的標配。sudo apt install git git config --global user.name Your Name git config --global user.email your.emailexample.com安裝Python3及pipUbuntu 20.04默認已經(jīng)安裝了Python 3.8但pipPython包管理器可能需要單獨安裝。sudo apt install python3-pip為了避免系統(tǒng)Python環(huán)境被污染強烈建議后續(xù)為每個項目使用venv虛擬環(huán)境。4.4 優(yōu)化終端與Shell體驗默認的終端和Bash Shell能用但可以更好。安裝并配置Zsh和Oh My ZshZsh是一個功能更強大的Shell配合Oh My Zsh框架可以提供智能補全、主題美化、豐富的插件等功能極大提升命令行效率。sudo apt install zsh sh -c $(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)安裝腳本會提示你是否將默認Shell切換為Zsh選擇“是”。之后你可以通過編輯~/.zshrc文件來更換主題如agnoster、robbyrussell和啟用插件如git、z快速跳轉(zhuǎn)目錄。安裝常用命令行工具一些能讓生活更輕松的工具。sudo apt install tree htop net-tools curl wgettree: 以樹狀圖列出目錄內(nèi)容。htop: 一個強大的交互式進程查看器比top更直觀。net-tools: 包含ifconfig等傳統(tǒng)網(wǎng)絡工具雖然ip命令是未來但ifconfig更廣為人知。curl/wget: 命令行下載工具。4.5 設置共享文件夾如果需要如果你需要在宿主機和虛擬機之間頻繁交換大量文件僅靠拖放可能不夠??梢栽O置一個共享文件夾。在VMware中先關閉虛擬機。在虛擬機設置 - “選項” - “共享文件夾”中添加宿主機上的某個目錄并選擇“總是啟用”。啟動虛擬機后共享文件夾通常會被自動掛載到/mnt/hgfs/目錄下。如果沒有可能需要手動安裝open-vm-tools-desktop前面已做并檢查內(nèi)核模塊是否加載。4.6 調(diào)整系統(tǒng)設置與外觀隱私設置進入“設置” - “隱私”關閉“位置服務”、“診斷”等你不希望開啟的選項。電源管理在“設置” - “電源”中將“空白屏幕”和“自動掛起”調(diào)成“從不”或一個較長的時間避免在下載或編譯時系統(tǒng)自動休眠。外觀安裝Gnome Tweaks工具來深度定制外觀。sudo apt install gnome-tweaks安裝后你可以在這里啟用最小化點擊、調(diào)整字體、更換主題、管理擴展等。4.7 安裝必備的日常軟件通過Ubuntu Software基于Snap或直接使用apt命令安裝瀏覽器Firefox已預裝也可以安裝Google Chrome。wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb sudo apt install ./google-chrome-stable_current_amd64.deb編輯器/IDEVisual Studio Code是跨平臺首選。sudo snap install --classic code通訊工具如Telegram、Slack等可通過Snap或官網(wǎng)下載.deb包安裝。4.8 配置快照與備份策略這是虛擬機最大的優(yōu)勢之一——快照。在進行了大量配置、安裝了很多軟件系統(tǒng)處于一個穩(wěn)定好用的狀態(tài)時務必創(chuàng)建一個快照。在VMware里點擊“虛擬機” - “快照” - “拍攝快照”給它起個名字比如“Base with Dev Tools”。這樣以后無論你把系統(tǒng)玩壞了還是想測試一個危險的操作都可以瞬間回滾到這個干凈的狀態(tài)。養(yǎng)成重要操作前拍快照的習慣能為你節(jié)省無數(shù)重裝系統(tǒng)的時間。4.9 網(wǎng)絡與防火墻基礎配置Ubuntu 20.04默認使用了ufwUncomplicated Firewall作為防火墻前端但默認是關閉的。如果你需要開啟防火墻并只開放必要的端口比如SSH的22端口Web服務的80/443端口可以這樣操作sudo ufw allow ssh # 允許SSH連接 sudo ufw allow 80/tcp # 允許HTTP sudo ufw allow 443/tcp # 允許HTTPS sudo ufw enable # 啟用防火墻 sudo ufw status verbose # 查看規(guī)則狀態(tài)對于純粹在NAT模式下做開發(fā)的本地虛擬機防火墻不開啟通常問題也不大但了解如何管理是必要的技能。4.10 探索與下一步完成以上步驟你的Ubuntu 20.04虛擬機就已經(jīng)從一個裸系統(tǒng)變成了一個功能齊全、高效易用的開發(fā)學習平臺。你可以開始學習Linux常用命令和文件系統(tǒng)結構。搭建LAMP/LEMPApache/Nginx MySQL PHP或MEAN/MERNMongoDB Express Angular/React Node.js等Web開發(fā)棧。學習Docker容器技術在更干凈的環(huán)境里運行應用。配置SSH服務學習從宿主機用終端遠程連接虛擬機。這個環(huán)境就像你的數(shù)字實驗室穩(wěn)定、隔離、可隨時重置?;谶@個堅實的基礎任何更深入的學習和探索都會事半功倍。