简介

Hugo是由Go语言实现的静态网站生成器。简单、易用、高效、易扩展、快速部署。

该篇文章是在Linux/Ubuntu系统下安装搭建 Hugo 博客。

本博客参考了该视频:https://www.bilibili.com/video/BV1q4411i7gL

一、安装Hugo

到 https://github.com/gohugoio/hugo/releases 查看与CPU对应的版本下载

我用 sudo apt-get install 命令下载的 hugo 是16年的版本,所以我建议到官网手动下载 deb 安装程序,或者复制下载地址,用命令

wjy@ubuntu:~$ wget https://github.com/gohugoio/hugo/releases/download/v0.80.0/hugo_0.80.0_Linux-64bit.deb

​ 进行下载,下载完后安装:

wjy@ubuntu:~/Downloads$ sudo dpkg -i hugo_0.80.0_Linux-64bit.deb
(正在读取数据库 ... 系统当前共安装有 183289 个文件和目录。)
正准备解包 hugo_0.80.0_Linux-64bit.deb  ...
正在将 hugo (0.80.0) 解包到 (0.80.0) 上 ...
正在设置 hugo (0.80.0) ...

这样表示成功。验证(查看版本):

wjy@ubuntu:~$ hugo version
Hugo Static Site Generator v0.80.0-792EF0F4 linux/amd64 BuildDate: 2020-12-31T13:37:58Z

二、用hugo来生成博客

命令:

wjy@ubuntu:~$ hugo new site myblog
Congratulations! Your new Hugo site is created in /home/wjy/myblog.Just a few more steps and you're ready to go:1. Download a theme into the same-named folder.Choose a theme from https://themes.gohugo.io/ orcreate your own with the "hugo new theme <THEMENAME>" command.
2. Perhaps you want to add some content. You can add single fileswith "hugo new <SECTIONNAME>/<FILENAME>.<FORMAT>".
3. Start the built-in live server via "hugo server".Visit https://gohugo.io/ for quickstart guide and full documentation.

myblog 为博客的目录名,这个看个人意愿取名

三、下载并设置主题

主题官网:https://themes.gohugo.io ,找到想要的主题,点击去,复制下载命令,下载到 myblog 目录下的 themes 目录下,

例如,在 themes 目录下命令:

wjy@ubuntu:~/myblog/themes$ git clone https://github.com/vaga/hugo-theme-m10c.git m10c
正克隆到 'm10c'...
remote: Enumerating objects: 22, done.
remote: Counting objects: 100% (22/22), done.
remote: Compressing objects: 100% (17/17), done.
remote: Total 345 (delta 3), reused 13 (delta 3), pack-reused 323
接收对象中: 100% (345/345), 459.21 KiB | 236.00 KiB/s, 完成.
处理 delta 中: 100% (118/118), 完成.
检查连接... 完成。

下载后目录名默认为链接的最后的“/”后的目录名,在链接后面加 m10c,相当于把下载的主题放在 m10c 目录下,而不是使用默认的名字,需要注意,下载主题要使用到 git 命令。下载 git

wjy@ubuntu:~/myblog/themes$ sudo apt-get install git

验证(查看版本):

wjy@ubuntu:~/myblog$ git version
git version 2.7.4

四、在本地启动博客

myblog 目录下命令:

root@ubuntu:/home/wjy/myblog# hugo server -t m10c --buildDrafts
Start building sites … | EN
-------------------+-----Pages            |  7  Paginator pages  |  0  Non-page files   |  0  Static files     |  1  Processed images |  0  Aliases          |  1  Sitemaps         |  1  Cleaned          |  0  Built in 11 ms
Watching for changes in /home/wjy/myblog/{archetypes,content,data,layouts,static,themes}
Watching for config changes in /home/wjy/myblog/config.toml
Environment: "development"
Serving pages from memory
Running in Fast Render Mode. For full rebuilds on change: hugo server --disableFastRender
Web Server is available at http://localhost:1313/ (bind address 127.0.0.1)
Press Ctrl+C to stop

-t:指定主题(主题目录名)

访问 Web Server is available at http://localhost:1313/ (bind address 127.0.0.1) 里的本地网址,即可打开博客网页,如下:

五、写一篇文章

1、生成md文件

myblog 目录下:

root@ubuntu:/home/wjy/myblog# hugo new post/blog.md
/home/wjy/myblog/content/post/blog.md created

生成的 md 文件在myblog/context/post目录下:

root@ubuntu:/home/wjy/myblog/content/post# ls
blog.md

2、编写

可以现在Windows下写好博客,比如我这篇,也是在Windows下编写的,编写完后,保存,用记事本打开,全选,复制,在Linux下编辑blog.md,打开文件命令:

root@ubuntu:/home/wjy/myblog/content/post# vim blog.md

进入编辑页面:

输入 i ,在 ~ 前,--- 后右键,粘贴,保存退出(键入 ESC : wq ,回车),这样,文章就写好了,可以重新运行看看文章。

六、将个人博客部署到远程服务器

1、登录GitHub官网

①新建一个仓库

②填写仓库地址,填写格式为:用户名小写.github.io ,例如我的仓库地址:wujvya.github.io ,那么我就可以通过 https://wujvya.github.io 来访问我的博客

③创建仓库

2、生成静态网页

命令:

root@ubuntu:/home/wjy/myblog# hugo --theme=m10c --baseUrl="https://wujvya.github.io" --buildDrafts
Start building sites … | EN
-------------------+-----Pages            | 10  Paginator pages  |  0  Non-page files   |  0  Static files     |  1  Processed images |  0  Aliases          |  2  Sitemaps         |  1  Cleaned          |  0  Total in 25 ms

其中:

--theme=m10c 指定主题

--baseUrl="https://wujvya.github.io" 指定仓库地址

会把博客编译成网页形式,在myblog/public目录里面

3、上传到GitHub

a、把 public 文件夹创建成 git 仓库:

root@ubuntu:/home/wjy/myblog/public# git init
初始化空的 Git 仓库于 /home/wjy/myblog/public/.git/

b、把所有的文件添加进去:

root@ubuntu:/home/wjy/myblog/public# git add *

c、提交:

root@ubuntu:/home/wjy/myblog/public# git commit -m "第一次提交"
[master (根提交) 2033233] 第一次提交15 files changed, 436 insertions(+)create mode 100644 404.htmlcreate mode 100644 avatar.jpgcreate mode 100644 categories/index.htmlcreate mode 100644 categories/index.xmlcreate mode 100644 css/main.min.88e7083eff65effb7485b6e6f38d10afbec25093a6fac42d734ce9024d3defbd.csscreate mode 100644 index.htmlcreate mode 100644 index.xmlcreate mode 100644 page/1/index.htmlcreate mode 100644 post/blog/index.htmlcreate mode 100644 post/index.htmlcreate mode 100644 post/index.xmlcreate mode 100644 post/page/1/index.htmlcreate mode 100644 sitemap.xmlcreate mode 100644 tags/index.htmlcreate mode 100644 tags/index.xml

d、本地仓库(public文件夹)与远程仓库关联:

root@ubuntu:/home/wjy/myblog/public# git remote add origin https://github.com/WuJvya/wujvya.github.io.git

注意:关联的地址为 打开你新建的仓库的全地址(浏览器地址栏的地址) 加上 .git

e、把博客推送到远程仓库(把代码放到远程仓库):

先输入下面的命令,用于保存账号和密码(第一次要输入账号和密码,之后就不用了)

