CentOS 時代即將結束,在上回 Linux 版本選擇評估中,Ubuntu 以近半的市佔成為「西瓜偎大邊」策略下的首選。不過,擁有 15 年 Debian 使用經驗的讀者 Jackson598 留言中一句「Ubuntu 為 Debian 分支,但具商業化色彩,故一切發展依隨公司決策,與 Debian 純社群協議較為不同。」喚醒我藏在內心深處的工程師魂 - 由技術人員、開發者當家作主?是駭客精神的充分體現,這才是真正的烏托邦啊! 身為世故成年人,自然知道現實與理想的差距,清楚與工作、職涯、競爭力有關時該怎麼抉擇。但 Side-Project 無關工作生計,屬於休閒嗜好領域,何苦還斤斤計較投資報酬率;團隊協作選平台選工具有太多因素要考慮,在單人 Side-Project 我就是皇帝,就算為了駭客情懷浪費時間也很合情合理,於是,我開了 Hyper-VM 裝了一台 Debian。

依據Debian 維基百科,Ubuntu 是 Debian 的分支,故二者在本質上非常相近。最大的區別在於 Debian 非常堅持自由軟體與開源精神,不帶一絲商業色彩,給予使用者充分的選擇自由。更多選擇的自由的另一面叫"選項很多,不知怎麼設定",以安裝程式為例,Debian 比 Ubuntu 有較多設定選項,這對進階玩家而言不是難事,而且選項多彈性大更容易將作業系統調成自己想要的形狀,但初學者就要多花點精神研究才能上手。關於 Debian 與 Ubuntu 的差異,FOSS Linux 的這篇 Debian vs. Ubuntu: Everything You Need to Know to Choose 值得一讀。理智面我會選 Ubuntu,但我現在就是想玩 Debian,大家不要攔我。(謎:你想怎麼玩就怎麼玩,誰管你?)

第一步先下載安裝 Image,打開下載網頁我被震憾到:

Debian 官方網站超有「工程師風格」,讓我有回到家的感覺,平常寫專案老被嫌網頁配色不夠美、畫面死板,這種素顏設計特別能引起我的共鳴,你看素到不行的 Google 搜尋首頁、純樸只重視本質的 Debian 網頁,不也對人類產生重大貢獻? Debian 網站彷彿驕傲地說:好東西全在這裡,大家都工程師,就別花時間去搞那些膚淺表面工夫,同樣的時間拿來 Debug 或寫新功能不是比較實際?I Like It! 哼! 明天起,看誰敢嫌我做的網頁醜?(回到現實生活:哦,不好看是嗎?您說看看哪邊要調,我馬上改給你。)

網路安裝版(netinst)只有 150-300MB,完整 Image 檔分為 Stable 與 Testing 版,依 CPU 有 amd64、arm64、i386、ppc64el... 諸多架構,64 位元 PC 歸類為 amd64。目前 Stable 最新版為 10.7.0,台灣的交大、成大等大學有 Mirror 站,下載速度較快。看了一下,最完整版有三片 DVD 超過 12GB,debian-10.7.0-amd64-xfce-CD-1.iso 約 700M,包含 xfce GUI 桌面系統。我的 Linux 要當伺服器用,不需要 GUI 桌面,說不定用網路安裝版就夠了,但 xfce 只比 netinst 版多了不到 400M,從交大下載差不到幾秒,最後我用 xfce CD 版安裝。

不知道怎麼安裝的話,這份圖文並茂的 Debian 安裝攻略很好用。

安裝步驟沒原本預期困難,我只在底下幾個地方猶豫一下。

我不會管理多 Partition,也不懂 LVM,選擇整顆 HD 挾去配:

要不要切成多個 Partition 呢?

參考 CentOS,它有額外切 /home 跟 SWAP:

NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0 59.6G  0 disk
├─sda1            8:1    0  200M  0 part /boot/efi
├─sda2            8:2    0    1G  0 part /boot
└─sda3            8:3    0 58.4G  0 part
  ├─centos-root 253:0    0 36.7G  0 lvm  /
  ├─centos-swap 253:1    0  3.9G  0 lvm  [SWAP]
  └─centos-home 253:2    0 17.9G  0 lvm  /home

依據 安裝攻略 Hinh 4.9 的說明,切 /home 有點像 Windows 分離系統碟跟資料碟,防止應用程式吃光系統碟空間搞掛系統。把 /var 也切出來的好處是不用擔心 log 吃光空間害系統癱瘓,但缺點是空間沒共用,若個別 Partition 空間不足需人工調度。

要不要設 Network Mirror,選 Yes 會下載很多東西哦(尤其是要裝 GUI 環境的話)?我不需要 GUI 桌面,那到底要還是不要?查了攻略,如果要從網路下載新套件,選 Yes 就對了。

Debian 我打算用來跑 .NET Core 跟 Docker,不需要桌面,故只選 SSH Server 跟 Standard system utilities:

這個畫面也讓新手迷惑,什麼是 GRUB?我的 Partition 都是用系統預設的,那現在要選 Enter device manually 還是下面有一串怪數字那個?(除非你知道怎麼手動輸入 /dev/sda 這種名稱,否則選下面那個就好。話說,Enter device manually 不該預設選取會更友善一點)

安裝完畢我有點體會 「Debian 選項太多讓新手害怕」的意思,與 Ubuntu 相比,Debian 更尊重使用者的選擇,凡事都希望問清楚不擅作主張,但詢問過程不時冒出術語:Partition、/home、/var、ext4、swap、Network Mirror、GRUD、/dev/sda... 說難不難,老手爬個文便知,卻可能讓初心者不知所措。相對的,Ubuntu 把一些細節藏起來偷偷幫你決定好(未必最適合你,但,反正你也不懂...),安裝程序無腦多了,對新手較友善。

在未特別調整的前題下,我各裝了一台 Debian 10.7 及 Ubuntu Server 20.04 LTS,選擇不要桌面系統,新裝作業系統碟使用狀況如下:

Debian

Ubuntu Server

/ Partition 的磁碟使用量是 989M vs 4.3G,Debian 更符合我的期待,預設安裝的東西少,比較輕巧。

後續使用有個小眉角 - Debian 預設未裝 sudo,要自己動手加裝(設定完需重新登入):參考

su -
apt-get install sudo -y
usermod -aG sudo 你的使用者帳號

最後,我準備裝好 .NET 5 就先結束這回合。MS Docs 有專章介紹 Install the .NET SDK or the .NET Runtime on Debian,照方煎藥如下:

wget https://packages.microsoft.com/config/debian/10/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-5.0

Hello, World! 成功~

First experience of installing Debian 10.7 and runing .NET 5 SDK on it.


Comments

# by DennySORA

我也從CentOS跑到Debian。 俗話說的好,大家都工程師,功能、穩定、強大比較重要,GUI只會影響我Server的速度!! (迷:你的網頁,版跑掉了! (我:抱歉我現在去改一下……

# by Huang

比起什麼都問,倒覺得類似的東西太多選擇才是種困擾

# by Anonymous

NCHC

# by 夢見草

對於初學者而言,不用花時間去搞硬碟分割啦,整顆HDD全給它,用預設值即可。 用久了之後,你自然就會知道哪些目錄需要另外的分割區了,初學者一開始不用花心思在這上面。

# by Eric

Debian 用的比較順 大概是從8開始吧

# by Superbil

本來其實要依目標要使用的套件在那些系統上才可以跑(官方有測)就要裝那套比較好,不過目前都會用 docker 來把 app 包起來使用的話,其實現在裝那一套的差別就並不大了,Debian 大好!

Post a comment