歡迎光臨
每天分享高質量文章

大佬告訴你如何榨乾一個舊手機的剩餘價值

本文來源:51CTO部落格,作者:youerning

連結:http://blog.51cto.com/youerning/2087099

這裡的手機指安卓機。


大家都知道安卓機用的是Linux核心,所以理論上Linux可做的事情,手機都能做,下麵列舉一些有意思的事情。


必備技能: 會Linux。


安裝Linux發行版

其實這個比較簡單,只需裝一個App, 但是有些技巧可以講講。


所需材料

  • 安卓手機 必須

  • 擁有公網IP的機器 非必須

  • 無限流量卡 非必須

  • root許可權 必須


Root

root手機根據手機訊號的不同,會有不同的辦法,所以這裡就不細講,請自行百度,或google.


安裝linux deploy

透過某個應用市場下載並安裝

線上安裝

線上安裝是比較扯淡的,因為在國內實在是比較慢的,原因你懂的。


離線安裝

透過以下地址可下載自己所需的映象
http://sourceforge.net/projects/linuxonandroid/files/

使用者名稱/密碼:android/changeme

推薦安裝ssh客戶端:JuiceSSH

最好的安卓ssh客戶端,沒有之一。


個人網站

其實這個這個章節有點泛指的意思,任何你覺得需要在公網上能做的事情,都可以在內網完成,因為在內網裡面你可能有舊電腦,舊伺服器,舊手機。一切被限制在內網的資源(有記憶體,cpu。)


所需材料

  • 安卓手機 必須

  • 擁有公網IP的機器 非必須

  • 無限流量卡 非必須

  • root許可權 非必須


系統環境

這裡的環境你可以用上面的Linux deploy部署的Linux環境也可以使用下麵要說的方式,不同的在於下麵的方式不需要root


Linux deploy

如上


termux

透過某的應用商店下載並安裝


安裝JucieSSH

之所以不用termux自帶的shell環境,是因為較於JuiceSSH來說,實在時太難用了。


安裝openssh

開啟termux後,在終端輸入pkg install sshd以安裝openssh

執行sshd命令啟動sshd,這樣就可以透過其他ssh客戶端連線了,但是預設只能用金鑰登陸

使用JuiceSSH連線

1.首先在電腦端,透過ssh命令生成金鑰,然後將公鑰私鑰的文字傳到手機.

2.在開啟JucieSSH之後,依次點選連線 -> 認證 -> 點選認證頁面下麵左下角的”+”.

3.暱稱,使用者名稱可隨便填,然後點選私鑰。如下圖所示

4.貼上第一步生成的金鑰。如下圖所示

5.最後點選完成

6.在termux中匯入公鑰。如下圖所示

7.使用JucieSSH連線.在JuiceSSH中新建連線,如下圖所示

8.點選新建的連線,連線成功後,如下圖

使用電腦連線

只要保障在同一區域網,然後用上面生成的私鑰連線即可

總結

準備好環境後,你就可以使用termux做linux下幾乎所有可做的事情了,比如安裝python,golang,nodejs等開發環境,以及一些其他的軟體。

termux比較易用,但是前面的連線實在時比較麻煩,上面是我的連線辦法,如果有更好的連線辦法還望告知。

內網穿透

由於眾所周知的原因,大多數時候家庭網路都是不會分配公網IP的,所以我們需要一些手段得到能夠從公網訪問的路徑。下麵介紹三種。我主要說第三種。

NATAPP

這是一個專門做內網穿透服務的網站,有免費服務,不過需要實名認證。

地址如下:https://natapp.cn/

ngrok

這個應該時比較出名的內網穿透方式了,可是由於伺服器在國外,再者是免費的,所以可能不穩地以及延遲大。

frp

這個是屬於比較新起之秀了,但是門檻較之上面兩種,比較高。
需要一個有公網IP的伺服器,可以使用雲伺服器或者及其便宜的vps。

專案地址:https://github.com/fatedier/frp

網站搭建

其實看到這裡你也許會有疑問,我有公網伺服器或者雲主機,為啥還要用手機呢。主要有以下兩點

  1. 如果是便宜的vps,可能記憶體只有256MB或者192MB, 因為我們主要需要的是公網IP。但是很多手機記憶體都是1GB或者2GB甚至更高的。即,可以將負載高的東西放在本地,公網IP所在的伺服器只是轉發流量。

  2. 這裡只是一個拋磚引玉的示例,只要能內網穿透,你就可以將很多內網的東西放到內網了。

軟體環境

這裡以golang web的hello world為例,你當然可以用其他任何的語言以及方式執行一個web服務。

安裝golang

在手機上執行pkg install golang


建立程式軟體

包含以下內容

執行程式

go run main.go &

瀏覽器訪問http://:8088


對映公網地址到內網

分別下載伺服器版本的frp以及安卓手機的frp

伺服器如果是linux,就根據32或者64位下載相應以linux開頭的frp,如frp_0.16.0_linux_386.tar.gz

安卓手機下載以arm結尾的frp版本,如
frp_0.16.0_linux_arm.tar.gz

下載地址:https://github.com/fatedier/frp/releases

配置服務端

建立配置檔案web-server.conf


配置客戶端

建立配置檔案web-client.conf

執行

服務端
frps -c web-server.conf

客戶端
frpc -c web-client.conf

最後訪問http://:60000

這裡只是一個展示,其實關於http轉發有更多可以設定的細節,參考:https://github.com/fatedier/frp


爬蟲代理

這裡暫時還只是一個概念,有一個暫時沒有剋服的問題。相較於網上的一堆代理網站也不一定可行。

你也許不知道的是,每當你將手機設定飛行樣式然後解除飛行樣式,那麼你的公網出口IP就會改變,所以如果透過某個IP能夠調取手機開關飛行樣式API,那麼在手機上執行爬蟲會是一個不錯的選擇,因為有大量的IP可切換,不怕被封IP。

所需材料

  • 安卓手機 必須

  • 擁有公網IP的機器 非必須

  • 無限流量卡 必須

  • root許可權 非必須

其他想法
  • 做一個私用的Pass平臺。因為計算機記憶體資源主要用內網環境的,但是可以透過公網訪問。

  • 做一個下載器。

  • 做一個私有雲盤。

  • 做一個….

總結

理論上在Linux上能做的事情,安卓手機上都能做。其實叫做Linux的威力也許更適合。


●編號306,輸入編號直達本文

●輸入m獲取到文章目錄

推薦↓↓↓

Linux學習

更多推薦18個技術類公眾微信

涵蓋:程式人生、演演算法與資料結構、駭客技術與網路安全、大資料技術、前端開發、Java、Python、Web開發、安卓開發、iOS開發、C/C++、.NET、Linux、資料庫、運維等。

贊(0)

分享創造快樂