Ubuntu Server 20.04 基本安裝 Ubuntu Server 20.04 基本安裝 下載 Ubuntu Server 20.04 安裝 ISO 檔 1 官方 ISO 下載點 請先至 Ubuntu 的官網下載最新的 ISO 檔案,因為後續是伺服器的應用,我們會下載 伺服器版本 進行安裝示範工作。 Ubuntu Linux 的官網連結為: https://www.ubuntu-tw.org/   下載網頁連結為: https://www.ubuntu-tw.org/modules/tinyd0/ 2 國內 ISO 下載點 雖然 Ubuntu Server 目前最新的版本是 22.04 版 ,支援到 2032 年 4 月(付費版),不過對於追求穩定的朋友來說,目前應該仍會選擇採用 20.04 的版本 ,目前 20.04 免費的版本可以支援到 2025 年 4 月,付費版則可支援到 2030 年 4 月,國內的下載點如下: Ubuntu 正體中文站台載點 http://ftp.ubuntu-tw.org/ubuntu-releases/ 國家高速網路中心載點 https://free.nchc.org.tw/ubuntu-cd/ 國立成功大學載點 https://ubuntu.ccns.ncku.edu.tw/ubuntu-cd/ 開始安裝 1 準備好你的機器環境並開機 基本上測試的環境 只需要 32GB 的硬碟空間及 2GB 的記憶體 就可以運作了,請依照你自己的實際環境,若是用 usb 開機安裝在實體機上的話,可參考 這篇 把 ISO 檔寫入 usb 隨身碟中,本篇說明是採用 PVE 虛擬機架構進行測試( 如果對 PVE - Provmox VE 有興趣的朋友,可以先參考 這裡 )。 2 選擇語言   以虛擬機開機後經過一連串的訊息畫面後,會先出現以下選單,請利用方向鍵往上切換至「English」,並按下 Enter 鍵繼續安裝流程。 3 詢問是否要更新 installer 接下來系統會先詢問你,要不要先設定更新到最新的 installer (最新的是 22.06.1,現在是使用 22.02.2),如果沒有特別的硬體需求或是網路暫且是中斷或不穩定的情況下,請直接選擇「Continue without updating」繼續,因為安裝完系統也會直接做升級的工作。 4 設定鍵盤 Layout 接下來設定 keyboard layout,沒意外的話就選擇「Done」採用預設值即可。 5 設定 IP 設定 IP 的部份,如果沒有想特別設定的話,採用預設的 DHCP 即可,不過通常伺服器應用都會設定固定 IP,在此請先將光標用鍵盤方向鍵移動至「ens18 eth」這邊並按下「Enter」鍵選取「Edit Ipv4」,再按下「Enter」鍵進到「IPv4 Method」的選項,預設會設定為「Automatic (DHCP)」,請先按下「Enter」鍵,並用方向鍵「下」將選項切換為「Manual」。 按下「Enter」鍵後,會直接出現 IPv4 固定 IP 的設定畫面,請填入內部網路的資訊,Subnet 寫法範例 ( C class:192.168.1.0/24 ) 。 接下來請將光標移動到「Save」,並按下「Enter」鍵繼續下一步,會回到網路的設定畫面,此時 IP 已經變了,再把光標移動到「Done」按下「Enter」鍵繼續下一步。 6 指定 Proxy 接著下來看到 Proxy 的設定畫面,通常不會設定,直接在「Done」按下「Enter」鍵跳過即可。 7 設定預設更新來源 接下來設定預設的 Ubuntu 套件來源庫的位置,沒有意外的話,一開始都會使用預設值,請直接在「Done」按下「Enter」鍵跳過即可。 8 分割硬碟 然後來到分割硬碟的畫面,通常都是建議要自行建立硬碟分割資訊,基本上我們需要幾個分割區: boot - 放置核心相關檔案。 swap - Linux 記憶體置換分割區。 /        - root 空間,如果是測試站台,可以把剩下的空間都分給它。 /var   - 通常會是網頁、mail、Log 等資源的硬碟空間,如果是正式主機,建議將此分割區獨立依據用述做更詳細的規劃。 /data - 通常會做為網站服務的用戶儲存空間路徑,不會直接曝露在網站的連結路徑中。 因為此是是示範主機,故本文只分割 boot(1GB)、swap (4GB),其它的空間就分配給 / 分割區,請先將滑鼠光標移動到「Custom storage layout」並按下「Enter」鍵,選完後一樣把光標移動到「Done」按下「Enter」鍵繼續。 接下來進到儲存裝置的設定畫面,首先,先設定哪一個硬碟為「開機碟」,本文案例只有一個硬碟,請先選擇硬碟的型號,按下「Enter」鍵,並將光標移動到「Use As Boot Device」並按下「Enter」鍵繼續。 完成後,在下方的「USED DEVICES」列表就會出現設定好的開機磁區清單。 接下來請將光標移動到「free space」,並按下「Enter」鍵選擇「Add GPT Partition」後,分別設定 boot(1GB/Ext4)、swap(4GB/swap) 及 /(約27GB/Ext4) 的分割資訊,每個分割區資訊填寫完成後,都請將光碟移動到「Create」按下「Enter」鍵完成設定。 boot(1GB) swap(4GB) /(剩下的空間 - 留空白就是把所有空間都分配下來) 分割完的資訊列表如下,確認無誤後,請將光標移動到「Done」並按下「Enter」鍵繼續。 系統會提出警告,確認後請將光碟移動到「Continue」並按下「Enter」鍵繼續往下。 9 設定主機名稱及使用者資訊 接下來請設定主機的名稱及一位使用者帳號,此帳號未來會擔負管理帳號的身份,確認後請將光標移動到「Done」並按下「Enter」鍵繼續往下。 10 輸入 Ubuntu Advantage token 如果您有購買 Ubuntu 的訂閱服務,請在此輸入 Token 資訊,若沒有的話,請將光標移動到「Done」並按下「Enter」鍵繼續往下。 11 安裝 OpenSSH Server 系統會出現安裝 OpenSSH Server 的畫面,如果不安裝,則開始時候就只能在機器前面登入,所以建議一開始請選擇安裝,請用鍵盤光標移動到「Install OpenSSH Server」的位置,按下「Enter」鍵選擇,「Importy SSH identity」的部份就採用預設設定即可,然後請將光標移動到「Done」並按下「Enter」鍵繼續往下。 12 選擇安裝其它套件 Ubuntu 幫用戶整合許多工具,安裝流程的最後會列出清單讓用戶參考,這邊目前建議是不需要安裝,請將光標移動到「Done」並按下「Enter」鍵繼續往下。 13 安裝進行中 接下來系統會開始進行安裝作業,如下所示,請等待其完成。 14 重新開機 安裝完成後,畫面最下的選單會變成「Reboot Now」,代表已完成安裝作業,請先移除主機的光碟片,或是移除虛擬主機的開機 ISO 位置設定,然 後將光標移動到「Reboot Now」並按下「Enter」鍵重新開機即完成安裝作業。 成功開機的畫面如下: 進行第一次系統升級、調校及安裝基礎套件 1 基本升級   在安裝完基礎系統後,需進行基本的升級工作,建議使用安裝過程式的 一般 用戶名稱登入,並使用 sudo 指令進行系統更新作業。 $ sudo apt update 一樣第一次會請你輸入 sudo 的密碼: [sudo] password for ossii: 輸入正確的密碼後,就會以 Root 身份執行 apt update 的工作了,接下來會出現類似於以下的訊息。 Hit:1 http://tw.archive.ubuntu.com/ubuntu focal InRelease Hit:2 http://tw.archive.ubuntu.com/ubuntu focal-updates InRelease Hit:3 http://tw.archive.ubuntu.com/ubuntu focal-backports InRelease Hit:4 http://tw.archive.ubuntu.com/ubuntu focal-security InRelease Reading package lists... Done Building dependency tree Reading state information... Done 41 packages can be upgraded. Run 'apt list --upgradable' to see them. 接下來請執行以下指令: $ sudo apt upgrade 然後接著會出現要升級的套件資訊,如下所示: Reading package lists... Done Building dependency tree Reading state information... Done Calculating upgrade... Done The following package was automatically installed and is no longer required: libfwupdplugin1 Use 'sudo apt autoremove' to remove it. The following NEW packages will be installed: libfwupdplugin5 libmbim-glib4 libmbim-proxy libmm-glib0 libqmi-glib5 libqmi-proxy modemmanager usb-modeswitch usb-modeswitch-data The following packages will be upgraded: alsa-ucm-conf apt apt-utils bolt command-not-found fwupd fwupd-signed isc-dhcp-client isc-dhcp-common kmod landscape-common libapt-pkg6.0 libc-bin libc6 libfwupd2 libjcat1 libkeyutils1 libkmod2 libnetplan0 libnss-systemd libpam-systemd libsystemd0 libudev1 locales login netplan.io open-vm-tools passwd python3-commandnotfound python3-distupgrade sbsigntool snapd sosreport systemd systemd-sysv systemd-timesyncd ubuntu-advantage-tools ubuntu-release-upgrader-core udev unattended-upgrades update-notifier-common 41 upgraded, 9 newly installed, 0 to remove and 0 not upgraded. Need to get 59.8 MB of archives. After this operation, 17.3 MB of additional disk space will be used. Do you want to continue? [Y/n] 按下 Y 鍵開始下載更新 第一次更新完請重新開機,指令如下: $ sudo reboot 2 安裝基礎套件   基本上會建議安裝以下常用的基本套件,這樣在之後的管理工作上會比較簡單,這份清單會隨著時間更新,列表及說明如下: 項次 套件名稱 說明 1 vim 提供更多 vi 編輯器效果的延伸套件,讓你編輯純文字文件時不再只是單調的畫面。 2 wget 下載網路連結檔案的工具,常常會在安裝其它非 RPM Base 的工具中用到。 3 net-tools 基本網路查詢工具,在確認網路或是服務狀態時會常常用上。 4 unzip 解壓縮工具。 安裝指令如下: $ sudo apt install vim wget net-tools unzip 一樣在輸入 Root 密碼後按下「Y」鍵,系統即會自動安裝完成。 3 基本調校工作   變更密碼 如果您想要變更 root 密碼,可以使用「passwd」指令,變更 root 密碼的操作方式如下: $ sudo passwd root New password: Retype new password: passwd: password updated successfully 變更系統網路 IP 先查詢看看目前的 IP 及網卡資訊為何,我們可以使用 ifconfig 指令: $ ifconfig ens18: flags=4163 mtu 1500 inet 192.168.3.78 netmask 255.255.255.0 broadcast 192.168.3.255 inet6 fe80::448a:95ff:fe70:da59 prefixlen 64 scopeid 0x20 ether 46:8a:95:70:da:59 txqueuelen 1000 (Ethernet) RX packets 16374 bytes 13711868 (13.7 MB) RX errors 0 dropped 3 overruns 0 frame 0 TX packets 4024 bytes 308208 (308.2 KB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 所以會看到,網路卡是 ens18,IP 則是 192.168.3.78,如果我們要變更網路資訊的話,請用 vim 指令( vim 指令教學 )編輯網路設定檔,本例如下: $ sudo vim /etc/netplan/00-installer-config.yaml 內容如下: # This is the network config written by 'subiquity' network:   ethernets:     ens18:       addresses:       - 192.168.3.79/24       gateway4: 192.168.3.1       nameservers:         addresses:         - 8.8.8.8         search:         - ossii.com.tw   version: 2 上面紅色的部份就請依照實際的網路環境變更即可,存檔之後執行以下的指令即可重新取得新的 IP 資訊。 $ sudo netplan apply 這個時候若是透過 SSH 連線的話,應該會斷線,請重新以新的 IP(本例為:192.168.3.79) 連入,資訊如下: $ ifconfig ens18: flags=4163 mtu 1500 inet 192.168.3.79 netmask 255.255.255.0 broadcast 192.168.3.255 inet6 fe80::448a:95ff:fe70:da59 prefixlen 64 scopeid 0x20 ether 46:8a:95:70:da:59 txqueuelen 1000 (Ethernet) RX packets 126577 bytes 24996107 (24.9 MB) RX errors 0 dropped 11 overruns 0 frame 0 TX packets 4511 bytes 353668 (353.6 KB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 調整系統時間 Ubuntu 20.04 預設的時區資訊可能是錯誤的,請先使用 date 的指令來查詢,結果如下: $ date Tue 26 Jul 2022 06:22:34 AM UTC 若要調整時區,請使用 timedatectl 指令來設定,若是 Asia/Taipei 時區,請使用下以下指令: $ sudo timedatectl set-timezone Asia/Taipei [sudo] password for ossii: ossii@ubuntu-test-server2:~$ date Tue 26 Jul 2022 02:25:02 PM CST 這樣子就完成了時間的調校工作,如果想要列出所有時區的名稱,可以使用以下指令: $ timedatectl list-timezones Africa/Abidjan Africa/Accra Africa/Addis_Ababa Africa/Algiers Africa/Asmara Africa/Bamako Africa/Bangui ... ... 如此就完成了 Ubuntu 20.04 基本的主機調整工作啦~