linux hexo 配置

过段时间打算出去玩会,带不了电脑,阿里云服务器一直没用,刚好用来放 hexo,部署还是用 github pages,后续再考虑迁移服务器,现服务器只做发布用途,手机将写好的文章上传,更新

JDK 安装

  • 检查是否有自带 jdk,有,卸载,执行: jdk rpm -qa grep java
  • 安装:$ wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz
  • 解压:$ tar -zxvf jdk-8u131-linux-x64.tar.gz
  • 移动:$ mv jdk1.8.0_131 jdk1.8 mv jdk1.8 /usr/java
  • 配置环境变量: $ vim /etc/profile 尾部添加:
    export JAVA_HOME=/usr/java/jdk1.8
    export PATH=$PATH:$JAVA_HOME/bin
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
  • 生效:$ source /etc/profile
  • 检查:$ java -version ;$ javac -version

Git 安装

Git 的工作需要调用 curl,zlib,openssl,expat,libiconv 等库的代码

  • 依赖安装: $ yum install curl-devel expat-devel gettext-devel
    openssl-devel zlib-devel
  • $ yum install git-core # 这一步我没做表示已经安装了 git,百思不得其解
  • $ git --version #检查

Node.js 安装

  • 下载:$ wget https://nodejs.org/dist/v10.14.0/node-v10.14.0-linux-x64.tar.xz
  • 解压:$ tar xf node-v10.14.0-linux-x64.tar.xz
  • 移动:$ mv node-v10.14.0-linux-x64 node10.14
  • 配置环境变量: vim /etc/profile 尾部添加:
    # set for nodejs
    export NODE_HOME=/usr/local/node10.14
    export PATH=$NODE_HOME/bin:$PATH
  • 验证: $ node -v

配置 git 与 github 连接,添加公钥即可

git 与 github 连接

pull github hexo 分支
预先将 blog 备份到 catlvsuger.github.io 的 hexo 分支,更换电脑时 pull 即可

  • git clone -b hexo https://github.com/catlvsuger/catlvsuger.github.io
  • npm install # 安装依赖
  • 验证 hexo ,并不行,还是要安装 hexo,我还以为 clone 下来,免安装,并没有
  • 安装 hexo: npm install -g hexo

安装 hexo 插件(未特别说明,均在博客主目录下安装):

  1. 部署插件: npm install hexo-deployer-git --save
  2. rss插件: npm install hexo-generator-feed --save
  3. 字数统计: npm install hexo-wordcount --save
  4. 本地搜索:npm install hexo-generator-searchdb --save
  5. 注脚:npm install hexo-footnotes --save (暂无使用)
  6. 静态资源压缩: npm install gulp -g(全局安装)
    npm install gulp gulp-minify-css gulp-htmlmin gulp-htmlclean --save
    添加 gulpfile.js(点击查看 ctrl f 搜索 gulpfile.js)
  7. 置顶: 先移除 npm uninstall hexo-generator-index --save
    再安装新的 npm install hexo-generator-index-pin-top --save
  8. 使用emoji:npm install hexo-filter-github-emojis --save
  9. 音乐: npm install hexo-tag-aplayer --save
  10. 视频: npm install hexo-tag-dplayer --save
  11. 加速: npm install hexo-service-worker hexo-filter-optimize --save
  12. 站点地图: npm install hexo-generator-sitemap
    npm install hexo-generator-sitemap --save-dev

运行

hexo clean # 清除以前的文件
hexo g #编译
gulp # 压缩
hexo d # 部署到 github gages
hexo s # 本地启动

hexo g 时报错 Template render error
查看 https://hexo.io/docs/troubleshooting.html, 没有找到答案,查看 theme next 文件夹,才发现是个空文件夹,重新 pull,发现 github next 就是空的;原因是上传 hexo 备份时 github 仓库冲突

处理:
git rm -r --cached . # 清除本地仓库 git 缓存
git add . #重新添加
git commit -m 'add myblog'
git push
重新 pull
运行 hexo clean && hexo g && gulp && hexo s #本地运行(http://47.107.98.139:4000/ 访问未成功,原因:阿里云设置了端口访问,所以在安全组里添加 外网访问即可)

git push 报错
测试 push ,报错:Updates were rejected because the tip of your current branch is behind,原因我在远程修改了,同时在 linux 中修改了,目前我要保证 linux 功能是好的,所以直接强制 push

$ git push -u origin master -f
参考 git常见问题

运行 hexo clean && hexo g && gulp && hexo d
一切 ok,mydiscat.cn 切换到linux


其他

配置定时 deploy、push 功能
设置 ftp ,手机通过 ftp 上传到 (遇到个问题,文件能下载不能上传,开始以为阿里云出入网安全设置问题,设置了安全组还是没有解决,提交工单,很快就有反馈,经提示才想起用户没设置读写权限,这破记性 )

接下来就是 学习 、玩 ,写好记录 上传到服务器,定时发布,七牛云需要域名备案才能用,之前没通过,图片暂时用上传的图片地址 ,啦啦啦啦啦啦啦 哦了~~~~~

你可能感兴趣的:(linux hexo 配置)