Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей

Недавно в моём районе открылась новая комиссионка, и конечно же, я наведался туда в первый же день. Особо заинтересовавшего улова было немного, но среди прочего попался красивый, хоть и побитый жизнью, ноутбук — ThinkPad X40.
Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей


За каких-то 500 йен (260 рублей) такое чудо забрать было просто обязательно. Ну, подумаешь, софттач уже разложился — к счастью, он миновал стадию превращения назад в нефть, и сразу перешёл в состояние наждачки.
Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей


Но как обычно, беда вылезла, откуда не ждали.

После подкидывания блока питания оказалось, что винчестер девственно чист. Однако попытки загрузиться с флешки, внешнего диска, или даже внешнего флопика, результата не приносили — неумолимо вылезала надпись «Operating System Not Found», да и названия устройств в биосе не появлялись.

Беглый гуглёж показал — ранние серии X40 были очень часто подвержены внезапной смерти мультиконтроллера (ICH6). Буквально подышишь не в ту сторону, втыкая флешку — и вот у тебя уже нету ни USB, ни чего-нибудь ещё.



Добрые люди дали посмотреть на схему, и опасения подтвердились: ICH6 отвечает за связь с аудиокодеком, блютусом и USB. Как впоследствии выяснится, ни звук, ни блютус, ни USB тоже не работают.
Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей


Удивило, конечно, что SD-ридер тут висит на шине PCI, и поэтому работает. Впрочем, это я уже забегаю вперёд, ведь загрузиться с него нельзя.
Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей


SD-ридер на PCI-шине, рядом с сетевыми адаптерами

В случае обычного ноутбука, можно было бы просто кинуть винчестер в USB-переходник и залить образ с другого компьютера, но и тут подстава — винчестер в нём 1. 8 дюйма, и на шину IDE с напряжением до 3.3 вольта, поди найди такой адаптер. Вкладываться в покупку переходника, SSD и ещё адаптера с USB на mSata тоже не хотелось, ибо уже жаба задушит :-)

Однако, в нём всё ещё есть опция загрузки по сети через PXE, может, это и спасло бы?


❯ Сначала было слово, и слово это — DHCP

Первым делом я попробовал самое очевидное решение — iVentoy. Вебморда и все дела, конечно — стильно, модно, молодёжно, но ноутбук при этом успешно загружал PXE-бинарник и вешался. Видимо, с i386 проект уже не совместим. Придётся делать всё вручную.

Для того, чтобы загрузиться через PXE, DHCP-сервер должен отдать грузящемуся клиенту в ответе как минимум два параметра:

*

№ 66 — адрес/имя TFTP-сервера, с которого грузимся, в моём случае 192.168.1.228
*

№ 67 — имя файла на TFTP-сервере, которое будем загружать

В OpenWRT их можно указать в параметрах интерфейса локальной сети на вкладке DHCP Server:
Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей


Опция 150 для PXE не нужна, у меня она прописана для работы в локалке цисковских телефонов

В качестве сервера был поднят TFTPD64, а загрузчиком для пробы был закинут iPXE в сборке от проекта netboot.xyz (файл netboot.kpxe).

Пробуем грузиться и...

Обратите внимание: Обзор сверхпрочного ноутбука Getac B300 X.. почему-то ноутбук всё равно усердно пытается найти TFTP-сервер на роутере.

Тут я перепробовал кучу разных настроек, но, видимо, моя версия OpenWRT забагована и никакие попытки прописать DHCP Next-Server другими способами не прокатили.

К счастью, сам файл iPXE весьма небольшой, поэтому я просто установил на роутер atftpd и положил его в /srv/tftp/netboot.kpxe.
Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей



После этого ноутбук загрузился в iPXE, показал меню выбора образа, из которых грузились на 512 метрах оперативки далеко не все, и я даже зачем-то установил на него OpenBSD, но быстро его поломал.

❯ Попробуем туда за-PE-реться

Дальше были многочисленные попытки загрузить хоть какой-то ISO-образ через memdisk. В общем случае это делается следующей последовательностью команд в iPXE Shell:

kernel memdisk initrd http://192.168.1.228:3939/bartPE.iso boot

Однако, все имеющиеся у меня установочники падали даже не доходя до загрузки, собственно, ОС из образа, и я толком не разобрался, что делал не так. Для загрузки конкретно же Windows PE, впрочем, нашёлся другой способ:

*

Берём образ Windows Server 2003 SP1 (важно: именно SP1) и вытаскиваем оттуда командой expand из папки I386 файлы

*

STARTROM.COM
*

SETUPLDR.EXE — переименовываем в NTLDR (именно из EXE, не из BIN!)
*

NTDETECT.COM

*

Кладём это всё в корень нашего TFTP-сервера, а рядом кладём образ самого Windows PE, собранный из того же Server 2003 SP1.
*

Создаём файл с именем WINNT.SIF, в который пишем

