Android 4.4 使用 JuiceSSH(chroot)运行 Alpine Linux

想在旧的 Android 手机上安装 Linux 发行版?免费使用海量 Linux 软件?轻松体验各种方便快捷的功能?充分挖掘 Android 旧手机的潜能?

如果你有以上想法或者兴趣,可以继续往下看,慢慢动手实践。否则,浪费了时间,爆炸了心态,影响了情绪,后果自负。

前期准备工作

  1. 在 Android 旧手机上获取 ROOT 权限,具体方法百度查找
  2. 下载安装AIDA64,用于查看 Android 旧手机的 CPU 指令集
  3. 下载安装BusyBox Pro,可提供大量的 Linux 工具和命令
  4. 下载安装JuiceSSH,用来运行本地 Shell,执行 Linux 命令
  5. 下载 Alpine Linux 最新发行版(目前最新版本为3.12.0)

PS:以上软件可在下面的分享链接中找到
链接:https://pan.baidu.com/s/1gTohV5_YiA1PxnISoiU10Q
提取码:flw1

PS:Alpine Linux 官网链接
传送门:https://alpinelinux.org/

Tips(软件知识知多点):
ROOT 权限是系统权限的一种,也叫根权限,手机 ROOT 权限是 Android 的最高使用权限;
AIDA64 是 Android 上的一个硬件检测应用;
BusyBox Pro 是一个集成了一百多个最常用 Linux 命令和工具的应用程序;
JuiceSSH 是一个为 Android 打造的全功能终端应用,支持 SSH,本地 Shell,mosh 和 Telnet;
Alpine Linux 是基于 musl libc 和 busybox 的面向安全的轻量级 Linux 发行版,是一个由社区开发的 Linux 操作系统。该操作系统以安全为理念,面向x86路由器、防火墙、虚拟专用网、IP电话盒及服务器而设计。

安装 Linux 工具和命令

1.打开安装好的 Busybox Pro,自动安装 Linux 工具和命令,如下图

在这里插入图片描述

PS:打开 Busybox Pro 后,会弹出 ROOT 权限的授权提示,选择允许即可,然后就会进入 Busybox Pro 并且自动安装 Linux 工具和命令

查看手机的 CPU 指令集

1.打开安装好的 AIDA64,如下图

在这里插入图片描述
2.点击左侧的中央处理器,查看 CPU 指令集,如下图

在这里插入图片描述

PS:从图片中可以看到,当前 CPU 支持 x86 指令集

选择 Alpine Linux 发行版

1.根据 CPU 指令集选择 Alpine Linux 发行版,如下图

在这里插入图片描述

PS:根据 CPU 支持 x86 指令集,选择 x86 版本的 Alpine Linux 发行版

2.将下载好的 Alpine Linux 发行版的压缩文件移动到手机中的 Download 文件夹,如下图

在这里插入图片描述

运行本地 SHELL

1.打开安装好的 JuiceSSH,如下图

在这里插入图片描述
2.新建连接,如下图

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
3.打开新建的连接,运行本地 SHELL,如下图

在这里插入图片描述

在这里插入图片描述

解压 Alpine Linux 发行版

  1. 在本地 SHELL 中使用 mkdir 命令创建 alpine 文件夹,如下图

在这里插入图片描述

mkdir /data/data/com.sonelli.juicessh/files/alpine
  1. 使用 tar 命令解压 Alpine Linux 发行版的压缩文件到刚刚创建的 alpine 文件夹,如下图

在这里插入图片描述

tar zxvf /sdcard/Download/alpine-minirootfs-3.12.0-x86.tar.gz -C /data/data/com.sonelli.juicessh/files/alpine

修改 Alpine Linux 的软件源

  1. 使用 cat 命令查看 Alpine Linux 的软件源,如下图

在这里插入图片描述

cat /data/data/com.sonelli.juicessh/files/alpine/etc/apk/repositories
  1. 使用 sed 命令修改 Alpine Linux 的软件源为阿里镜像源,如下图

在这里插入图片描述

sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /data/data/com.sonelli.juicessh/files/alpine/etc/apk/repositories
  1. 再次使用 cat 命令查看 Alpine Linux 的软件源,如下图

在这里插入图片描述

cat /data/data/com.sonelli.juicessh/files/alpine/etc/apk/repositories

创建 DNS 域名解析配置文件

  1. 使用 echo 命令创建 Alpine Linux 中的 resolv.conf(DNS 域名解析的配置文件)文件,如下图

在这里插入图片描述

echo -e "nameserver 8.8.4.4\nnameserver 8.8.8.8" > /data/data/com.sonelli.juicessh/files/alpine/etc/resolv.conf
  1. 使用 cat 命令查看创建好的 resolv.conf 文件,如下图

在这里插入图片描述

cat /data/data/com.sonelli.juicessh/files/alpine/etc/resolv.conf

创建挂载内部存储的文件夹

  1. 使用 mkdir 命令创建 sdcard 文件夹,如下图

在这里插入图片描述

mkdir /data/data/com.sonelli.juicessh/files/alpine/sdcard

PS:此 sdcard 文件夹用于在 Alpine Linux 中挂载 Android 手机的内部存储设备

新增 JuiceSSH 代码片段

  1. 进入 JuiceSSH 设置选项,如下图

在这里插入图片描述

  1. 进入管理片段的设置选项,如下图

在这里插入图片描述

  1. 增加新的代码片段,如下图

在这里插入图片描述

在这里插入图片描述

