這是一張有關標題為 Ubuntu Server 24.04:安裝、磁碟分割與網絡設定 的圖片

Ubuntu Server 24.04:安裝、磁碟分割與網絡設定

深入解析 Ubuntu Server 24.04 安裝流程、磁碟分割與網絡設定,涵蓋根分區規劃、DNS 配置、遠端管理等實用技巧,提升伺服器效能與穩定性。透過精簡指令與設定檔配置,快速完成系統佈署並強化安全性。掌握分區策略、時區語言調整及套件更新,打造高效且相容性佳的 Linux 環境,滿足開發與生產部署需求。

引言

最近伺服器出現一些硬體異常就順便剛好重灌 Linux 伺服器,本篇文章將介紹如何安裝 Ubuntu 作為自己的工作伺服器。

部署 Linux 伺服器可以做很多事情,包含:

  • DNS 伺服器:用來阻擋廣告等相關應用。
  • 遠端開發:可隨時在信任的電腦上連線進行不中斷的開發。
  • 網頁伺服器:使用 Nginx 或 Apache 架設網站,並搭配資料庫服務。
  • 代理伺服器:實現翻牆或 NAT 穿透等行為。
  • 簡易檔案伺服器:不建議作為標準 NAS,資料維護成本高,建議使用現成的 NAS 方案。
  • 本地端 AI 模型運行:可在伺服器或樹莓派(Raspberry Pi)等低功耗裝置上部署如 DeepSeek R1 14B 等輕量化 AI 模型,進行推理或語言處理任務。適用於開發、測試及自動化應用,特別是在資源受限的環境下運行基本的 NLP 任務。

伺服器的性能需求應基於個別需求來確定。例如,設置網頁伺服器需要考慮防火牆等安全措施;而運行人工智能模型則需要評估外接顯卡、記憶體和中央處理器的性能,以確保運作流暢。

主機選擇

在安裝 Linux 伺服器前,首先需要選擇適合的執行環境。常見的主機環境包含:

  1. 實體主機(本地伺服器):直接在硬體上安裝 Linux,常見的硬體選項包括迷你電腦如 Intel NUC 和 Raspberry Pi 等。
  2. 虛擬化主機:透過 WSL、Docker 等技術,在現有系統內部部署與管理 Linux 環境,實現輕量級虛擬化。
  3. 雲端主機
    • 虛擬主機(Shared Hosting):多個使用者共享伺服器資源,但彼此的環境相對獨立。常見於小型網站、部落格。適合新手,無須管理系統。
    • 虛擬私有伺服器(virtual private server,VPS):將一台實體伺服器分割成多個獨立的虛擬伺服器,每個 VPS 具有獨立的作業系統與管理權限。擁有完整管理權限,適合需要自訂環境的開發者。
    • 裸金屬伺服器(Bare Metal Server):提供一整台實體伺服器,沒有虛擬化層,所有硬體資源完全由單一租戶使用。適合高效能應用與企業級部署。

我的主機選擇

根據我自身的應用需求是自己組裝硬體設備,包含:機殼、主機板、CPU、RAM、SSD、電源供應器。主要用途為:

  • 遠端開發與管理
  • 網頁爬蟲與資料處理
  • 網頁伺服器與應用程式部署

如果目標是建置擋廣告伺服器,例如像是部署 AdGuard Home,或是使用 Home Assistant 控制智慧家電,建議選擇 Raspberry Pi。其 ARM 架構 具備更低的功耗與成本優勢。

如果不想使用實體主機,可以選擇 VPS,但與實體主機相比,VPS 使用上會有硬體資源限制及潛在的資料安全疑慮。

常見的第三方 VPS 供應商

  • 亞馬遜雲服務(Amazon Web Services,AWS)
  • Google 雲端平台(Google Cloud Platform,GCP)
  • 微軟 Azure(Microsoft Azure)
  • DigitalOcean
  • Vultr
  • Linode

這些服務的計費方式依據使用量或按月度收費。以輕量級服務預估費用為 0.093~0.15 USD/hour10~30 USD/month

選擇 Linux 發行版

