> From: Victor Sudakov <Victor.Sudakov@f49.n5005.z2.fidonet.org> > Date: Wed, 16 Dec 2015 11:45:04 +0300 > > >> >> А никто не разобрался, как сейчас (пока патч еще не попал в > >> дерево) > >> >> можно загрузиться с другого BE? Видимо надо выйти в loader > >> prompt и > >> >> поменять какие-то переменные, а какие именно? Я пробовал > >> >> переопределить currdev, не грузится :-( > >> KS> vfs.root.mountfrom, может? > > >> AFAIK vfs.root.mountfrom это уже когда ядро загружено. А boot > >> environment надо раньше выбирать, могут быть BE с разными ядрами, > >> соответственно это должно быть что-то вроде loaddev или currdev с > >> указанием ZFS dataset, где лежит нужный BE. Hо в лоб у меня не > >> получилось с переопределением этих переменных в лоадере. > KS> У меня сейчас не на чем поэкспериментировать, а виртуалку разводить > KS> несколько некогда. Hо что-то мне кажется, что в loader prompt можно > KS> сказать типа > KS> unload kernel > KS> load <какое нужно ядро> > KS> ну и vfs.root.mountfrom > > KS> Впрочем, я не знаю, какие именно ядра loader увидит при загрузке, и > >Он должен увидеть не ядра, а zfs datasets, на которых лежат разные BE, в >которых могут быть разные /boot со всем содержимым. > >Вот в случае системы, стоящей на zfs root: > >root@testbsd:~ kenv | grep zroot >currdev="zfs:zroot/ROOT/test1:" >loaddev="zfs:zroot/ROOT/test1:" >vfs.root.mountfrom="zfs:zroot/ROOT/test1"
Так это у тебя уже когда ядро загружено. А надо (правда, мне не совсем понятно, зачем) на уровне loaderа. Это делается установкой свойства zpool set bootfs=$POOL/$DATASET $POOL перед перезагрузкой. А уж на датасете и ядро своё, и loader.conf со своим vfs.root.mountfrom, если дефолт не устраивает.
Вал. Дав.
--- ifmail v.2.15dev5.4 * Origin: Demos online service (2:5020/400)