隨身攜帶的作業系統 ~安裝Linux作業系統於隨身碟~ (最終更新:2018-03-02)
想隨時隨地都有一套自己的作業系統可以使用嗎?Linux作業系統有一個超棒的優點就是可攜性,安裝到儲存裝置(如:硬碟、隨身碟、記憶卡)之後,拔下接到任何一台電腦都可使用!如果安裝到隨身碟,那麼你就有一套個人化的隨身作業系統了!不但可以隨身攜帶,並且能夠當作後備作業系統,於主機的作業系統異常而無法開啟時,作為代替或者進行救援喔!請參考本文製作一個吧!
※ 實際使用時的樣子: https://youtu.be/o6SIUMaEOE0
<一、準備篇>
(1) 隨身碟
最低規格:
8G、USB2.0(非常不推薦,沒有多餘儲存空間而且速度極慢。)
推薦規格:
16G起、USB3.0起
(2) Linux作業系統Live光碟
推薦發行版:
Ubuntu MATE 16.04 LTS ( http://cdimage.ubuntu.com/ubuntu-mate/releases/16.04/release/ )
(3) 拔掉主機所有硬碟排線
為了防呆,避免把GRUB開機程式誤裝到主機硬碟(因為預設「用來安裝開機程式的裝置」是第一個儲存裝置),以及更嚴重的錯誤——搞錯安裝目標分割區,覆蓋了主機的作業系統或資料。
※ 不是用Live光碟而是用Live USB安裝時,由於Live USB也會算入儲存裝置並且排列前方,所以要特別注意「用來安裝開機程式的裝置」有沒有選錯,以免隨身碟沒有安裝好開機程式。
<二、安裝篇>
(1) 電腦開機後,按一下(或按住)F8~F12其中一鍵(依主機板品牌而不同),即可進入開機裝置選單,放入Linux作業系統Live光碟後,選擇從光碟機開機。
(2) 從光碟機開機後,選好語言界面,然後因為我們要先用「GParted」磁碟分割軟體進行分割,所以不選擇安裝模式,而是選擇試用模式。(雖然安裝過程也能進行分割,但是這個比較好操作,所以先用它分割好。)
(3) 進入試用模式後,請插上隨身碟,然後按主選單的「系統>管理>GParted」,進行如下的分割:
/dev/sda1 fat32 大小為後兩個分割區以外的全部
/dev/sda2 ext4 至少7G boot
/dev/sda3 linux-swap 0.5~4G
(「sda」、「sdb」、「sdc」……等,磁碟代號的不同沒有任何影響,不用理會,只須確定是目標隨身碟即可。)
第一個fat32分割區即為隨身碟本來的部份,不須重新格式化,只要縮減範圍空出後面至少7.5G即可。這個部份Windows將還是可以讀寫,如同原來的隨身碟一樣。
※ fat32分割區如果不是在前端,Windows有可能偵測不到,所以排在第一位。
第二個ext4分割區裝Linux作業系統用,分割出後請在該區域按滑鼠右鍵,選「管理旗標」勾取「boot」設為開機分割區。
第三個linux-swap分割區即為虛擬記憶體,如果你在記憶體不滿2G的電腦開網頁瀏覽器看大容量的Flash影片,當影片快取塞爆記憶體時,網頁瀏覽器便會當掉,所以有設置的必要。
(4) 分割好後,請按桌面上的安裝圖示進行作業系統安裝,另外考慮到隨身碟容易弄丟,可在安裝過程選擇將家目錄加密,藉此保護私人資料。關於安裝的細節,若是Ubuntu家族的發行版可參考「Ubuntu正體中文站」的Wiki ( http://wiki.ubuntu-tw.org/index.php?title=UbuntuInstallNEW#.E9.96.8B.E5.A7.8B.E5.AE.89.E8.A3.9D ) ,而其他發行版也可藉此大略了解一下。
<三、調校篇>
(1) 作業系統安裝完畢後,請重新開機並且進入開機裝置選單,選擇從隨身碟開機,便可進入隨身碟中的Linux作業系統了。進入系統之後,如果發現中文介面不完整,請按主選單的「系統>偏好設定個人>語言支援」,便會提示下載安裝中文語言套件,同意並安裝好後重新登入即可。
(2) a. 假如Fcitx輸入法框架不顯示「候選字詞框」,請在終端機(Ctrl+Alt+t)分別輸入下列指令後重新登入。(於終端機輸入密碼時不會有任何顯示,打完按Enter就行了。)
sudo apt-get update
sudo apt-get install qml-module-qtquick2
b. 如果Fcitx有「候選字詞框」在換頁時顯示得不完全的現象,請按主選單的「系統>偏好設定>個人>啟動應用程式」,從中取消「Fcitx Qt IMPanel」,然後重新登入便會換回無此問題的傳統樣式。
(3) 直接採用硬體時間,以免主機板的時間被隨身碟裡的作業系統減8小時,請在終端機輸入下列指令。
sudo timedatectl set-local-rtc yes
(4) 作業系統更新核心時,會重整GRUB的開機選單,位於主機硬碟裡的其他作業系統也將會被納入,然而當隨身碟插到別台電腦,這些多出的選項只是無意義的累贅,在終端機分別輸入下列指令,可以避免開機選單納入額外的作業系統。
sudo cp /etc/default/grub /etc/default/grub.bak
sudo sed -i '$a GRUB_DISABLE_OS_PROBER=true' /etc/default/grub
sudo update-grub
(5) 可以安裝空間清理軟體,方便移除不需要的舊核心等以爭取容量,請在終端機分別輸入下列指令。
sudo add-apt-repository ppa:gerardpuig/ppa
sudo apt-get update
sudo apt-get install ubuntu-cleaner
(6) 可以將系統暫存目錄掛載於記憶體,減少對隨身碟的讀寫和使用容量,請在終端機分別輸入下列指令。
sudo cp /etc/fstab /etc/fstab.bak
sudo sed -i '$a tmpfs /tmp tmpfs defaults 0 0' /etc/fstab
sudo rm -rf /tmp/*
然後請重新開機,便大功告成!
※ Ubuntu MATE 18.04 於隨身碟的樣子: https://youtu.be/rgHa8Unna7w
(三之2b的調校不適用於 Ubuntu MATE 18.04)
※ Ubuntu MATE 20.04 於隨身碟的樣子: https://youtu.be/Jpl2bsL4xn4
若要安裝「救援硬碟、分割區、檔案」時會用到的軟體,請在終端機輸入:
sudo apt-get install gddrescue testdisk foremost scalpel
對應的指令及主要功能為:
gddrescue:
ddrescue → 將硬碟另外複製成映像檔
testdisk:
testdisk → 救回硬碟分割表
photorec → 救回檔案
foremost:
foremost → 救回檔案
scalpel:
scalpel → 救回檔案
我曾經搞壞過硬碟分割表,面對一片空白的硬碟,驚嚇度破表,幸好最後用隨身碟Linux系統中的testdisk救回了。
所以個人是建議,無論目前會不會用到,先灌Linux到隨身碟,並安裝這些軟體再說。哪天須要用到時(當然,不會用到更好),你就會慶幸有這麼做了。
參考資料:
https://darkranger.no-ip.org/content/how-to%EF%BC%9Alinux-%E8%B3%87%E6%96%99%E6%95%91%E6%8F%B4%E5%B7%A5%E5%85%B7
目前隨身碟作業系統之速度排名,上位者較快,皆插 USB 2.0 插座:
Transcend JetFlash 600 (USB 2.0,雙通道) ← 「耐用度」推薦。
Transcend JetFlash 710 (USB 3.0)
TOPMORE ZH Plus (USB 3.0) ← 「效價比」推薦。
------------以下排位的隨身碟速度無法接受------------
Transcend JetFlash 380 (USB 2.0,OTG)
Kingston DTSE9 G2 (USB 3.0) ← 沒有打錯,是 USB 3.0 ,但是它最慢。
如果有網友要補充這清單,也可以發表一下。 ^ ^
基本上「寫入速度低於12MB/s」便有明顯的遲鈍感。
如果使用平鋪式視窗管理器「Awesome」,則可以更節省資源!
若要在Ubuntu MATE安裝「Awesome」,請在終端機中輸入:
sudo apt install awesome mate-polkit mate-polkit-bin mate-polkit-common
mkdir ~/.config/awesome
cp /etc/xdg/awesome/rc.lua ~/.config/awesome/
然後在剛才建立的rc.lua裡添加下一段,以便登入時自動啟動必要的程式:
-- Autorun programs
autorun = true
autorunApps =
{
"mate-polkit",
"mate-volume-control-status-icon",
"nm-applet",
"blueman-applet",
}
if autorun then
for app = 1, #autorunApps do
awful.util.spawn(autorunApps[app])
end
end
如果是使用 Ubuntu MATE 18.04 以下,其中的「mate-volume-control-status-icon」須改為「mate-volume-control-applet」。若還有其他想在登入時自動啟動的程式,也可以添加到這個設定中,至於佈景主題的設定就請自行研究了。 :-)
使用起來就是這個樣子: https://youtu.be/MB4DjhR8Rh0
把作業系統安裝到隨身碟,除了可以在任何一台電腦使用個人化的作業系統之外,另一項重要的功能當然就是進行檔案救援囉!
在Linux下可以使用「PhotoRec」這一個程式進行檔案救援,別被它的名字誤導了,它可以恢復眾多格式的檔案,並不是只有圖片而已。它被包含在「testdisk」這個套件裡,有需要的人可以安裝這一個套件。然後使用時,請在終端機輸入「sudo photorec」,接著:
我在測試中準備了各1個「ogg檔」「jpg檔」「mp4檔」「txt檔」,雖然不耐久候而中途「stop」,但仍然救回了「ogg檔」「jpg檔」「mp4檔」,以及顯然是從前刪除的「zip檔」「png檔」。
雖然由於沒讓它掃完整顆測試的隨身碟,所以不知道那個「txt檔」到底是救不回了,還是只是還沒輪到它而已,但總之整體而言,我非常地滿意。
感謝樓主的心得分享
我也迫不及待買一顆隨身碟安裝看看了!
如果不介意體積,安裝在SSD行動硬碟會更快。 ^^