################
# 切换 root账户
################
su
##########################
# 使用 cd 命令切换工作目录
##########################
cd /data/data/com.sonelli.juicessh/files
########################
# 挂载 Android 系统内核
########################
busybox mount --rbind /dev alpine/dev
busybox mount --rbind /sys alpine/sys
busybox mount --rbind /proc alpine/proc
########################
# 挂载 Android 内部存储
########################
busybox mount --rbind /sdcard alpine/sdcard
###################################
# 使用 chroot 命令运行 Alpin Linux
###################################
chroot alpine /bin/ash
######################
# 开始一个新的空的环境
######################
/usr/bin/env -i
##############################
# 使用 export 命令新增环境变量
##############################
export SHELL=/bin/ash
export PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin
export LANG=en_US.UTF-8
export HOME=/root
##############################
# 进入默认的工作目录并清除屏幕
##############################
cd ~
clear

运行 Alpine Linux 发行版

  1. 设置本地 SHELL 运行代码片段,如下图

在这里插入图片描述

在这里插入图片描述

  1. 打开本地 SHELL 连接即可运行 Alpine Linux 发行版,如下图

在这里插入图片描述

  1. 在 Alpine Linux 中安装 neofetch,如下图

在这里插入图片描述

apk add neofetch

在这里插入图片描述

neofetch

搭建 Chfs 文件共享服务器

  1. 使用 wget 命令下载 Chfs 文件共享服务器,如下图

在这里插入图片描述

wget http://iscute.cn/tar/chfs/2.0/chfs-linux-386-2.0.zip

PS:Chfs 文件共享服务器的下载链接可以在 Chfs 官网找到
传送门:http://iscute.cn/chfs

Tips:Chfs(CuteHttpFileServer)是一个免费的、HTTP协议的文件共享服务器,使用浏览器即可快速访问,同时支持webdav协议。

  1. 使用 mkdir 命令创建 chfs-linux-386-2.0 文件夹,如下图

在这里插入图片描述

mkdir -p ~/share/chfs-linux-386-2.0
  1. 使用 unzip 命令解压 chfs 的压缩文件到刚刚创建的 chfs-linux-386-2.0 文件夹,如下图

在这里插入图片描述

unzip ~/chfs-linux-386-2.0.zip -d ~/share/chfs-linux-386-2.0
  1. 使用 chmod 命令修改 chfs 的文件访问权限,如下图

在这里插入图片描述

chmod 700 ~/share/chfs-linux-386-2.0/chfs
  1. 使用 echo 命令创建 chfs 的配置文件,如下图

在这里插入图片描述

echo -e "port=2222\npath=\"/\"\nrule=::R\nrule=admin:123456:RWD\nhtml.title=alpine\nhtml.notice=\`<img src=\"http://m.yongkj.cn/Emilia.jpg\" width=\"100%\"/>\`\nimage.preview=true" > ~/share/chfs-linux-386-2.0/chfs.conf
  1. 后台运行 Chfs 文件共享服务器,如下图

在这里插入图片描述

cd ~/share/chfs-linux-386-2.0 && nohup ./chfs --file='chfs.conf' > /dev/null 2>&1 &
  1. 安装 ES 文件管理器,如下图

在这里插入图片描述

PS:ES 文件管理器可在下面的分享链接中找到
链接:https://pan.baidu.com/s/1gTohV5_YiA1PxnISoiU10Q
提取码:flw1

Tips:ES文件浏览器( ES File Explorer)是一款功能强大免费的本地和网络文件管理器

  1. 使用 ES 文件管理器挂载 Chfs 文件共享服务器,如下图

在这里插入图片描述

在这里插入图片描述

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

PS:Chfs 文件共享服务器的默认密码是 123456

在这里插入图片描述

在这里插入图片描述

开启 openssh 服务

  1. 使用 passwd 命令为 root 账户创建密码,如下图

在这里插入图片描述

passwd
  1. 使用 apk 命令安装 openssh 软件,如下图

在这里插入图片描述

apk add openssh
  1. 使用 ssh-keygen 命令创建 hostkey 文件,如下图

在这里插入图片描述

ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key && ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
  1. 使用 ES 文件管理器修改 openssh 配置文件,如下图

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

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

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
5. 使用 chown 命令更改 empty 文件夹的所属用户和用户组,如下图

在这里插入图片描述

chown -R root:root /var/empty
  1. 后台运行 openssh 服务,如下图

在这里插入图片描述

/usr/sbin/sshd
  1. 使用 JuiceSSH 连接 openssh 服务,如下图

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

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  1. 在代码片段中增加 Chfs 和 openssh 启动命令,如下图

在这里插入图片描述

cd ~/share/chfs-linux-386-2.0 && nohup ./chfs --file='chfs.conf' > /dev/null 2>&1 &
/usr/sbin/sshd

PS:添加完 Chfs 和 openssh 启动命令后,当下次开机时,可以直接使用本地 SHELL 连接启动 Chfs 和 openssh,然后退出本地 SHELL,通过 alpine-openssh 连接来控制后台运行的 Alpine Linux,并且可以在 ES 文件管理器上访问 Alpine Linux 的文件系统。

使用 you-get 下载网络视频

  1. 在 Alpine Linux 中安装 python3,如下图

在这里插入图片描述

apk add python3-dev py3-pip

在这里插入图片描述

python3 -V
pip3 -V
  1. 在 Alpine Linux 中安装 ffmpeg, 如下图

