Linux
版本
Hugo 提供三个版本:标准版、扩展版和扩展/部署版。标准版提供核心功能,而扩展版和扩展/部署版则提供高级功能。
功能 | 扩展版 | 扩展/部署版 |
---|---|---|
在 处理图像 时编码为 WebP 格式。任何版本都可以解码 WebP 图像。 | ✔️ | ✔️ |
使用嵌入式 LibSass 转译器[将 Sass 转译为 CSS]。任何版本都可以使用Dart Sass 转译器。 | ✔️ | ✔️ |
将您的站点直接部署到 Google Cloud Storage 存储桶、AWS S3 存储桶或 Azure 存储容器。参见 详情 。 | ❌ | ✔️ |
除非您的特定部署需求需要扩展/部署版,否则我们推荐使用扩展版。
预备条件
虽然并非所有情况下都必需,但在使用 Hugo 时,通常会用到 Git、Go 和 Dart Sass。
Git 用于:
- 从源码构建 Hugo
- 使用 [Hugo 模块] 功能
- 将主题安装为 Git 子模块
- 访问本地 Git 仓库中的 [提交信息]
- 使用 CloudCannon、Cloudflare Pages、GitHub Pages、GitLab Pages 和 Netlify 等服务托管您的网站
Go 用于:
- 从源码构建 Hugo
- 使用 Hugo 模块功能
Dart Sass 用于在使用 Sass 语言的最新功能时将 Sass 编译成 CSS。
请参考相关文档以获取安装说明:
预构建二进制文件
预构建的二进制文件适用于各种操作系统和架构。访问 最新版本 页面,然后向下滚动到“资源”部分。
- 下载所需版本、操作系统和架构的归档文件
- 解压归档文件
- 将可执行文件移动到所需目录
- 将此目录添加到 PATH 环境变量
- 验证您对该文件具有 执行 权限
如果您需要帮助设置文件权限或修改 PATH 环境变量,请查阅您的操作系统文档。
如果您没有看到所需版本、操作系统和架构的预构建二进制文件,请使用下面描述的方法之一安装 Hugo。
包管理器
Snap
Snap 是一个免费的开源 Linux 包管理器。适用于 大多数发行版 ,Snap 包易于安装且会自动更新。
Hugo Snap 包是 严格限制的 。严格限制的 Snap 在完全隔离的环境中运行,访问级别最低,被认为始终安全。您创建和构建的站点必须位于您的主目录或可移动介质中。
要安装 Hugo 的扩展版:
sudo snap install hugo
要启用或撤销对可移动介质的访问:
sudo snap connect hugo:removable-media
sudo snap disconnect hugo:removable-media
要启用或撤销对 SSH 密钥的访问:
sudo snap connect hugo:ssh-keys
sudo snap disconnect hugo:ssh-keys
Homebrew
Homebrew 是一个适用于 macOS 和 Linux 的免费开源包管理器。要安装 Hugo 扩展版,请执行以下操作:
brew install hugo
仓库包
大多数 Linux 发行版都维护着一个用于常用应用程序的仓库。
Alpine Linux
要在 Alpine Linux 上安装 Hugo 的扩展版:
doas apk add --no-cache --repository=https://dl-cdn.alpinelinux.org/alpine/edge/community hugo
Arch Linux
Arch Linux Linux 发行版的派生版包括 EndeavourOS 、 Garuda Linux 、 Manjaro 等。要安装 Hugo 的扩展版:
sudo pacman -S hugo
Debian
Debian Linux 发行版的派生版包括 elementary OS 、 KDE neon 、 Linux Lite 、 Linux Mint 、 MX Linux 、 Pop!_OS 、 Ubuntu 、 Zorin OS 等。要安装 Hugo 的扩展版:
sudo apt install hugo
您也可以从 [最新版本] 页面下载 Debian 包。
Exherbo
要在 Exherbo 上安装 Hugo 的扩展版:
-
将此行添加到 /etc/paludis/options.conf:
www-apps/hugo extended
-
使用 Paludis 包管理器安装:
cave resolve -x repository/heirecka cave resolve -x hugo
Fedora
Fedora Linux 发行版的派生版包括 CentOS 、 Red Hat Enterprise Linux 等。要安装 Hugo 的扩展版:
sudo dnf install hugo
Gentoo
Gentoo Linux 发行版的派生版包括 Calculate Linux 、 Funtoo 等。要安装 Hugo 的扩展版:
-
在 /etc/portage/package.use/hugo 中指定
extended
USE 标志:www-apps/hugo extended
-
使用 Portage 包管理器构建:
sudo emerge www-apps/hugo
NixOS
NixOS Linux 发行版在其包仓库中包含 Hugo。要安装 Hugo 的扩展版:
nix-env -iA nixos.hugo
openSUSE
openSUSE Linux 发行版的派生版包括 GeckoLinux 、 Linux Karmada 等。要安装 Hugo 的扩展版:
sudo zypper install hugo
Solus
Solus Linux 发行版在其包仓库中包含 Hugo。要安装 Hugo 的扩展版:
sudo eopkg install hugo
Void Linux
要在 Void Linux 上安装 Hugo 的扩展版:
sudo xbps-install -S hugo
从源码构建
要从源码构建扩展版或扩展/部署版,您必须:
安装目录由
GOPATH
和GOBIN
环境变量控制。如果设置了GOBIN
,则二进制文件将安装到该目录。如果设置了GOPATH
,则二进制文件将安装到GOPATH
列表中第一个目录的 bin 子目录。否则,二进制文件将安装到默认GOPATH
($HOME/go
或%USERPROFILE%\go
) 的 bin 子目录。
要构建标准版:
go install github.com/gohugoio/hugo@latest
要构建扩展版:
CGO_ENABLED=1 go install -tags extended github.com/gohugoio/hugo@latest
要构建扩展/部署版:
CGO_ENABLED=1 go install -tags extended,withdeploy github.com/gohugoio/hugo@latest
对比
预构建二进制文件 | 包管理器 | 仓库包 | 从源代码构建 | |
---|---|---|---|---|
易于安装? | ✔️ | ✔️ | ✔️ | ✔️ |
易于升级? | ✔️ | ✔️ | 有所不同 | ✔️ |
易于降级? | ✔️ | ✔️ 1(Easy) | 有所不同 | ✔️ |
自动更新? | ❌ | 有所不同 2(Snap) | ❌ | ❌ |
提供最新版本? | ✔️ | ✔️ | 有所不同 | ✔️ |