背景

外設

強烈推薦購買一個行動硬碟,能上移動固態硬碟更好。絕對不要幻想機房電腦的儲存有多好。

加密

VeraCrypt 可以用來用於加密資料,這個非常重要。機房電腦終究是公共的,如果你把一些重要檔案或隱私檔案存到了非還原盤,那就存在被他人讀取的可能。這些檔案包括但不限於:

VeraCrypt 的使用十分簡單,並且全平臺通用。你可以選擇建立一個存在檔案中的加密卷,因為你不太可能對整個硬碟加密。記得設一個強密碼。比較推薦每隔一個星期就把整個加密硬碟備份到你的行動硬碟上,或者直接在行動硬碟上工作。USB2.0 傳輸速度最多就 60MB/s,備份一個 8GB 的加密卷就需要兩分多鐘。如果是 USB3.0 的話會快一些,但是也受限於機房的硬碟和你的行動硬碟的讀寫速度。

虛擬機器

系統

我們學校電腦裝了 vmware 虛擬機器,本來是用於裝 NOI Linux 的。如果你的機房電腦比較好,可以考慮裝 Windows 虛擬機器,不過 Windows 虛擬機器至少都要 40GB 硬碟,非常重,備份也比較麻煩,不推薦。可以使用一些更輕量的 Linux 系統(按照字典序排序):

Linux 的發行版多如牛毛,除此之外還有 Fedora, OpenSUSE,Deepin 等等。建議是在虛擬機上多試一試,再說了,你在機房也就寫寫程式碼,有個好用的編輯器就夠用了,大不了還可以自己編譯一個。

你可能需要在虛擬機器安裝的軟體:

除了 vscode / vscodium 和 v2ray 可能需要自己下載,大部分發行版都提供了這些軟體包,沒必要糾結於發行版的選擇。

加密

虛擬機器最好也經過加密,可以直接放到 VeraCrypt 的加密硬碟中,但感覺效能不行,也可以用 Linux 的 dm_crypt 和 cryptsetup。有些發行版安裝時就提供了加密選項,非常方便。

備份

Linux 虛擬機器的話一般 20GB 左右就夠了,演算法競賽這麼多年寫的程式碼也而也沒多少,佔不了多大硬碟。也是推薦至少每週備份一次。

優勢

首先,使用虛擬機器可以輕鬆的備份,移動。如果需要換座位的話可以直接把虛擬機器複製下來。其次,虛擬機器可以放到非還原盤,每次走人時把虛擬機器 hibernate,回來時可以直接恢復工作狀態。但是注意,恢復工作狀態後要重新同步時間。

遠端桌面

雖然我不這樣幹,但還是提一嘴。可以再家裡架設一個伺服器,內網穿透一下,或者組個 VPN,就可以遠端桌面,但使用體驗和網路質量掛鉤,而且一定要注意安全。

雲盤

比較小的檔案,比如老師下發的課件,一些重要的程式碼可以用雲盤備份。國內的服務沒啥好的,就堅果雲還行,支援 WebDAV。國外的速度有不太好,免費的有 Onedrive,如果能翻牆可以用 Dropbox 和 Google Drive。還有一些物件儲存有免費額度,如 Cloudflare R2,BackBlaze B2,等。如果你願意,你還可以把檔案上傳到 ipfs 上,只不過上傳了就不太可能刪掉了。有錢的可以買雲廠商的儲存服務,但有點暴殄天物。

當然第三方服務從某種意義上來說都是公開給別人的(ipfs 是完全公開的),所以一定要加密。用雲廠商的儲存隱私性可能會好一點,畢竟是企業產品。不過最好還是能自己架設一個 NAS。

rclone 是比較通用的網盤同步工具,支援儲存服務極多。rclone 可以把配置檔案進行加密,可以(比較)放心地把網盤的 api-token 配置檔案存到機房。