闲置的小米Note3安装Ubuntu+宝塔+DDNS-GO
本文最后更新于 14 天前,其中的信息可能已经过时,如有错误请发送邮件到 me@norc.cn

前言

由于最近一直想对云端的博客做一个备份本地备份,但是又不想购买一台轻量 NUC,恰巧有一台闲置的小米 Note3,一合计,是不是可以给小米 Note3 刷一个 Linux 系统或使用目前已有的容器技术运行一个 Linux 系统?说干就干,于是开始了收集教程,查找资料的过程,经过反复的测试与排雷,最终得到以下可行的方案(其实其他方案也可行就是配置比较麻烦,遇到的问题都大差不差)。

硬件、软件准备

配置 Busy Box

安装完成 Busy Box 后,打开软件,授予 BusyBox Root 权限。

点击右上角的三个点 “ ” – 设置(Settings):

  • 语言:简体中文(关闭软件后再次进入就会显示中文)
  • 安装路径(默认):/system/xbin
  • 安装组件(默认):勾选
  • 替换组件(默认):勾选

以上设置好后关闭软件,再次进入软件,点击主界面的安装。

配置 Linux Deploy

安装完成 Linux Deploy 后,打开软件,授予 Linux Deploy Root 权限。

点击软件左上角的三条杠 “ ” – 配置文件 – “

配置文件名称(小写):ubuntu

选择新增的配置文件 “ubuntu”,返回软件主界面,点击软件右下角的” “进入属性设置

  • 引导设置
    • 发行版 GNU/Linux:Ubuntu
    • 架构:arm64
    • 发行版 GNU/Linux 版本:bionic
    • 安装类型:目录
    • 安装路径:/data/user/ubuntu
    • 用户名:root
    • 用户密码:(默认或自定义)
    • 本地化:zh_CN.UTF-8
    • DNS:自动
  • 初始化
    • 启用:勾选
  • 挂载
    • 启用:勾选
  • SSH
    • 启用:勾选

回到 Linux Deploy 的主界面,点击右上角的三个点 “ ” – 安装。

安装完成后,即可通过 SSH 连接进入 ubuntu(若无法连接 ssh,右上角的三个点 “ ”- 配置,完成后再点击主界面的 “停止”,关闭软件并重新打开,点击” 启动),IP 地址是主界面顶部显示的 IP 地址。

安装宝塔面板

环境准备

通过 SSH 连接上 ubuntu,运行以下指令 1

# 安装vim wget
apt install vim wget
# 更换阿里镜像源
vim /etc/apt/sources.list

替换默认的 2

http://archive.ubuntu.com/

http://mirrors.aliyun.com/

将以下代码注释掉

# deb http://ports.ubuntu.com/ bionic main universe multiverse
# deb-src http://ports.ubuntu.com/ bionic main universe multiverse

并在以上代码前增加以下代码

deb https://mirrors.aliyun.com/ubuntu-ports/ bionic main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu-ports/ bionic main restricted universe multiverse
deb https://mirrors.aliyun.com/ubuntu-ports/ bionic-security main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu-ports/ bionic-security main restricted universe multiverse
deb https://mirrors.aliyun.com/ubuntu-ports/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu-ports/ bionic-updates main restricted universe multiverse
# deb https://mirrors.aliyun.com/ubuntu-ports/ bionic-proposed main restricted universe multiverse
# deb-src https://mirrors.aliyun.com/ubuntu-ports/ bionic-proposed main restricted universe multiverse
deb https://mirrors.aliyun.com/ubuntu-ports/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu-ports/ bionic-backports main restricted universe multiverse

:wq 保存退出。

运行以下代码查看换源是否成功:

root@localhost:~# cat /etc/apt/sources.list
deb https://mirrors.aliyun.com/ubuntu-ports/ bionic main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu-ports/ bionic main restricted universe multiverse
deb https://mirrors.aliyun.com/ubuntu-ports/ bionic-security main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu-ports/ bionic-security main restricted universe multiverse
deb https://mirrors.aliyun.com/ubuntu-ports/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu-ports/ bionic-updates main restricted universe multiverse
# deb https://mirrors.aliyun.com/ubuntu-ports/ bionic-proposed main restricted universe multiverse
# deb-src https://mirrors.aliyun.com/ubuntu-ports/ bionic-proposed main restricted universe multiverse
deb https://mirrors.aliyun.com/ubuntu-ports/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu-ports/ bionic-backports main restricted universe multiverse
#deb http://ports.ubuntu.com/ bionic main universe multiverse
#deb-src http://ports.ubuntu.com/ bionic main universe multiverse

安装面板

更新软件源 3 并安装宝塔面板

apt update
apt install
# 安装宝塔所需的一些依赖环境
apt install python-setuptools
# Ubuntu/Deepin宝塔面板安装脚本
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh

执行 wget 命令后,大概 20 分钟 4 可以完成宝塔面板的安装

修复网络问题

宝塔面板安装完成后,会发现手机上不了网,导致无法完成宝塔面板的手机绑定。原因是:宝塔面板默认开启防火墙,导致无法获取外部网络数据,只能在局域网内连通。知道了原因也就很好解决了,ssh 连接 ubuntu,执行以下对应系统的命令关闭宝塔面板的防火墙:

