Linux

手机安装LinuxDeploy 使用总结 2019

2019-12-02  本文已影响0人  简_道之根_易_经之本

手机安装LinuxDeploy 使用总结 2019

linux deploy搭建环境时,从网上查阅了很多资料,感觉手机充当linux服务器时,性能差强人意。后来发现需要手机屏需要常亮,此时编译安装一些软件时,性能足够(多线程编译mysql会死机)。
如果是linux的初学者,用手机来充当服务器学习,是一个不错的选择(遇到问题,然后去解决)。
考虑到ARM下很多软件需要自己编译安装,安装部署效率较低。如果条件允许,用树莓派,台式机充当服务器,可以节约很多时间……
可以被root的手机也越来越少……

[TOC]

最初安装LinuxDeploy时,参考的文章:手机安装参考:【Linux Deploy】一、Linux Deploy安装配置使用教程 ,使用时需要注意的问题与总结:

以上问题,都可能造成ssh等服务启动失败,不能正常使用。

试用以后,决定将手机上部署centos,部署nginx服务器充当外网前置服务器:

参考:

没有树莓派?没关系,手机也行!闲置安卓设备打造智能家庭中枢
MaxBill :【Linux Deploy】二、Linux Deploy上安装JDK和MYSQL
linux deploy 挂载安卓上的资源

挂载示例

使用环境

手机 一加3 centos
两个笔记本,一台centos8,一台win10
华为路由器,增加花生壳,映射http到手机http端口

使用ssh访问linux deploy上部署的centos

以前没有注意ssh提供了文件上传命令行工具scp,下载了xshell进行文件传输,如果是单独文件或目录,没有必要使用xshell。
推荐一款windows下的命令行终端工具:Cmder

Cmder is a software package created out of pure frustration over the absence of nice console emulators on Windows. It is based on amazing software, and spiced up with the Monokai color scheme and a custom prompt layout, looking sexy from the start.


前置服务器安装说明(linux deploy centos)

手机root

手机安装 BusyBox app

https://github.com/meefik/busybox/releases/download/1.31.1/busybox-1.31.1-44.apk

应用界面,选择install(使用默认配置/system/xbin)

手机安装 linux deploy

https://github.com/meefik/linuxdeploy/releases/download/2.5.0/linuxdeploy-2.5.0-255.apk

修改linux deploy配置

linux deploy界面,选择左上角图标-配置:

属性 配置
屏幕常亮 选中
锁定Wi-Fi 选中
CPU唤醒 选中
PATH变量 与BusyBox中配置一致 /system/xbin

修改后选择“更新环境”,保存配置。

修改linux安装属性

linux deploy界面,选择右下角图标:

属性 配置 说明
发行版本 GNU/Linux Centos
架构 aarch64 可以通过linux deploy右上角图标-状态,查看手机cpu架构
发行版本呢 7
镜像大小 10000
文件系统 ext4
用户名 ssh登陆时使用
用户密码
本地化 zh_CN.UTF-8
启用 允许使用初始化系统 启用 centos系统安装后,根据需要启用,修改/etc/rc.local,增加启动项
启用允许挂载android上的资源 选中
挂载点列表 /mnt/sdcard:/mnt 源名称:挂载点名称
注:不同手机名称不一样,可以通过ES文件查看工具查看
启用SSH服务器 选中

安装centos

linux deploy右上角图标-安装

配置服务器

安装依赖项

sudo yum install net-tools  
sudo yum install wget unzip
sudo yum install make cmake gcc gcc-c++
sudo yum install openssl-devel

安装nginx

nginx doc: Building nginx from Sources

# 安装openssl-devel
sudo yum install openssl-devel

# 源码安装pcre(openssl-devel中已包含pcre-level,与nginx文档指定版本不一致)
wget https://ftp.pcre.org/pub/pcre/pcre-8.43.tar.gz
tar xvzf pcre-8.43.tar.gz
cd pcre-8.43
./configure
make
sudo make install

# 源码安装zlib(openssl-devel中已包含zlib-devel,与nginx文档指定版本不一致)
wget http://zlib.net/zlib-1.2.11.tar.gz
tar xvzf zlib-1.2.11.tar.gz
cd zlib-1.2.11
./configure
make
sudo make install

# 源码安装nginx,注意pcre,zlib路径
wget http://nginx.org/download/nginx-1.17.6.tar.gz
tar xvzf nginx-1.17.6.tar.gz
cd nginx-1.17.6
./configure --sbin-path=/usr/local/nginx/nginx --conf-path=/usr/local/nginx/nginx.conf --pid-path=/usr/local/nginx/nginx.pid  --with-http_ssl_module --with-pcre=../pcre-8.43 --with-zlib=../zlib-1.2.11
make
sudo make install
文件 说明 路径
nginx 主程序 /usr/local/nginx/nginx
nginx.conf 配置文件 /usr/local/nginx/nginx.conf
# nobody改为root
user root;

