Deepin 源码安装 LNMP

作者: 温新

分类: 【Linux】

阅读: 1426

时间: 2022-10-29 14:18:25

hi,我是温新,一名PHPer

我目前正在使用 deepin 桌面系统,因此呢,又得重新搭建 LNMP 环境。deepin呢,仅仅作为开发环境使用,而生产服务器依旧使用 Rocky Linux

使用 deepin 作为开发环境的缘由

我一直习惯了使用 CentOS,因此自然而然的使用了 Rocky Linux。在此之前开发环境使用的是 Rocky Linux,与服务器保持了一致的环境,而它作为一款服务器环境,尽管在 9 版本中使用了 GNOME 40 桌面环境,但软件安装相对还是麻烦的,好在熟悉后也就不在那么在意了。

我换了一台笔记本,装系统也就是首选 Rocky Linux,给笔记本装完 Rocky Linux9 版本后,发现没有 wifi 模块,因此不断的换其他系统进行尝试,在尝试了 Ubuntu20CentOS7Deepin 后,仍旧没有 wifi 模块。 经过一番周折后,最终在 deepin 论坛找到了原因且得到相关的解决方法,除了解决了 wifi 问题,另外还有一点就是 deepinUI 设计与丰富的软件,都让我挺喜欢的,因此,经过考虑后,选择了 deepin 系统。

系统确定了,接下来就是 PHP 环境的搭建了。依旧是源码安装方式。在deepin中,发现有很多扩展包可以不需要安装,因为系统已经安装好了。因此环境搭建起来容易很多。下面记录下安装过程:

安装 Nginx-1.22.1

nginx安装变得更加简单了,下载源码包后,解压安装就行。

# 1)下载
cd /usr/local/src
wget http://nginx.org/download/nginx-1.22.1.tar.gz

# 2) 解压
tar -zxvf nginx-1.22.1.tar.gz 
cd nginx-1.22.1

# 3) 编译
./configure \
--prefix=/usr/local/nginx-1.22.1 \
--user=nginx \
--group=nginx \
--with-pcre \
--with-http_ssl_module \
--with-http_v2_module \
--with-http_realip_module \
--with-http_addition_module \
--with-http_sub_module \
--with-http_dav_module \
--with-http_flv_module \
--with-http_mp4_module \
--with-http_gunzip_module \
--with-http_gzip_static_module \
--with-http_random_index_module \
--with-http_secure_link_module \
--with-http_stub_status_module \
--with-http_auth_request_module \
--with-mail \
--with-mail_ssl_module \
--with-stream_ssl_module

# 4) 安装
make && make install

安装 Mysql-8.0.30

关于安装 mysql ,还是需要安装几个需要的依赖包

sudo apt -y install build-essential
sudo apt -y install libncurses5-dev

安装 mysql 依赖 rpcsvc-proto

wget https://github.com/thkukuk/rpcsvc-proto/releases/download/v1.4/rpcsvc-proto-1.4.tar.gz
tar -zxvf rpcsvc-proto-1.4.tar.gz
cd rpcsvc-proto-1.4
./configure
make && make install

上面几个依赖包安装完成后,就可以安装 mysql 了。

# 创建mysql用户组
groupadd mysql

# 创建mysql用户并禁止登陆
useradd -g mysql mysql -M -s /sbin/nologin/
# 1) 解压源码
tar -zxvf mysql-boost-8.0.30.tar.gz
cd mysql-boost-8.0.28
mkdir build
cd build

# 2)编译
cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-8.0.30 \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DSYSCONFDIR=/etc \
-DWITH_EXTRA_CHARSETS=all \
-DMYSQL_DATADIR=/home/data/mysql-8.0.30/data \
-DWITH_BOOST=/usr/local/src/mysql-8.0.30/boost \
-DDOWNLOAD_BOOST=1 

# 3)安装
make && make install

安装完成后的后续操作和之前没有区别,就此就不写了,可以参考之前的文章。

安装 PHP-8.1.12

php 的依赖包,是一步一步 configure 坑出来来,先看缺少哪一个包,然后就安装哪一个包。下面是总结出来的所需要的包。

apt -y install libwebp-dev libjpeg-dev libpng-dev libxpm-dev libzip-dev libxslt1-dev libmcrypt-dev libsqlite3-dev libcurl4-openssl-dev libssl-dev autoconf
apt -y install libfreetype-dev libfreetype6-dev
apt -y install libonig-dev
# 1) 下载并解压
cd /home/tmp
wget https://www.php.net/distributions/php-8.1.10.tar.gz
tar -zxvf php-8.1.12.tar.gz
cd  php-8.1.12

# 2)编译
./configure --prefix=/usr/local/php-8.1.12 \
--with-config-file-path=/usr/local/php-8.1.12/etc \
--with-fpm-user=www  \
--with-fpm-group=www \
--enable-mbstring  \
--enable-ftp  \
--enable-gd   \
--enable-gd-jis-conv \
--with-freetype \
--enable-mysqlnd \
--enable-pdo   \
--enable-sockets   \
--enable-fpm   \
--enable-xml  \
--enable-soap  \
--enable-pcntl   \
--enable-cli   \
--with-openssl  \
--with-mysqli=mysqlnd   \
--with-pdo-mysql=mysqlnd   \
--with-pear   \
--with-zlib  \
--with-iconv  \
--with-curl  \
--with-jpeg \
--enable-sockets

# 3)安装
make && make install

关于 deepin 源码安装 LNMP 环境到这里就结束了。

安装 PHP 8.2

# 1) 下载并解压
cd /home/tmp
wget https://www.php.net/distributions/php-8.2.0.tar.gz
tar -zxvf php-8.1.12.tar.gz
cd  php-8.1.12

# 2)编译
./configure --prefix=/usr/local/php-8.2.0 \
--with-config-file-path=/usr/local/php-8.2.0/etc \
--with-fpm-user=www  \
--with-fpm-group=www \
--enable-mbstring  \
--enable-ftp  \
--enable-gd   \
--enable-gd-jis-conv \
--with-freetype \
--enable-mysqlnd \
--enable-pdo   \
--enable-sockets   \
--enable-fpm   \
--enable-xml  \
--enable-soap  \
--enable-pcntl   \
--enable-cli   \
--with-openssl  \
--with-mysqli=mysqlnd   \
--with-pdo-mysql=mysqlnd   \
--with-pear   \
--with-zlib  \
--with-iconv  \
--with-curl  \
--with-jpeg \
--enable-sockets

# 3)安装
make && make install
请登录后再评论