Jump to...
redirecting...

Log for Ubuntu 台灣社群

15 年、一台伺服器、8 GB RAM、50 萬名使用者:Webminal 如何硬是撐了下來 (★ 192 分)

Webminal 是一個讓人直接在瀏覽器裡練習 Linux 終端機的學習平台,15 年來幾乎都靠一台 CentOS Linux 伺服器與 8 GB RAM 撐起 50 萬名使用者,沒有 Kubernetes (容器編排平台)、微服務,也沒有自動擴充。作者說,這台機器自 2011 年以來歷經機房失火、荷蘭停電與突發流量衝擊仍持續運作,平台最近也完成全面改版,改用自架字型與適合手機閱讀的輕量介面。整個服務的核心想法很單純:讓初學者不用先安裝虛擬機,就能在真實 Linux 環境裡練習,從瀏覽器建立起操作信心,再把學到的東西帶到正式主機上。

新版最重要的功能是 Root Lab,以 User Mode Linux (UML,使用者態執行的完整 Linux 核心) 提供接近真機的管理員練習環境。這讓學生能碰到 Docker 容器不容易模擬的真實區塊裝置,實作 fdisk、LVM (邏輯磁碟區管理)、RAID (磁碟陣列)、mkfs、systemctl、crontab、firewalld 與 SSH (Secure Shell,安全外殼協定) 金鑰等工作。每個 Lab 都有獨立核心、4 個虛擬磁碟與 256 MB 記憶體,關機後就回到一般 shell,透過寫入時複製 (copy-on-write) 共享基底映像檔,因此 100 名同時使用者也只多耗約 2 GB 磁碟空間。首頁滾動的指令列也不是裝飾,而是用 eBPF (Linux 核心事件追蹤機制) 與 execsnoop 即時匿名擷取安全指令,不包含參數、路徑與密碼,累計已超過 2,800 萬筆。

Webminal 的技術選擇刻意不追新:後端仍是 Python 2.7 與 Flask 0.12.5,前端只用 HTML 和行內 CSS,終端機工具還是 2005 年的 Shellinabox (把終端機嵌入瀏覽器的老牌工具)。作者曾試過以 WebSocket (瀏覽器與伺服器間的雙向連線機制) 終端機取代它,但正式上線幾小時後就碰到空白畫面與 Firefox 相容性問題,只好換回舊方案,因為它雖慢、雖醜,卻能穿越防火牆、代理與企業網路穩定運作。這個平台一路在 Linode、DigitalOcean、AWS (Amazon Web Services,亞馬遜雲端平台)、GCP (Google Cloud Platform,Google 雲端平台)、OVH 與 IBM Cloud 之間搬遷,期間也做過瀏覽器 IDE (整合開發環境)、基於 LXC (Linux Containers,Linux 容器技術) 的隔離環境、畫面錄製與檔案共享等功能;兩位共同創辦人甚至多年未曾見面,只靠 SSH 登入同一台主機,在 screen (終端多工工具) 裡留言協作。

作者坦言,這個專案沒有廣告、沒有追蹤、沒有創投資金,伺服器費用長年由個人儲蓄支應,連申請 Y Combinator (YC,新創加速器) 與嘗試付費方案都沒有成功,因為最需要 Webminal 的往往是付不起每月 4 美元的學生。也正因如此,文章把 50 萬人第一次輸入 `ls` 視為這個平台最重要的成果,而不是營收或規模。這種以低成本、低摩擦為優先的做法,也成為許多讀者認為它能活 15 年的關鍵。

在 Hacker News 的討論中,最多人肯定的不是技術新潮度,而是「零設定就能開始」的價值,認為對初學者來說,能立刻打開瀏覽器練習,往往比功能更強的雲端虛擬機更有吸引力;也有人把它視為「老派網際網路」精神的代表,稱讚限制反而逼出精簡而務實的工程做法。討論裡也補上幾個細節:作者表示伺服器位於新加坡,跨區存取時確實會有延遲;50 萬使用者並非同時在線,多數人共用一般終端機,真正吃資源的 UML Root Lab 需另外申請,目前同時大約只能容納 20 個左右。作者還透露,平台最早其實架在共同創辦人家中,之後才因雲端平台點數與贊助在不同主機間搬移,為了壓低成本一路靠 SELinux (Linux 的強制存取控制機制)、磁碟配額與預先建立的帳號範本處理安全與規模問題,最近甚至一度把主機降到 4 GB 方案。少數人嫌文章文字風格太像 AI 產生內容,也有人推薦 Google Cloud Shell 等替代服務,但整體氣氛仍以佩服這種節制、耐久又對學生友善的服務為主。

