Минимальная сборка.

Здравствуйте! Подскажите минимальную сборку WinPE для создания тонкого клиента, нужен shell + поддержка сети (TCP/IP) + rdp клиент. Минимальное что у меня получалось это 80мб wim файл, конструктор bartpexpe.

Ну если честно и без религии, то в этом случае самым оптимальным будет не winpe , а  Thinstation 5.1. Только ее тоже лучше пересобирать под конкретное железо (тонкого клиента).

 Полную сборку для выяснения параметров клиента и создание файлов для пересборки можно скачать вот ЗДЕСЬ.

Жизнь бьёт ключом! И все больше по голове!>

С Thinstation как-то подружится не удалось...пол года назад пытался подружить ее с моими железками и что-то вышло не очень. Сейчас пока пользуюсь TS 2.2 но куча минусов так же присутствует. С Windows как-то роднее для меня. В общем поделюсь успехом насчет BartPE: сократил размер образа до 58Мб, список включенных плагинов:
1 Base - ImDisk
1 Base - MinLogon
1 Base - XPE - Crypto v1.0.7
1 Base - XPE - Defaults v1.0.7
1 Base - XPE - MMC v1.0.7
1 Base - XPE - PnP & Multimedia v1.0.7
1 Base - XPE - WMI minimal set
1 Base - XPE - XPE v1.0.7
1 Base - Customize - numlock setting
1 Base - Customize - names, owner and other info
1 Base - Customize - profiles and envirotment
1 Base - Customize - screen settings
1 Base - Customize - shortcuts
1 Base - Customize - start menu settings
1 Base - Customize - swap file settings
1 Base - Customize - taskbar settings
1 Base - Customize - desktop wallpaper
1 Base - change base directory and system file names
1 Base - Customize - version info
1 Base - Russian Language Support
2 Base - mount unmounted volume
2 Base - USB Mass Storage Device support
2 Base - WIM-file boot support
2 Base - WIM-file support
2 Base - WSH Support
2 Base - FBWF driver ONLY!!! for WIM boot
310     Drivers - Network - LAN - Intel"
310     Drivers - Network - LAN - Realtek
310     Drivers - Network - LAN - VIA
315     Drivers - Sound - Realtek Integrated Digital AC'97 Audio A4.06
315     Drivers - Sound - SoundMAX Integrated Digital AC97 Audio
320     Drivers - Video - Intel 810-Q45 Embedded Graphics 10.4.0.1839
Drivers - Windows Driver Foundation 1.9 support for WinXP
Network - Networking and IRDA Support
Network - Networking and IRDA Support - XPE automatic start MINIMAL network support
Soft - Network - Remote Desktop Client
Z Base - optimize project - 1 delete files and folders
Z Base - optimize project - 2 delete network files (драйвера сетевых компонентов не удаляются)
Z Base - optimize project - 4 reduce size txtsetup
Z Base - optimize project - 5 convert inf-file to ASII
Z Base - optimize project - 6 build INFCACHE
Ссылка на wim-образ: http://www.winpe.ru/build/cborka_winpe_dlya_rdp_klienta_ot_rybal34
Сейчас сборка работает на 256Mb ram, была идея получить возможность работы на 128Mb, так что если знаете какие файлы можно еще убрать из образа - буду признателен за информацию.
Работает: Сетевой доступ, RDP(мапятся флешки, работает звук), скриптом из сетевой папки берутся настройки терминальной сессии и разрешения экрана. С принтерами пока не разбирался, но, думаю, там ничего сложного не будет.
Вопрос с именем компьютера: при инициализации сети cmd-файлом "start-min-netservices.cmd" устанавливается имя компьютера, хотел сделать как в Thinstation имя на основе мак адреса сетевой карты, но не смог найти способ как его узнать на этом этапе загрузки. Сейчас имя при загрузке генерируется переменной %random%, но хочется статичное и уникальное для каждого клиента имя. Если есть какие-нибудь варианты насчет этого, также буду рад услышать.

К сожалению MAC-адрес прочитать не удастся раньше чем поставишь драйвера на сетевую плату и установишь службы до DHCP-клиента включительно.
А насчет ненужных компонент - "Drivers - Windows Driver Foundation 1.9 support for WinXP" - не нужен, так как у тебя нет в сборке драйверов структуры WDF.
Ну и в принципе MMC под вопросом - для обычной работы по-идее оснастки не нужны...

---
упс..

Появилась идея в направлении имени: если тонкие клиент обладает собственным жестки диском то можно поступить таким образом - при первой загрузке присваиваем случайное имя и генерим тескттовый файл с именем на базе MAC-адреса(или создаем его заранее), и потом в дальнейшем, приналичии файла с таким именем читаем имя из него.

---
упс..

