Я использовал бы сценарий, чтобы сделать это только для хождения его безопасная сторона:
#!/usr/bin/env bash
export SOME_VAR=/path/to/main/folder
source $SOME_VAR/loading/stuff.sh --quiet
loadApp1
loadApp2
loadApp3
loadApp4
Просто сохраните это в Вашем $PATH
, сделайте это исполняемым файлом и выполните его вместо своей функции.
Хорошо, я разобрался сам.
ZFS Loader не позволяет задать корневой пул для загрузки, но пытается угадать правильный пул путем объединения BIOS в соответствии с порядком приоритета загрузки.
Чтобы заставить его загружаться из правильного пула, я установил в качестве первого загрузочного устройства в BIOS диск, содержащий загрузчик, а вторым и третьим - диски, принадлежащие корневому зеркальному пулу.
попытаться cp -r / boot
из правильного пула в неправильный пул. убедитесь, что свойство bootfs
в неправильном пуле пусто или установлено для правильного пула.
Загрузитесь с подходящего дистрибутивного компакт-диска в режим "live CD". Войдите в систему как root.
Теперь предположим, что ваш загрузочный пул называется «tank»;
импортируйте пул без его монтирования -
zpool import -N -f tank
Затем установите свойство bootfs соответствующим образом. Обычное имя загрузочной файловой системы - "tank / ROOT / default"
zpool set bootfs=tank/ROOT/default tank
, это все для загрузочного пула. Повторите эти действия для незагрузочного пула, на этот раз установив для свойства bootfs значение "". Вот и все.