在这里插入图片描述

apk add ffmpeg

在这里插入图片描述

ffmpeg -version
  1. 使用 pip3 命令安装 you-get 下载器,如下图

在这里插入图片描述

pip3 install you-get

在这里插入图片描述

you-get --version

Tips:You-Get 乃一小小哒命令行程序,提供便利的方式来下载网络上的媒体信息。可以利用 you-get 下载网页的视频。

  1. 使用 you-get 下载哔哩哔哩视频,如下图

在这里插入图片描述

you-get https://www.bilibili.com/video/BV1pJ411T7WD

PS:《我和我的祖国》青春版MV-高清版
传送门:https://www.bilibili.com/video/BV1pJ411T7WD

在这里插入图片描述

PS:可在 ES 文件管理器中看到刚刚下载好的视频和评论( xml 文件)

在这里插入图片描述

PS:可以使用视频播放器播放下载的视频,爽歪歪!

安装 H5ai 文件目录列表程序

  1. 使用 apk 命令安装 apache2,如下图

在这里插入图片描述

apk add apache2 php7-apache2
  1. 使用 ES 文件管理器修改 /etc/apache2/httpd.conf 文件,如下图

在这里插入图片描述

  1. 使用 ES 文件管理器修改 /etc/apache2/conf.d/php7-module.conf 文件,如下图

在这里插入图片描述

  1. 使用 apk 命令安装 php7 模块,如下图

在这里插入图片描述

apk add php7-intl php7-openssl php7-dba php7-soap php7-sqlite3 php7-gmp php7-pear php7-tokenizer php7-phpdbg php7-pecl-protobuf php7-litespeed php7-phalcon php7-phar php7-embed php7-recode php7-pdo_odbc php7-pdo_mysql php7-sodium php7-pcntl php7-pecl-oauth php7-xsl php7 php7-mysqli php7-fpm php7-ctype php7-pecl-mailparse php7-pecl-gmagick php7-mysqlnd php7-dev php7-enchant php7-pecl-uuid php7-cgi php7-pspell php7-shmop php7-pecl-ast php7-pecl-redis php7-curl php7-snmp php7-session php7-json  php7-fileinfo php7-mbstring php7-dom php7-pecl-lzf php7-sockets php7-pecl-amqp php7-pecl-yaml php7-pecl-memcache php7-pecl-timezonedb php7-pdo php7-pecl-psr php7-xmlrpc phpldapadmin php7-xmlreader php7-pdo_sqlite php7-exif php7-pecl-msgpack php7-opcache php7-ldap php7-posix php7-zip php7-pgsql php7-simplexml php7-sysvshm php7-gd php7-pecl-xdebug php7-imap php7-gettext php7-pecl-couchbase php7-xml php7-tidy php7-sysvsem php7-iconv php7-odbc php7-xmlwriter php7-pecl-uploadprogress php7-pdo_pgsql php7-pecl-apcu php7-pdo_dblib php7-pecl-igbinary php7-pecl-xhprof php7-wddx php7-sysvmsg php7-apache2 php7-bcmath php7-pecl-mcrypt php7-ftp perl-php-serialization php7-calendar php7-pecl-zmq php7-pecl-event php7-pecl-vips php7-pecl-memcached php7-brotli php7-dbg php7-bz2 php7-pecl-ssh2 php7-maxminddb php7-static php7-pecl-xhprof-assets
  1. 使用 ES 文件管理器修改 /etc/php7/php.ini 文件,如下图

在这里插入图片描述

在这里插入图片描述

  1. 使用 ES 文件管理器修改 /etc/passwd 文件,如下图

在这里插入图片描述

cd / && ls -l

在这里插入图片描述

  1. 到 H5ai 官网下载最新版的 H5ai,然后通过 ES 文件管理器放到 /root 文件夹中,如下图

在这里插入图片描述

PS:H5ai官网
传送门:https://larsjung.de/h5ai/

Tips:H5ai是一款功能强大 php 文件目录列表程序,由德国开发者 Lars Jung 主导开发,它提供多种文件目录列表呈现方式,支持多种主流 Web 服务器,例如 Nginx、Apache、Cherokee、Lighttpd 等,支持多国语言,可以使用本程序在线预览文本、图片、音频、视频等。

在这里插入图片描述

  1. 将 H5ai 压缩文件解压到 htdocs 文件夹,如下图

在这里插入图片描述

unzip ~/h5ai-0.29.2.zip -d /var/www/localhost/htdocs/
  1. 使用 mv 命令修改 index.html 文件的文件名,如下图

在这里插入图片描述

mv /var/www/localhost/htdocs/index.html /var/www/localhost/htdocs/index1.html
  1. 使用 echo 命令创建 index1.php 文件,如下图

在这里插入图片描述

echo -e "<?php\n    echo phpinfo();\n?>" > /var/www/localhost/htdocs/index1.php
  1. 使用 chmod 命令修改 htdocs 文件夹的访问权限,如下图

在这里插入图片描述

chmod -R 777 /var/www/localhost/htdocs/
  1. 后台运行 apache2,如下图

在这里插入图片描述

httpd
  1. 在浏览器地址栏中输入 localhost 访问 H5ai,如下图

在这里插入图片描述

  1. 设置 H5ai 的显示语言为简体中文,如下图

在这里插入图片描述

在这里插入图片描述

  1. 查看 php7 的配置信息,如下图

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

搭建 kodbox 在线文件管理系统

  1. 安装 mariadb 数据库管理系统,如下图

