闲置安卓手机改造linux服务器

news/2024/12/2 19:56:00/

闲置手机改造学习用linux服务器

前言

手头有好几个替换下来的手机,因为使用时候比较爱惜,替换下来时候都很好用,没有什么故障,拿去换脸盆也是心有不甘的,所以一直在抽屉中吃灰。目前想要学习python的爬虫和数据分析,想着初期找个练手的linux服务器。所以就开始打起了手机的主意,想着找个性能好的,就翻出来了一直珍藏的PH-1.

配置方面为 5.7 英寸 19:10 屏幕设计(屏幕更加狭长)
2560*1312 分辨率
搭载时下最强的高通骁龙 835 移动平台,加上 4GB 内存和 128GB 的 UFS 2.1 闪存
前置是 800 万像素,后置双 1300 万像素摄像头
电池为 3040 毫安时,支持快速充电,当然也是使用了 USB Type-C 接口,“跟紧潮流” 没有 3.5mm 耳机插口。
在这里插入图片描述

这个配置作为服务器应该是很可以了,毕竟linux服务器只要不开桌面,整体的系统占用都还是很少的。并且手上这个手机已经经过解锁和ROOT,调教起来还是很方便的。

开始

既然开始折腾,选择一个比较好用的安卓系统作为底层是个重要的事情,自此,坑就不断开始出现。

环境搭建

主要是两种方式,一种是linuxdeploy,可以采用chroot的方式虚拟一个linux机器,不过也还是有很多的限制。配合busybox能实现很多,据说用起来挺稳定。还有一种是Termux,一种超级终端,可以直接运行linux命令,他的库里面也集成了很多常用的软件。用起来也是挺不错的。

  • 首先还是尝试一下linuxdeploy吧,毕竟都已经root了。直接去github上去搜索,可以直接搜索到

在这里插入图片描述在这里插入图片描述

  • 接下来就是linuxdeploy,也是这个大神做得,可以直接跳转过去,也可以去github上搜索。

在这里插入图片描述
在这里插入图片描述

  • APP都可以下载下来,看起来应该是没有什么问题了,不过我人品没有这么好,busybox装不上去,无论用哪个版本都装不上!!!!所以我就不装了,直接上linuxdeploy,也没什么问题,至于接下来怎么装,网上很多的教程,我也是那么装的,没啥好说的,然后呢,也就没有什么然后了。安装完成后应该如何去配置,当装不上某些东西的时候该如何去解决,我也是没有半点头绪,所以对我这种小白实在太不友好了,然后就直接劝退了。

使用Termux

Termux

Termux 是一款Android 终端模拟器和 Linux 环境应用程序,无需 root 或设置即可直接运行。自动安装最小的基本系统 - 使用 >APT 包管理器可以使用其他包。

安全的

使用来自 OpenSSH 的 ssh 客户端访问远程服务器。Termux 将标准包与准确的终端仿真结合在一个漂亮的开源解决方案中。

功能丰富

在 Bash、fish 或 Zsh 和 nano、Emacs 或 Vim 之间进行选择。Grep 通过您的 SMS 收件箱。使用 curl 访问 API 端点并使用 rsync 将联系人列表的备份存储在远程服务器上。

可定制

通过 Debian 和 Ubuntu GNU/Linux 已知的 APT 包管理系统安装您想要的。为什么不从安装 Git 和同步您的点文件开始呢?

可探索的

你有没有坐在公共汽车上想知道 tar 到底接受了哪些参数?Termux 中可用的软件包与 Mac 和 Linux 上的软件包相同 - 在您的手机上安装手册页并在一个会话中阅读它们,同时在另一个会话中进行试验。

包括电池

你能想象一个比 readline 驱动的 Python 控制台更强大、更优雅的袖珍计算器吗?Perl、Python、Ruby 和 Node.js 的最新版本均可用。

准备扩大规模

如果需要,连接蓝牙键盘并将您的设备连接到外部显示器 - Termux 支持键盘快捷键并具有完整的鼠标支持。

可修补

通过使用 Clang 编译 Go、Rust、Swift 或 C 文件进行开发,并使用 CMake 和 pkg-config 构建您自己的项目。如果遇到困难需要调试,lldb/GDB 和 strace 都可以使用。

安装过程

Termux安装过程可以参考国光大大的教程:Termux 高级终端安装使用配置教程,上面讲的是真详细啊,得重点推荐一下。

  1. 首先去下载安装包,建议从F-Droid下载,当然直接下载也不是不行,毕竟更新的频率也不会多高。
  2. 安装完成之后建议先换源,首先打开F-Droid,更新一下源,这步无法省略,更新不成功,就换手机网络多试几次吧。然后复制F-Droid的清华源