由於我主要用於進行服務、網頁等架設與開發,因此選擇了 Ubuntu Server 24.04 進行安裝。然而,有些 SDK 要求開發環境使用 Ubuntu 18.04。在選擇發行版時,應根據個人的開發需求和環境來決定。

對比於不同的發行版,以下是它們的適合對象與特點:

發行版適合對象主要特色
Ubuntu一般使用者、開發者、新手最流行的 Linux,支援廣泛,LTS 版穩定,短期版較新。
Linux MintWindows 轉換使用者友好界面、穩定,適合日常使用,提供多種桌面環境。
MX Linux輕量級需求適合舊電腦,內建系統管理工具,穩定且易用。
Debian伺服器、開發者穩定性極高,長期支援,但新軟體版本較舊。
Pop!_OS生產力、STEM 學生提供自動視窗排列、適合科學計算與開發,內建隱私功能。
Fedora想用最新技術的開發者採用新技術快、官方支持好,適合開發但非長期穩定。
openSUSE企業、伺服器分為穩定版(Leap)與滾動更新版(Tumbleweed),適合企業與專業使用者。
EndeavourOS想學 Arch 的人提供簡化的 Arch 安裝,保持原生 Arch 體驗,滾動更新。
ManjaroArch 初學者內建驅動管理、較穩定的 Arch 變體,適合桌面使用。

使用 Ubuntu 的主要原因是它對新手友好,可以避免遇到許多僅專業人士才會遇到的困難。此外,大多數工作在任何發行版上基本上都能正常進行開發。因此,在選擇發行版時,不需要過於糾結,只需選擇自己喜歡的即可。

安裝 Ubuntu Server 24.04 時的磁碟分割

在安裝 Ubuntu Server 24.04 的過程中,介面主要依靠鍵盤進行互動,因此操作相對簡單。

安裝過程會遇到硬碟的磁碟分割,可以參考 Ubuntu 磁碟空間建議與策略

分區容量我的配置
/至少 15 GB30 GB (ext4)
/boot250 MB ~ 1 GB500 MB (ext4)
/var2 GB2 GB (ext4)
swapRAM 的大小8 GB, (ext4)
/home剩餘硬碟空間151.34 GB (ext4)
  1. / 為根分區,官方建議至少配置 15 GB。由於日誌檔案、臨時緩存及安裝包等因素,根分區隨時間可能逐漸被填滿,從而導致系統性能下降或運作故障。為降低此類風險,我將分區容量設為建議值的兩倍。儘管如此,仍建議定期清理根分區內的檔案,或在空間不足時調整分區大小。

  2. /boot 大多數的 UEFI 為 500 MB ~ 1 GB。

  3. 一般桌面系統使用時,可以將 /var 分配 1-2 GB 就足夠了。如果是伺服器系統,特別是會產生大量系統日誌(如網頁伺服器),建議 /var 分區分配 5 GB 或更大的空間,以防止日誌檔案佔滿根目錄。使用 Docker 時,建議為 /var 分配至少 20 到 50 GB 的磁碟空間。如果一開始規劃的空間過小,可以修改 /etc/docker/daemon.json,將預設路徑 /var/lib/docker/ 更改到其他目錄,或是使用符號連結來解決。

  4. swap 使用與系統 RAM 約 1.5 ~ 2 倍的配置,例如 4 GB 的 RAM,可以將 SWAP 設為 6 GB。或是如果是 8 GB 以上的 RAM,則 SWAP 可以配置 1 倍即可。

  5. 其餘的空間都留給 /home,或者根據需要特別規劃其他分區。

確認所有分割設定無誤後,即可開始正式安裝系統。安裝完成並重新啟動後,系統便會順利進入 Ubuntu。

配置網路設定

⚠️ 系統安裝完成後,建議第一時間檢查網路環境能否正常運作,包括 IP 配置、DNS 伺服器可用性,以及能否順利連線外部網路。若網路連線不穩定或中斷,後續的套件安裝、遠端管理與系統維護都將受到嚴重影響。

1
2
# 顯示網路介面的詳細資訊
ip addr show

