Я установил Windows Deployment Server и изменил свое загрузочное меню PXE, чтобы я мог загружать разные ядра (что работает). Сейчас я пытаюсь настроить CloneZilla также на загрузку PXE, но я не могу заставить корректно работать часть TFTP. Вот код загрузочного меню clonezilla:

label Clonezilla-live
MENU LABEL Clonezilla Live (Ramdisk)
KERNEL vmlinuz
APPEND initrd=initrd.img boot=live username=user union=overlay config components quiet noswap edd=on nomodeset nodmraid locales= keyboard-layouts= ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_batch=no net.ifnames=0 nosplash noprompt fetch=tftp://$serverIP/filesystem.squashfs

где $ serverIP - это IP-адрес моего TFTP-сервера - отсюда:

http://clonezilla.org/livepxe.php

Все отлично работает, за исключением оператора fetch в конце строки APPEND. Он будет работать, когда я попытаюсь подключиться к другому TFTP-серверу (SolarWinds), но я не могу получить его для загрузки с TDS-сервера WDS, который, как я знаю, работает, потому что WDS полагается на него. Я могу использовать TFTP-клиент для доступа к WDS TFTP-серверу, но всякий раз, когда я пытаюсь сделать это с помощью clonezilla, при попытке загрузить (или не удается) загрузить файл filesystem.squashfs выдается ошибка "Нарушение доступа".

Это может быть длинный выстрел, но я подумал, что кто-то мог столкнуться с чем-то подобным раньше.

ПОЯСНЕНИЯ

Файл filesystem.squashfs, по сути, является приложением clonezilla - это не клонированный образ, предназначенный для хранения развертываемого образа - эти файлы огромны (на концертах) и передаются с помощью других средств в приложении clonezilla. Этот файл squashfs загружается во время загрузки подсистемы Linux, а затем приложение clonezilla выполняется после завершения загрузки.

2 ответа2

1

Мне удалось решить эту проблему, основываясь на ответе telcoM и добавив /boot/* и boot/* к фильтрам в HKLM\SYSTEM\CurrentControlSet\Services\WDSServer\Providers\WDSTFTP\ReadFilter .

Кажется, что фильтры по умолчанию разрешают только ссылки на boot и tmp с обратными слешами, и чтобы клиенты могли использовать слэши, слэши должны быть явно разрешены здесь.

Конечно, после этого я перезапустил сервис WDSServer .

Моя возможная командная строка:

append initrd=initrd-clonezilla.img boot=live union=aufs noswap noprompt vga=788 fetch=tftp://10.0.10.23/boot/x64/clonezilla.squashfs

Обратите внимание на то , что я до сих пор размещен файл .squashfs в / загрузки / каталога, но так как Linux использует дробную черту, я все еще должен был настроить реестр , чтобы разрешить использование с слэша.

0

TDS-сервер WDS использует разделители имен в стиле Windows, то есть обратные косые черты вместо прямых косых черт в стиле Unix.

Также обратите внимание на значения реестра Windows ReadFilter и RootFolder в HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/WDSServer/Providers/WDSTFTP.

По умолчанию загрузка TFTP разрешена только из подпапок \boot и \tmp корневой папки TFTP (как определено значением реестра RootFolder).

Ваш "fetch = tftp://$serverIP/filesystem.squashfs" означает попытку загрузки из <RootFolder>\filesystem.squashfs, что запрещено по умолчанию для ReadFilter по умолчанию.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .