我需要使用 cloud-init 在 Debian 实例上安装一些 zfs 包。其中一个包需要 contrib 源。我可以让它更新源列表,但包安装失败。如果我删除 contrib 源列表,一些包会安装,但不会安装需要 contrib 的包。有点像第 22 条军规。有人使用 cloud-init 成功安装 zfs 和所有先决条件吗?
这是我在添加package_update
或preserve_sources_list: true
更新 sources.list 文件时使用的方法。我赢不了。哈哈谢谢!
#cloud-config
locale: en_US.UTF-8
timezone: America/New_York
apt:
sources_list: | # needed for spl package
deb $MIRROR $RELEASE bullseye main contrib
deb-src $MIRROR $RELEASE bullseye main contrib
deb $MIRROR $RELEASE bullseye-updates main contrib
deb-src $MIRROR $RELEASE bullseye-updates main contrib
deb $MIRROR $RELEASE bullseye-security main contrib
deb-src $MIRROR $RELEASE bullseye-security main contrib
packages:
- linux-headers-5.10.0-21-amd64
- linux-image-amd64
- spl
- kmod
- snapd
- nfs-common
- htop
- nano
- build-essential
- zfsutils-linux
- zfs-dkms
- zfs-zed
runcmd:
- mkdir /mnt/v-nas
- mkdir /mnt/home
答案1
您的源代码行看起来不对。在 debian bullsye 上,$RELEASE
将被替换为bullseye
。
因此:
deb $MIRROR $RELEASE bullseye main contrib
应呈现为你的 apt 列表配置:
deb http://some.site.com/ bullseye bullseye main contrib
那真的应该有两个bullseye
条目吗?