在輸出結果中,可以找到有線網路的介面名稱(例如 enp8s0):

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host noprefixroute 
       valid_lft forever preferred_lft forever
2: enp8s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:11:22:33:44:55 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.107/24 metric 100 brd 192.168.0.255 scope global dynamic enp8s0
       valid_lft 123456sec preferred_lft 123456sec
    inet6 fd3f:1234:5678:9abc:0011:22ff:fe33:4455/64 scope global dynamic mngtmpaddr noprefixroute 
       valid_lft 1688sec preferred_lft 1688sec
    inet6 fe80::0011:22ff:fe33:4455/64 scope link 
       valid_lft forever preferred_lft forever

Ubuntu 17.10 起,網路統一透過 netplan 進行管理。可使用下列指令檢查 /etc/netplan 內的設定檔,常見的檔案名稱可能是 01-netcfg.yaml50-cloud-init.yaml

1
ls /etc/netplan

在 Netplan 配置中,01-netcfg.yaml 具有較高的優先權,若該檔案存在,系統將優先套用其設定。目前,我的伺服器僅包含 50-cloud-init.yaml 設定檔案,可透過以下指令進行編輯:

1
sudo nano /etc/netplan/50-cloud-init.yaml`

在檔案中填入以下設定,此範例將 enp8s0 設為透過 DHCP 自動取得 IP,並使用 1.1.1.1 和 8.8.8.8 作為 DNS 伺服器。請根據您的網路環境進行調整與配置:

1
2
3
4
5
6
7
8
9
network:
  version: 2
  ethernets:
    enp8s0:  # 需要根據自身的網卡名稱
      dhcp4: true
      nameservers:
        addresses:
          - 1.1.1.1
          - 8.8.8.8

若需要固定 IP,可改用以下範例,並依實際子網路調整:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
network:
  version: 2
  ethernets:
    enp0s31f6:  # 需要根據自身的網卡名稱
      dhcp4: no
      addresses:
        - 192.168.88.123/24     # 填入想要的固定 IP
      gateway4: 192.168.88.254  # 填入閘道
      nameservers:
          addresses: [1.1.1.1, 8.8.8.8]

編輯完成後,透過以下指令將配置套用到系統:

1
sudo netplan apply

成功後,請以 ping 命令測試外網聯通狀態,例如:

1
ping google.com

正常情況會輸出類似下列訊息,表示網路已就緒:

1
2
3
PING google.com (173.194.174.101) 56(84) bytes of data.
64 bytes from td-in-f101.1e100.net (173.194.174.101): icmp_seq=1 ttl=103 time=17.7 ms
64 bytes from td-in-f101.1e100.net (173.194.174.101): icmp_seq=2 ttl=103 time=21.9 ms

透過以上步驟,可以確認網路連線是否正常。

確保系統與套件處於最新狀態

1
2
# 更新套件清單後,升級已安裝的套件。
sudo apt update && sudo apt upgrade

遠端環境建立

確保伺服器已成功連上網際網路後,接下來我們可以安裝 Tailscale 與 SSH,以便進行遠端開發。

安裝 Tailscale

若需要遠端連線此電腦,強烈建議使用 Tailscale,而非直接將伺服器暴露於公共網際網路。

詳細安裝指南請參考:《使用 Tailscale 輕鬆建立安全且私密的通道》。

1
2
3
4
5
# 安裝
curl -fsSL https://tailscale.com/install.sh | sh

# 啟動伺服器
sudo tailscale up

執行 sudo tailscale up 後,終端機會顯示一個網址。請使用瀏覽器或是第三方裝置開啟該網址以完成登入 Tailscale 帳戶,完成身份驗證後,系統將自動將此裝置加入到你的 tailnet 私有內網。

⚠️ 我在安裝 Tailscale 後,有遇到網卡名稱異動或 DNS 設定被 Tailscale 控制,導致無法正常 ping 出去的問題。

建議安裝後重新啟動系統,並檢查網路連線是否正常。如有需要,請更新網路配置。

配置 SSH

請參考《使用 SSH 金鑰進行無密碼遠端連線》。

上述配置完畢後,應該可以透過 Tailscale + SSH 進行第三方裝置遠端連線與操作。

系統基礎設定與安裝

系統時區與語言設定

使用以下指令將系統時區設定為 Asia/Taipei

1
sudo timedatectl set-timezone Asia/Taipei

針對其他地區,可透過 timedatectl list-timezones 查詢所有可用時區,並使用 grep 過濾相關時區名稱,例如:

1
timedatectl list-timezones | grep Asia

執行以下指令產生 zh_TW.UTF-8 語言環境:

1
2
sudo apt install language-pack-zh-hant
sudo locale-gen

可以透過 locale -a 檢查系統的可用語言,輸出如下:

1
2
3
4
5
6
C
C.utf8
en_US.utf8
POSIX
zh_HK.utf8
zh_TW.utf8

使用 update-locale 指令來更新 /etc/default/locale 檔案,並將 LANG 設為 zh_TW.UTF-8

1
sudo update-locale LANG=zh_TW.UTF-8

最後透過 locale 指令檢查,輸出如下:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
LANG=zh_TW.UTF-8
LANGUAGE=
LC_CTYPE=zh_TW.UTF-8
LC_NUMERIC=zh_TW.UTF-8
LC_TIME=zh_TW.UTF-8
LC_COLLATE=zh_TW.UTF-8
LC_MONETARY=zh_TW.UTF-8
LC_MESSAGES=zh_TW.UTF-8
LC_PAPER=zh_TW.UTF-8
LC_NAME=zh_TW.UTF-8
LC_ADDRESS=zh_TW.UTF-8
LC_TELEPHONE=zh_TW.UTF-8
LC_MEASUREMENT=zh_TW.UTF-8
LC_IDENTIFICATION=zh_TW.UTF-8
LC_ALL=

系統的預設語言和區域設定,涵蓋了字符編碼、時間格式、數字格式、貨幣格式等。設定為 zh_TW.UTF-8 表示系統使用繁體中文(臺灣)並且使用 UTF-8 編碼來處理字符。LANGUAGE 變數用來指定語言優先順序,控制翻譯語言的選擇。如果這個變數為空,系統將僅依賴 LANG 來設定語言環境。

安裝 Net tools

Net-tools 提供一套實用的網路管理與故障排除工具。不過,自 Ubuntu 18.10 起,該套件已 不再預設安裝,部分指令(如 ifconfignetstat)亦逐步被更現代的工具(如 ipss 指令)取代。

如果仍需使用 Net-tools,可手動安裝:

1
sudo apt install net-tools

安裝建置工具包

部分開發工具依賴 GCC、G++、Make 等編譯工具,建議安裝 build-essential 套件以確保基礎的開發與建置環境。

1
sudo apt install build-essential

安裝 ble.sh

ble.sh 是一個為 Bash 提供即時語法高亮和更強大功能(如自動完成等)的腳本。

1
2
3
4
# 透過 git 複製 ble.sh 後,編譯並安裝
git clone --recursive --depth 1 --shallow-submodules https://github.com/akinomyoga/ble.sh.git
make -C ble.sh install PREFIX=~/.local
echo 'source ~/.local/share/blesh/ble.sh' >> ~/.bashrc

安裝 Homebrew

Homebrew 為 macOS 提供了一種更快速的軟體包安裝方式,能夠方便地安裝、更新和管理軟體包。同樣,它也支援 Ubuntu 等 Linux 系統。

1
2
3
4
5
6
7
# 安裝 Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# ==> Next steps:
# - Run these two commands in your terminal to add Homebrew to your PATH:
#     (echo; echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"') >> /home/使用者/.bashrc
#     eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"

安裝後,會要求在執行額外兩行指令,使其 Bash 自動載入 Homebrew 的安裝目錄。

1
2
3
# 設定每次打開 Bash 都會載入 homebrew 的安裝路徑
(echo; echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"') >> /home/使用者/.bashrc
eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"

安裝 fzf

fzf 是一個命令行模糊查找工具,可以用來高效地從檔案、命令歷史、Git 提交記錄等中進行模糊搜索。極大地提高開發者在命令行中的工作效率。

1
2
3
4
5
# 使用 Homebrew 安裝
brew install fzf

# 未來更新可透過
brew update; brew upgrade fzf

安裝 Node.js

JavaScript 執行環境,有需要開發前後端再進行安裝。

官網的安裝教學寫得非常清楚。建議使用 nvm 進行安裝。

1
2
3
4
5
6
7
8
# 安裝 nvm (Node 版本管理器)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/
# 下載並安裝 Node.js(可能需要重新啟動終端)
nvm install 20
# 驗證正確的 Node.js 版本是否在環境中
node -v # 應顯示 `v20.14.0`
# 驗證正確的 NPM 版本是否在環境中
npm -v # 應顯示 `10.7.0`

安裝 tldr

tldr 提供簡明易懂的命令行工具說明和實用範例,比起 Linux 下的 man 指令更加直觀。

1
2
3
4
5
brew install tlrc

# 或是有安裝 Node.js,可以用 npm 進行安裝。
# npm install -g tldr
# tldr --update

使用方法只要 tldr 即可。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
tldr zip

  zip

  Package and compress (archive) files into a Zip archive.
  See also: unzip.
  More information: https://manned.org/zip.

  - Add files/directories to a specific archive:
    zip -r path/to/compressed.zip path/to/file_or_directory1 path/to/file_or_directory2 ...

  - Remove files/directories from a specific archive:
    zip --delete path/to/compressed.zip path/to/file_or_directory1 path/to/file_or_directory2 ...

  - Archive files/directories e[x]cluding specified ones:
    zip path/to/compressed.zip path/to/file_or_directory1 path/to/file_or_directory2 ... --exclude path/to/excluded_files_or_directories

  - Archive files/directories with a specific compression level (0 - the lowest, 9 - the highest):
    zip -r -0..9 path/to/compressed.zip path/to/file_or_directory1 path/to/file_or_directory2 ...

  - Create an encrypted archive with a specific password:
    zip -r --encrypt path/to/compressed.zip path/to/file_or_directory1 path/to/file_or_directory2 ...

  - Archive files/directories to a multi-part [s]plit Zip archive (e.g. 3 GB parts):
    zip -r -s 3g path/to/compressed.zip path/to/file_or_directory1 path/to/file_or_directory2 ...

  - Print a specific archive contents:
    zip -sf path/to/compressed.zip


See also: unzip

更新 Git 到最新版本

Git 不一定要更新到最新版本,部分工具版本太舊,需要配合舊版的 Git,如果安裝最新版的 Git 可能會遇到版本相容的問題。

git-core/ppa 是一個 Personal Package Archive (PPA),由 Git 社區維護,提供 Git 軟體的最新版本。

1
2
3
4
# 新增 PPA
sudo add-apt-repository ppa:git-core/ppa
# Git 更新到最新版本
sudo apt update && sudo apt upgrade

設定 Git 使用者

1
2
git config --global user.name "USER"
git config --global user.email "USER_MAIL"

其他進階設定

關閉 IPv6 連線

如果 ISP 同時提供 IPv4 和 IPv6 地址,基於安全性或特定需求考量,建議僅使用 IPv4。此時,我們可以選擇關閉 IPv6,以確保所有網路流量僅透過 IPv4 傳輸,進而減少潛在的攻擊面。

透過 sysctl 禁用 IPv6

在 Ubuntu 17.10 之前,系統沒有使用 Netplan,可以透過 sysctl 修改內核參數來關閉 IPv6:

1
sudo nano /etc/sysctl.conf

在檔案底部新增以下內容:

1
2
3
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

儲存後,使用以下指令重新載入 sysctl 設定:

1
sysctl -p

透過 Netplan 禁用 IPv6

自 Ubuntu 17.10 起,網路管理統一改為 Netplan。如果需要停用特定網卡的 IPv6,可透過 Netplan 進行設定:

1
sudo nano /etc/netplan/50-cloud-init.yaml

在目標網卡(例如 enp8s0)的設定中,新增 link-local: [ ipv4 ],範例如下:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
network:
  ethernets:
    enp8s0:
      dhcp4: true
      link-local: [ ipv4 ]  # 禁用 IPv6
      nameservers:
        addresses:
          - 1.1.1.1
          - 8.8.8.8
  version: 2

正式應用設定:

1
sudo netplan apply

最後透過 ip a 或是 ifconfig 檢查該網路介面狀態。會發現只剩下 IPv4 的地址。

設定 VS Code 為 SSH 遠端開發的預設編輯器

透過 SSH 連線至 Ubuntu 時,可將 VS Code 設為預設編輯器,讓終端機內的編輯體驗更直覺,並可直接使用 code 指令開啟檔案。

首先需要修改 .bashrc 檔案(若使用 zsh,請修改 ~/.zshrc)。執行以下指令,在 VS Code 中開啟 .bashrc

1
code ~/.bashrc

接著,在檔案底部新增以下內容,以確保系統使用 VS Code 作為預設編輯器:

1
2
3
4
5
6
CODE_PATH=$(command -v code 2>/dev/null)
if [[ -x "$CODE_PATH" ]]; then  # 確保 code 存在且可執行
    export VISUAL="$CODE_PATH --wait"
    export EDITOR="$CODE_PATH --wait"
    export SUDO_EDITOR="$CODE_PATH --wait"
fi

完成後,儲存 (Ctrl + S) 並關閉檔案。

最後,執行以下指令重新載入設定,或直接開啟新的終端機讓變更生效:

1
source ~/.bashrc

如此一來,若需編輯需要權限的檔案,可透過終端機中的 sudoedit 直接在 VS Code 中開啟、寫入;或是使用 crontab -e 編輯排程任務(cron jobs),同樣會自動啟動 VS Code 進行編輯,提升遠端開發的便利性。

設定 Ubuntu Pro 安全性

啟動 Ubuntu Pro 可以更加即時修正系統漏洞,提升系統的安全性和穩定性。

首先在 Ubuntu 官網上註冊並獲取一個 Ubuntu Pro 免費訂閱。可以在 Ubuntu Pro 頁面上進行註冊。

註冊後,透過sudo pro attach <YOUR_TOKEN> Ubuntu Pro 訂閱:

1
sudo pro attach YGBDmwR6Y2S

輸出如下:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Enabling Ubuntu Pro: ESM Apps
Ubuntu Pro: ESM Apps enabled
Enabling Ubuntu Pro: ESM Infra
Ubuntu Pro: ESM Infra enabled
Enabling Livepatch
Livepatch enabled
This machine is now attached to 'Ubuntu Pro - free personal subscription'

SERVICE          ENTITLED  STATUS       DESCRIPTION
anbox-cloud      yes       disabled     Scalable Android in the cloud
esm-apps         yes       enabled      Expanded Security Maintenance for Applications
esm-infra        yes       enabled      Expanded Security Maintenance for Infrastructure
landscape        yes       disabled     Management and administration tool for Ubuntu
livepatch        yes       enabled      Canonical Livepatch service
realtime-kernel* yes       disabled     Ubuntu kernel with PREEMPT_RT patches integrated

 * Service has variants

NOTICES
Operation in progress: pro attach

For a list of all Ubuntu Pro services and variants, run 'pro status --all'
Enable services with: pro enable <service>

     Account: xxxxx@xxx.com
Subscription: Ubuntu Pro - free personal subscription

結論

以上基本環境配置好後就可以快樂的進行遠端開發了🥳。

參考文獻

  1. 什麼是 VPS?
  2. Ubuntu Server documentation
  3. DiskSpace - Community Help Wiki
  4. Ubuntu Bionic: Netplan
  5. ble.sh
  6. fzf
  7. tldr-pages/tldr
  8. 初次設定 Git
  9. Use UFW to lock down an Ubuntu server
  10. networking - I have both IPv4 and IPv6 public addresses. Why?
  11. Fine-Tuning the Ubuntu 24.04 Kernel for low latency, throughput, and power efficiency
  12. How to configurate a IPv4 disabled and IPv6 on…
主題 Stack 由 Jimmy 設計