👥 37 則討論、評論 💬
https://news.ycombinator.com/item?id=47570940
GeForce NOW 2.0.83 brings improved display scaling for Linux

Link: https://www.gamingonlinux.com/2026/03/geforce-now-2-0-83-brings-improved-display-scaling-for-linux/
過 150 萬筆 GitHub PR 說明遭 Copilot 植入廣告文案 (★ 134 分)

微軟的 GitHub Copilot 被發現會在人工智慧 (AI) 代理建立或修改的拉取請求 (PR, Pull Request) 說明中,自動插入帶有宣傳意味的提示文字。澳洲墨爾本軟體開發者 Zach Manson 指出,團隊成員只是請 Copilot 修正一個錯字,PR 描述卻被額外加上一句宣傳 Raycast (開發者常用的桌面啟動與自動化工具) 的文案,鼓勵使用者在 macOS 或 Windows 上從任何地方啟動 Copilot 的程式編寫代理任務。

Neowin 搜尋這句文案後,發現它已出現在超過 1.1 萬筆 GitHub PR,連 GitLab 的合併請求也能看到類似內容。報導認為,較可能的來源是微軟本身:受影響的 PR 原始文字裡,可看到一段隱藏的 HTML (超文字標記語言) 註解,標示為 START COPILOT CODING AGENT TIPS,顯示系統會主動插入所謂的「提示」。除了 Raycast 之外,Neowin 還找到超過 150 萬則 GitHub PR 含有類似宣傳語,內容包括從 Slack、Teams 啟動 Copilot 任務,或直接從 VS Code、Visual Studio、JetBrains 與 Eclipse 等開發工具呼叫代理。

文章把這件事放進更大的 AI 獲利壓力來看:過去幾年,產生式 AI 的快速擴張很大程度仰賴資本補貼,但訂閱收入難以覆蓋推論 (inference,模型每次回應所需算力) 成本,資料中心投資與實際營收之間還有超過 4,000 億美元落差,因此業者正回到最傳統的廣告模式。Neowin 也舉例,OpenAI 在 1 月把廣告帶進 ChatGPT 的 Free 與 Go 方案後,6 週內就宣稱相關業務年化營收推估突破 1 億美元,並準備推出企業自助投放平台。換言之,PR 內的宣傳文字不只是單一產品失誤,更像是 AI 工具把獲利壓力直接延伸進開發工作流程的前兆。

Hacker News 的討論大致分成兩派。多數人認為,把宣傳句塞進 PR 或提交紀錄,已碰觸到團隊協作、稽核與責任追蹤的核心;不少人也提到,類似的預設行為其實已在 Claude Code 與 Codex 等工具出現,例如自動加上共同作者或固定的分支命名,而且未必容易關閉。GitHub 後來由 Copilot 團隊產品經理 Tim Rogers 出面承認判斷失當,表示已停用這類插入文字,但仍有人批評,把廣告改稱 product tips 只是企業話術,若沒有外界強烈反彈,這種做法未必會停止。另一派則把焦點放在 AI 署名:有人認為共同作者標記雖然惱人,卻能提供透明訊號,讓審查者知道哪些變更主要由大型語言模型 (LLM, Large Language Model) 產生;也有人反對,主張最終送出 PR 的工程師才是唯一該負責的人,過度標記反而會讓審查帶入偏見,甚至引發著作權與職場評價風險。少數留言則把這種尾註比成類似 Sent from my iPhone 的署名,並順手嘲諷原文頁面本身也鋪滿廣告,形成一種黑色幽默。

👥 57 則討論、評論 💬
https://news.ycombinator.com/item?id=47575212
大家在用 ai coding 都不看,直接複製貼上喔
為什麼要複製貼上?不是都直接佈署好嗎?....
這個應該是 GitHub repo 有連接自動 review 的 APP?
感謝作者無私大愛
曾經我也用過這個網站,是五十萬人之一
這麼方便,連程式碼都看不到
[photo](media:AgACAgUAAx0CPRn5XQABAkxLacu4Nx8-g_LC54cVpOpl2z4Nh98AAr4MaxvbVGBW1XmtwCCi92oBAAMCAANzAAM6BA@telegram)
[photo](media:AgACAgUAAx0CPRn5XQABAkxOacvJ4zxDhAtJH7dQHngUC689hjAAAgMRaxtYRWBWoBPy9m1-lRIBAAMCAANzAAM6BA@telegram)