自從 Google 相簿取消壓縮畫質無限空間後,我已經很久沒有雲端備份照片了,最近想說反正舊手機放著也沒用,不如拿來備份照片。
除了手機空間隨便都能比 Google 等雲端硬碟的免費空間還大之外,也不用擔心檔案被AI審查、誤判,最終帳號被封鎖的事情發生(殺錯良民|父親發送兒子私處照片給醫生遙距診症 遭Google誤判為性罪犯兼封鎖帳號 from Yahoo)。
安裝前建議 & 提醒
在正式開始操作前,建議可以在電腦上載個 Scrcpy 來用,在打指令時比較方便,下載與使用方法如下
此外,建議不要真的用太舊的手機,最好可以選近3~5年的手機,畢竟在更早的手機,大多數儲存空間都不算多。
安裝 Termux
目前雖然我們可以在 Play 商店上找到 Termux,但 Play 商店上的 Termux 已經不再更新,所以這邊建議可以到 F-Droid 上,或是到 GitHub 的 Releases 頁面,下載最新版 Termux 的 apk 檔。
這邊我就選擇從 F-Droid 下載並安裝 Termux
設定環境
安裝完打開 Termux 後,我們需要安裝一些套件來架設伺服器,讓 Nextcloud 可以在 Termux 中執行。
安裝套件
|
|
這邊我解釋一下為何不使用 MySQL(MariaDB)
主要是因為本篇的教學已經算是複雜的了,還要再教大家一些 SQL,根本友善等級直接歸零。
而且對於個人使用來說,SQLite 的效能就足夠了,實在沒必要再為難自己。
所以這裡才會選用 SQLite,而非正常的配置 LAMP 環境。
在安裝完套件後,我們接下來就要設定 apache,讓其可以執行 php
設定 Apache
首先我們先改一下目錄
|
|
$PREFIX 是 Termux 的一個特殊的環境變數,位置位於【/data/data/com.termux/files/usr】,其作用不是本篇的重點,想了解的可以看這裡 https://wiki.termux.com/wiki/Getting_started
接下來我們使用內建的 nano 開啟設定文件
|
|
nano 的使用方法這邊我們簡單介紹 4 個:
- Ctrl+S 存檔
- Ctrl+X 退出
- Ctrl+W 設定搜尋字
- Alt+W 搜尋下一個
知道這些就可以基本使用了
那麼接下來我們就開始設定
首先我們需要找到以下這段
|
|
將 index.php 加入,改完後變成以下的樣子
|
|
接下來我們要找到一下這兩行
|
|
將 mpm_worker_module 那行註解掉,mpm_prefork_module 那行取消註解
|
|
這部分的設定牽涉到 worker 與 prefork 模式的工作原理,詳細可以看這篇文章: https://zhuanlan.zhihu.com/p/464805524,簡單來說就是自己用的情況下,改成 prefork 比較好
調整好後,我們在往下幾行,加上載入 php 套件的設定
|
|
最後再補上 ServerName 的設定
|
|
這樣就可以 Ctrl+S,然後 Ctrl+X 退出 nano 編輯器了
之後就可以將網頁的檔案放到【$PREFIX/share/apache2/default-site/htdocs】資料夾內,在開啟 Apache 伺服器了
測試 Apache 是否可執行 PHP
接下來我們先簡單測試一下 Apache 是否可正常執行 PHP
我們輸入以下指令創建一個 PHP 的檔案
|
|
然後在輸入以下指令開啟 Apache 的伺服器
|
|
如果沒報錯,我們就可以到 http://localhost:8080 看看伺服器是否有啟動成功,以及 PHP 是否有成功執行。
正常情況下應該可以看到以下畫面
如果在執行指令時看到 libexpat.so.1 not found 之類的報錯,並且 Apache 無法開啟,可以試試執行以下指令
|
|
之後再重新執行伺服器的開啟指令,理論上應該能夠解決
安裝 Nextcloud
在設定好 Apache 後,接下來我們就可以開始安裝 Nextcloud。
首先我們先在任意的地方,透過以下這條指令下載 Nextcloud 伺服器程式的壓縮檔
|
|
我寫這篇文章時 Nextcloud 的最新版本是 27.1.2,未來有新的版本大家可以自行修改指令就好
我們將此檔案解壓縮
|
|
接下來將解壓出來的檔案,移到 Apache 的 htdocs 資料夾內
|
|
最後再將壓縮檔以及殘留的 nextcloud 最外層資料夾刪除
|
|
接著就可以回到 http://localhost:8080,開始設定帳號
帳號設定這邊,因為此次我們是使用 SQLite,所以我就不多做介紹,只要設定好管理完帳號,就可以直接按底下的安裝了。
設定區域網訪問
在設定完後,如果我們在電腦上輸入此台手機的區域網 IP,就會發現 Nextcloud 顯示禁止未經授權的域名訪問。
此時我們需要到 $PREFIX/share/apache2/default-site/htdocs/config 資料夾內,修改 config.php,將區域網的 IP 加入。
我們輸入以下指令開啟編輯器
|
|
將 ’trusted_domains’ 變數從原本的
|
|
添加一個區域網的 IP,這邊 IP 的部分是可以支援用【*】作為萬用字元的,所以可以輸入成以下這樣:
|
|
影片介紹
End
以上就是今天的分享
有任何問題歡迎留言與指教
感谢博主的教程:
在最新版本中,如果出现php GD报错
请执行 (来源 :https://github.com/termux/termux-packages/issues/21262)
patchelf –add-needed libphp.so $PREFIX/lib/php/gd.so
感謝告知