玩转Hexo 第1章 Hexo的安装

0 写在前面

“玩转Hexo”系列文章主要讲述了如何通过Hexo在自己的服务器上搭建博客,例如我的博客。同时,文章挑选了主题icarus来作为例子,讲述了如何将已有的主题个性化。而且,文章还指出主题中在用到外网资源时会出现的问题以及解决方式。

关于云服务器和域名的购买和备案需要读者自行完成。本教程提供的例子是如何在虚拟机上从零开始搭建一个hexo博客,但方法已具有一般性。实际上,读者在虚拟机上部署Hexo博客和在云服务器上部署Hexo博客是两个identical的过程。唯一不同的可能是文章中的虚拟机用的是Ubuntu,读者的云服务器用的是CentOS(Ubuntu is still OK, it is optional!!)

在搭建Hexo之前,需要声明的是,无论是我的服务器还是虚拟机,我默认登录用户都是root。这就使得我每次输入一些命令时可以省略sudo和避免一些由于权限而引发的奇奇怪怪的问题。因此,在本教程中,我也延续了这个习惯。如果读者不知道如何设置默认root登录,可以参考我的这篇文章

现在让我们开始吧!

1 Hexo概述

Hexo 是一个快速、简洁且高效的博客框架。Hexo 使用 Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。

从上面这段话中我们可以知道,通过Hexo,我们可以直接方便地使用Mardown来写作,而不用担心我们的文章是如何被解析成一个web页面的。这样就使得我们将更多的时间分配在文章的写作中,而不用在文章的具体格式显示上浪费时间。

同时,Hexo只是一个静态博客。也就是说Hexo并不会像淘宝一样可以登录、有控制台什么的。Hexo的功能仅限于显示静态页面,而我们每次在添加文章时都需要手动地加入到Hexo相应的文件夹中,并使用命令生成静态页面。

2 安装Hexo

2.1 环境依赖

Hexo的安装依赖于NodeJS和Git,下面分别安装。如果下面的命令下载慢,读者需要注意是否已经更换了国内源。

首先安装Git。

apt install git-core

执行完毕后输入如下命令查看是否安装成功。

git --version

然后输出git版本号,则表示安装成功。

root@ubuntu:~# git --version
git version 2.7.4

NodeJS的安装稍微有点麻烦,我们先要去到NodeJS的官网,选择下方的Linux Binaries(x64)下载。

这里,我下载的是node-v14.15.1-linux-x64.tar.xz。然后将其放入到你喜欢的文件夹中,我将其放入到~/env下。

下载得到的包是已经编译好的程序,可以直接使用。但先要将其解压出来。在目录~/env下,输入如下命令进行解压,注意修改文件名。

tar -xf node-v14.15.1-linux-x64.tar.xz

输入以下命令验证是否安装成功。

node-v14.15.1-linux-x64/bin/node -v

然后可以看到如下输出。

root@ubuntu:~/env# node-v14.15.1-linux-x64/bin/node -v
v14.15.1

注意到这里的命令太长了,我们常常希望省略可执行程序所在的文件夹名字来调用这个程序。即我们希望直接使用node -v即可输出上面的结果。此时,我们需要将文件夹node-v14.15.1-linux-x64/bin/下的命令添加到环境变量即可。我采用的方法是在/usr/local/bin中创建软链接指向文件夹node-v14.15.1-linux-x64/bin/的命令,命令如下。

ln -s ~/env/node-v14.15.1-linux-x64/bin/node /usr/local/bin/
ln -s ~/env/node-v14.15.1-linux-x64/bin/npm /usr/local/bin/
ln -s ~/env/node-v14.15.1-linux-x64/bin/npx /usr/local/bin/

上述命令的路径必须使用绝对路径。

输入如下命令测试。

node -v
npm -v
npx -v

然后输出和下面类似的结果。

root@ubuntu:~/env# node -v
v14.15.1
root@ubuntu:~/env# npm -v
6.14.8
root@ubuntu:~/env# npx -v
6.14.8

这样,读者就可以缺省可执行程序的文件夹执行程序了。

2.2 安装Hexo

在上面的环境依赖安装成功后,读者就可以使用nodeJS中的npm来对Hexo需要的包进行管理了。在此之前,由于npm默认是国外源,这里同样需要换成国内源,我更换的是淘宝的源,命令如下。

npm config set registry http://registry.npm.taobao.org

然后使用npm下载Hexo。

npm install -g hexo-cli

得到如下结果。

root@ubuntu:~/env# npm install -g hexo-cli
/root/env/node-v14.15.1-linux-x64/bin/hexo -> /root/env/node-v14.15.1-linux-x64/lib/node_modules/hexo-cli/bin/hexo
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/hexo-cli/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {
    
    "os":"darwin","arch":"any"} (current: {
    
    "os":"linux","arch":"x64"})

+ [email protected]
added 63 packages from 334 contributors in 6.283s

众所周知,Error才是错误,Warning啥也不是。上面的结果可认为安装成功。Hexo博客的管理统一使用命令hexo。为了使用方便,我们也需要将其加入到/usr/local/bin中。

ln -s ~/env/node-v14.15.1-linux-x64/bin/hexo /usr/local/bin/

3 使用Hexo搭建博客

首先选择一个你喜欢的文件夹作为博客的文件夹。Hexo会将博客的所有静态页面、md文件和主题等都放在这个文件夹中。注意,这个文件夹必须是空文件夹。因此,在搭建博客之间,这个文件夹最好是通过mkdir刚刚创建的。

我选择在~/下创建文件夹blog,命令如下。

mkdir ~/blog

~/blog文件夹下,执行如下命令创建Hexo博客。

hexo init .

执行完之后可以看到博客文件夹下多了几个文件,其中包括博客的配置文件、博客的主题和博客文章的模板等。

root@ubuntu:~/blog# ls
_config.yml  node_modules  package.json  scaffolds  source  themes

然后执行如下命令安装博客,博客的主题在themes中,默认为landscape

npm install

如果此时会报错,则需要先执行下面的命令,然后再执行命令npm install

npm config set user 0
npm config set unsafe-perm true

然后启动博客。

hexo s

然后输出如下结果。

root@ubuntu:~/blog# hexo s
INFO  Validating config
INFO  Start processing
INFO  Hexo is running at http://localhost:4000 . Press Ctrl+C to stop.

注意,这个控制台不可关闭

然后虚拟机的浏览器中输入http://localhost:4000即可看到博客。

4 未完待续

在这篇文章中我们还没有解决如下问题

  • 成功搭建了博客之后如何进行写作呢?
  • ~/env/blog文件夹下的各个文件有什么作用呢?
  • 如何对博客进行个性化配置?

这些问题将在下一篇文章中揭晓。如果读者有兴趣,可以先行摸索。

猜你喜欢

转载自blog.csdn.net/NelsonCheung/article/details/110491873