# 其它访问配置参照禅道nginx配置
sudo /usr/local/nginx/nginx

安装php-fpm

sudo yum install php-fpm

修改配置 /etc/php-fpm.conf

daemonize = yes

主要文件路径

文件 说明 路径
php-fpm.conf 配置 /etc/php-fpm.conf
www.conf 配置 /etc/php-fpm.d/www.conf
php-fpm 主程序 /usr/sbin/php-fpm

源码安装mysql

注:安装的数据库版本是5.6,版本5.7在aarch64架构下编译有问题

# 依赖项
sudo yum install ncurses-devel
# mysql官网速度较慢,从其它网站下载
wget http://ftp.ntu.edu.tw/MySQL/Downloads/MySQL-5.6/MySQL-5.6.46-1.el7.src.rpm  
# 不添加指定路径,rpm会安装到home目录
rpm -ivh  MySQL-5.6.46-1.el7.src.rpm  
cd rpmbuild/SOURCES/
tar xvzf mysql-5.6.46.tar.gz
cd mysql-5.6.46
cmake .
make
sudo make install
sudo groupadd mysql
sudo useradd -r -g mysql mysql
# 修改mysql目录拥有着
sudo chown -R mysql:mysql /usr/local/mysql/data/
sudo chown -R mysql:mysql /usr/local/mysql/

useradd -r表示mysql用户是系统用户,不可用于登录系统
useradd -g表示把mysql用户添加到mysql用户组中

sudo yum install perl
sudo yum install perl-Data-Dumper

sudo /usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql  

[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
bind-address = 127.0.0.1
server_id = 1
socket = /var/lib/mysql/mysql.sock

# 注册服务
sudo cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
sudo chkconfig mysql on

# 启动mysql
sudo service mysql start

参考:

来源:Linux社区 作者:kylinlin CentOS 7下源码安装MySQL 5.6

注:在启动MySQL服务时,会按照一定次序搜索my.cnf,先在/etc目录下找,找不到则会搜索"$basedir/my.cnf",在本例中就是 /usr/local/mysql/my.cnf,这是新版MySQL的配置文件的默认位置!

注:在CentOS 7版操作系统的最小安装完成后,在/etc目录下会存在一个my.cnf,需要将此文件更名为其他的名字,如:/etc/my.cnf.bak,否则,该文件会干扰源码安装的MySQL的正确配置,造成无法启动。

注:在使用"yum update"更新系统后,需要检查下/etc目录下是否会多出一个my.cnf,如果多出,将它重命名成别的。否则,MySQL将使用这个配置文件启动,可能造成无法正常启动等问题。

部署禅道系统

# 少了这个配置项,php 使用IP地址连接不上MySQL,连接数据库时会出现以下异常
# 数据库连接失败 SQLSTATE[HY000] [2003] Can't connect to MySQL server on '0.0.0.0' (13)
sudo setsebool -P httpd_can_network_connect=1

注:linux deploy下 SELinux相关操作实效,参数httpd_can_network_connect不能修改,连接mysql采用UNIX套接字方式。
cd /usr/local/nginx/html/
sudo wgte http://dl.cnezsoft.com/zentao/11.6.5/ZenTaoPMS.11.6.5.zip
sudo unzip ZenTaoPMS.11.6.5.zip

/usr/local/nginx/nginx.conf


user  root;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    server {
        listen       80;
        server_name  zentaopms;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        root   html/zentaopms/www/;
        location / {
            index  index.html index.htm index.php;
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ \.php$ {
        #    proxy_pass   http://127.0.0.1;
        #}

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ \.php$ {
            #root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param SCRIPT_FILENAME
            $document_root$fastcgi_script_name;
            #fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            include        fastcgi_params;
        }

    }
}

通过浏览器访问手机nginx网站,根据禅道系统提示,修改php等配置:

修改/etc/php.ini

# 增加
session.save_path="/var/lib/php/session
# 创建session存储目录
sudo mkdir -p /var/lib/php/session/
sudo chmod o=rwx -R /var/lib/php/session

# php插件
sudo yum install php-pdo
sudo yum install php-mysql
sudo yum install php-mbstring

centos 启动初始化

1.点击右下角的设置图标进入设置界面
2.“初始化”选项,“启用”打上勾

# 末尾增加启动项
/service mysql start
/usr/sbin/php-fpm
/usr/local/nginx/nginx
sudo chmod 755 /etc/rc.d/rc.local

TODO

上一篇 下一篇

猜你喜欢

热点阅读