Results 1 to 6 of 6

Thread: Установка Windows 7 по сети с помощью роутера

  1. #1

    Lightbulb Установка Windows 7 по сети с помощью роутера

    Введение

    Ниже приведён HOW-TO, описывающий сетевую установку Windows 7 x64 с помощью роутера.
    Для повторения процедуры установки вам понадобятся следующие файлы:



    Работа на ПК. Подготовка файлов

    1. смонтируйте ISO-образ Windows AIK for Windows 7 и выполните установку среды AIK (StartCD.exe)
    2. смонтируйте ISO-образ Windows AIK for Windows 7 sp1 и обновите AIK, выполнив в командной строке от имени администратора:
      Code:
      xcopy E:\ "C:\Program Files\Windows AIK\Tools\PETools" /ERDY
      где Е: - ваш диск со смонтированным ISO-образом.
    3. выполните пункт меню "Пуск > Программы > Microsoft Windows AIK > Командная строка средств развертывания (Deployment Tools Command Prompt)",
    4. определитесь с местом для хранения временных файлов (в примере d:\win7pe) и выполните в командной строке:
      Code:
      copype.cmd amd64 d:\win7pe
      В этом архиве пять файлов, всех их вы можете найти в папке d:\win7pe. Последний файл, необходимый для сетевой загрузки - winpe.win - вам необходимо допилить самостоятельно. WinPE после загрузки компьютера будет обращаться к сетевой шаре роутера и скачивать оттуда файлы установки. Выберем имя общего сетевого ресурса на роутере для хранения файлов установки - \\192.168.0.1\share\win7_install, где 192.168.0.1 - ip-адрес вашего роутера.
    5. смонтируйте ISO-образ с установочными файлами Windows 7 и скопируйте с него на сетевой ресурс \\192.168.0.1\share\win7_install папку sources целиком. Подчёркиваю, на сетевой шаре \\192.168.0.1\share\win7_install у вас должна появиться папка sources, а не её содержание. Теперь подготовим образ winpe.win, указав в нём имя нашей шары.
    6. откройте командную строку от имени администратора и выполните:
      Code:
      cd "C:\Program Files\Windows AIK\Tools\amd64\Servicing" 
      Dism /Mount-Wim /WimFile:"d:\win7pe\winpe.wim" /index:1 /MountDir:"d:\win7pe\mount"
    7. Откройте в блокноте с администраторскими правами файл d:\win7pe\mount\windows\system32\startnet.cmd и приведите его содержание к следующему виду:
      Code:
      wpeinit
      net use z: \\192.168.0.1\share\win7_install
      if exist z:\sources\setup.exe (
      z:
      cd \sources
      setup.exe
      )
    8. Закройте блокнот и окошки Проводника, "ведущие" в иерархию d:\win7pe\mount и размонтируйте образ winpe.win из командой строки с правами администратора:
      Code:
      cd "C:\Program Files\Windows AIK\Tools\amd64\Servicing" 
      Dism /unmount-Wim /MountDir:"d:\win7pe\mount" /Commit
    9. скопируйте на сетевую шару \\192.168.0.1\share\win7_install готовый файл d:\win7pe\winpe.wim



    Работа на роутере. Настройка необходимых сервисов

    1. установите на роутер SAMBA 3.х, имеющаяся в прошивке SAMBA 2.0 не подходит для сетевой установки. Пример конфига в коде ниже:
      Code:
      $ opkg install samba36-server 
      
      $ cat /opt/etc/samba/smb.conf
      [global]
          log file = /opt/var/log/%m
          netbios name = MYRouter
          workgroup = MYHOME
          server string = ASUS Router
          force user = admin
          interfaces = br0
          bind interfaces only = yes
          browseable = yes
          deadtime = 30
          encrypt passwords = true
          enable core files = no
          guest account = nobody
          invalid users = admin
          load printers = no
          local master = yes
          map to guest = Bad User
          min receivefile size = 0
          null passwords = yes
          obey pam restrictions = no
          os level = 20
          passdb backend = smbpasswd
          preferred master = auto
          printable = no
          reset on zero vc = yes
          remote announce = 192.168.0.255
          security = user
          smb encrypt = disabled
          smb passwd file = /opt/etc/samba/smbpasswd
          socket options = TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=65535 SO_SNDBUF=65535
          syslog = 2
          writeable = yes
          unix charset = UTF-8
          use sendfile = yes
      
      [share]
          path = /tmp/harddisk
          browseable = yes
          guest ok = yes
          writeable = yes
      
      
      $ killall smbd
      $ killall nmbd
      $ /opt/sbin/smbd -D
      $ /opt/sbin/nmbd -D
    2. скачайте и распакуйте приложенные к посту файлы для PXE-загрузки. Папка /tmp/harddisk/win7_install/w7-pxe выбрана для хранения файлов для PXE:
      Code:
      $ mkdir /tmp/harddisk/win7_install/w7-pxe
      $ cd /tmp/harddisk/win7_install
      $ wget http://files.ryzhov-al.ru/Routers/Win7%20Deployment/win7x64_pxe.tgz
      $ tar -xvzf ./win7x64_pxe.tgz
      $ mv -f winpe.wim ./w7-pxe/boot
    3. Установите на роутер tftp-сервер, пример файла ремаппинга символов в коде ниже:
      Code:
      $ opkg install tftpd-hpa
      
      $ cat /opt/etc/tftpd/remap
      r       ^\\             # Remove first double backslashes
      rg      \\      /       # Convert backslashes to slashes
      #e      pxeboot.n12      # Do not proces subsequent rules
      
      
      $ tftpd-hpa -m /opt/etc/tftpd/remap -l -vvv -s /tmp/harddisk/win7_install/w7-pxe
    4. отредактируйте /etc/dnsmasq.conf добавив в конец файла строчку dhcp-boot=pxeboot.n12, сохраните изменения во flash-памяти роутера и перезапустите dnsmasq для того, чтобы настройки вступили в силу:
      Code:
      $ cat /etc/dnsmasq.conf
      user=nobody
      resolv-file=/tmp/resolv.conf
      no-poll
      interface=br0
      no-negcache
      cache-size=512
      dhcp-leasefile=/tmp/dnsmasq.log
      dhcp-range=lan,192.168.0.1,192.168.0.254,86400
      read-ethers
      dhcp-authoritative
      dhcp-boot=pxeboot.n12
      
      
      $ flashfs save
      $ flashfs commit
      $ killall dnsmasq
      $ dnsmasq

    Всё готово.

    Технические подробности для любознательных

    Процесс сетевой установки можно поделить на следующие этапы:

    1. ПК, загружаясь по сети, первым делом взаимодействует с DHCP-сервером dnsmasq, получая помимо сетевых настроек опцию, описывающую какой файл необходимо закачать по tftp и где, собственно, этот tftp-сервер находится.
    2. ПК обращается к tftp-серверу tftpd-hpa, выкачивает крохотный загрузчик pxeboot.n12 и передаёт ему управление,
    3. pxeboot.n12 выкачивает полноценный менеджер загрузки Windows bootmgr.exe,
    4. bootmgr.exe, свою очередь, выкачивает данные конфигурации загрузки /boot/BCD и получает инструкцию о дальнейших действиях. Вы можете подготовить BCD самостоятельно, я специально упростил мануал, приложив готовый. BCD представляет собой примитивный куст реестра Windows, вы даже можете подгрузить его в regedit и редактировать по своему усмотрению.
    5. далее bootmgr.exe выкачивает по tftp файлы boot.sdi (System Deployment Image) и winpe.wim - готовый образ операционной системы Windows PЕ, разворачивает его непосредственно в оперативной памяти и передаёт ему управление. Требования к клиентскому ПК - не менее 512Мб RAM. Признаком успешного завершения этого этапа будет переход графический интерфейс Windows PE.
      Обращаю ваше внимание на то, что вы можете подкладывать в папку w7-pxe/boot свой файл winpe.win для выполнения собственных нужд, как-то:
      • создание эталонного образа ПК, который будет потом развёрнут на других компьтерах,
      • заливка подготовленного образа Windows на ПК. Кстати, как раз с помощью этой штатной возможности сделаны образы Windows вместе с софтом, доступные на торрентах. В описаниях к ним любят хвалиться "Установка ОС за пять минут",
      • загрузка ERD-инструментария для восстановления работоспособности Windows. Все эти самодельные загрузочные флешки всех мастей на торрентах (пример), содержащие в себе как швейцарских нож все мыслимые и немыслимые инструменты построены на базе WindowsPE. Вам ничего не мешает взять с такой флешки wim-образ и подложить его в /tmp/harddisk/win7_install/w7-pxe/boot. Всё будет отлично работать.
    6. после выкачивания образа winpe.wim tftp-сервер больше не используется. Развёрнутая в памяти Windows PE сама инициализирует сетевые контроллеры. Если сетевой контроллер ПК построен на каком-то экзотическом железе, то дальнейшая установка Windows будет невозможна. Установка дальше продолжается, используя исключительно SAMBA-шару роутера.
    7. Windows PE выполняет скрипт \windows\system32\startnet.cmd, в котором сетевая шара роутера подключается как сетевой диск и запускает установку Windows так, будто была выполнена загрузка с компакт-диска: будет выведено меню разбивки дисков и прочие шаги.

    Установка Windows 7 от момента старта "голого" ПК до окончания установки и появления рабочего стола занимает ~25 минут.
    Last edited by ryzhov_al; 19-11-2013 at 04:58.

  2. #2
    Join Date
    Oct 2009
    Posts
    529
    Blog Entries
    1
    Подскажите, почему всегда рекомендуется к использованию tftpd-hpa?
    Имеющийся dnsmasq лишен поддержки tftp? или есть известные грабли с enable_tftp ?

    P.S. сейчас сам проверить не могу
    P.P.S. против tftpd-hpa ничего не имею, работает прекрасно.
    Last edited by Omega; 22-10-2012 at 23:19. Reason: fixed

  3. #3
    Quote Originally Posted by MercuryV View Post
    Имеющийся dnsmasq лишен поддержки tftp?
    Да, прошивочный - лишён. Если бы в dnsmasq не был обрезан функционал tftp-сервера, а SAMBA была поновее, то необходимости в каком-либо доп. софте на роутере вовсе бы не было.

    А теперь публичная порка тов. lucky
    Quote Originally Posted by lucky:) View Post
    Quote Originally Posted by ryzhov_al View Post
    Quote Originally Posted by lucky:) View Post
    Quote Originally Posted by ryzhov_al View Post
    Quote Originally Posted by lucky:) View Post
    для любителей устанавливать Windows XP по сети через PXE понадобится cabextract
    И не выпрашивайте. Абсолютно одноразовая утилита, действия которой гораздо логичней выполнить под Windows.
    Вы просто ни разу не доводили установку Windows до уровня "залил iso - через 5 минут образ готов к установке"...
    Так поделитесь мануалом такого уровня! Я действительно много чего не знаю. Только чур не упоминайте кислых манипуляций с образами с привлечением BartPE и других адских демонов.
    Этот стёб неуместен... Bart PE, как раз там и рядом не лежал... Для XP достаточно связки (TFTP)+(Binl-эмулятор RIS-службы под Perl)+(Samba)+(PHP по вкусу)+(ровные руки)+(голова)...

    Вы просили мануал - возьмите:
    Download File From Oron- 9.0 Mb - залито на файлообменник потому что форум к себе файл не принял.

    Сразу сделаю замечание - писалось под старый репозиторий... Хотите под новый - делайте cabextract
    Указанными двумя постами выше штатными средствами Windows вы можете развернуть любую версию Windows от Windows XP до Windows 8pre1 архитектур x86/amd64, домашнюю или серверную, например Windows server 2008. В вашем мануале 2011 года для установки WinXP необходимы web-сервер, PHP, Perl, Python, cabextract и набор скрипов-костылей для патчинга бинарников установочных файлов Windows. Это чего за хрень такая?! На дворе был 2011 и для развёртывания Windows штатными средствами вам ничего не нужно, кроме Windows-шары и tftp-сервера.

    Довольно тяжёлым последствием обнародования таких корявых мануалов является то, что сетевые мышки, накушавшиеся вашего кактуса, потом на каждом углу рассказывают что так всё и должно быть.
    Last edited by ryzhov_al; 29-03-2012 at 19:28.

  4. #4
    Join Date
    Oct 2009
    Posts
    529
    Blog Entries
    1

    Lightbulb К вопросу 'Установка Windows 7 по сети'

    Небольшое дополнение к прекрасной инструкции ryzhov_al по сетевой установке Windows 7.
    Предлагаю вариант настройки для случая, когда уже есть работающий tftp сервер со всякой всячиной, используется загрузчик pxelinux.0 из Syslinux и менять радикально ничего не хочется.

    Изменения потребуют пункты инструкции 2-4 раздела "Работа на роутере. Настройка необходимых сервисов"

    2. работаем в корневом каталоге, куда смотрит tftpd-hpa и где находится pxelinux.0, пусть будет /tmp/harddisk/tftpboot
    (где находятся файлы дистрибутива Windows 7 нам сейчас не важно, лишь бы были доступны по Samba и корректно указаны в startnet.cmd, у меня это каталог /tmp/harddisk/tftpboot/Images/win7_install/)
    качаем и распаковываем подготовленные ryzhov_al файлы
    Code:
    $ cd /tmp/harddisk/tftpboot
    $ wget -O ./win7x64_pxe.tgz http://files.ryzhov-al.ru/Routers/Win7%20Deployment/win7x64_pxe.tgz
    $ tar -xvzf ./win7x64_pxe.tgz
    перемещаем содержимое каталога w7-pxe в рабочий каталог
    Code:
    $ mv w7-pxe/* ./
    подтираем за собой (pxeboot.n12 нам тоже не понадобится)
    Code:
    $ rmdir w7-pxe
    $ rm win7x64_pxe.tgz
    $ rm pxeboot.n12
    перемещаем ранее подготовленный образ winpe.wim в каталог Boot (путь к winpe.wim необходимо заменить на свой)
    Code:
    $ mv -f /tmp/harddisk/tftpboot/Images/win7_install/winpe.wim ./Boot
    скачиваем подобающий загрузчик (также его можно позаимствовать из вложения этого поста)
    Code:
    $ wget -P ./Boot http://econstat.ru/box/startrom.0
    3 & 4. Согласно вводным условиям, dnsmasq и tftpd-hpa уже настроены и работоспособны, нужно только проверить подключен ли файл ремаппинга символов.

    Остается только добавить в файл меню загрузки новый пункт, например
    Code:
    label WIN7
    menu label Windows 7 x64 Net Install
    kernel Boot/startrom.0
    Last edited by MercuryV; 27-03-2014 at 14:09.

  5. #5

    www.netboot.me

    Есть ещё один вариант PXE-загрузки, требующий всего 256Кб в памяти роутера. Годится он тем пользователям, что располагают широкополосным доступом в интернет. Всё как обычно:

    • Выкачиваете PXE-загрузчик,
    • Подкладываете его к рабочему TFTP-серверу,
    • Указываете имя PXE-загрузчика в опциях dnsmasq.

    Загрузчик при (сюрприз!) загрузке лезет в интернеты и выкачивает список доступных инструментов:

    • OS Installers,
    • Live OSes,
    • Diag tools,
    • Disk tools,
    • Rescue tools.

    Инструментарий, правда, не свежий: самый новая Ubuntu, доступная для установки - 2010-го года.

    Quote Originally Posted by McMaster View Post
    Вот ещё пища для размышления http://habrahabr.ru/post/82552/
    На netboot.me, кстати, наткнулся в тамошних комментариях.
    Last edited by ryzhov_al; 13-07-2012 at 15:29.

  6. #6

    Asus wl500gp pxe boot using GRUB

    Доброго времени суток!
    Вопрос такой, можно каким либо образом на wl500gp настроить pxe c использованием GRUB?
    Суть, syslinux с трудом подтягивает здоровые iso например размером 600мб, хотя может я что-то и не понимаю, т.к. с Linux в большей степени на вы
    На сколько я понимаю grub в состоянии сделать достаточный объем виртуальной памяти для роутера, либо скачавшись по сети и запустившись уже непосредственно на компе в состоянии утянуть с роутера образ диска распокавать его и начать установку
    Подскажите как настроить такую фишку, если есть возможность?
    роутер wl500gp v1, прошивка 1.9.2.7 (1.9.2.7-d-r2174)

Similar Threads

  1. Доступ к роутеру из сети. Как это сделать?
    By Bormann in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 258
    Last Post: 27-12-2013, 09:07
  2. Настройка работы IPTV в сети провайдера
    By Anth0ny in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 133
    Last Post: 07-11-2013, 08:10
  3. Replies: 229
    Last Post: 19-10-2012, 14:40
  4. Домовые сети, DHCP + PPPoE/PPTP/L2TP
    By Oleg in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 1256
    Last Post: 20-02-2012, 13:44
  5. настройка WL-500gx с VPN в сети ultranet.ru
    By deco in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 79
    Last Post: 21-11-2010, 08:00

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •