重装系统后hexo写博客功能的恢复

重装系统后hexo写博客功能的恢复

前两天重新给电脑装了个win10,之前存放在C盘的里面的hexo全部没有了,折腾了半天,终于恢复了hexo写博客的功能,现在记录下来,给需要的朋友备用。

对于hexo来说,两个配置文件是最重要的,一个是hexo本身的配置文件,位于”你的hexo主目录/“下的”_config.yml”,另一个是主题的配置文件,位于”你的hexo主目录/themes/你的主题文件夹/_config.yml”,这两个文件一定要记得备份,如果没有了,那就只能重新配置了。另外就是source文件夹下的博客文章资源等,也应该做好备份。如果没有备份,那么恢复hexo的发博客功能也是没有关系的,但是配置上和博客文档上可能需要自己重新配置了。

首先声明,以下所有的操作都假定你之前的hexo已经配置好,博客系统可以正常工作,只是因为重装系统或者其他操作失去了本地的hexo文件夹,现在要恢复hexo而已,并且以下都是基于windows系统的。

安装git和nodejs

这两个软件是hexo可以正常工作的基础,必须要先安装好。安装后,要在cmd命令行执行node -vnpm -v检查是否安装成功。

安装hexo

如果git和npm都已经安装好了,那么现在可以直接安装hexo了,在命令行中执行以下命令:
npm install -g hexo-cli

将hexo安装到全局。

建立hexo文件夹

在自己选定的某个目录下,新建一个文件夹,这个文件夹就是之前的hexo文件夹,可以命名为’hexo’。进入hexo文件夹,按住shift加鼠标右键,选择“在此处打开命令窗口”(或者直接通过cmd进入此文件夹也可),在打开的命令行窗口中执行:

1
hexo init

此命令执行完成后,会在该文件夹下生成多个文件,这是hexo的基本文件,然后继续执行:

1
npm install

安装hexo必须的依赖包。安装时可能会有一些warning的提示,但一般不会影响使用。可以进入node_modules文件夹查看安装的依赖包情况。至此hexo文件夹的基础部分就恢复了。

如果备份了hexo的配置文件_config.yml,可以直接将文件复制过来覆盖,如果没有备份,那么就只能自己重新配置了。

恢复主题

先在网上搜索自己需要恢复的主题的github链接,进入hexo/themes文件夹,鼠标右键,选择”Git Bash Here”,打开git窗口,执行

1
git clone http://你找到的gitbub链接

克隆完成后,进入该主题的文件夹。如果之前备份了主题的_config.yml文件,则直接复制过来覆盖。hexo的_config.yml文件和主题的_config.yml不是同一个文件,前面已经提过。如果没有备份,那么只能重新配置一遍。

测试本地

至此,本地的配置已经完成了,可以先进行简单的本地测试。进入hexo文件夹,打开命令行窗口,或着打开Git的命令行窗口也可,执行:

1
hexo g

此时可以看到hexo在执行生成页面文件,再执行

1
hexo s

hexo启动本地服务,浏览器中输入’http://localhost:4000/‘,可以看到在本地的预览效果。至此,说明本地的配置已经完成。

恢复与github的链接

恢复到github有以下几个步骤:

配置_config.yml中的deploy

在hexo根目录下的_config.yml文件中,要配置deploy(如果是之前已经备份的则不需要改变,如果是重新写那么先要配置这个选项),格式为:

1
2
3
4
deploy:
type: git
repository: git@github.com:yourname/yourname.github.io.git
branch: master

配置公钥

一般来说,重装系统后并没有配置SSH Keys,所以还要配置SSH Key。在hexo文件夹中点击鼠标右键选择“Git Bash Here”打开命令行窗口,执行以下命令:

1
$ ssh-keygen -t rsa -C "邮件地址@youremail.com"

此时会看到窗口显示以下信息

1
2
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/your_user_directory/.ssh/id_rsa):

要求用户选择公钥的存放路径,可以手动定制,也可以直接回车放在默认的路径,后面要用到这个路径。然后,系统会要求用户输入密码:

1
2
Enter passphrase (empty for no passphrase):<输入加密串,回车>
Enter same passphrase again:<再次输入加密串,回车>

此时命令行窗口会显示以下内容:

SSH-Key公钥生成截图

说明公钥已经生成。

添加公钥到Github:

找到刚刚生成的公钥文件,文件名为id_rsa.pub。如果是自定义的公钥存放路径那是在该目录下,否则是默认的路径下。在我的win10系统中,默认路径是在’C:Userscattle.ssh’目录下,cattle是我的windows用户名,如果在win7系统,应该在’C:Documents and SettingsAdministrator.ssh’,如果实在找不到,在上面公钥生成后的提示中也可以找到,如上面的截图中的第一句就是路径信息,如果你把窗口关了,好吧,按照文件名搜一下吧。找到这个文件,用文本编辑器打开。

登录到Github,点击头像,在下拉菜单中选择Account Settings–>SSH Public keys –> add another public keys,会弹出一个文本框,title随意填写,然后复制文本编辑器中的内容,直接复制粘贴到Key中,点击Add key按钮即可。

设置用户信息

用户信息被Github用来记录提交信息。执行以下命令:

1
2
$ git config --global user.name "cnfeat"//用户名
$ git config --global user.email "cnfeat@gmail.com"//邮箱

至此,已经完成了到Github的连接。

添加CNAME和README文件

此时,如果直接执行hexo ghexo d,按照提示输入密码,就可以部署了。但是在浏览器中输入域名打开时会提示404,原因是缺少CNAME文件。

在hexo/source文件夹下,新建一个文本文件,里面的内容是域名,如’liugui.me’,然后保存,关闭,选中点击右键,属性,将文件名改成CNAME,去掉后缀,弹出的提示框直接选是。

另外,一般还需要一个README文件,同样是新建文本,内容自己写,是描述自己的博客的,然后修改属性,去掉后缀。注意,千万不要把后缀改成md,这样会编译成一个HTML文件。

重新执行以下命令:

1
2
hexo g
hexo d

然后,在浏览器中可以打开了。

小结

至此,已经完成了全部操作。提醒大家平时要备份配置文件,这样以后恢复的时候就方便多了。


:D 一言句子获取中...