在这里插入图片描述

apk add mariadb-static mariadb-server-utils mariadb-connector-c-dev mariadb-bench mariadb-client mariadb mariadb-backup mariadb-openrc mariadb-dev acf-mariadb mariadb-embedded-dev mariadb-test mariadb-connector-c mariadb-embedded mariadb-mytop pdns-backend-mariadb mariadb-common
  1. 在 ES 文件管理器中修改 /etc/my.cnf.d/mariadb-server.cnf 配置文件,如下图

在这里插入图片描述

在这里插入图片描述

bind-address=0.0.0.0
port=3306
  1. 在 ES 文件管理器中修改 /etc/passwd 文件,如下图

在这里插入图片描述

cd / && ls -l

在这里插入图片描述

  1. 使用 mysql_install_db 命令安装 mariadb 数据库,如下图

在这里插入图片描述

cd /var/lib/mysql && rm -r ./* && mysql_install_db --datadir=/var/lib/mysql
  1. 使用 mkdir 命令创建 mysqld 目录,如下图

在这里插入图片描述

mkdir /run/mysqld
  1. 后台运行 mariadb 数据库管理系统,如下图

在这里插入图片描述

nohup mysqld --user=root --datadir='/var/lib/mysql' > /dev/null 2>&1 &
  1. 使用 mysql_secure_installation 命令初始化 mariadb 数据库,如下图

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

  1. 设置 mariadb 中 root 账户的远程访问权限,如下图

在这里插入图片描述

mysql -u root -p

在这里插入图片描述

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '*Abc123456' WITH GRANT OPTION;

在这里插入图片描述

flush privileges; 
  1. 在 mariadb 中新建 kodbox 数据库,如下图

在这里插入图片描述

CREATE DATABASE `kodbox` CHARACTER SET utf8 COLLATE utf8_general_ci;

在这里插入图片描述

exit
  1. 使用 wget 命令下载最新版的 kodbox,如下图

在这里插入图片描述

wget http://static.kodcloud.com/update/download/kodbox.1.11.zip

PS:kodbox 官网
传送门:http://kodcloud.com/

Tips:kodbox是一款快捷高效的私有云和在线文档管理系统,为个人网站、企业私有云部署、网络存储、在线文档管理、在线办公等提供安全可控,简便易用、可高度定制的私有云产品。采用windows风格界面、操作习惯,无需适应即可快速上手,支持几百种常用文件格式的在线预览,可扩展易定制。

  1. 使用 mkdir 命令创建 kod 文件夹,如下图

在这里插入图片描述

mkdir /var/www/localhost/htdocs/kod
  1. 将 kodbox 压缩文件解压到刚刚创建的 kod 文件夹,如下图

在这里插入图片描述

unzip ~/kodbox.1.11.zip -d /var/www/localhost/htdocs/kod/
  1. 使用 chmod 命令修改 kod 文件夹的访问权限,如下图

在这里插入图片描述

chmod -R 777 /var/www/localhost/htdocs/kod/
  1. 在浏览器中初始化设置 kodbox 在线文件管理系统,如下图

在这里插入图片描述

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

  1. 登录 kodbox 在线文件管理系统,如下图

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

在这里插入图片描述

运行 kiftd 青阳网络文件传输系统

  1. 使用 apk 命令安装 openjdk,如下图

在这里插入图片描述

apk add openjdk8

在这里插入图片描述

java -version
  1. 使用 wget 下载最新版的 kiftd 青阳网络文件传输系统,如下图

在这里插入图片描述

wget https://code.aliyun.com/kohgylw/kiftd/repository/archive.zip?ref=v1.0.35-release

PS:kiftd 青阳网络文件传输系统官网
传送门:https://kohgylw.gitee.io/

Tips:kiftd 青阳网络文件传输系统是一款专门面向个人、团队和小型组织的私有网盘系统。无论是在家庭、学校还是在办公室,您都能立刻开始使用它!

  1. 重命名下载好的 kiftd 压缩文件,如下图

在这里插入图片描述

mv ~/archive.zip?ref\=v1.0.35-release ~/kiftd-1.0.35.zip
  1. 使用 mkdir 命令新建 kiftd-1.0.35 文件夹,如下图

在这里插入图片描述

mkdir ~/share/kiftd-1.0.35
  1. 将 kiftd 压缩文件解压到刚刚创建好的 kiftd-1.0.35 文件夹中,如下图

在这里插入图片描述

unzip ~/kiftd-1.0.35.zip -d ~/share/kiftd-1.0.35/
  1. 移动 kiftd 文件到 kiftd-1.0.35,如下图

在这里插入图片描述

mv ~/share/kiftd-1.0.35/kiftd-v1.0.35-release-dbb335ca09a605bf0b55dffd39d3bfad09e1ba71kiftd.git/* ~/share/kiftd-1.0.35/

在这里插入图片描述

rm -r ~/share/kiftd-1.0.35/kiftd-v1.0.35-release-dbb335ca09a605bf0b55dffd39d3bfad09e1ba71kiftd.git/
  1. 初始化 kiftd 配置文件,如下图

在这里插入图片描述

cd ~/share/kiftd-1.0.35/ && java -jar kiftd-1.0.35-RELEASE.jar -console

在这里插入图片描述

-exit
  1. 在 ES 文件管理器中修改 /root/share/kiftd-1.0.35/conf/server.properties 文件,如下图

在这里插入图片描述

  1. 在 ES 文件管理器中修改 /root/share/kiftd-1.0.35/conf/account.properties 文件,如下图

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

admin.auth=cudrm
admin.pwd=*Abc123456
admin.maxRate=-1
admin.group=*

authOverall=l
defaultMaxRate=400
  1. 在 ES 文件管理器中修改 /root/share/kiftd-1.0.35/webContext/home.html 文件,如下图

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

style="background: url(Emilia_compress87.jpg) no-repeat top;background-size:cover;background-attachment: fixed;"
  1. 在 ES 文件管理器中修改 /root/share/kiftd-1.0.35/webContext/quickview/video.html 文件,如下图

在这里插入图片描述

  1. 后台运行 kiftd 青阳网络文件传输系统,如下图

在这里插入图片描述

cd ~/share/kiftd-1.0.35/ && nohup java -jar kiftd-1.0.35-RELEASE.jar -start >/dev/null 2>&1 &
  1. 在浏览器地址栏中输入 localhost:2020 即可访问 kiftd 青阳网络文件传输系统,如下图

在这里插入图片描述

  1. 登录 kiftd 青阳网络文件传输系统并上传视频文件,如下图

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

创建 Nextcloud 文件存储网络硬盘

  1. 在 mariadb 中新建 nextcloud 数据库,如下图

在这里插入图片描述

CREATE DATABASE `nextcloud` CHARACTER SET utf8 COLLATE utf8_general_ci;

在这里插入图片描述

exit
  1. 到 Nextcloud 官网下载最新版的 Nextcloud,然后通过 ES 文件管理器放到 /root 文件夹中,如下图

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

PS:Nextcloud 官网
传送门:https://nextcloud.com/

Tips:Nextcloud是一套用于创建网络硬盘的客户端-服务器软件。其功能与 Dropbox 相近,但 Nextcloud 是自由及开放源代码软件,每个人都可以在私人服务器上安装并运行它。

在这里插入图片描述

  1. 将 Nextcloud 压缩文件解压到 htdocs 文件夹,如下图

在这里插入图片描述

unzip ~/kodbox.1.11.zip -d /var/www/localhost/htdocs/
  1. 使用 chmod 命令修改 nextcloud 文件夹的访问权限,如下图

在这里插入图片描述

chmod -R 777 /var/www/localhost/htdocs/nextcloud/
  1. 在浏览器中初始化设置 Nextcloud 文件存储网络硬盘,如下图

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

部署 FileRun 在线文件管理器

  1. 根据 CPU 架构选择下载合适版本的 PHP 加密扩展库 ionCube,然后通过 ES 文件管理器放到 /root 文件夹中,如下图

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

PS:ionCube 官网
传送门:https://www.ioncube.com/loaders.php

在这里插入图片描述

  1. 将 Nextcloud 压缩文件解压到 htdocs 文件夹,如下图

在这里插入图片描述

tar zxvf ~/ioncube_loaders_lin_x86.tar.gz -C /var/www/localhost/htdocs/
  1. 在浏览器地址栏中输入 localhost 访问 ionCube,查看模块信息并安装模块,如下图

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

cp /var/www/localhost/htdocs/ioncube/ioncube_loader_lin_7.3.so /usr/lib/php7/modules/

在这里插入图片描述

ls -l /usr/lib/php7/modules/ioncube_loader_lin_7.3.so

在这里插入图片描述

echo -e "zend_extension = /usr/lib/php7/modules/ioncube_loader_lin_7.3.so" > /etc/php7/conf.d/00-ioncube.ini

在这里插入图片描述

ls -l /etc/php7/conf.d/00-ioncube.ini
  1. 使用 chmod 命令修改 ioncube_loader_lin_7.3.so 文件的访问权限,如下图

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

ls -l /usr/lib/php7/modules

在这里插入图片描述

chmod 755 /usr/lib/php7/modules/ioncube_loader_lin_7.3.so

在这里插入图片描述

ls -l /usr/lib/php7/modules/ioncube_loader_lin_7.3.so
  1. 重启 Apache,加载 ionCube 模块,如下图

在这里插入图片描述

ps | grep httpd | grep -v grep

在这里插入图片描述

kill -9 `ps | grep httpd | grep -v grep | awk '{ print $1 }' | tr '\n' ' '`

在这里插入图片描述

ps | grep httpd | grep -v grep

在这里插入图片描述

httpd

在这里插入图片描述

ps | grep httpd | grep -v grep
  1. 在 mariadb 中新建 filerun 数据库,如下图

在这里插入图片描述

CREATE DATABASE `filerun` CHARACTER SET utf8 COLLATE utf8_general_ci;
  1. 到 FileRun 官网下载最新版的 FileRun,然后通过 ES 文件管理器放到 /root 文件夹中,如下图

在这里插入图片描述

PS:FileRun 官网
传送门:https://filerun.com/

Tips:FileRun是一个功能强大的在线文件管理器,也可以当成网盘使用。FileRun提供了丰富的插件,例如文本编辑器、图片查看器、文件加密、PDF预览、视频音频播放、Office文档、地图等

在这里插入图片描述

  1. 使用 mkdir 命令创建 filerun 文件夹,如下图

在这里插入图片描述

mkdir /var/www/localhost/htdocs/filerun
  1. 将 FileRun 压缩文件解压到 filerun 文件夹,如下图

在这里插入图片描述

unzip ~/FileRun_2020_11_21_PHP_71-73.zip -d /var/www/localhost/htdocs/filerun/
  1. 使用 chmod 命令修改 filerun 文件夹的访问权限,如下图

在这里插入图片描述

chmod -R 777 /var/www/localhost/htdocs/filerun/
  1. 在浏览器中初始化设置 FileRun在线文件管理器,如下图

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

使用 Code Server 远程控制 Alpine Linux

  1. 使用 wget 命令下载 Code Server,如下图

在这里插入图片描述

wget https://github.com/cdr/code-server/releases/download/3.4.1/code-server-3.4.1-linux-x86_64.tar.gz

PS:Code Server 官网
传送门:https://coder.com/

Tips:Code Server 是一个由德州叫 Coder 公司开源的一个基于服务器端的 VS Code 的项目。只要服务器端配置好 Code Server后,你就可以在任何浏览器上使用 VS Code。

  1. 将 Code Server 压缩文件解压到 share 文件夹中,如下图

在这里插入图片描述

tar zxvf ~/code-server-3.4.1-linux-x86_64.tar.gz -C ~/share/
  1. 使用 mkdir 命令新建 MyCodes 文件夹,如下图

在这里插入图片描述

mkdir ~/MyCodes
  1. 使用 apk 命令安装 nodejs,如下图

在这里插入图片描述

apk add nodejs

在这里插入图片描述

node -v
  1. 创建 nodejs 的快捷方式到 lib 文件夹,如下图

在这里插入图片描述

rm ~/share/code-server-3.4.1-linux-x86_64/lib/node && ln -s /usr/bin/node ~/share/code-server-3.4.1-linux-x86_64/lib/node
  1. 使用 mkdir 命令创建 logs 文件夹,如下图

在这里插入图片描述

mkdir /root/.local/share/code-server/logs
  1. 后台运行 Code Server,如下图

在这里插入图片描述

cd ~/share/code-server-3.4.1-linux-x86_64 && export PASSWORD="*Abc123456" && nohup ./code-server --port 9898 --host 0.0.0.0 /root/MyCodes/ >/dev/null 2>&1 &
  1. 在浏览器中访问 Code Server,如下图

在这里插入图片描述

PS:输入密码即可进入 Code Server。顺便说一下,不建议在手机浏览器上访问 Code Server,因为手机上显示出来的电脑网页不太好操作,在电脑浏览器上访问体验更好。

  1. 在电脑浏览器上访问 Code Server,如下图

在这里插入图片描述

PS:浏览器访问 Code Server 后,可在 Code Server 中新建控制台,在控制台中即可远程控制 Alpine Linux。

使用 jupyter lab 远程控制 Alpine Linux

  1. 使用 apk 命令安装依赖软件,如下图

在这里插入图片描述

# 已过时
# apk add libxml2-dev libxslt-dev python2-dev python3-dev libffi-dev libzmq g++ make
apk add rust cargo python3-dev libffi-dev py3-pip py3-argon2-cffi py3-tornado py3-pyzmq py3-pyrsistent py3-cffi py3-lxml py3-yaml py3-psutil py3-cryptography py3-matplotlib py3-sqlalchemy py3-bcrypt py3-pynacl
  1. 更换 pip3 软件源为阿里镜像源,如下图

在这里插入图片描述

mkdir ~/.pip && echo -e "[global]\nindex-url=http://mirrors.aliyun.com/pypi/simple/\n\n[install]\ntrusted-host=mirrors.aliyun.com\n" > ~/.pip/pip.conf
  1. 使用 pip3 命令安装 jupyter lab,如下图

在这里插入图片描述

pip3 install jupyterlab
# 已过时
# pip3 install you-get y-py==0.6.0 jupyterlab jupyter jupyter_contrib_nbextensions ipyparallel webssh jupyterlab_github theme-darcula jupyterlab-drawio jupyterlab-git jupyterthemes charts jupyterlab_markup jupyterlab_code_formatter jupyterlab-language-pack-zh-CN
pip3 install you-get jupyterlab jupyter jupyter_contrib_nbextensions ipyparallel webssh jupyterlab_github theme-darcula jupyterlab-drawio jupyterlab-git jupyterthemes charts jupyterlab_markup jupyterlab_code_formatter jupyterlab-language-pack-zh-CN --break-system-packages
pip3 install you-get jupyter jupyter_contrib_nbextensions ipyparallel webssh jupyterlab_github theme-darcula jupyterlab-git jupyterlab-language-pack-zh-CN
jupyter contrib nbextension install --user

PS:安装 jupyter lab 的过程中需要自动编译安装一些依赖软件,因此耗费的时间比较长,大概需要二十分钟左右,所以要耐心等待。

Tips:Jupyter Lab 是 Project Jupyter 的下一代用户界面,提供所有熟悉的经典 Jupyter 笔记本构建模块(Notebook,终端,文本编辑器,文件浏览器,丰富的输出等),还有灵活而强大的用户界面。Jupyter Lab 的基本理念是将经典 notebook 中的所有功能以及新特性整合在一起。

  1. 创建 jupyter lab 配置文件,如下图

在这里插入图片描述

jupyter lab --generate-config
  1. 获取加密后的 jupyter lab 密码,如下图

在这里插入图片描述

ipython

在这里插入图片描述

from notebook.auth import passwd

passwd()

在这里插入图片描述

exit()
  1. 修改 jupyter lab 的配置文件,如下图

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

PS:因为 jupyter lab 的配置文件行数较多,ES 文件管理器自带的文本编辑器没有语法高亮,不好修改,所以使用 QuickEdit 来修改 jupyter lab 的配置文件。

Tips:QuickEdit 是 Android 上的高效,稳定和全功能的文本编辑器。它同时为手机和平板设备进行了优化。

  1. 下载 jupyter lab 的主题包压缩文件,如下图

在这里插入图片描述

PS:jupyter lab 主题包百度网盘分享
链接:https://pan.baidu.com/s/1Hd4t2LJdWtsxXxZICDmlag
提取码:2kls

在这里插入图片描述

  1. 将 jupyter lab 主题包压缩文件解压到 jupyter 文件夹中,如下图

在这里插入图片描述

rm -r /usr/share/jupyter/lab/ && tar zxvf ~/lab.tar.gz -C /usr/share/jupyter/
  1. 后台运行 jupyter lab,如下图

在这里插入图片描述

nohup jupyter lab > /dev/null 2>&1 &
  1. 在浏览器中访问 jupyter lab,如下图

在这里插入图片描述

PS:这里输入之前获取 jupyter lab 加密密码时输入的密码即可进入 jupyter lab。顺便说一下,不建议在手机浏览器上访问 jupyter lab,因为手机上显示出来的电脑网页不太好操作,在电脑浏览器上访问体验更好。

  1. 在电脑浏览器上访问 jupyter lab,如下图

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

PS:在 jupyter lab 中新建控制台即可在控制台中远程控制 Alpine Linux。

使用 webssh 远程控制 Alpine Linux

  1. 使用 pip3 命令安装 webssh,如下图

在这里插入图片描述

pip3 install webssh
  1. 后台运行 webssh,如下图

在这里插入图片描述

nohup wssh --address='0.0.0.0' --port=7777 -fbidhttp=False >/dev/null 2>&1 &
  1. 在浏览器中访问 webssh,如下图

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

PS:在 webssh 页面中输入 Alpine Linux 的 IP 地址、账号以及密码即可在浏览器中远程控制 Alpine Linux。

使用 AriaNg 远程控制 Aria2

  1. 使用 apk 命令安装 aria2,如下图

在这里插入图片描述

apk add aria2 aria2-daemon

Tips:Aria2 是一个多平台轻量级,支持 HTTP、FTP、BitTorrent 等多协议、多来源的命令行下载工具。Aria2 可以从多个来源、多个协议下载资源,最大的程度上利用了你的带宽。Aria2 有着非常小的资源占用,在关闭磁盘缓存的情况下,物理内存占用通常为 4M(正常 HTTP/FTP 下载的情况下),BitTorrent 下载每秒2.8M/S的情况下,CPU 占有率约为 6%。Aria2 支持 JSON-RPC 和 XML-RPC 接口远程调用。

  1. 使用 touch 命令创建 aria2 配置文件,如下图

在这里插入图片描述

touch ~/aria2.conf ~/aria2.session
  1. 使用 mkdir 命令创建 video 文件夹,如下图

在这里插入图片描述

mkdir /var/www/localhost/htdocs/video
  1. 修改 aria2 配置文件,如下图

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

save-session=/root/aria2.session
input-file=/root/aria2.session
save-session-interval=60
continue=true
disable-ipv6=true
follow-torrent=true
force-save=false
max-connection-per-server=16
split=256
user-agent=uTorrent/2210(25130)
peer-id-prefix=-UT2210-
bt-seed-unverified=true
bt-max-peers=0
bt-detach-seed-only=true
bt-hash-check-seed=true
bt-save-metadata=true
seed-ratio=0
file-allocation=trunc
max-overall-upload-limit=50k
enable-rpc=true
rpc-allow-origin-all=true
rpc-listen-all=true
rpc-listen-port=6800
rpc-secret=*Abc123456
max-concurrent-downloads=5
seed-ratio=0.1
seed-time=60
dir=/var/www/localhost/htdocs/video
bt-tracker=udp://tracker.coppersurfer.tk:6969/announce,udp://tracker.opentrackr.org:1337/announce,udp://p4p.arenabg.ch:1337/announce,udp://tracker.leechers-paradise.org:6969/announce,udp://9.rarbg.to:2710/announce,udp://9.rarbg.me:2710/announce,udp://exodus.desync.com:6969/announce,udp://tracker.cyberia.is:6969/announce,udp://tracker.tiny-vps.com:6969/announce,udp://retracker.lanta-net.ru:2710/announce,udp://open.stealth.si:80/announce,udp://tracker.torrent.eu.org:451/announce,udp://tracker.moeking.me:6969/announce,http://tracker4.itzmx.com:2710/announce,udp://tracker3.itzmx.com:6961/announce,udp://ipv4.tracker.harry.lu:80/announce,http://tracker1.itzmx.com:8080/announce,udp://bt2.archive.org:6969/announce,udp://bt1.archive.org:6969/announce,udp://valakas.rollo.dnsabr.com:2710/announce,udp://31.14.40.30:6969/announce,udp://93.158.213.92:1337/announce,udp://163.172.217.67:1337/announce,udp://188.241.58.209:6969/announce,udp://151.80.120.115:2710/announce,udp://208.83.20.20:6969/announce,udp://194.182.165.153:6969/announce,udp://5.206.38.65:6969/announce,udp://37.235.174.46:2710/announce,udp://185.181.60.67:80/announce,udp://89.234.156.205:451/announce,udp://185.244.173.140:6969/announce,http://78.30.254.12:2710/announce,udp://176.113.71.60:6961/announce,udp://51.15.40.114:80/announce,udp://207.241.231.226:6969/announce,udp://207.241.226.111:6969/announce,udp://46.148.18.250:2710/announce
  1. 后台运行 aria2,如下图

在这里插入图片描述

aria2c --conf-path=/root/aria2.conf -D
  1. 到 AriaNg 官网下载最新版的 AriaNg,如下图

在这里插入图片描述

PS:AriaNg 官网
传送门:http://ariang.mayswind.net/zh_Hans/

Tips:AriaNg 是一个让 aria2 更容易使用的现代 Web 前端. AriaNg 使用纯 html & javascript 开发, 所以其不需要任何编译器或运行环境. 您只要将 AriaNg 放在您的 Web 服务器里并在浏览器中打开即可使用. AriaNg 使用响应式布局, 支持各种计算机或移动设备.

在这里插入图片描述

  1. 将 AriaNg 的压缩文件解压到 AriaNg 文件夹中,如下图

在这里插入图片描述

mkdir /var/www/localhost/htdocs/AriaNg && unzip ~/AriaNg-1.1.6.zip -d /var/www/localhost/htdocs/AriaNg
  1. 使用 chmod 命令更改 AriaNg 文件夹的访问权限,如下图

在这里插入图片描述

chmod -R 777 /var/www/localhost/htdocs/AriaNg/
  1. 在浏览器中访问 AriaNg,如下图

在这里插入图片描述

在这里插入图片描述

  1. 使用 AriaNg 远程连接 aria2,如下图

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

PS:AriaNg 成功连接 aria2 后,即可远程控制 aria2 建立下载任务,例如可以建立 BitTorrent 下载任务,体验文件高速下载的快感!

心得体会

  1. 这是我在网上查了不少资料才总结出来的方法,着实不易,希望各位大佬能点个赞,给个好评!
  2. 成功运行 Alpine Linux 后,可以安装使用很多功能强大的 Linux 软件。
  3. 譬如可以安装 mariadb + php7 + apache2 + wordpress,使用 wordpress 来搭建个人网站,轻松打造符合个性的漂亮网站。
  4. 虽然操作的过程有一点枯燥,但是结果很美好,不仅点燃了曾经熄灭的玩机热情,还锻炼到了自己动手解决问题的能力。
  5. 最后,祝愿明天会更好!
  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
### 回答1: Linux chroot是一种将进程限制在特定目录下的技术,可以用来增强系统的安全性和稳定性。通过chroot,可以将进程的根目录切换到指定的目录下,使得进程无法访问系统的其他部分。这样可以有效地防止进程对系统的破坏,同时也可以保护系统的敏感数据。chroot技术在Linux系统中得到广泛应用,特别是在Web服务器等需要保护数据安全的场合。 ### 回答2: Linux下的chroot是一个非常有用的工具,它可以使用户在系统中创建一个与主系统隔离的环境,这个环境中只有特定的二进制文件、库、配置文件和资源。这个环境会在一个新的根目录下运行,并限制用户只能使用这个目录下的文件和命令。这种工具可以用来为不同的应用程序创建自己的组件,以便可以在相同的Linux系统上安装和运行不同版本和不同偏好的软件,而不会因为某个应用程序使用了错误的库而出现问题。 chroot在许多情况下是非常有用的,例如当你需要在一个系统上运行两个不同的版本的MySQL服务器时。你可以使用chroot来创建MySQL的独立环境,并且让每个环境有它自己的库和系统资源。这样,即使其中一个MySQL服务器发生故障,另一个环境也可以继续运行chroot还可以帮助你创建一个沙箱环境,当你需要测试软件或者运行一些危险的命令时,你可以把它们放在独立的环境中,防止对主系统造成安全隐患。 总体来说,chroot是一个非常有用的工具,它为Linux用户提供了更大的灵活性和安全性。当你需要为不同的应用程序或者用户创建单独的环境时,它是一个不可或缺的工具。 ### 回答3: Linux chroot是一种在Linux系统中提供的操作,它可以让用户将特定的进程或应用程序运行在一个隔离环境中,该环境包含了一套独立的文件系统、用户身份和进程间通信机制。这种技术可以很好地实现系统安全,同时也有助于应用程序开发、调试和测试等方面的工作。 Linux chroot最初是在UNIX系统中提出的,意思是ChangeRoot,即改变根目录。在Linux系统中,chroot可以使用chroot指令来实现。它主要通过改变进程的根目录为一个新的目录,来将进程所使用的文件系统与整个系统的文件系统隔离开来。 chroot的另一个重要的应用领域就是用户环境隔离。在Linux系统中,每个用户都有自己的home目录,当用户登录到系统时,所有的进程都会在/home/username目录下运行。但有时候我们需要将用户的进程放在一个独立的文件系统中运行,这个时候就需要使用chroot了。使用chroot后,所有的文件和程序都只能在新的目录中使用,相当于将用户隔离在一个独立的环境中,降低了系统被攻击的风险。 由于chroot可以将整个文件系统移动到一个隔离的环境中,它也可以非常方便地用于应用程序的开发、测试和调试。在开发应用程序时,我们可以使用chroot将应用程序的环境与主机的环境隔离开来,这样可以保证程序的稳定性,并且可以在隔离环境中进行测试。 总的来说,Linux chroot是一种非常有用的技术,它可以为系统安全、用户隔离和应用程序开发提供帮助,是Linux系统中不可或缺的一部分。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值