https://mirrors.tuna.tsinghua.edu.cn/fdroid/repo/?fingerprint=43238D512C1E5EB2D6569F4A3AFBF5523418B82E0A3ED1552770ABB9A9C9CCAB
  1. 打开“设置->存储库”
    在这里插入图片描述

  2. 选择“+”进行存储库的添加
    在这里插入图片描述

  3. 打开后,会自动弹出添加清华源的库的提示,点击添加镜像
    在这里插入图片描述

  4. 添加完成后将存储库中其他源给取消,仅保留清华源,后期更新就快的一匹。
    在这里插入图片描述

  5. 如果点击后提示无法启动,就需要先使用默认的源更新一次,完成后就可以启用了,反正我这么做是成功了的。

  6. 安装完成后就在首页搜索Termux就好了。
    在这里插入图片描述

  • 安装这个在这里插入图片描述

  • 其他的都用来干嘛,国光大大说的很清楚了,可以回去看看

安装开发环境

  1. 首先更改Termux的源,仍旧使用清华源,不得不说,真香!!!
termux-change-repo
  1. 通过图形界面进行更换源,上下调整项目,空格进行选择,回车确定,选择完成后会自动换源,傻瓜式操作,不会出错!
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  2. 然后更新系统软件
pkg update
  1. 安装常用软件,
pkg install vim curl wget git tree openssh -y 
  1. 获取手机存储权限,手机会弹出提示,确定一下就好
termux-setup-storage
  1. 启动SSH服务,然后就可以到电脑上进行操作了,不用费劲的用手机敲了
sshd
  1. 添加SSH服务的开机自启,使用当前用户的.bashrc进行
echo sshd >> .bashrc

安装python环境

  1. 安装python3,这里有一个坑,新版本termux更新后会安装3.10版本的python,但是matplotlib没有配套的更新,此时就很尴尬,所以最好是手动安装3.9版本的 python。安装时会自动安装pip。

    • 查询自己的cpu架构 <CPU_ARCH.>
    uname -m
    
    • 去下载自己cpu对应的3.9版本python,我这里是aarch64
    wget https://cdn.jsdelivr.net/gh/Termux-pod/termux-pod@main/aarch64/python/python-3.9.7/python_3.9.7_aarch64.deb
    
    • 手动进行安装
    dpkg -i ./python_3.9.7_aarch64.deb
    
    • 为了不让termux把3.9版本升级回去,这里还要禁止python自动升级
    echo "python hold" | dpkg --set-selections
    
  2. 更新pip和setuptools

pip install --upgrade pip setuptools
  1. 获取超级管理员身份,因为我手机已经有root了,所以可以装两种。
    • 模拟的root
    pkg install proot -y
    
    • root后的
    pkg install tsu -y
    

安装numpy、matplotlib和jupyter notebook

  1. 安装numpy和scipy
pkg install numpy scipy
  1. 安装matplotlib的依赖
pkg install freetype clang libjpeg-turbo binutils libzmq fftw make libclang
  1. 安装Pillow等依赖
LDFLAGS="-L/system/lib64/" CFLAGS="-I/data/data/com.termux/files/usr/include/" pip install Pillow
  1. 安装matplotlib
pip install matplotlib
  1. 安装jupyter
pip install jupyter

安装数据库 MySQL

这里主要就是参考国光大大的安装说明,说的还是很详细的,按照操作来还是很顺畅的,没有什么坑。

  1. 使用termux封装好的

    pkg install mariadb
    
  2. 检查版本

    mysql --version
    
  3. 启动数据库,因为正常启动完成后,MySQL 这个会话就一直存活,类似与 Debug 调试一样,此时使用Ctrl + C -> 中止当前进程也无济于事,体验就一点都不优雅,所以这里使用Linux自带的nohup命令将其放到后台启动,并将记录定向到mysql.log文件中

    nohup mysqld > mysql.log 2>&1 &
    
  4. Termux 安装初始化数据库的时候包含两个高权限用户,一个是无法访问的 root 用户,另一个用户就是 Termux 的用户名,默认密码为空。这里使用默认用户来对root用户进行设置密码

    • 登陆
    mysql -u $(whoami)
    
    • 修改密码
    use mysql;
    set password for 'root'@'localhost' = password('你设置的密码');
    
    • 刷新权限,并退出
    flush privileges;
    quit;
    
    • 完成后可以通过root账户进行登陆了
    mysql -u root -p
    
  5. 手动开启数据库 root 用户的远程访问权限

    • 登陆数据库
    mysql -u root -p
    
    • 修改配置
    grant all on *.* to root@'%' identified by 'root密码' with grant option;
    
    • 刷新权限,并退出
    flush privileges;
    quit;
    

其他的设置

  • 设置jupyter和mysql的启动快捷操作
