

Ubuntu是基于Debian的、免費的Linux發行版,Ubuntu官方承諾:
Ubuntu將永遠免費,包括企業版和安全升級。
Ubuntu將全球數百個公司提供商業支持。
Ubuntu包含由自由軟件團體提供的最佳翻譯和本地化。
Ubuntu光盤僅僅包含自由軟件,鼓勵用戶使用自由和開源軟件,并改善和傳播它。
相對于RedHat系列的發行版,Ubuntu顯得更為激進。如果你想體驗最新的Linux內核、最新的軟件倉庫,Ubuntu絕對是最佳選擇!今天朱哥和大家嘮嘮:如何在虛擬機中安裝Ubuntu Server操作系統。
一. 系統安裝
1.1 準備
安裝之前,我們要從官網下載所需的系統鏡像文件,如:


由于本次是安裝服務器版的Ubuntu,所以請點擊【Ubuntu Server】下的 【18.04 LTS】按鈕開始下載(帶有 LTS 標識的為長期支持版本)。下載完成后,我們得到的鏡像文件如:
ubuntu-18.04.3-live-server-amd64.iso。
接下來,我們還要做以下準備:
- 在自己電腦上安裝 VMware Workstation 或 VirtualBox 等虛擬化軟件;
- 創建虛擬機、添加磁盤、設置虛擬機網絡(可以先設置為橋接模式);
- 將下載好的鏡像文件添加到CD驅動器中;
- 啟動虛擬機,開始安裝。
1.2 安裝系統
選擇安裝語言: 保持默認,按回車鍵進入下一步


選擇鍵盤布局: 保持默認,按回車鍵進入下一步


選擇網路連接: 默認為DHCP動態獲取IP地址。此處可保持默認,后期在系統中可以另行修改網絡參數。按回車鍵進入下一步


設置代理服務器: 這里無需設置,直接按回車鍵進入下一步


設置鏡像源: 可以手動將默認的
http://archive.ubuntu.com/ 更換為 http://mirrors.aliyun.com/,使用國內軟件源可以加快軟件安裝的速度。輸入完成后,按 Tab 鍵,選擇 Done,然后 按回車鍵進入下一步


磁盤分區: 可以通過上下方向鍵選擇菜單,這里可以選擇第二個選項,即使用整塊磁盤并設置LVM,按回車鍵開始設置


磁盤分區: 保持默認,按回車進入下一步


磁盤分區: 這里默認為 / 目錄分配了 4GB 的存儲空間,而且沒有設置 SWAP 分區。我們可以將這 4GB 空間調整為 SWAP分區,然后將剩余空間全部分配給 / 。
通過上下方向鍵,選擇編輯默認的 / 根目錄掛載點,回車選擇【Edit】菜單,如:


在 Format 菜單中, 將其調整為 swap 交換分區,然后回車確認


在剩余的磁盤空間中創建分區:通過上下方向鍵選擇可用設備的 ubuntu-vg(new) 選項,然后回車,選擇 Create Logical Volume菜單,以創建主分區:


將其空間調到最大值,然后在 Mount 菜單中:回車選擇掛載到 / 根目錄


按 Tab 鍵,選擇 頁面底部的 Done,按回車以保存磁盤分區設置


選擇 Continue ,回車確認分區規則,執行磁盤分區


設置用戶參數:


這里我們需要選擇安裝SSH服務,將光標停留在在 Install OpenSSH server 選項上,按下空格鍵選中他。然后按 Tab 鍵,選擇 Done,進入下一步


根據需要選擇其他可選服務: 這里我們暫時都不安裝,保持默認,選擇 Done ,開始安裝系統。


等待系統安裝完成,出現如下界面時,選擇 Reboot 以重啟虛擬機完成安裝。


