linux中安装hexo编译博客


title: linux中安装hexo编译博客
categories: 运维
date: 2019-10-29 01:41:10
tags: linux
toc: true
---

背景

几天前就看到服务器要到期了,没去管他,结果给忘了,今天凌晨过期了,这台阿里云华东2(上海)的机器也用了快2年了,物理位置在上海让我这个强迫症很不舒服,而且40G的盘都用了30G了(反正就是给自己各种不嫌麻烦的借口),看到新出的学生机有可以购买在华东1(杭州)就果断释放了原来的服务器,新购于杭州节点
之前用宝塔做了备份策略,所以数据都储存在我的OSS里面


前几天用hexo在github上发布了博客,但是只能在我自己的电脑上进行编译,有一些局限,所以先在这台服务器上安装hexo用来在云端编译博客。


顺便发现了个BUG,阿里云学生机在认证期限内,好像可以不限次数的续费,我准备存点生活费续他个十年八年的试试。
废话不多说
----

安装

连接服务器

管你cmd、xshell、hyper、putty还是什么的,连的上就完事

安装node.js

这是个JavaScript运行环境

  • 从官网下载linux版本的node.js 或者直接采用wget方式下载

这里使用wget下载

wget https://nodejs.org/dist/v10.9.0/node-v10.9.0-linux-x64.tar.xz

  • 把他解压了

tar xf node-v10.9.0-linux-x64.tar.xz

  • 解压以后测试是否安装成功

移动到目录

cd node-v10.9.0-linux-x64/
执行命令

./bin/node -v // 如果出现版本号,说明安装成功
修改node-v10.9.0-linux-x64文件夹名字为nodejs

cd ..
mv node-v10.9.0-linux-x64 nodejs
  • 设置软连接

    ln -s /soft/hexo/nodejs/bin/node /usr/local/bin/node
    ln -s /soft/hexo/nodejs/bin/npm /usr/local/bin/npm

git安装

  • 安装依赖包

    yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel
    yum install gcc perl-ExtUtils-MakeMaker

通过命令 git --version 可以看到,Git 当前的版本号为 1.8.3.1,太过于陈旧,所以需要先把它移除了。

  • 卸载旧版本的 Git
    yum remove git
  • 下载并解压

    wget https://github.com/git/git/archive/v2.9.2.tar.gz
    tar -zxvf v2.9.2.tar.gz // 解压
    mv v2.9.2.tar.gz git //重命名

  • 编译安装

    cd git // 进入文件夹
    make prefix=/usr/local/git all // 编译源码
    make prefix=/usr/local/git install // 安装至 /usr/local/git 路径

编译时,由机器配置决定速度,请耐心等待。

  • 打开环境变量配置文件
    vim /etc/profile

在文件底部添加以下配置。

PATH=$PATH:/usr/local/git/bin // git 的目录
export PATH

两个语句都要加上

刷新环境变量
source /etc/profile
最后再使用 git --version 查看版本号,已经为 2.9.2

安装hexo

npm install hexo-cli -g

搭建博客基础

  • 先把hexo命令添加到全局:hexo在nodejs的lib/node_modules/hexo-cli/bin 可以找到hexo命令方式是采用软连接

    ln -s /soft/hexo/nodejs/lib/node_modules/hexo-cli/bin/hexo /usr/local/bin/hexo`

  • 部署hexo博客环境:这个可以放在nodejs外面,方便打开
    cd 到和nodejs一个目录下(我是放在根目录下的)然后:

    mkdir hexo
    cd hexo
    hexo init //会自动把资源文件下载好

解释一下
node_modules:是依赖包
public:存放的是生成的页面
scaffolds:命令生成文章等的模板
source:用命令创建的各种文章
themes:主题
_config.yml:整个博客的配置
db.json:source解析所得到的
package.json:项目所需模块项目的配置信息

  • 搭桥到github

创建一个repo,名称为yourname.github.io, 其中yourname是github名称(我已经有了,就不截图了)

配置github账户信息

git config --global user.name "yourname"
git config --global user.email "youremail"

创建SSH

在gitbash中输入:ssh-keygen -t rsa -C ",生成ssh

在github的setting中找到SSH and GPG keys,点击 New SSH key

title随便取,key就填刚刚那一段ssh

在gitbash中验证是否添加成功:ssh -T

  • 一步之遥

用编辑器打开你的blog项目,修改_config.yml文件的一些配置(冒号之后都是有一个半角空格的)

deploy:
type: git
repo: https://github.com/YourgithubName/YourgithubName.github.io.git
branch: master

回到gitbash中,进入你的blog目录,分别执行以下命令

hexo clean
hexo generate
hexo server
  • 启动测试环境

hexo s

输入 localhost:4000/

如果是服务器,我的是阿里云服务器,需要配置安全组打开4000端口,这样就可以在本地访问
或者linux虚拟机,需要测试内外能否正常通信

输入ip:4000/ 即可访问hexo的初始页面

这样,基本的hexo环境就搭建好了。

相关推荐