vim start_jupyter.sh
nohup jupyter notebook  >jupyter.log 2>&1 &vim start_mysql.sh
nohup mysqld > mysql.log 2>&1 &
  • 使用时 bash start_jupyter.sh start_mysql.sh即可。
  • 如果添加到.bashrc文件中会导致每次ssh登陆上去都开启一个,手机会吃不消。
  • 关闭命令
kill -9 `pgrep jupyter`
kill -9 `pgrep mysql`

备份和恢复

按照国光大大的说明,直接cd到目录,然后就可以将home和usr文件进行打包备份了,但是我试了试,没有成功,后来我切换到tsu下,就没有问题了

  • 切换到tsu
tsu
  • cd到files目录
cd ..
  • 打包home usr文件
tar -zcf /sdcard/termux-backup.tar.gz home usr

后面想要恢复的时候

  • 首先切换到tsu
tsu
  • 切换到Termux 根目录
cd ..
  • 使用备份文件覆盖当前文件
tar -zxf /sdcard/termux-backup.tar.gz --recursive-unlink --preserve-permissions

到这里应该就已经恢复了,不过目前我没有测试过


http://www.ppmy.cn/news/208576.html

相关文章

手机计算机怎样调音乐,手机音乐EQ均衡器调节音效简单小技巧-均衡器设置

从功能机,到智能机,手机自带的音乐播放器给大家带来了更方便的享受,专业的调音功能也跟着进入了手机。可是很多朋友并不是懂得这方面的东西。下面,就跟喜欢音乐的朋友一起来聊一聊咱们金立自带音乐里的EQ均衡器的小知识和使用小技巧。 说这个之前,我们先来了解两个定义: …

苹果手机 计算机 错误,苹果手机的计算器连1+2+3都算不对!原因太尴尬!

TASTER有趣单身狗不要用苹果手机&#xff01; 手机作为现在“生命中一部分”&#xff0c;很多人对它要求一直很高&#xff0c;当然往往是体现在硬件和其他方面&#xff0c;而对于计算器这种功能&#xff0c;一般是不怎么用的。毕竟&#xff0c;用电脑的需要计算往往在Excel里&a…

手机里的传感器

手机里的传感器 传感器的意义... 1 重力感应器... 1 加速度传感器... 2 方向感应器... 3 三轴陀螺仪... 3 距离传感器... 4 光线传感器&#xff08;感应器&#xff09;... 4 电子罗盘&#xff0c;也叫方位感应器&#xff08;传感器&#xff09;... 5 位移传感器... 5 …

qt5.15.2 配置 android

第一步 安装jdk&#xff0c;最好安装 jdk11&#xff0c;因为他是与qt5.15.2这个能匹配上的 右击电脑&#xff0c;选择属性&#xff0c;选择高级系统设置&#xff0c;选择环境变量。 点击新建&#xff0c;变量名为JAVA_HOME,变量值为java安装的路径。我的如下图 JAVA_HOME D:\P…

手机上怎么打开html游戏,怎么在手机上打开HTML文件怎么打开

2 回答 2021-05-06 浏览:4 分类:其他问题 回答: HTML文件可以用手机浏览器打开。 从本质上来说,Internet( 互联网)是一个由一系列传输协议和各类文档所组成的集合,HTML文件只是其中的一种。这些HTML文件存储在分布于世界各地的服务器硬盘上,通过传输协议用户可以远程获取…

pe系统如何读取手机_pe系统没有连接手机的驱动怎么办

1.WinPE没有主板驱动怎么办 WinPE里虽然集成了大部分电脑驱动,但有些老主板还是很不给力,那有没有办法自己来为PE加上驱动呢? 首先在您正常的系统中使用GetPeDriver,在软件列出的设备中选择您想备份的驱动,然后双击[分析INF](上述操作也可以通过双击显示的设备来完成)。 双…

手机上做c语言作业的软件下载,手机c语言编程软件

如果在手机上学C语言编程,可以试试名为易历知食复的软件,其内部有项功能叫微C程序设计,可以在手机上进行C语言编程练习,其自带的示例如下图:最简制单的入门程序:运行结果:99乘法表程序:运行结果:其自带的C语言编程键盘zhidao界面: 可以用C4droid,用的是gcc/g++的编译…

android手机改车载,到底手机导航还是车载导航好,我选择在车上加装安卓大屏...

到底手机导航还是车载导航好,我选择在车上加装安卓大屏 2017-06-12 18:38:38 52点赞 66收藏 74评论 这几年随着国民经济和技术水平的提升,汽车早已不是以前那种高不可攀的奢侈品,不知不觉中,汽车已经悄然走进千家万户。对于买车的配置的选择,我认为够用就行,目前许多中低…