Centos 6:
service iptables stop #停止
chkconfig iptables off #禁用
Centos 7
systemctl stop firewalld.service #停止
systemctl disable firewalld.service #禁用
Ubuntu/Debian:
ufw disable #方法1
sudo ufw disable #方法2

执行以上命令之后就可以正常联网,使用宝塔面板了。

安装 LNMP

安装 [php-8.0]03-20 12:35:5413 分 44 秒安装成功
安装 [mysql-mariadb_10.4]03-20 12:35:1458 分 59 秒安装成功
安装 [nginx-1.26]03-20 12:31:3815 分 55 秒安装成功
安装必要环境库 03-20 12:31:382 分 37 秒安装成功

修复 MariaDB 无法运行的问题

查看 MariaDB 的安装日志以及错误日志

# 安装日志
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
# 错误日志
[ERROR] Can't create IP socket: Permission denied ……
[Warning] option 'max_allowed_packet': unsigned value ……

错误原因

  • 找不到 mysql.sock 文件
  • 权限不足
  • 最大允许数据包的值有误

修改配置

建立 mysql.sock 文件 5,尝试运行

root@localhost:~# find / -name mysql.sock
root@localhost:~#

发现确实找不到结果,如果能查到结果,只需 mysql.sock 所在位置做一个软连接到 /tmp 目录下即可解决。

在宝塔面板更改 /etc 目录下的 my.cnf 文件,参照以下代码进行修改,并保存。

[client]
#password = your_password
port = 3306
#修改socket路径以修复mysql.sock文件,下同
#socket = /tmp/mysql.sock
socket = /var/lib/mysql/mysql.sock
[mysqld]
port = 3306
#修复mysql.sock文件
#socket = /tmp/mysql.sock
socket = /var/lib/mysql/mysql.sock
datadir = /www/server/data
#新增 user = root 以修复权限不足的问题
user = root
#修复最大允许数据包的值有误的问题
#max_allowed_packet = 100G
max_allowed_packet = 100M

确保目录 /var/lib/mysql/ 存在,并且赋予其 777 权限

chmod 777 /var/lib/mysql

在宝塔面板中重启,正常情况下 mysql 已经正常运行了。

再次运行以下代码,查找 mysqld.sock 所在位置:

root@localhost:~# find / -name mysql.sock
/var/lib/mysql/mysql.sock

尝试使用该 Sock 文件登入

#(初始密码为空,直接回车就行)
root@localhost:~# mysql -uroot -p -S /var/lib/mysql/mysql.sock
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 23
Server version: 10.4.34-MariaDB-log Source distribution
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>

如果出现以上相似的结果,就说明可以使用。

建立软连接

接下来只有建立软连接到 /tmp 中,并恢复原配置即可。

#建立软连接
root@localhost:~# ln -s /var/lib/mysql/mysqld.sock /tmp/mysql.sock
#验证 /tmp 目录下是否有 mysql.sock 文件
root@localhost:~# ls /tmp/
mysql.sock

恢复配置

my.cnf 中修复 mysql.sock 的内容改回默认配置,并保存

[client]
#password = your_password
port = 3306
socket = /tmp/mysql.sock
#socket = /var/lib/mysql/mysql.sock
[mysqld]
port = 3306
socket = /tmp/mysql.sock
#socket = /var/lib/mysql/mysql.sock
datadir = /www/server/data

再次重启数据库,确认是否正常运行。

宝塔面板成果

使用 DDNS-Go

由于拥有动态公网 IPv6,因此可以使用 ddns-go 来实现域名动态更新 IP 解析 6

在 Termux 中,执行以下命令

安装 wget

apt install wget

下载 ddns-go

wget https://github.com/jeessy2/ddns-go/releases/download/v6.9.1/ddns-go_6.9.1_android_arm64.tar.gz

新建文件夹

mkdir ddns-go

将压缩包解压进去

tar -zxvf ddns-go_6.9.1_android_arm64.tar.gz ddns-go

不能安装,但可直接启动 ddns-go

./ddns-go

因为无法安装 ddns-go,因此需要保持 Tenmux 后台常驻

接下来便是根据官方教程进入网页后台配置 ddns。

参考资料

  1. 安卓手机 + LinuxDeploy+CentOS + 宝塔面板的安装教程_手机安装宝塔 - CSDN 博客 ↩︎
  2. ubuntu-ports 镜像_ubuntu-ports 下载地址_ubuntu-ports 安装教程 - 阿里巴巴开源镜像站 ↩︎
  3. 关于 armbian ubantu 系统 安装宝塔面板_armbian 安装宝塔 - CSDN 博客 ↩︎
  4. 5 分钟在 ARM 盒子上安装完宝塔面板,不得不说的秘密! – 知乎 ↩︎
  5. 亲测有效,解决 Can ‘t connect to local MySQL server through socket ‘/tmp/mysql.sock ‘(2) “;_can’t connect to local mysql server-CSDN 博客 ↩︎
  6. 华为麦芒 5 (安卓 6) termux 记录 使用 ddns-go,alist_ddnsgo 安卓 - CSDN 博客 ↩︎
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