天天看點

電腦端連接配接安卓手機用Termux程式設計

我的目标是mobile coding,需要在Termux上搭建一個dev環境,以Go環境為例。

1 Termux上安裝ssh服務

  • 在搭建和配置階段,如果直接通過Android上的軟鍵盤操作,即便屏再大,那個體驗也是較差的。我們最好通過PC連到termux上去安裝和配置,這就需要我們在Termux上搭建一個sshd server。下面是步驟:
$apt install openssh
$sshd      
  • 就這麼簡單,一個sshd的server就在termux的背景啟動起來了。由于Termux沒有root權限,無法listen數值小于1024的端口,是以termux上sshd預設的listen端口是8022。

2 導入PC端公鑰到手機端

  • 另外termux上的sshd server不支援使用者名+密碼的方式進行登入,隻能用免密登入的方式,即将PC上的​

    ​~/.ssh/id_rsa.pub​

    ​​寫入termux上的​

    ​~/.ssh/authorized_keys​

    ​檔案中。關于免密登入的證書生成方法和導入方式,網上資料已經汗牛充棟,這裡就不贅述了。

3 PC端利用ssh登入手機ssh伺服器

  • 導入PC端的公鑰至手機中之後,PC就可以通過下面指令登入termux了:
$ssh 10.88.46.79  -p 8022
Welcome to Termux!

Wiki:            https://wiki.termux.com
Community forum: https://termux.com/community
IRC channel:     #termux on freenode
Gitter chat:     https://gitter.im/termux/termux
Mailing list:    [email protected]

Search packages:   pkg search <query>
Install a package: pkg install <package>
Upgrade packages:  pkg upgrade
Learn more:        pkg help      
  • 其中10.88.46.79是手機的wlan0網卡的IP位址,可以在termux中使用ip addr指令獲得:
$ip addr show wlan0
34: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 3000
    ... ...
    inet 10.88.46.79/20 brd 10.88.47.255 scope global wlan0
       valid_lft forever preferred_lft forever
    ... ...