玩轉termux之基礎配置一
簡介
Termux是一個Android下一個高階的終端模擬器,開源且不需要root,支援apt管理軟體包,十分方便安裝軟體包,完美支援Python,PHP,Ruby,Go,Nodejs,MySQL等。隨著智慧裝置的普及和效能的不斷提升,如今的手機、平板等的硬體標準已達到了初級桌面計算機的硬體標準,用心去打造完全可以把手機變成一個強大的工具.
1.首先手機下載termux
Github專案地址
Google Play下載地址
Google Play下載的版本比酷安要新,有能力建議下載Google PLay版本的.
2. 基本操作
長按螢幕
顯示選單項(包括複製、貼上、更多),此時螢幕出現可選擇的複製游標
├── COPY:複製
├── PASTE:更多
├── More:貼上
├── Select URL: 選擇網址
└── Share transcipt: 分享命令指令碼
└── Reset: 重置
└── Kill process: 殺掉當前終端會話程序
└── Style: 風格配色
└── Help: 幫助文件
從左向右滑動
顯示隱藏式導航欄,可以新建、切換、重新命名會話session和呼叫彈出輸入法。顯示隱藏式導航欄:長按左下角的KEYBOARD,出現擴充套件功能鍵:ESC鍵,CTR鍵,TAB鍵等。
3.常用快捷鍵
Ctrl鍵是終端使用者常用的按鍵 – 但大多數觸控鍵盤都沒有這個按鍵。為此,Termux使用音量減小按鈕來模擬Ctrl鍵。 例如,在觸控鍵盤上按音量減小+ L傳送與在硬體鍵盤上按Ctrl + L相同的輸入。
Ctrl+A -> 將游標移動到行首
Ctrl+C -> 中止當前程序
Ctrl+D -> 登出終端會話
Ctrl+E -> 將游標移動到行尾
Ctrl+K -> 從游標刪除到行尾
Ctrl+L -> 清除終端
Ctrl+Z -> 掛起(傳送SIGTSTP到)當前程序
音量加鍵也可以作為產生特定輸入的特殊鍵。這裡不做過多解釋。
4. 基本命令
Termux除了支援apt命令外,還在此基礎上封裝了pkg命令,pkg命令向下相容apt命令.apt命令大家應該都比較熟悉了,這裡直接簡單的介紹下pkg命令:
pkg search 搜尋包
pkg install 安裝包
pkg uninstall 解除安裝包
pkg reinstall 重新安裝包
pkg update 更新源
pkg upgrade 升級軟體包
pkg list-all 列出可供安裝的所有包
pkg list-installed 列出已經安裝的包
pkg shoe 顯示某個包的詳細資訊
pkg files 顯示某個包的相關資料夾路徑
目錄環境結構
~ > echo $HOME
/data/data/com.termux/files/home
~ > echo $PREFIX
/data/data/com.termux/files/usr
~ > echo $TMPDIR
/data/data/com.termux/files/usr/tmp
~ set 檢視所有環境變數
長期使用Linux的朋友可能會發現,這個HOME路徑看上去可能不太一樣,為了方便,Termux 提供了一個特殊的環境變數:PREFIX
5. 更換Termux清華大學源,加快軟體包下載速度.
設定預設編輯器
export EDITOR=vi 或
export EDITOR=vim (若未安裝vim,先安裝:pkg install vim)
編輯原始檔
apt edit-sources
將原來的https://termux.net官方源替換為
http://mirrors.tuna.tsinghua.edu.cn/termux
aarch64 為手機的架構,怎麼檢視呢?輸入:uname -m 檢視
uname -a 檢視版本資訊
6. 安裝軟體前先更新一下:
apt update && apt upgrade
7. 啟用外接儲存與終端配色
termux-setup-storage
成功拿到儲存許可權後會在家目錄生成storage目錄,並且生成若干目錄,軟連線都指向外接儲存卡的相應目錄。
ln -s /data/data/com.termux/files/home/storage/shared/tencent/QQfile_recv QQ
生成QQ軟連結
終端配色:執行下面這個命令確保已經安裝好了 curl。
sh -c "$(curl -fsSL https://github.com/Cabbagec/termux-ohmyzsh/raw/master/install.sh)"
cd termux-ohmyzsh
bash install.sh
輸入你想要的字型顏色編號以及字型編號就ok了。
8. 模擬手機root
手機沒有root,利用proot工具來模擬某些需要root的環境
pkg install proot
然後終端下面輸入:
termux-chroot
即可模擬root環境
9. 封裝編輯器
終端下有vim神器,並且官方也已經封裝了vim-python,對vim進行了Python相關的優化.
pkg install vim-python -y
10. 解決termux下的vim漢字亂碼
在家目錄下,新建.vimrc檔案
vim .vimrc
新增內容如下:
set fileencodings=utf-8,gb2312,gb18030,gbk,ucs-bom,cp936,latin1
set enc=utf8
set fencs=utf8,gbk,gb2312,gb18030
然後source下變數:
source .vimrc
11. 安裝nodejs
pkg install nodejs
12. 搭建LAMP
1. 安裝MariaDB(MySQL)
MariaDB資料庫管理系統是MySQL的一個分支,主要由開源社群在維護,採用GPL授權許可。開發這個分支的原因之一是:甲骨文公司收購了MySQL後,有將MySQL閉源的潛在風險,因此社群採用分支的方式來避開這個風險。
pkg install mariadb 安裝基本資料 mysql_install_db 啟動mariadb服務
啟動mariadb報錯,根據錯誤提示在/data/data/com.termux/files/usr/etc下建立my.cnf.d資料夾。
cd /data/data/com.termux/files/usr/etc
mkdir my.cnf.d
然後在:mysql_install_db
mysqld
mysqld啟動完成後,這個會話就一直存活,類似與debug除錯一樣,只有新建會話才可以操作。
mysql -uroot -p
nmap -Pn 127.0.0.1 檢視開啟埠
修改密碼:mysql_secure_installation 修改當前密碼,因為當前密碼為空,所以這裡預設回車。
設定新密碼:
其他設定:下面根據個人偏好來進行設定, 沒有絕對的要求
Remove anonymous users? [Y/n] Y # 是否移除匿名使用者
Disallow root login remotely? [Y/n] n
# 是否不允許root遠端登入
Remove test database and access to it? [Y/n] n #是否移除test資料庫
Reload privilege tables now? [Y/n] y #是否重新載入表的許可權
使用密碼登入資料庫:mysql -uroot -p
2. 安裝apache/nginx
(1)編譯安裝
wget http://www-us.apache.org/dist//httpd/httpd-2.4.35.tar.gz
解壓:tar -xzvf httpd-2.4.35.tar.gz
預編譯:./configure
預編譯報錯,根據提示安裝依賴:wget http://www-us.apache.org/dist//apr/apr-1.6.5.tar.gz
解壓: tar -xvzf apr-1.6.5.tar.gz
報錯。
(2) 直接下載安裝
apt install apache2 -y
修改配置檔案:
cd /data/data/com.termux/files/usr/etc/apache2
備份配置檔案:
cp httpd.conf httpd.conf.bak
重定向:去掉帶#號的內容重定向到httpd.conf中
grep -v "#" httpd.conf.bak > httpd.conf
vim httpd.conf
在末尾新增:ServerName 127.0.0.1:8080
(手機沒root,使用80會報錯)
將None
改為All
啟動服務輸入:httpd
殺死程序:kill pid 或 pkill httpd
重啟服務:httpd -s reload
關閉服務:httpd -s stop
停止 nginx 服務
這裡是直接殺掉佔用埠的程序, 具體埠以實際情況為準:fuser -k 8080/tcp
(3) 安裝nginx
Nginx 是一個高效能的 Web 和反向代理伺服器, 它具有有很多非常優越的特性。
apt install nginx -y 安裝nginx
嘗試下能不能解析預設的index.html主頁
這個檔案在termux上的預設位置為/data/data/com.termux/files/usr/share/nginx/html/index.html 能解析則不需要修改配置檔案。
在proot下啟動服務:termux-chroot
nginx
在proot下使用:netstat -nlt
3. 安裝php
(1) apt install php
自PHP5.4之後 PHP 內建了一個 Web 伺服器, 在termux下嘗試下 PHP Web Server 的簡單使用
編寫測試檔案
在家目錄下建一個www資料夾:mkdir www
在www資料夾下新建一個index.php檔案, 其內容為
啟動WebServer:
php -S 127.0.0.1:8080 -t www/
瀏覽器訪問效果如下:
(2) nginx 解析 PHP
nginx 本身不能處理 PHP,它只是個 web 伺服器,當接收到 php 請求後發給 php 直譯器處理, nginx 一般是把請求發 fastcgi 管理程序處理, PHP-FPM 是一個 PHP FastCGI 管理器, 所以這裡得先安裝php-fpm。
安裝並配置php-fpm:
apt install php-fpm -y
進入proot環境,cd /etc/php-fpm.d
cp www.conf www.conf.bak
grep -v ";" www.conf.bak > www.conf
vim www.conf 將
改為
儲存並退出
(3) 配置nginx
在proot環境下, 然後編輯配置檔案nginx.conf
vim /etc/nginx/nginx.conf 在裡面新增:
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
include fastcgi_params;
}
要修改網站預設路徑的話, 只需要修改這兩處即可:
1:root /data/data/com.termux/files/usr/share/nginx/html;
2:fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
4. 建立 php 測試檔案
在/usr/share/nginx/html目錄下新建一個phpinfo.php檔案, 其內容是:
<?php
phpinfo();
?>
儲存並退出
5. 啟動 php-fpm 和 nginx
在proot環境下面分別啟動php-fpm和nginx。
啟動php-fpm出錯。解決:
13. 安裝tmux
Tmux 是一個優秀的終端複用軟體,類似 GNU Screen,但來自於 OpenBSD,採用 BSD 授權。一旦你熟悉了 tmux 後, 它就像一個加速器一樣加速你的工作效率。
apt install tmux -y
新建mysql會話
上面介紹的mysqld後會一直卡在那裡, 現在嘗試使用tmux來管理會話。
tmux new -s mysql
可以看到最下面的提示, 表明現在是在mysql的會話下面操作
啟動mysql並斷開會話
mysqld
讓會話後臺執行:
使用快捷鍵組合Ctrl+b + d,三次按鍵就可以斷開當前會話。登入資料庫。
14. 配置聊天神器weechat
安裝weechat:apt install weechat -y
進入weechat: weechat
建立伺服器: /server add freenode8001 chat.freenode.net/8001
進入伺服器: /connect freenode8001
給自己取個名字:/nick yourselfname
/nick a_fei
進入聊天室:/join #qaiu
這裡推薦一個比較火的開源專案 openstack 頻道:/join #openstack
其他常用命令
/exit 退出weechat聊天室
/close 關閉當前聊天視窗
15. 安裝終端地圖
一個基於nodejs編寫的命令列下的地圖.
npm install mapscii -g
mapscii
進入終端地圖
方向鍵 移動:
a和z鍵 放大縮小
q鍵 退出
16. 安裝inetutils
inetutils集成了許多網路客戶和服務程式,主要有,finger, ftp, ftpd, rcp, rexec, rlogin, rlogind, rsh, rshd, syslog,syslogd, talk, talkd, telnet, telnetd, tftp, tftpd, and uucpd。
apt install inetutils
啟動ftp:ftp 退出ftp:quit | bye
連線ftp伺服器: