成功用手機搭建了一個博客-分享價值

成功用手機搭建了一個博客-分享價值

嘗試了一下在華為暢享 8 上安裝 Linux Deploy 運行 CentOS 7 ARM,然後安裝 LNMP。用了幾個小時的時間終於是裝好了,現在正常運行中。

博客地址: 請點下面 是一個 Hexo 的靜態博客。

使用 Sakura Frp 做了內網穿透,因為是國內服務器,沒有備案,請用 https 訪問。

下面介紹一下安裝經過,篇幅較長,慢慢看

一、刷機

之前這部手機是裝電信寬帶送的,送了我兩部,另一部比較小拿來聽歌用,這一部比較大用來備用(我平時用的是華為 Mate8 和另一部 iPhone 6s)。去年這部暢享 8 就拿到手了,當時在百度和 Google 都沒有 Root 的方案,但是我花了 10 塊錢上淘寶搞了個解鎖碼,成功把手機解鎖了。

前天晚上 12 點多,無意中在華為的花粉俱樂部發現有人發了個帶 Root 的 ROM,感覺不錯就下載下來試著刷了一下,刷完正常開機,感覺還是 OK 的,但是很快我就發現沒這麼簡單!主屏翻了一頁以後,看到了一大堆預裝軟件,並且是刪不掉的!這就很蛋疼了。於是我嘗試用幸運破解器刪除,結果發現沒有作用。再次嘗試使用 RE 文件管理器手動進入 /system/app/priv-app/ 刪除應用,刪除成功。

成功用手機搭建了一個博客-分享價值

剛想著終於除掉了這些預裝應用,可以開始玩耍了,打算重啟插個手機卡。卡插上去,開機,發現卡在第一屏了,一動不動,強制重啟,按住電源鍵 + 音量上,進入 Recovery,恢復出廠設置,格式化 Cache 分區,再開機,依然進不去。無奈只能重新刷一次機,刷完之後按照上面的步驟再次嘗試刪除預裝應用,結果還是發生了無法開機的情況!一臉懵逼,於是我再嘗試直接修改 system.img ,刪除掉預裝應用再刷機,結果刷完直接開不了機……服了。

再回到花粉俱樂部,尋找相關解決方案,再次發現了這個作者發的另一個刷機包,和之前那個不同的是,這個是基於 215 版本製作的,而我之前刷的是 211,抱著試一試的態度我又嘗試下載了這個刷機包。刷完了以後,又準備開始卸載預裝,這回我沒有用手動刪除文件的方法,因為我突然想起來一個好方法:adb。

成功用手機搭建了一個博客-分享價值

連上數據線,打開 USB 調試模式,adb devices 列出設備,然後 adb shell 連接終端。這時候需要打開 SuperSU,因為不啟動它的話權限申請提示框不會彈出來。回到 Shell,輸入 su 提升到 root 權限,接著用幸運破解器查看想要卸載的軟件包名,例如預裝了個 360 安全衛士,包名是 com.qihoo360.mobilesafe,使用命令 pm uninstall -k –user 0 com.qihoo360.mobilesafe 強制卸載它,OK,卸載成功。

很快,所有預裝的垃圾軟件都卸載了,嘗試一下重啟手機,正常啟動,正常進入系統。

二、安裝 Linux Deploy

裝完機,安裝谷歌三件套,然後在 Google Play 下載 Linux Deploy。下載完後,配置容器環境,儲存模式為目錄,然後開始執行容器安裝,安裝只用了幾分鐘,然後點擊啟動,出現了幾個 fail,然後嘗試連接 SSH,失敗。

一開始以為是架構選錯了,但是查了一下暢享 8 的高通驍龍 430 是支持 Aarch64 的啊……於是換成了 armfs 再嘗試安裝了一次,還是失敗。最後想了一下,是不是儲存模式不能是目錄?於是換成了鏡像模式再試一次,這回成功安裝和運行,全部顯示 done。

成功用手機搭建了一個博客-分享價值

三、安裝 LNMP

一開始打算用 OneinStack 的,但是發現安裝到一半就報錯,看起來是不支持 ARM 設備。

於是打算用 yum 安裝,結果發現軟件版本都太老了…… PHP 版本居然還是 5.2,Nginx 還是 1.12 ,只好自己來編譯了。從官網下載 PHP 源碼開始編譯,下載的版本是 7.3.1,首先 configure 用了兩分鐘,然後提示缺少 libxxxx,用 yum 命令安裝,然後再執行 configure… 又提示缺少 libxxxxx… 一共執行了十幾次 configure,耗時接近 40 分鐘。

接著是編譯 PHP,make 第一次用了二十多分鐘,最後編譯失敗,換了個參數再次編譯,用了半個多小時,編譯成功。然後安裝 Composer,結果發現執行 require 的時候提示要 php_zip 擴展,於是我又得去編譯個 php_zip 擴展,結果編譯的時候提示我需要 libzip,只能用 yum install libzip,安裝完再編譯又提示版本太低!!!又得去官網下載最新版的 libzip,編譯的時候又提示需要 cmake !!!又去下載編譯了一個 cmake ……前前後後總共用了兩三個小時!

終於把 cmake 裝好了,開始編譯 libzip,編譯成功了!接著開始編譯 php_zip 擴展,結果編譯失敗!仔細看了看報錯,再複製到 Google 搜了一下,並沒有什麼結果,於是看了看源碼報錯的地方,註釋掉了兩行代碼,再次編譯成功了(但是不知道這樣會不會出什麼問題)

好……我忍著終於把 Composer 裝好了,然後安裝 Mariadb 和 Redis,因為官方提供的二進制版本沒有 ARM,只能自己編譯,下載了幾十 MB 的源碼開始編譯,耗時 1 小時 35 分鐘編譯完成。

配置 LNMP

由於是運行在容器裡,當執行 systemctl 或者 service 類的命令時,都會提示 Running in chroot, ignore request. 這個問題是沒法解決的,只能在前臺運行。

於是使用 screen 將 mariadb 和 redis 放在後臺運行,接著是各種蛋疼的配置,使用了 php-fpm 運行,我找了我另一臺機子的 php.ini 複製過來,改一改配置就可以了。

Mariadb 我是第一次用源碼編譯安裝,所以裝的時候一臉懵逼,上 Google 找了很多安裝教程,用了二十多分鐘搞定了。

小插曲

我為了能夠讀取手機本身的文件,設置了將 / 掛載到容器的 /mnt/rootfs,結果我在容器裡手賤執行了一下 chmod -R 771 /mnt/rootfs/data/*

然後……然後我發現我手機幾乎所有的應用都打不開了……我慌的一批

好在系統設置還能打開,進入設置啟用 adb,然後電腦鏈接,定位到 /data 下,執行 chmod -R 777 ./ 成功挽救。

搭建網站

一開始裝了個翼龍面板,這是一個遊戲管理面板,裝來沒啥意義,只是截圖給群裡那些人看看,裝逼用 2333

然後就沒有然後了,裝完面板就是第二天的中午 12 點了,我通宵了 12 個小時!一覺醒來就到下午 6 點了,起來隨便吃了點東西繼續研究,然後想著搭個博客玩玩,於是裝了個 Hexo,很輕鬆,幾分鐘就搭建好了。

總體而言,安卓機 Root 了以後可玩性還是很高的,特別像我這種喜歡搗鼓各種設備的人來說是最好的。各位有興趣的話也可以試試,利用自己閒置的手機來搭個小網站之類的還是可以的。

感謝能人分享..


分享到:


相關文章: