«

debian装到zfs里面(Trunas 安装时分区)

学长 发布于 阅读:424 Linux


前面的文章最后提到要把debian 装到zfs里面

我的硬件是H11SSL-i

windows 因为加了9271-8i的原因只能装server2019

但是又想把这个windows放在虚拟机中给它SSD和显卡的直通

这个pve环境最好是个代kde界面,并且具备Truenas的这样有几本NAS管理界面的设定。。。

所以我的第一步还是安装trunas

ventory在这台电脑上没法把trunas加载出来,

BMC IPMI挂的镜像文件安装成功了,但是直接把16T的硬盘全部划给boot-pool了

想进debian-live改容量debian安装zfs ,结果发现。。。安装的openzfs没法编辑truenas的zpool只能只读打开,我救恩准备重新安装了,装完truenas安装kde和gnome也许有可能要安装sddm,如果可以安装上的话,最后再在安装好的情况下安装PVE

又发现

[Scale][Howto] split ssd during installation : r/truenas

BF01

最新版的没有fdisk只有gdisk了。。。

TrueNAS Scale installation on partitioned drive | TrueNAS Community(这里有老哥给了gdisk的)

但这些都是复制小驱动器到大的驱动器的。。。

Reduce ZFS partition size : r/zfs

直接用truenas的安装包改安装后的ZFS大小好了

HOWTO: Split SSD with boot-pool to create partition for data (no USB install, easy config migration) | TrueNAS Community

这里直接改安装脚本

新的版本变成这里了:

进shell

输入这个

sed -i 's/-n3:0:0/-n3:0:+16384M/g' /usr/lib/python3/dist-ptrackages/truenas_installer/install.py

然后输入exit就可以回到安装页面

这个写法是16G的,小点到时候能扩容

引用自How to install TrueNAS SCALE on a partition instead of the full disk · GitHub

为了方便安装PVE和KDE。。。我给引导分区1G 给root分了60G,重启进入ui继续改shell(system--shell)

sed -i 's/-n2:0:0/-n2:0:+1G/g' /usr/lib/python3/dist-ptrackages/truenas_installer/install.py

sed -i 's/-n3:0:0/-n3:0:+60G/g' /usr/lib/python3/dist-ptrackages/truenas_installer/install.py

Number  Start (sector)    End (sector)  Size       Code  Name
1            4096            6143   1024.0 KiB  EF02
2            6144         2103295   1024.0 MiB  EF00
3         2103296       125829120   59.0 GiB    BF01

把剩下的分给一个分区,BF01是bpool的code

sudo gdisk /dev/sda

n

一路回车然后输入BF01

然后

sudo zpool create 随意名字 /dev/sda4就是你刚才加的那个分区

这时候会出错因为truenas只能通过自己UI导入才能正常读写。。。

所以我也不知道数据出问题了。。。找谁去。。。哈哈哈

sudo zpool export 那个随意的名字

再在storage里面点import pool导入刚才生成的zpool(就是那个随意的名字)就可以了

下面我就继续折腾开启

apt开启

# Remount as read-write
sudo mount -o remount,rw 'boot-pool/ROOT/24.10.2/usr'

# Add bin / sbin directories to path.
export PATH=/usr/bin:/usr/sbin

# Add executable flag to binaries, which is emoved by the TrueNAS team.
sudo chmod +x /bin/apt*

# Re-enable the ability to execute the dpkg binary.
sudo chmod +x /usr/bin/dpkg

开启是开启了但是,基本是不能安装任何东西因为源还是trunas的不是debian的。。。

最后再安装PVE

Install Proxmox VE on Debian 12 Bookworm - Proxmox VE

准备ssh

Allow Kerberos Authentication要打开不然大多数的ssh都登录不上去

第一步改hosts!!!

sudo vi /etc/hosts
hostname --ip-address

返回的不要是127.0.0.1,我不知道之前的debian装pve是不是这个导致的没有网。。。

#127.0.0.1      truenas.local truenas
127.0.0.1       localhost
10.234.53.64    prox4m1.proxmox.com prox4M1 truenas.local truenas

第二步

echo "deb [arch=amd64] http://download.proxmox.com/debian/pve bookworm pve-no-subscription" > /etc/apt/sources.list.d/pve-install-repo.list

改源
但是你会发现没有读写权限,两种办法,一 su前提是你在图形界面改了root密码,默认的是没有密码的所以没法 suroot
第二种

sudo bash -c 'echo "deb [arch=amd64] http://download.proxmox.com/debian/pve bookworm pve-no-subscription" > /etc/apt/sources.list.d/pve-install-repo.list'

zsh bash sh都可以看你shell的

第三步

下载PVE的key

sudo wget https://enterprise.proxmox.com/debian/proxmox-release-bookworm.gpg -O /etc/apt/trusted.gpg.d/proxmox-release-bookworm.gpg

第五步

