从软件包安装
在 Ubuntu 24.04 上安装签名的 0.1.0 APT 包,并用 systemd 管理。
1. 添加签名 APT 仓库
软件包支持 Ubuntu 24.04(noble)的 AMD64 和 ARM64,要求 Linux 6.1+ 及可用的 io_uring。稳定版 Debian 版本为 0.1.0-1。仓库保留 beta.1,但 apt install lavik 默认选择稳定版。现有签名密钥继续有效。
# Ubuntu 24.04 (noble), AMD64 or ARM64
(
set -eu
. /etc/os-release
[ "$ID" = ubuntu ] && [ "$VERSION_ID" = 24.04 ] || { echo "Ubuntu 24.04 required"; exit 1; }
case "$(dpkg --print-architecture)" in amd64|arm64) ;; *) echo "Unsupported architecture"; exit 1 ;; esac
sudo apt-get update
sudo apt-get install -y ca-certificates curl
sudo install -d -m 0755 /etc/apt/keyrings
key_file=$(mktemp)
trap 'rm -f "$key_file"' EXIT
curl --fail --location https://lavik.dev/apt/lavik-archive-keyring.asc \
-o "$key_file"
sudo install -m 0644 "$key_file" /etc/apt/keyrings/lavik.asc
cat <<EOF_SOURCE | sudo tee /etc/apt/sources.list.d/lavik.sources
Types: deb
URIs: https://lavik.dev/apt
Suites: noble
Components: main
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/lavik.asc
EOF_SOURCE
sudo apt-get update
sudo apt-get install -y 'lavik=0.1.0-1'
lavik --version
)2. 启动服务
sudo systemctl enable --now lavik
sudo systemctl status lavik --no-pager
sudo apt-get install -y redis-tools
redis-cli -h 127.0.0.1 -p 6379 PING
redis-cli -h 127.0.0.1 -p 6379 SET hello lavik
redis-cli -h 127.0.0.1 -p 6379 GET hello全新安装后服务默认停止。服务使用 lavik 系统用户,监听 127.0.0.1:6379,仅在数据文件不存在时分配文件。数据位于 /var/lib/lavik,日志位于 /var/log/lavik。在 /etc/default/lavik 配置选项后重启服务。
选择 Minimal 或 Standard
lavik 为 Minimal;lavik-standard 另含编译的 SPDK/DPDK 支持。两者安装相同名称的程序,互相冲突,需选择其一。Standard 默认仍使用内核 TCP/io_uring。APT 包包含 lavik、lavik-meta 和 lavik-ctl;如需 Lavik Admin 和 Node.js 运行时,请下载发布压缩包。
# Alternative to Minimal; do not install both variants together.
sudo apt-get install 'lavik-standard=0.1.0-1'
lavik --version管理与升级
sudo journalctl -u lavik -n 50 --no-pager
sudo systemctl restart lavik
redis-cli -h 127.0.0.1 -p 6379 GET hello
# Stop the server without removing its package or data.
sudo systemctl stop lavik升级现有 Beta 部署前,请阅读 0.1.0 版本说明。包管理器升级并不证明磁盘格式或 Meta 状态兼容。应演练导出/导入与恢复、保留回滚副本,并避免混用 Beta 和稳定版集群成员。