root@ubuntu:/home/wjy/myblog/public# git config --global credential.helper store
root@ubuntu:/home/wjy/myblog/public# git push -u origin master
Username for 'https://github.com': 1813114396@qq.com
Password for 'https://1813114396@qq.com@github.com':
对象计数中: 26, 完成.
Delta compression using up to 2 threads.
压缩对象中: 100% (21/21), 完成.
写入对象中: 100% (26/26), 6.45 KiB | 0 bytes/s, 完成.
Total 26 (delta 9), reused 0 (delta 0)
remote: Resolving deltas: 100% (9/9), done.
To https://github.com/WuJvya/wujvya.github.io.git* [new branch]      master -> master
分支 master 设置为跟踪来自 origin 的远程分支 master。

输入完命令后,需要你输入GitHub的账号和密码,账号可以为用户名或者邮箱,完成后刷新远程仓库,就可以看到提交的文件。

好了,到这里,你的博客就搭建完成了。

七、新增文章

生成文章后,相当于执行六、将个人博客部署到远程服务器中的第2步及之后,除下第3.d步的所有步骤。

新建博客文章文件:

root@ubuntu:/home/wjy/myblog# hugo new post/blog2.md
/home/wjy/myblog/content/post/blog2.md created

生成静态网页:

root@ubuntu:/home/wjy/myblog# hugo --theme=m10c --baseUrl="https://wujvya.github.io" --buildDrafts
Start building sites … | EN
-------------------+-----Pages            | 11  Paginator pages  |  0  Non-page files   |  0  Static files     |  1  Processed images |  0  Aliases          |  2  Sitemaps         |  1  Cleaned          |  0  Total in 28 ms

添加文件:

root@ubuntu:/home/wjy/myblog/public# git add *

提交:

root@ubuntu:/home/wjy/myblog/public# git commit -m "第二次提交"
[master 6bc7870] 第二次提交6 files changed, 132 insertions(+), 7 deletions(-)create mode 100644 post/blog2/index.html

推送到远程仓库:

root@ubuntu:/home/wjy/myblog/public# git push -u origin master
Username for 'https://github.com': 1813114396@qq.com
Password for 'https://1813114396@qq.com@github.com':
对象计数中: 10, 完成.
Delta compression using up to 2 threads.
压缩对象中: 100% (9/9), 完成.
写入对象中: 100% (10/10), 1.10 KiB | 0 bytes/s, 完成.
Total 10 (delta 7), reused 0 (delta 0)
remote: Resolving deltas: 100% (7/7), completed with 5 local objects.
To https://github.com/WuJvya/wujvya.github.io.git2033233..6bc7870  master -> master
分支 master 设置为跟踪来自 origin 的远程分支 master。

八、疑难解答

本文图片有时候无法正常显示,可切换手机浏览(在写这篇文章时遇到过)。

若有疑问或发现不足,请留言或至本人邮箱:1813114396@qq.com

祝每位程序猿在以后的日子里蒸蒸日上!

