在 PDF 文件中執行 Linux 系統 (2025)
這是一個技術演示,展示了如何利用 PDF 閱讀器內建的 JavaScript 功能,在 PDF 文件中執行一個功能完整的 Linux 核心。
背景
近期在 Hacker News 上引發熱烈討論的技術展示,是一個能夠在 PDF 文件內部運行 Linux 作業系統的專案。這項技術並非單純的靜態展示,而是透過在 PDF 格式中嵌入 RISC-V 模擬器,讓使用者在開啟文件的同時,實際上是在執行一個具備運算能力的虛擬環境。
社群觀點
這項專案在社群中激起了兩極化的反應,支持者認為這展現了極致的技術創意與黑客精神。許多留言者將其與經典的「在 PDF 中玩 Doom」相提並論,認為這種「因為它在那裡,所以我們要挑戰它」的攀登聖母峰精神,正是技術社群不斷突破邊界的動力。部分資深技術人員指出,這種在文件格式中嵌入虛擬機的概念並不新鮮,早在 1980 年代,Adobe 開發的 PostScript 格式就已經具備類似的特性。當時開發者甚至能在 PostScript 環境下模擬 Z-Machine,進而執行如《Zork》等經典文字冒險遊戲。這證明了只要文件格式具備圖靈完備性,理論上就能執行任何程式。
然而,這種技術突破也引發了嚴重的安全性擔憂。不少評論者對此感到「既佩服又恐懼」,認為 PDF 格式演變至今已過於臃腫且危險。當一個看似單純的文件格式能夠運行完整的 Linux 核心時,其潛在的攻擊面(Attack Surface)已大到令人不安。有觀點認為,現代 PDF 閱讀器動輒數 GB 大小且具備極高權限,簡直是漏洞與惡意程式的溫床。針對此點,社群中出現了激進的防禦建議:為了確保安全,未來或許應該將所有下載的 PDF 先送入沙盒環境,將每一頁渲染成純圖片後再重新組合成新的 PDF,並搭配 OCR 技術來保留搜尋功能,以此徹底根除隱藏在文件底層的可執行代碼風險。
此外,討論串中也出現了對當前網路內容生態的批評。部分網友指出,這類技術展示雖然有趣,但往往被一些追求流量的帳號或 AI 內容農場反覆轉載,甚至被包裝在充滿廣告的劣質網站中進行二次傳播。這種「為了流量而轉載」的現象,讓原本單純的技術交流蒙上了一層行銷陰影。同時,也有人質疑這項技術的實用性,認為這僅僅是再次證明了圖靈完備機制的必然結果,除了作為技術展示外,在實際生產環境中幾乎沒有正面用途,甚至可能被誤用為 AI 沙盒等具爭議性的場景。
延伸閱讀
- Linux in a PDF 專案網址:https://linux.doompdf.dev/linux.pdf(註:僅限 Chromium 架構瀏覽器開啟)
- zmachine.ps:在 PostScript 環境下模擬 Z-Machine 並執行文字冒險遊戲的早期案例。
- Hacker News 早期討論:關於此專案在 2025 年 2 月份的首次深入討論紀錄(ID: 42959775)。