二. 系統配置
2.1 初始配置
2.1.1 設置ROOT用戶密碼
默認情況下,root 用戶沒有密碼。通過以下命令,可以為其設置密碼:
?sudo passwd root
然后按提示輸入密碼、確認密碼即可。
2.1.2 更新系統
根據需要,可以通過以下命令更新軟件或升級系統:
?# 更新軟件倉庫信息
?sudo apt-get update
??
?# 更新軟件
?sudo apt-get upgrade
??
?# 升級系統
?sudo apt-get dist-upgrade
2.1.3 安裝常用軟件
為方便后續使用,朱哥為大家整理了一些常用軟件。可以一次性安裝:
?sudo apt-get install -y gcc g++ make cmake build-essential zlib1g-dev libyaml-dev libssl-dev libgdbm-dev libreadline-dev libncurses5-dev libffi-dev curl openssh-server checkinstall libxml2-dev libxslt-dev libcurl4-openssl-dev libicu-dev logrotate python-docutils pkg-config libexpat1-dev gettext libz-dev
2.2 網絡配置
2.2.1 基本參數
新版的UbuntuServer采用netplan配置網絡,其配置文件在/etc/netplan目錄下,修改配置文件:
?sudo vim 50-cloud-init.yaml
具體可參考以下配置:
?network:
? ? version: 2
? ? ethernets:
? ? ? enp0s3:
? ? ? ? dhcp4: no
? ? ? ? dhcp6: no
? ? ? ? addresses: [192.168.0.110/24]
? ? ? ? gateway4: 192.168.0.1
? ? ? ? nameservers:
? ? ? ? ? addresses: [114.114.114.114, 223.5.5.5, 223.6.6.6]
更新網絡配置:
?sudo netplan apply
2.2.2 防火墻配置
① 檢查防火墻狀態:
?sudo ufw status verbose
如果輸出:Status: inactive 說明防火墻未被激活。
②激活、啟用防火墻:
?sudo ufw enable
?sudo ufw default deny
如需關閉防火墻,可執行:
?sudo ufw disable
③ 開啟/禁用相應端口或服務舉例
?# 允許外部訪問80端口
?sudo ufw allow 80
??
?# 禁止外部訪問80 端口
?sudo ufw delete allow 80
??
?# 允許此IP訪問所有的本機端口
?sudo ufw allow from 192.168.0.1
??
?# 禁止外部訪問smtp服務
?sudo ufw deny smtp
??
?# 刪除上面建立的某條規則
?sudo ufw delete allow smtp
??
?# 要拒絕所有的TCP流量從10.0.0.0/8 到192.168.0.1地址的22端口
?sudo ufw deny proto tcp from 10.0.0.0/8 to 192.168.0.1 port 22
??
?# 可以允許所有RFC1918網絡(局域網/無線局域網的)訪問這個主機(/8,/16,/12是思科的網絡分級)
?sudo ufw allow from 10.0.0.0/8
?sudo ufw allow from 172.16.0.0/12
?sudo ufw allow from 192.168.0.0/16
2.3 清理過期內核
隨著系統的不斷更新、升級,一些過時的老舊內核會占用一些磁盤空間,我們可以將其移除。
首先查看當前使用的內核版本:
?uname -a
查看系統中存在的內核:
?dpkg --get-selections|grep linux
移除過期內核,如:
?sudo apt-get remove linux-image-xxxxxx-generic
?sudo apt-get remove linux-headers-xxxxxx
?sudo apt-get remove linux-headers-xxxxxx-generic
如果清理完還有deinstall狀態的記錄,如
?linux-image-4.8.0-36-generic deinstall
?linux-image-extra-4.8.0-36-generic deinstall
可以執行清理
?dpkg -P linux-image-4.8.0-36-generic
?dpkg -P linux-image-extra-4.8.0-36-generic
2.4 APT-GET 使用
2.4.1 什么的是apt-get
APT(Advanced Packaging Tools)是Debian及其衍生發行版的軟件包管理器。APT可以自動下載、配置、安裝二進制或者源代碼格式的軟件包。她簡化了 Unix系統上管理軟件的過程,apt-get命令一般需要root權限,所以一般跟著sudo命令。她和yum 、pacman、installpkg等性質差不多,都是系統軟件的管理工具。
2.4.2 apt-get中文參數
?# 用法:apt-get [選項] 命令,如:
?sudo apt-get [選項] install|remove pkg1 [pkg2 ...] ?
?sudo apt-get [選項] source pkg1 [pkg2 ...] ?
? ?
?# apt-get 是一個下載安裝軟件包的簡單命令行接口。 ?
?# 最常用的命令是update(更新)和install(安裝)。 ?
? ?
?########### 命令 ###########
?# 更新本地軟件包緩存列表
?sudo apt-get update
?# 更新已安裝的包
?sudo apt-get upgrade
?# 安裝新的軟件包 ?
?sudo apt-get install
?# 移除軟件包
?sudo apt-get remove
?# 自動移除全部不使用的軟件包
?sudo apt-get autoremove
?# 移除軟件包和配置文件
?sudo apt-get purge
?# 下載源碼
?sudo apt-get source
?# 為源碼包配置編譯依賴
?sudo apt-get build-dep
?# 升級系統
?sudo apt-get dist-upgrade
?# 依照 dselect 的選擇升級
?sudo apt-get dselect-upgrade
?# 清除下載的安裝包
?sudo apt-get clean
?# 清除舊的的已下載的歸檔文件
?sudo apt-get autoclean
?# 檢查是否有損壞的依賴
?sudo apt-get check ?
? ?
?########### 選項 ###########
? -h 本幫助文件。 ?
? -q 輸出到日志 - 無進展指示 ?
? -qq 不輸出信息,錯誤除外 ?
? -d 僅下載 - 不安裝或解壓歸檔文件 ?
? -s 不實際安裝。模擬執行命令 ?
? -y 假定對所有的詢問選yes,不提示 ?
? -f 嘗試修正系統依賴損壞處 ?
? -m 如果歸檔無法定位,嘗試繼續 ?
? -u 同時顯示更新軟件包的列表 ?
? -b 獲取源碼包后編譯 ?
? -V 顯示詳細的版本號 ?
? -c=? 閱讀此配置文件 ?
? -o=? 設置自定的配置選項,如 -o dir::cache=/tmp
2.4.3 apt-get 常用實例
?# 搜索包
?sudo apt-cache policy #package#
?# 搜索包
?sudo apt-cache search #package#
?# 獲取包的相關信息,如說明、大小、版本等
?sudo apt-cache show #package#
?# 安裝包
?sudo apt-get install #package#
?# 重新安裝包
?sudo apt-get install --reinstall #package#
?# 強制安裝, "-f = --fix-missing"當是修復安裝吧...
?sudo apt-get -f install #package#
?# 刪除包
?sudo apt-get remove #package#
?# 刪除包,包括刪除配置文件等
?sudo apt-get remove --purge #package#
?# 刪除包及其依賴的軟件包+配置文件等
?sudo apt-get autoremove --purge #package#
?# 更新源
?sudo apt-get update
?# 更新已安裝的包
?sudo apt-get upgrade
?# 升級系統
?sudo apt-get dist-upgrade
?# 使用 dselect 升級
?sudo apt-get dselect-upgrade
?# 了解使用依賴
?sudo apt-cache depends #package#
?# 了解某個具體的依賴,當作查看該包被哪些包依賴吧
?sudo apt-cache rdepends #package#
?# 安裝相關的編譯環境
?sudo apt-get build-dep #package#
?# 下載該包的源代碼
?sudo apt-get source #package#
?# 清理下載文件的存檔 && 只清理過時的包
?sudo apt-get clean && apt-get autoclean
?# 檢查是否有損壞的依賴
?sudo apt-get check
?# 查找filename屬于哪個軟件包
?sudo dpkg -S #filename#
?# 查找filename屬于哪個軟件包
?sudo apt-file search #filename#
?# 列出軟件包的內容
?sudo apt-file list #package#
?# 更新apt-file的數據庫
?sudo apt-file update
?# 列出軟件包解包后的包名稱.
?sudo dpkg --info #package#
?# 列出當前系統中所有的包.可以和參數less一起使用在分屏查看. (類似于rpm -qa)
?sudo dpkg -l
?# 查看系統中與"軟件包名"相關聯的包.
?sudo dpkg -l |grep -i #package#
?# 查詢已安裝的包的詳細信息.
?sudo dpkg -s
?# 查詢系統中已安裝的軟件包所安裝的位置. (類似于rpm -ql)
?sudo dpkg -L
?# 查詢deb包的詳細信息,在一個軟件包下載到本地之后看看用不用安裝(看一下唄).
?sudo sudo dpkg -I
?# 手動安裝軟件包(這個命令并不能解決軟件包之前的依賴性問題),如果在安裝某一個軟件包的時候遇到了軟件依賴的問題,可以用apt-get -f install在解決信賴性這個問題.
?sudo dpkg -i #package#
?# 卸載軟件包.不是完全的卸載,它的配置文件還存在.
?sudo dpkg -r #package#
?# 全部卸載(但是還是不能解決軟件包的依賴性的問題)
?sudo dpkg -P #package#
?# 重新配置
?sudo dpkg -reconfigure
2.4.4 常見問題
更新出現:
?The following packages have been kept back:
? ? linux-generic-hwe-18.04 linux-headers-generic-hwe-18.04 linux-image-generic-hwe-18.04
這主要是檢測到內核更新,需要執行命令:
?sudo apt-get dist-upgrade
三. 總結
Ubuntu Desktop是目前最成功、最流行的圖形界面的Linux發行版;而Ubuntu Server也在服務器端市場占據了較大的份額
版權聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至 舉報,一經查實,本站將立刻刪除。