在Linux系统搭建Hugo博客相关推荐

  1. hugo本地服务器不显示文章,Windows10本地搭建hugo博客教程 – 有点嫌弃我自己的家庭版系统...

    大鸟前面的文章说了如何下载安装Git,安装了肯定是有用的,我们暂时先放在那边,现在大鸟准备在本地的Windows10里面搭建hugo博客. Hugo是由Go语言实现的静态网站生成器.简单.易用.高效. ...

  2. 搭建hugo博客部署到Github

    文章目录 前提 安装 启动 部署 增加文章 修改配置 解决图片问题 前提 一定要配置好git,具体教程见 windows下搭建hexo博客部署到github 推荐在Microsoft Store安装W ...

  3. windows从零搭建hugo博客

    写在前面的话 作为一个计算机专业的学生,平时没有好好学习,可又没想过转专业,听说程序员和博客很配,我早就想过搭建一个个人博客了,可是直到大四我才真正动起手来.我是按照在bi站上的一个大神CodeShe ...

  4. linux hexo搭建个人博客,gitee和hexo搭建个人博客

    首先准备软件:git (提供命令git) notepad++(方便编辑) nodejs(hexo依赖) 7z(压缩包) 安装 nodejs.git.notepad++和7z的安装过程省略.主要要说的是 ...

  5. Hugo博客部署到腾讯云轻量级服务器

    文章目录 一.前置条件 二.服务器下载nginx 三.防火墙设置 四.将静态网页传送到服务器 五.申请ssl证书 六.配置nginx的nginx.conf文件 七.后续发布文章 文章内容可能不全面和详 ...

  6. 使用 hugo oss 搭建个人博客网站

    系列文章目录 文章目录 系列文章目录 前言 一.下载hugo 二.oss 三.域名 四.创建博客上传 五.发布,上传文章 前言 本文主要详解如何用最低的成本搭建个人博客网站 原本我是直接用的githu ...

  7. Github Pages + Hugo 搭建个人博客

    文章目录 Github Pages + Hugo 搭建个人博客 零.效果 一.创建 Github 库 二.安装 Hugo 和 Git 三.新建 Hugo 网站 四.选择 Hugo 主题 五.新建文章 ...

  8. Hugo 博客搭建教程

    前言 有了利用 Hexo.docsify.vuepress 等框架来搭建博客的经历之后,我们来今天又来看看 Hugo.Hugo 是一款基于 Go 语言而实现的静态网站生成器,具有简单易用.高效易扩展. ...

  9. Linux下使用 github+hexo 搭建个人博客01-hexo搭建

    为什么要搭建自己的博客系统? 原因有好几个吧,归类如下: 1.自己搭建博客系统很有成就感,可以自己选定页面风格和页面排版: 2.自己搭建博客系统可以根据自己的需要添加各种插件功能,因此整体上比网上的第 ...

最新文章

  1. XLSReadWriteII 4.00.62 XE2 可以使用
  2. JZOJ 5606. 【NOI2018模拟3.27】Yja
  3. C语言的实现经过(C代码到CPU执行)
  4. 增大mysql修改表空间_Oracle修改表空间为自动扩展
  5. css纯字母或者字母换行显示
  6. 带头结点头部插入创建链表
  7. 【牛客 - 157C】PH试纸(前缀和,或权值线段树,主席树)
  8. C.One Piece
  9. 黄聪:Delphi 日期格式问题 - is not a valid date
  10. tensorflow不能安装问题之(wrapt)
  11. java后端getmonth_Java YearMonth getMonth()用法及代码示例
  12. 性能优化: 资源合并与压缩 -- 压缩(前端开发过程中 JavaScript、HTML、CSS 文件的压缩)
  13. 百度云服务器BCC购买
  14. 在python培训价格
  15. 自动驾驶仿真软件SCANeR studio(初级练习1):scenario构建之driver模式理解
  16. 弄懂这56个Python使用技巧,掌握Python高效开发
  17. 如何将文件夹中的图片名字提取到一个txt文档上
  18. 固态、机械双硬盘+UEFI、APT+Win10、Ubuntu18.04LTS双系统+GTX 1080Ti+Cuda9.0+cudnn7.1.4+Tensorflow1.12
  19. 从大盘数据看A股是否为政策市
  20. 【机器学习笔记37】模糊聚类分析(基于最大生成树)

热门文章

  1. select2下拉搜索框匹配汉字全拼及首字母
  2. linux网络爬虫代码,简单爬虫思路
  3. GitHub仓库push报错remote: Support for password authentication was removed on August 13, 2021.
  4. 我们为什么要去月球“吃土”?
  5. 我的2019计算机保研夏令营/预推免经历【中南,北理工,北航,南大,浙大】
  6. 怎么看服务器的内部性能参数,怎么看服务器详细配置参数
  7. 瓷器进口关税多少及相关瓷器进口报关流程中会遇到哪些问题?
  8. 《程序员生存定律》读后感
  9. 用Python写一个网络爬虫爬取网页中的图片
  10. DownAlbum:Chrome的pinterest批量下载插件