Решил проблему имени компьютера включением плагина WMI, размер образа немного вырос (до 60Мб), но теперь будет возможность также инвентаризировать железки с помощью wmi запросов.
Имя компьютера устанавливается следующим образом:
RunOnceEx\100 без изменений
RunOnceEx\500 без изменений
RunOnceEx\600 без изменений
RunOnceEx\900,100="||xpeinit.exe -f -m \"Предустановка поддержки сети...\" start_pre_netservices.cmd"
В этом файле выполняется: 
-----------
bartpe -pnp
bartpe -cn WINPE -wg HOME>NUL 2>&1
-----------
Установка драйвера на сетевую карту для получения mac-адреса и присоединение к рабочей группе необходимо для инизиализации WMI
RunOnceEx\900,140="||xpeinit.exe -f -s -m \"Starting Audio Server\" net start audiosrv"
RunOnceEx\910,000="||xpeinit.exe -f -s -m \"Starting EventLog Service\" net start EventLog"
Служба Eventlog нужна для запуска WMI
RunOnceEx\910,100="||xpeinit.exe -w" (Инициализация WMI)
RunOnceEx\910,900="||ShellExecute /h cscript.exe getmac.vbs"
Средствами cmd запросы писать не умею, поэтому сделал скрипт vbs он сохраняет mac-адрес в файл system32\mac.txt
RunOnceEx\950,200="||xpeinit.exe -y"
RunOnceEx\990,100="||xpeinit.exe -f -m \"Установка минимальной поддержки сети...\" start_min_netservices.cmd"
Дальше запуски без изменений.

Файл start_min_netservices.cmd выглядит следующим образом:
-----------
@ECHO OFF
COLOR 1E
ECHO Register netcfgx.dll
regsvr32 /s netcfgx.dll

call :sleep 2
SET /P mac=< "X:\I386\SYSTEM32\mac.txt"

bartpe -cn TS_%mac% -wg ISKOM>NUL 2>&1

ECHO Installing network services...
bartpe -q MS_TCPIP||(bartpe -c p -i MS_TCPIP&ECHO Installing MS_TCPIP)
bartpe -q MS_MSCLIENT||(bartpe -c c -i MS_MSCLIENT&ECHO Installing MS_MSCLIENT)
FOR /F "TOKENS=2 DELIMS={" %%i IN ('REG QUERY HKLM\SYSTEM\ControlSet001\Services\Tcpip\Parameters\Adapters^|FIND "{"') DO REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}\{%%i\Connection" /V ShowIcon /T REG_DWORD /D 1 /F>nul 2>&1

ECHO Starting network services...
NET START DHCP

COLOR
EXIT 0

:sleep
  echo Pause on %1 seconds...
  set /a ftime=%time:~6,-3%+%1
  if %ftime% GEQ 60 set /a ftime-=60
    :loop
      set ctime=%time:~6,-3%
   if /i %ftime% NEQ %ctime% goto :loop
-----------
До запуска этого файла mac.txt создаться не успевает, поэтому прикрутил цикл ожидания, но ввиду неполного понимания синтаксиса cmd/bat файлов сделал это немного не функционально. Подскажите, пожалуйста, как написать цикл, который будет ждать не просто 2 секунды, а проверять наличие файла с интервалом в 1 секунду, но не больше, допустим, 30 секунд.

И еще один вопрос: после загрузки образа (Loading RAMDISK Image...), до появления строки (Press F6 if you need to install......) опрашивается FDD, возможно ли как-нибудь отключить этот опрос? У меня в некоторых системниках нет PXE-загрузочной сетевой карты, и сетевая загрузка стартует с образа Etherboot ROM image находящегося на дискете. Из-за этого опроса время загрузки увеличивается в среднем секунд на 10. В самом XPE я флоп убрал, чтоб дискетку не форматнули (добавил в файл .\PLUGIN\Z_BASE\Z_OPTIMIZE_PROJECT\FILES\for_txtsetup1.txt строку GenFloppyDisk = "flpydisk").

Ну насчет запуска с ожиданием это просто:

ShellExecute /h start /wait cscript.exe getmac.vbs

А насчет неопроса дискеты тут все сложнее - это придется патчить то ли setupldr то ли ntdetect...

А на дискете можно кстати защиту от записи выставить переключателем.

---
упс..

Страницы

Похожие материалы по этой теме на сайте

Содержимое
Посоветуйте как можно более полную сборку WindowsPE.

Не знаю, в какой подфорум нужно было писать, так что не серчайте, ежели промахнулся =)

Загрузка wim WDS+pxelinux

Здравствуйте!

Пытаюсь сделать сборку с PE Builder (нужна ваша поддержка)

Доброго времени суток уважаемые форумчане.
Я тут у вас новый человек, да и в создании сборок тоже.
Прошу сильно не пинать.
В ообщем, хочу собрать свою сборку с необходимым мне содержимым.
Сборка при помощи "PE Builder".

Использование usb flash с несколькими разделами в BartPE

Все доброго вечера!
У меня возникла проблема использования разделов в usb flash под BartPE.
Если кто знает как это сделать или если есть ссылка на инструкцию то большая просьба поделиться.