这时候pve的源就加入成功了

sudo apt update && apt full-upgrade

还是会提醒你不要apt,无所谓了

第六步

开始安装pve的内核

sudo apt install proxmox-default-kernel

会得到一个错误,大概就是boot不能读写的问题

unable to clean up mess surrounding './boot/System.map-6.8.12-9-pve

重新把mount ro的改成rw

mount |grep ro, |grep boot|awk '{print $1}'
boot-pool/ROOT/24.10.2
boot-pool/ROOT/24.10.2/conf
boot-pool/ROOT/24.10.2/opt
boot-pool/ROOT/24.10.2/usr

这些是ro的,做个记录

mount |grep ro |grep boot|awk '{print $1}'| xargs -i sudo mount -o remount,rw '{}'
sudo apt --fix-broken install

还是有/lib/firmware/e100/d101m_ucode.bin没法overwrite的问题

sudo dpkg --purge --force-all firmware-intel-misc firmware-intel-graphics firmware-mediatek

说白了就是一些驱动Truenas和PVE都有,另外的的硬件是AMD,强制删除Truenas中的驱动安装PVE的,遇到啥就导致出错就把原来的卸载掉在 sudo apt --fix-broken install就好了

然后又是一堆错误:

mdadm: failed to auto-generate temporary mdadm.conf file.
mkinitramfs: failed to determine device for /

sudo bash -c 'echo "MODULES=most" >> /usr/share/initramfs-tools/conf-hooks.d/zfs'
sudo touch /etc/initramfs-tools/modules

参考自:在TrueNAS系统中安装PVE内核 | 迷失的小K 大概是告诉pve我们的引导是zfs的而不是debian默认的md

继续 sudo apt --fix-broken install

然后就是官方的:

sudo systemctl reboot

就是重启

就看能不能起来了。。。

第七步

重启了只读的分区还是只读。。。所以得再执行下挂载rw,我这段写的好丑啊。。。

mount |grep ro |grep boot|awk '{print $1}'| xargs -i sudo mount -o remount,rw '{}'
sudo apt install proxmox-ve postfix open-iscsi chrony

有错误,大概是因为truenas现在也是有虚拟机的,然后这两者不兼容

librados2在https://apt.sys.truenas.net/electriceel/nightlies/debian中的版本低于pve需要的librados2 (>= 16.2.15+ds)

sudo vi /etc/apt/sources.list

把原来的主源备注掉

在这一行按 o添加 debian的主源,把truenas的主源备注掉

deb https://deb.debian.org/debian bookworm main

sudo apt update 然后 sudo apt install librados2更新掉这个卡住的lib。。。。

这时候一堆 trunas的依赖库可以删掉了 sudo apt autoremove估计就是这个时候因为主源回到了debian导致的问题。。。安装完 librados2后切换回 truenas的源并 sudo apt update不然会导致下面的 truenaszfs丢失。。。

把这个再来一遍我估摸着

sudo apt install proxmox-ve postfix open-iscsi chrony

呃。。。需要1300多M。。。我已经不确定安装完后truenas还能不能正常跑了。。。

sudo apt remove linux-image-amd64 'linux-image-6.1*'

还有些不太影响大碍的erro就忽略了,到时候pve起不来再修

sudo update-grub

呃。。。貌似。。。主源里面因为不带 contrib。。。把 zfs相关的删除了。。。grub2找不到zfs的引导。。。

把主源切回 truenas。。。

sudo dpkg --purge --force-all proxmox-ve

sudo apt install zfsutils

嗯。。。过会在安装下 proxmox-ve,并且上面的安装过程会询问你是否需要覆盖安装肯定要覆盖。。。不然引导都没了。。。系统玩完了。。。

再来一遍 sudo apt install proxmox-ve postfix open-iscsi chrony外加 sudo apt remove linux-image-amd64 'linux-image-6.1*'proxmox-ve安装的集成到内核的意思吧,

sudo update-grub提示 libzfs缺失这个这是个 pythonlib不能简单通过 apt恢复???毕竟我前面的都是 apt操作啊

wget https://github.com/truenas/py-libzfs/archive/refs/heads/master.zip

unzip master.zip

cd py-libzfs-master

./configure && make install

最后还是找到 sudo apt install python3-libzfs就不要自己编译了。。。

然后就有1300M的东西提示 apt autoremove了。。。所以就是那个源的问题。。。之前的那个换源只是为了 librados2可以安装上去。。。我删除了1300M然后彻底。。。没法运行啦。。。因为zsh都被删了。。。

哈哈哈

!!!重装!!!

重开一篇TrueNas上安装PVE和kde Genome图形界面

在安装kde和genome

Developer Workstations with Proxmox VE and X11 - Proxmox VE

介绍的装的是xfce4和lightdm,我想装的是kde,gnome用的是sddm登录界面


扫描二维码,在手机上阅读