none
SCCM R2 SP2 и PXE RRS feed

  • Вопрос

  • Добрый день.

    Решил внедрить в производство установку ОС через SCCM.

    Для начала развернул тестовую конфигурацию на vmware.

    Windows 2008 R2 и SCCM R2 + обновление до SP2.

    Просмотрел видео здесь. http://www.oszone.net/12300/

    В принципе все легко и просто.

    Остановился на следующей проблеме.

    После загрузки по сети загрузочного образа от SCCM появляется окно с вводом пароля. Ввожу пароль, загружается объявление, нажимаю "далее" и ошибка "Эта последовательность задач не может быть выполнена, так как файлы программ для ABC00001 не могут располагаться в точке распространения. За дополнительными сведениями обратитесь к системному администратору или в службу поддержки".

    Перед созданием поста просмотрел этот пост

    http://social.technet.microsoft.com/Forums/ru-RU/smsru/thread/085ca1f3-6f87-421a-9821-dbaea08f6b54

    Загрузочный образ объявил и на обоих точках. При просмотре сетевого трафика через wireshark видно, что ошибка появляется после того, как агент обратился через http к SCCM.

    Вот не полный лог с агента.

    <![LOG[<Msg SchemaVersion="1.1" ReplyCompression="zlib"><ID/><SourceID>145a5e6a-79e3-4e4a-aab3-b96cd9ad9559</SourceID><SourceHost/><TargetAddress>mp:[http]MP_LocationManager</TargetAddress><ReplyTo>direct:OSD</ReplyTo><Priority>3</Priority><Timeout>3600</Timeout><SentTime>2011-01-04T13:58:58Z</SentTime><Protocol>http</Protocol><Body Type="ByteRange" Offset="0" Length="622"/><Hooks/><Payload Type="inline"/><TargetHost/><TargetEndpoint>MP_LocationManager</TargetEndpoint><ReplyMode>Sync</ReplyMode><CorrelationID/></Msg>
    ]LOG]!><time="23:58:58.382+-600" date="01-04-2011" component="TSPxe" context="" type="1" thread="1352" file="libsmsmessaging.cpp:1501">
    <![LOG[CLibSMSMessageWinHttpTransport::Send: URL: SCCM.TEST.LAN:80  CCM_POST /ccm_system/request]LOG]!><time="23:58:58.382+-600" date="01-04-2011" component="TSPxe" context="" type="1" thread="1352" file="libsmsmessaging.cpp:7446">
    <![LOG[The request has succeeded. 200 OK]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="0" thread="1352" file="libsmsmessaging.cpp:7734">
    <![LOG[Decompressing reply body.]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="1" thread="1352" file="libsmsmessaging.cpp:2395">
    <![LOG[::DecompressBuffer(65536)]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="0" thread="1352" file="ccmzlib.cpp:735">
    <![LOG[Decompression (zlib) succeeded: original size 399, uncompressed size 1794.]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="0" thread="1352" file="ccmzlib.cpp:646">
    <![LOG[Filtering Content Locations.]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="0" thread="1352" file="resolvesource.cpp:1883">
    <![LOG[    Adding \\SCCM.TEST.LAN\SMSPKGW$\ABC00001\ to Remote DP list.]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="1" thread="1352" file="resolvesource.cpp:1960">
    <![LOG[    Adding \\SCCM.TEST.LAN\SMSPXEIMAGES$\SMSPKG\ABC00001\ to Remote DP list.]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="1" thread="1352" file="resolvesource.cpp:1960">
    <![LOG[Found 0 DPs in subnet, 0 DPs in local site, 2 DPs in remote location and 0 Multicast DPs]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="1" thread="1352" file="resolvesource.cpp:1974">
    <![LOG[Skipping remote content locations.]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="0" thread="1352" file="resolvesource.cpp:2132">
    <![LOG[!lsDPList.empty(), HRESULT=80040102 (e:\nts_sms_fre\sms\framework\tscore\resolvesource.cpp,2136)]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="0" thread="1352" file="resolvesource.cpp:2136">
    <![LOG[FALSE, HRESULT=80040102 (e:\nts_sms_fre\sms\framework\tscore\tspolicy.cpp,1635)]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="0" thread="1352" file="tspolicy.cpp:1635">
    <![LOG[Content location request for ABC00001:3 failed. (Code 0x80040102)]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="3" thread="1352" file="tspolicy.cpp:1635">
    <![LOG[pTSPolicyManager->GetContentLocations( m_sPackageID, m_lSourceVersion, m_dwContentSourceFlags, slistContentLocations, slistHttpContentLocations, slistMulticastContentLocations, m_dwContentPackageFlags ), HRESULT=80040102 (e:\nts_sms_fre\sms\framework\tscore\tspolicy.cpp,2330)]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="0" thread="1352" file="tspolicy.cpp:2330">
    <![LOG[(*iTSReference)->Resolve( pTSPolicyManager, dwResolveFlags ), HRESULT=80040102 (e:\nts_sms_fre\sms\framework\tscore\tspolicy.cpp,2862)]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="0" thread="1352" file="tspolicy.cpp:2862">
    <![LOG[m_pSelectedTaskSequence->Resolve( m_pPolicyManager, TS::Policy::TaskSequence::ResolvePolicy | TS::Policy::TaskSequence::ResolveSource, fpCallbackProc, pv, hCancelEvent), HRESULT=80040102 (e:\nts_sms_fre\sms\client\tasksequence\tsmbootstrap\tsmediawizardcontrol.cpp,1208)]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="0" thread="1352" file="tsmediawizardcontrol.cpp:1208">
    <![LOG[Failed to resolve selected task sequence dependencies. Code(0x80040102)]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="3" thread="1352" file="tsmediawizardcontrol.cpp:1208">
    <![LOG[hrReturn, HRESULT=80040102 (e:\nts_sms_fre\sms\client\tasksequence\tsmbootstrap\tsmediaresolveprogresspage.cpp,408)]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="0" thread="1352" file="tsmediaresolveprogresspage.cpp:408">
    <![LOG[ThreadToResolveAndExecuteTaskSequence failed. Code(0x80040102)]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="3" thread="1352" file="tsmediaresolveprogresspage.cpp:408">
    <![LOG[ThreadToResolveAndExecuteTaskSequence returned code 0x80040102]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="1" thread="1172" file="tsmediaresolveprogresspage.cpp:221">
    <![LOG[Setting wizard error: Эта последовательность задач не может быть выполнена, так как файлы программ для ABC00001 не могут располагаться в точке распространения. За дополнительными сведениями обратитесь к системному администратору или в службу поддержки.]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="0" thread="1172" file="tsmediawizardcontrol.cpp:1233">
    <![LOG[ResolveProgressPage::OnWizardNext()]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="0" thread="1172" file="tsmediaresolveprogresspage.cpp:113">
    <![LOG[Activating Finish Page.]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="0" thread="1172" file="tsmediafinishpage.cpp:106">
    <![LOG[Initializing the countdown timer.]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="0" thread="1172" file="tsmediafinishpage.cpp:193">
    <![LOG[Loading bitmap]LOG]!><time="23:58:58.397+-600" date="01-04-2011" component="TSPxe" context="" type="1" thread="1172" file="tsmbootstrap.cpp:1150">
    <![LOG[Suspending the countdown timer.]LOG]!><time="23:58:59.694+-600" date="01-04-2011" component="TSPxe" context="" type="0" thread="1172" file="tsmediafinishpage.cpp:351">

    Второй вопрос про F12. Где можно выставить параметр, чтобы использовалась клавиша F12 для загрузки PXE? Сервер назначает клиенту pxeboot.n12, а я хочу, чтобы назначался файл pxeboot.com.

    Для корректной работы PXE, необходимо добавить только роль WDS или же еще провести быструю конфигурацию без добавление образов?

    Еще одна проблема заключается в том, что если импортировать компьютер по mac адресу и SMBIOS GUID в собственную коллекцию. В эту коллекцию назначить объявление PXE, по получаю всегда PXE Boot Abouted. Если же объявление указать на "Все неизвестные компьютеры", то загрузка через PXE идет. Можно создать ссылку(Все неизвестные компьютеры) на свою коллекцию, тогда загрузка тоже пойдет.

    Если объявить на коллекцию "Все неизвестные компьютеры" и попытаться несколько раз загрузится через PXE, то первый раз загрузка проходит, второй раз получаю PXE Boot Abouted. Если сделать очистку последнего PXE объявления на "Все неизвестные компьютеры", то произойдет загрузка  через PXE. Где можно найти записи объявления PXE на коллекции "Все неизвестные компьютеры"?

    Если компьютер имеет сетевую карту драйвера которые отсутствуют в образе boot.win, то почему не сообщается об этом? Загруженная среда просто ребутит компьютер.

     

     

    4 января 2011 г. 15:16

Ответы

  • Теперь понятно откуда берутся загрузочные файлы PXE. Если смонтировать boot.win и зайти Windows\Boot\PXE\, то увидим те самые файлы, которые копируются в \RemoteInstall\SMSBoot\%архитектура%. Получается, что загрузочные образы при назначении на точку распространения немного модифицируются и в образ записывается сам агент?

    Если задействовать только образ х86, то загрузка не произойдет, а в журнале PXE будет обоснование, что архитектура процессора  не соответвтует образу загрузки.
    После добавления образа загрузки x64 у меня проходил загрузка следующим образом.
    Read Request, File: smsboot\x86\wdsnbp.com\000, Transfer type: octet\000, blksize\000=1456\000
    Read Request, File: smsboot\x64\pxeboot.n12\000, Transfer type: octet\000, blksize\000=1456\000
    Read Request, File: smsboot\x64\bootmgr.exe\000, Transfer type: octet\000, blksize\000=1456\000
    Read Request, File: \SMSTemp\2011.01.06.15.18.25.08.{5875A642-F122-4B88-84A7-CAE0C2286D38}.boot.bcd\000, Transfer type: octet\000, tsize\000=0\000, blksize\000=1420\000
    Read Request, File: \SMSBoot\boot.sdi\000, Transfer type: octet\000, tsize\000=0\000, blksize\000=1420\000
    Read Request, File: \SMSImages\SMSPKG\ABC00001\boot.ABC00001.wim\000, Transfer type: octet\000, tsize\000=0\000, blksize\000=1420\000
    boot.ABC00001.wim, образ x86.
    Есть ли возможность обходится только образом x86?

    Итог.
    Для развертки ОС через PXE на SCCM R2 SP2.
    Необходимо еще задать подсеть, где находится точка распространения(т.е сервер с шарой на образы wim) в разделе "Границы".
    В "Агенты клиента"=>"Агент клиента компьютера" задать учетную запись сетевого доступа или добавить права на чтение шаре REMINST

    По F12 удалил файл pxeboot.n12. Скопировал pxeboot.com и переименовал его в pxeboot.n12 :-)
    • Помечено в качестве ответа Pavel.O 6 января 2011 г. 5:28
    6 января 2011 г. 5:27

Все ответы

  • 1. Смотрите distmgr.log и консоль (Package Status - Package Status - Site code), чтобы пакеты образов операционной системы были в состоянии installed. Ошибка указывает на то, что пакеты операционной системы при распространении по каким-то причинам не доехали в точку распространения (если вообще распространялись).

    2. Посмотрите внимательно, не отвечает ли вашим компьютерам WDS? По умолчанию он отдаёт pxeboot.com.

    http://itband.ru/2009/06/osd-windows-xp-sccm2007r2/

    http://sccm.com.ua/?p=213

    Нужно произвести его быструю конфигурацию, указав, чтобы он не отвечал на клиентские запросы.

    3. PXE boot aborted говорит о том, что была уже попытка установить операционную систему. Сбрасывайте руками.

    4. Просто не сообщается. :) Примите, как есть.


    http://sccm.com.ua/
    5 января 2011 г. 12:18
    Отвечающий
  • 1. Проблему решил, спасибо за подсказку. Оказывается нужно было указать границу сайта, видно по границе(подсеть) агент как раз определяет точку распространения.

    2. Вся проблема в том, что сервер SCCM назначает pxeboot.n12, я не нашел опции, которая дает выбор. После перезагрузки сервера исчезли все файлы в папках: RemoteInstall\SMSBoot\x64, RemoteInstall\SMSBoot\x86. Похоже, что поспешно вводить SCCM в производство довольно рисковано. Уж больно много парадоксов.

    3. А можно сбрасывать конкретные компьютеры с объявленным PXE? Если это не реализовано в mmc консоле, то где эти записи в базе SQL?

    5 января 2011 г. 13:51
  • Там должны быть эти служебные файлы. Удалите загрузочные образы с PXE DP и разлейте заново. Файлы должны появиться.

    Ещё посмотрите на вкладках настройки WDS, какие там файлы указаны.

    Как раз через правый клик на компьютере это и делается.

     

    Это не парадоксы - это фичи.:)


    http://sccm.com.ua/
    5 января 2011 г. 14:05
    Отвечающий
  • Теперь понятно откуда берутся загрузочные файлы PXE. Если смонтировать boot.win и зайти Windows\Boot\PXE\, то увидим те самые файлы, которые копируются в \RemoteInstall\SMSBoot\%архитектура%. Получается, что загрузочные образы при назначении на точку распространения немного модифицируются и в образ записывается сам агент?

    Если задействовать только образ х86, то загрузка не произойдет, а в журнале PXE будет обоснование, что архитектура процессора  не соответвтует образу загрузки.
    После добавления образа загрузки x64 у меня проходил загрузка следующим образом.
    Read Request, File: smsboot\x86\wdsnbp.com\000, Transfer type: octet\000, blksize\000=1456\000
    Read Request, File: smsboot\x64\pxeboot.n12\000, Transfer type: octet\000, blksize\000=1456\000
    Read Request, File: smsboot\x64\bootmgr.exe\000, Transfer type: octet\000, blksize\000=1456\000
    Read Request, File: \SMSTemp\2011.01.06.15.18.25.08.{5875A642-F122-4B88-84A7-CAE0C2286D38}.boot.bcd\000, Transfer type: octet\000, tsize\000=0\000, blksize\000=1420\000
    Read Request, File: \SMSBoot\boot.sdi\000, Transfer type: octet\000, tsize\000=0\000, blksize\000=1420\000
    Read Request, File: \SMSImages\SMSPKG\ABC00001\boot.ABC00001.wim\000, Transfer type: octet\000, tsize\000=0\000, blksize\000=1420\000
    boot.ABC00001.wim, образ x86.
    Есть ли возможность обходится только образом x86?

    Итог.
    Для развертки ОС через PXE на SCCM R2 SP2.
    Необходимо еще задать подсеть, где находится точка распространения(т.е сервер с шарой на образы wim) в разделе "Границы".
    В "Агенты клиента"=>"Агент клиента компьютера" задать учетную запись сетевого доступа или добавить права на чтение шаре REMINST

    По F12 удалил файл pxeboot.n12. Скопировал pxeboot.com и переименовал его в pxeboot.n12 :-)
    • Помечено в качестве ответа Pavel.O 6 января 2011 г. 5:28
    6 января 2011 г. 5:27
  • Из загрузочных образов служебные файлы копируются в \RemoteInstall\SMSBoot. Агент никуда не записывается. Даже правильнее говорить "клиент". Клиент вообще никаким боком не участвует в OSD PXE со стороны "голого" компьютера, просто потому, что его там нет и он там не нужен. Клиент вы можете установить на компьютер после установки операционной системы.

     

    Чем Вам мешают два загрузочных образа на PXE DP?


    http://sccm.com.ua/
    6 января 2011 г. 15:06
    Отвечающий
  • За всю свою практику я ниразу не исползовал 64-х битный бут образ. 32х битного загрузочного образа хватает для 99.9% всех задач по развертыванию ОС, в том числе и 64х битных.
    6 января 2011 г. 21:19
    Отвечающий
  • Из загрузочных образов служебные файлы копируются в \RemoteInstall\SMSBoot. Агент никуда не записывается. Даже правильнее говорить "клиент". Клиент вообще никаким боком не участвует в OSD PXE со стороны "голого" компьютера, просто потому, что его там нет и он там не нужен. Клиент вы можете установить на компьютер после установки операционной системы.

     

    Чем Вам мешают два загрузочных образа на PXE DP?


    http://sccm.com.ua/

    Спасибо за разъяснение. В принципе не мешают, просто не очень непонятно как это работает, по крайней мере у меня :-)

    SCCM определяет архитектуру x64 внося в журнал (У точки обслуживания SMS PXE нет образа загрузки, соответствующего архитектуре процессора загрузочного устройства PXE), но вот клиент в заголовке DHCP явно отмечает

    Option: (t=93,l=2) Client System Architecture = IA x86 PC

    Еще разобрался с проблемой, которая после перезагрузки сервера убирала файлы в \RemoteInstall\SMSBoot. Обновление образа загрузки на точку распространения проблему не решало. Оказалось, что папка в c:\windows\temp\PXEBootFiles имела владельца "TrustedInstaller", после смены владельца и удаление ее, прошло обновление точки распространения и файлы в \RemoteInstall\SMSBoot появились, но после еще одной перезагрузки проблема опять появилась. Здесь есть такой же случай http://social.technet.microsoft.com/Forums/ru-RU/smsru/thread/edb37aa6-6419-4a9a-b3a1-8f79afc50fca или здесь http://social.technet.microsoft.com/Forums/en/configmgrosd/thread/af95a4dc-02dc-44b5-82e5-7fb4a0aff65d

    Папку по адресу c:\windows\temp\PXEBootFiles создает сам сервис WDS с назначением владельца "TrustedInstaller". После перезапуска сервиса WDS пытается туда записать данные от "система". Натыкается на препятствие, когда пытается записать в папку C:\Windows\Temp\PXEBootFiles\Windows\Boot\ т.к на данную папку назначены права для "система" только для чтения. В общем сервера перезагружаются редко, но после перезагрузки может появится эта проблема.

    7 января 2011 г. 5:23