OS升级18.04LTS

升级遇到第一个问题/boot空间满,解决方案:

1.查询当前运行版本uname -a;

2.直接进/boot删除不用的版本文件;

3.卸载老版本sudo apt-get purge linux-image-* linux-headers-*; //*表示不用的老版本

4.查看当前安装版本dpkg –get-selections|grep linux

 

升级步骤:

1.当前系统软件更新:

$ sudo apt-get update

$ sudo apt-get upgrade –yes

$ sudo apt-get dist-upgrade –yes

2.升级新版本:

$ sudo do-release-upgrade

 

PS: 升级后出现hhvm启动不正常,通过重装hhvm解决。

基于MAHU的WordPress网站搭建

MAHU为了写起来方便我自行发明的,你不理解很正常,这里说下来头M:Mysql,A:Apache2,H:HHVM,U:Ubuntu。

我采用的各个组件的版本:

  • Ubuntu 16.04.3 LTS
  • mysql – 5.7.19
  • Apache 2.4.18
  • HipHop VM 3.21.0
  • WordPress 4.8.1

接着说下各个部分的安装重点:

  • Ubuntu 16.04.3 LTS

Ubuntu的安装分区采用系统建议方式,以前划分很多小分区发现很多空间用不上,所以按照系统建议只有/boot、swap和根/分区。

应用类型选择了Ubuntu minimal installation、OpenSSH server和standard system utilities。

具体可以参考下互联网上的文章

  • mysql – 5.7.19

注意:mysql安装过程中的用户使用root。

直接对现有系统更新后采用apt-get安装

1
2
sudo apt-get update
sudo apt-get install mysql-server

安装过程会直接提示输入root的密码。

接着配置数据库系统安全,按照提示输入你想设置的密码一路Y即可(前面的root密码不想改的话直接回车):

1
mysql-secure-installation

最后创建wordpress数据库并授权(设置字符集为utf8主要为了后面支持中文):

1
2
3
4
5
mysql -u root -p
create database wordpress default character set utf8;
grant all privileges on wordpress.* to 'wpdbuser'@localhost identified by 'wpdbpasswd';
flush privileges;
quit

为了支持中文,建议将mysql客户端、服务器端等各个环节都采用utf8,其主要方式就是编辑/etc/mysql/my.cnf文件然后重启Mysql。相关的配置为:

1
2
3
4
5
6
[mysqld]
character-set-server=utf8
[mysql]
default-character-set=utf8
[client]
default-character-set=utf8

Note:别忘了systemctl restart mysql

  • Apache 2.4.18

Apache的安装由于新版本在Ubuntu上是apache2,所以安装时注意后面的2就好了。Apache的配置待HHVM安装完成后一并说明。安装与启动命令很简单:

1
2
3
4
sudo -s     //切换到root权限
apt-get install apache2
systemctl start apache2
systemctl enable apache2
  • HipHop VM 3.21.0

HHVM在前几次采用apt-get直接安装都出现没有install_fastcgi.sh脚本的情况,后来了解到因为源不对,采用下面的命令安装就没问题了。这个源在我这里的下载速度非常慢,不过慢慢等着就好,可以保证质量。

1
2
3
4
5
6
7
8
apt-get install -y software-properties-common
apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0x5a16e7281be7a449
add-apt-repository "deb http://dl.hhvm.com/ubuntu $(lsb_release -sc) main"
apt-get update
apt-get install -y hhvm
/usr/share/hhvm/install_fastcgi.sh
systemctl start hhvm
systemctl enable hhvm

结束后可以使用php -v查看版本。对了,别忘了,上面的命令全部以root权限执行的。

如果以上你都是首次安装,现在只需要再使用systemctl restart apache2整个应用的搭建就搞定了。

BTW, 最后当你真正发布博客时你会发现永久链接出现404 not found的错误,这是因为rewrite模块与网站目录overwrite值问题,我会在下一篇中单独说明。

  • WordPress 4.8.1

下载最新的压缩包并解压,由于我的Ubuntu是最小安装,所以在使用curl之前先要安装此应用。

1
2
3
4
apt-get install -y curl
cd /tmp //使用临时目录,方便最后清理过程文件
curl -0 https://wordpress.org/latest.tar.gz
tar -xzvf latest.tar.gz

将解压完的wordpress目录下文件全部拷贝到网站主目录

1
cp -a /tmp/wordpress/. /var/www/html

以下将开始配置wordpress。

将配置样例重命名为要使用的wp-config.php

1
cp /tmp/wordpress/wp-config-sample.php /tmp/wordpress/wp-config.php

修改文件用户与属主以及读写权限

1
2
3
4
5
chown -R www-data:www-data /var/www/html
find /var/www/html -type d -exec chmod g+s {} \;
chmod g+w /var/www/html/wp-content
chmod -R g+w /var/www/html/wp-content/themes
chmod -R g+w /var/www/html/wp-content/plugins

修改wp-config.php文件(vi /var/www/html/wp-config.php)

使用命令获取随机数然后替换wp-config.php文件中相应的行:

1
curl -s https://api.wordpress.org/secret-key/1.1/salt/

修改数据库连接信息,相关的信息与安装Mysql时创建wordpress数据库保持一致。

1
2
3
4
5
define('DB_NAME', 'wordpress');
define('DB_USER', 'wpdbuser');
define('DB_PASSWORD', 'wpdbpasswd');
define('DB_HOST', 'ip:3306');  /* 如果你安装同一台机器ip可以是127.0.0.1 */
define('FS_METHOD', 'direct'); /* 这个参数是新增的 */

以上完成了服务器上的所有配置。

现在你可以打开浏览器输入http://服务器ip按照wordpress的引导一步步去配置你的博客了。

 

其实我在搭建本博的时候,首先考虑的是使用nginx,测试过程发现标题使用中文会让HHVM直接down掉或者挂死,花了好些天都没找到根本原因,关于504错误网上说的可能情况很多,但都没有解决我的问题,最后决定换成Apache2(Ubuntu上的名称),你要是也遇到并解决了也请不吝赐教,我还是会考虑采用nginx的。

最后声明一下:本文所有知识均来自于互联网,博主只是加以理解整理而成,欢迎交流!