站点迁移

本站站点已完全迁移并使用CentOS 8操作系统。

网站部署组件LAMP及邮件服务器组件均已重新编译安装并迁移完成。

 自己所整理的Doc文档也进行了更新,过程中遇到的一些问题拿出来给大家分享。

迁移主因:

  1. Dropbox更新过之后,对系统内核提升了要求,无法在CentOS7上正常运行;导致备份文件不能同步。

其它:

  1. MySQL 8.0.14 版本之后,对编译GCC版本要求提升,需要5.3以上版本,CentOS7自带版本不满足要求(当然也可自行编译)

迁移后感受:

  1. 系统流畅度提升;系统从内核到各个安装组件版本都进行了大版本的提升(内核4.18,GCC 8.2.1,OpenSSL 1.1.1等),包管理器由yum改为dnf,yum命令保留,但调用为dnf库,执行效率显著提升。
  2. systemctl服务包管理稳定度提升;之前在CentOS7系统下,部分服务在系统重启后自动启动会出现问题需要手动启动,迁移至CentOS8下重启后可正常启动。

编译使用过程中遇到些问题,特记录如下:

OpenSSL 编译安装;编译安装时注意添加enable-md2选项,否则如果添加进系统共享库调用路径中,再执行yum/dnf被调用到的话,会报错“symbol EVP_md2 version OPENSSL_1_1_0 not defined in file libcrypto.so.1.1”;完整编译如下:

wget https://www.openssl.org/source/openssl-1.1.1d.tar.gz
tar zxf openssl-1.1.1d.tar.gz -C /usr/local/src/
cd /usr/local/src/openssl-1.1.1d/
CFLAGS="-fPIC -O3" ./config --prefix=/usr/local/openssl shared threads zlib enable-md2 --release
make -j `cat /proc/cpuinfo | grep processor | wc -l` && make install
echo '/usr/local/openssl/lib' >> /etc/ld.so.conf.d/complie.conf
echo 'export PATH=/usr/local/openssl/bin:$PATH' > /etc/profile.d/openssl.sh
source /etc/profile.d/openssl.sh
openssl version
cd -

MySQL8执行cmake配置时报错“Could not find rpcgen”,需要安装rpcsvc库:

wget https://github.com/thkukuk/rpcsvc-proto/releases/download/v1.4/rpcsvc-proto-1.4.tar.xz
tar Jxf rpcsvc-proto-1.4.tar.xz -C /usr/local/src/
cd /usr/local/src/rpcsvc-proto-1.4/
CFLAGS="-fPIC -O3" ./configure
make -j `cat /proc/cpuinfo | grep processor | wc -l` && make install
cd –

编译postfix报错找不到”rpcsvc/ypclnt.h:”,需先安装libnsl,libnsl组件早已废弃,功能还在维护供其它调用,postfix编译安装时就需要它,CentOS8目前官方源中提供并预装了libnsl2库,也提供了libnsl库,但未提供相应的devel库,故需自行编译安装:

wget https://github.com/thkukuk/libnsl/archive/v1.2.0.tar.gz -O libnsl-1.2.0.tar.gz
tar zxf libnsl-1.2.0.tar.gz -C /usr/local/src/
cd /usr/local/src/libnsl-1.2.0/
yum install -y gettext-devel libtool
vim configure.ac
AM_INIT_AUTOMAKE([subdir-objects])
./autogen.sh
CFLAGS="-fPIC -O3" ./configure
make -j `cat /proc/cpuinfo | grep processor | wc -l` && make install
cd -

编译OpenDKIM;由于opendkim释出版本长期未更新,使用openssl 1.1以上版本,其不能配置通过(Bugs),需要下载其Github上最新Bate包使用;CentOS8也未提供sendmail-milter的devel库,也需自行编译安装,过程如下:

wget ftp://ftp.sendmail.org/pub/sendmail/sendmail.8.15.2.tar.gz
tar zxf sendmail.8.15.2.tar.gz -C /usr/local/src/
cd /usr/local/src/sendmail-8.15.2/libmilter
./Build
Make && make install
cd -
wget https://github.com/trusteddomainproject/OpenDKIM/archive/rel-opendkim-2-11-0-Beta2.tar.gz
tar zxf rel-opendkim-2-11-0-Beta2.tar.gz -C /usr/local/src/
cd /usr/local/src/OpenDKIM-rel-opendkim-2-11-0-Beta2
aclocal
autoconf
autoheader
libtoolize
automake --add-missing

CFLAGS="-fPIC -O3" ./configure --prefix=/usr/local/opendkim --with-openssl=/usr/local/openssl --with-libcurl=/usr/local/curl --with-libxml2=/usr/local/libxml2 --with-sql-backend=/usr/local/mysql --enable-query_cache
make -j `cat /proc/cpuinfo | grep processor | wc -l` && make install
mkdir -p /data/mail/dkim
cp opendkim/opendkim.conf.sample /data/mail/dkim/opendkim.conf
groupadd -g 267 opendkim
useradd -g opendkim -u 267 -s /sbin/nologin -M opendkim -c "OpenDKIM User"

发表评论

error: Content is protected !!