[SetupData] BootDevice = "ramdisk(0)" BootPath = "i386System32" OsLoadOptions = "/noguiboot /fastdetect /minint /rdexportascd /rdpath=WINPE16.ISO"

где WINPE16.ISO — название образа Windows PE.

Если вам влом этим всем заниматься — можете забрать готовую папку с архиворга :-)

После этого, если конфигурация DHCP у вас работает, можно просто указать STARTROM.COM в опции №67, и система должна загрузиться. Если же у вас всё так же сломано, как и у меня, то грузимся в IPXE Shell и выполняем команды:

dhcp net0 set net0/next-server 192.168.1.228 chain tftp://192.168.1.228/STARTROM.COM

После чего, в теории, наш компьютер будет медленно и печально вытягивать ISO-файл по UDP.
Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей



Клиент качает
Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей


Сервер отдаёт
Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей


Загрузи лося!

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

❯ SERVA — всему голова

Оказывается, есть современный, более надёжный инструмент «всё в одном» специально для Windows: Serva.

Он позволяет развернуть установку Windows XP по сети с куда меньшим геморроем.

Сначала скачиваем дистрибутив, распаковываем и запускаем. Окно по дефолту будет пустым и загадочным — нужно нажать на иконку в строке заголовка, а затем Settings:
Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей



На вкладке TFTP включаем сервер и создаём для него новую папку (без всего хлама из прошлых шагов)
Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей


На вкладке DHCP можно сделать по-разному:

*

Если соединяем комп с сервером витухой напрямую, то включаем DHCP SERVER
*

Если, как у меня, всё идёт в общую локалку, то включаем PROXYDHCP

Также не забываем включить и BINL — через него будут, собственно, загружаться системные файлы.
Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей


Нажимаем OK и затем закрываем Serva полностью.

Далее тысячу раз проверяем файрвол, что у нас не торчит голой задницей порт SMB в интернет, а затем идём в PowerShell и выполняем:

Enable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol -All -NoRestart

Либо мышкой
Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей



Важно: протокол SMBv1 дырявый, и лучше это дело после установки откатить сразу назад, либо проворачивать это всё на виртуалке.

Затем идём в Панель управления → Network and Sharing Center → Advanced Sharing Settings и выключаем Password protected Sharing
Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей


После чего перезагружаем компьютер.

Возвращаемся к папке, которую создали для TFTP-сервера в Serva, и открываем её свойства. На вкладке Sharing жмём на Advanced Sharing и делаем её доступной с названием, дословно, WIA_RIS_SHARE.
Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей


После чего на той же вкладке жмём на просто Share... и даём доступ на чтение для Guest и Everyone:
Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей



Важно: сделать то же самое через Advanced Sharing — не прокатит.

Затем в папке создаём подпапку WIA_RIS, в которой — любую другую, но без пробелов и спецсимволов. Я, например, создал папку WXPJpn. В неё перетаскиваем содержимое всего нашего установочного диска с Windows XP.
Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей


Загрузиться в теории это сможет уже сейчас, но установиться не сможет — сети-то нету. Поэтому создаём подпапку $OEM$$1DriversNIC и вбрасываем туда драйвера от сетевой карты нашего Thinkpad'а.
Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей


Запускаем Serva ещё раз. Должны побежать логи, но все без ошибок:
Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей



Теперь, опять же, если вы используете DHCP-сервер внутри Serva, или в вашей сети опции 66/67 работают корректно — можно прописать в опцию 66 адрес сервера, на котором Serva запущена, а в 67 — строку BMPXESERVABIOSpxeserva.0, и грузиться.

В моём же поломанном случае нужно было зайти снова в папку TFTP-сервера и скопировать всё из BMPXESERVABIOS*.* в её корень. В итоге получилась такая структура:
Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей


И как в прошлый раз — загружаюсь в iPXE, раздаваемый роутером, а затем выполняю команды:

dhcp net0 set net0/next-server 192.168.1.228 chain tftp://192.168.1.228/PXESERVA.0
Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей


Наблюдаю на экране меню с заветным пунктом, значит всё настроено успешно!
Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей


Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей


Если все драйвера на месте, то дальше будет всё то же, что и при обычной загрузке с установочного компакт-диска. Ну а как дальше переустановить шиндошс — думаю, разберетесь :)

Автор текста: VLADKOROTNEV (@AKASAKA)

Написано при поддержкеTIMEWEB CLOUD.

Больше интересных статей и новостей в нашемблоге на Хабре и телеграм-канале.
Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей


Реклама ООО «ТАЙМВЭБ.КЛАУД», ИНН: 7810945525

Больше интересных статей здесь: Гаджеты.

Источник статьи: Сезам, грузися! Установка Windows XP на древний ноутбук без физических носителей.

Поделиться с другом

Комментарии 0/0


...
...

Рекомендуй MAGOMA.RU и забери новенький Mercedes

Рекомендуй MAGOMA.RU и забери новенький Mercedes

Подробнее

...