舊手機(jī)別扔,手把手教你DIY一臺(tái)服務(wù)器
時(shí)間:2021-09-07 11:28:50
手機(jī)看文章
掃描二維碼
隨時(shí)隨地手機(jī)看文章
[導(dǎo)讀]本文將向你展示如何使用UrBackup和LinuxDeploy在一臺(tái)Android舊手機(jī)上搭建一臺(tái)備份服務(wù)器。舊手機(jī)的污染問題眾所周知,我有一臺(tái)舊手機(jī),雖然外殼有裂紋和磨損,但性能還很好,因此我打算廢物再利用一下。你的舊手機(jī)很可能:并沒有那么舊(你會(huì)像換手機(jī)那樣一兩年就換一臺(tái)電腦...
本文將向你展示如何使用 UrBackup 和 Linux Deploy在一臺(tái) Android 舊手機(jī)上搭建一臺(tái)備份服務(wù)器。舊手機(jī)的污染問題眾所周知,我有一臺(tái)舊手機(jī),雖然外殼有裂紋和磨損,但性能還很好,因此我打算廢物再利用一下。你的舊手機(jī)很可能:
- 并沒有那么舊(你會(huì)像換手機(jī)那樣一兩年就換一臺(tái)電腦嗎?)
- 有 4-8 個(gè)處理器和大約 4GB 的內(nèi)存,以及內(nèi)置 UPS。只需要再加一個(gè)外部硬盤驅(qū)動(dòng),就可以備份整個(gè)家庭的網(wǎng)絡(luò)了!
- 文件系統(tǒng)只能使用 EXT4。這是唯一兼容 UrBackup 和 Android 的文件系統(tǒng)。因此沒有文件系統(tǒng)級(jí)別的壓縮等功能。
- 從 chroot 環(huán)境下無(wú)法直接調(diào)用 systemd。我們會(huì)安裝一個(gè)簡(jiǎn)單的啟動(dòng)腳本,啟動(dòng) UrBackup 服務(wù),并使用 pkill 停止服務(wù)。此外,我們還會(huì)添加一個(gè) cronjob,在系統(tǒng)啟動(dòng)時(shí)啟動(dòng)服務(wù)。
- UrBackup 主要以 Windows 為主。雖然它提供 Linux 的完整備份功能,但其 Linux 版本的完整鏡像依然是 beta 版狀態(tài)。此處我們會(huì)安裝穩(wěn)定版,所以我們的服務(wù)器無(wú)法支持利用 Linux 客戶端進(jìn)行完整鏡像備份。但是,你可以在客戶端上創(chuàng)建備份鏡像,然后備份含有這些鏡像的目錄。最后,UrBackup 團(tuán)隊(duì)也在開發(fā) Mac 客戶端支持,但同樣是beta 版。對(duì)于我來(lái)說(shuō),我沒有 Windows 服務(wù)器,我也不想備份我的Windows 筆記本電腦,所以我只在 Linux 服務(wù)器上使用 UrBackup。
- Linux Deploy 提供的發(fā)行版和版本支持很有限。我試驗(yàn)了 Centos7、Ubuntu 18.04 和 Debian 10,其中只有 Debian 10 能夠毫無(wú)錯(cuò)誤地運(yùn)行。UrBackup 對(duì) Debian 的支持也為最好(其他發(fā)行版都沒有 ARM64 的 .deb 包)。
- root 手機(jī)。具體做法請(qǐng)參考相關(guān)文檔,不在此贅述。
- 安裝 Linux Deploy 并部署 Debian Buster。
- 安裝 UrBackup 服務(wù)器。
- 連接客戶端。
準(zhǔn)備工作
root Android手機(jī)我的手機(jī)是 Pixel 4a(8核CPU,6GB內(nèi)存)。手機(jī)的特定型號(hào)應(yīng)該沒有太大關(guān)系,但不同的型號(hào)可能會(huì)遇到不同的問題。如果你的手機(jī)是在過(guò)去五年內(nèi)發(fā)布的,那么規(guī)格上應(yīng)該沒問題。我建議至少 4 核 CPU 和 2GB 的內(nèi)存,這對(duì)于大多數(shù)家庭網(wǎng)絡(luò)來(lái)說(shuō)應(yīng)該就夠了,但是你必須想清楚備份要求。此外不要忘記, Android 操作系統(tǒng)本身將占用一些資源。如果你打算通過(guò) Magisk 來(lái) root 手機(jī),則請(qǐng)注意:- 確保你使用的 boot.img 文件與手機(jī)當(dāng)前的引導(dǎo)程序版本相符。
- 如果你使用的是 Android 11,而且 Magisk 程序無(wú)法正常工作,請(qǐng)降級(jí)到 Android 10再試。我在 Pixel 4a 上擺弄了一整天的 Android 11。
- 如果你不想使用 Magisk,請(qǐng)非常謹(jǐn)慎地使用其他工具。有很多其他應(yīng)用程序可能含有惡意軟件。CF-Auto-Root 也是一款很好的 root 工具,但請(qǐng)確認(rèn)下載源的安全。
可選設(shè)備(強(qiáng)烈推薦)
盡管從技術(shù)的角度來(lái)看,你可以將備份存儲(chǔ)在 SD 卡上,但不建議這樣做。SD 卡的速度較慢,可靠性較低,并且無(wú)法長(zhǎng)時(shí)間處理持續(xù)寫入。如果你計(jì)劃備份到SD 卡,那么估計(jì)一年內(nèi)就會(huì)損壞(如果數(shù)據(jù)量大,甚至一個(gè)月內(nèi)就會(huì)出問題)。帶 USB 線的外置 HDD/SSD大小和寫入速度取決于你個(gè)人,但我更關(guān)心可靠性,而不是存儲(chǔ)和速度。如果你有大量存儲(chǔ)空間(幾百甚至幾千GB),則速度很重要。在這種情況下,寫入速度很關(guān)鍵,因?yàn)槟憧梢约皶r(shí)完成備份。為了可靠性,我們必須考慮品牌。使用廉價(jià)的驅(qū)動(dòng)器,就要做好心理準(zhǔn)備備份過(guò)程中會(huì)出現(xiàn) I/O 錯(cuò)誤。USB 擴(kuò)展塢根據(jù)你的手機(jī),可能需要支持 micro USB 或 USB-C。這個(gè)擴(kuò)展塢應(yīng)該至少有一個(gè) USB 端口,可以連接到外部驅(qū)動(dòng)器,而且還有一個(gè)充電的端口,但我建議選擇一個(gè)帶有以太網(wǎng)適配器的擴(kuò)展塢。你可以通過(guò) WiFi 運(yùn)行該服務(wù)器,但以太網(wǎng)更快、更可靠。以太網(wǎng)線如果你在以太網(wǎng)上運(yùn)行服務(wù)器,則需要準(zhǔn)備一個(gè)以太網(wǎng)線。第一步:安裝 Linux Deploy 并部署 Debian Buster
1-1. 在 root 完手機(jī)后,打開 GitHub,下載 Linux Deploy 和 BusyBox的 .apk 軟件包,安裝這兩個(gè)應(yīng)用。1-2. 安裝完畢后,打開 BusyBox。安裝的過(guò)程中,記錄下 BusyBox 的安裝位置。在下圖中,BusyBox 安裝到了"/system/xbin"。稍后我們會(huì)用到這個(gè)位置。1-3. 打開 Linux Deploy,點(diǎn)擊右下方的設(shè)置圖標(biāo)。完成如下設(shè)置:架構(gòu)所有安卓手機(jī)都是 AARCH64/ARM64。確保顯示的是 “arm64”(或者是其他發(fā)行版的 “aarch64”)。
安裝路徑默認(rèn)值是 "${EXTERNAL_STORAGE}/linux.img"。這是你的 SD 卡,你可以留著它(可以在樹莓派上工作)。但是,如果沒有插入 SD 卡或未正確格式化,則安裝將失敗。我建議安裝到你的內(nèi)部存儲(chǔ)中。我假設(shè)你不會(huì)使用手機(jī)干別的事情,因?yàn)樗枰恢辈逯姟?/span>鏡像大?。∕B)我建議至少保留 15 GB,但請(qǐng)確保為 Android 留出足夠的存儲(chǔ)空間。這部分空間會(huì)占用內(nèi)部存儲(chǔ),因此最后剩下的空間可能沒有 50 GB 這么多。初始化系統(tǒng)如果沒有設(shè)置為 “sysv”,則 cronjobs 將不會(huì)在啟動(dòng)時(shí)運(yùn)行。掛載如果你不擔(dān)心將來(lái)的存儲(chǔ)擴(kuò)展,則掛載外部塊設(shè)備時(shí)只需將其路徑直接添加到掛載點(diǎn)。如果以后有擴(kuò)展存儲(chǔ)的打算,則可以考慮邏輯分區(qū)。我們?cè)诖思虞d的設(shè)備,都可以在啟動(dòng)時(shí)直接訪問,但不能用于分區(qū)和格式化。但是,請(qǐng)記住,重新啟動(dòng)手機(jī)時(shí),塊設(shè)備的名稱 (/dev/block/sdX) 可能會(huì)變化,因此可能需要在重新啟動(dòng)時(shí)檢查/更新此配置。如果你掛載的是邏輯卷,則名稱不會(huì)變化,也不需要檢查。如何找到外部塊設(shè)備的路徑在 Android 上,你可以通過(guò) “/dev/block/sdX”(而不是 “/dev/sdX”)找到塊設(shè)備。為了確定哪個(gè) sdX 設(shè)備是外部塊設(shè)備,你需要在插入該設(shè)備的服務(wù)器上運(yùn)行“l(fā)sblk”。然后搜索各種設(shè)備,并查看哪一個(gè)與你的設(shè)備一致(就存儲(chǔ)容量/現(xiàn)有分區(qū)而言)。如果你在啟動(dòng)后插入設(shè)備,則可能是最后一個(gè)設(shè)備。注意:掛載塊設(shè)備后,你必須先解除掛載或關(guān)閉服務(wù)器,然后才能從物理上斷開塊設(shè)備的連接。如果在未解除掛載的情況下斷開塊設(shè)備的連接,則很可能會(huì)丟失所有數(shù)據(jù)。1-4. 回到首頁(yè),并打開左上角的菜單。選擇 “Settings”(設(shè)置),并一直向下滾動(dòng)到 “PATH variable”(路徑變量)。這就是你安裝 BusyBox 的位置。設(shè)置好 “PATH variable” 后,選擇 “Update ENV”(更新環(huán)境變量)。
1-5. 返回首頁(yè),打開右上角的菜單。點(diǎn)擊 “Install”(安裝)。你將看到安裝的實(shí)時(shí)日志。完成后,日志將以 “deploy”結(jié)尾。?選擇屏幕左下角的 “START”(開始)。Android 手機(jī)上就開始運(yùn)行 Debian 服務(wù)器了!
第二步:安裝 UrBackup 服務(wù)器
2-1. SSH 到新部署的服務(wù)器。IP 地址與手機(jī)相同,端口為 22,你可以使用步驟 1-3 中設(shè)置的憑據(jù)登錄。本教程后續(xù)內(nèi)容均假設(shè)你以 root 身份登錄。打開 Linux Deploy 就可以看到你的 IP:2-2. 更新系統(tǒng)。
apt update