Tftp сервер на windows server 2016

TFTP (Trivial File Transfer Protocol) is a simple file transfer protocol that allows users to transfer files between client and server. In this blog post, we will discuss how to configure TFTP Server on Windows Server 2016. TFTP is commonly used in network administration for tasks such as backing up device configurations, upgrading firmware, and transferring files between network devices.

There are several reasons why you may need to configure a TFTP Server on Windows Server 2016:

  • 1. Network administration tasks: TFTP is commonly used for network administration tasks such as backing up device configurations, upgrading firmware, and transferring files between network devices.
  • 2. Simplified file transfer: TFTP provides a simple and straightforward method for transferring files between client and server, making it an efficient choice for quick file transfers.
  • 3. Compatibility: TFTP is supported by a wide range of network devices and operating systems, making it a versatile choice for file transfers in a heterogeneous network environment.

Now that we understand the importance of configuring a TFTP Server on Windows Server 2016, let’s proceed with the step-by-step instructions for setting it up.

Video Tutorial:

Part 1. Installing the TFTP Server Feature on Windows Server 2016

Before we can configure the TFTP Server on Windows Server 2016, we need to install the necessary feature. Here are the steps to install the TFTP Server feature:

1. Open the Server Manager by clicking on the Windows icon and selecting «Server Manager» from the Start menu.
2. In the Server Manager, click on «Manage» and then select «Add Roles and Features.«
3. The Add Roles and Features Wizard will open. Click «Next» to proceed.
4. Select «Role-based or feature-based installation» and click «Next.«
5. Select the appropriate server from the server pool and click «Next.«
6. In the «Server Roles» list, scroll down and expand «Roles» > «Windows Server Update Services» > «Features.«
7. Locate «TFTP Client» and select the checkbox next to it.
8. A popup window will appear, asking to add features required by TFTP Client. Click «Add Features» to proceed.
9. Click «Next» to go to the «Features» section.
10. Review the features to be installed and click «Next» to proceed.
11. In the «Confirmation» section, click «Install» to begin the installation process.
12. Wait for the installation to complete, and then click «Close» when finished.

Pros and Cons of Installing the TFTP Server Feature on Windows Server 2016:

Pros Cons
1. Easy and straightforward process to install the TFTP Server feature on Windows Server 2016. 1. The TFTP Server feature is not enabled by default on Windows Server 2016 and needs to be manually installed.
2. Once installed, the TFTP Server feature provides a simple and efficient method for transferring files. 2. TFTP is a less secure protocol compared to other file transfer protocols such as SFTP or FTPS.
3. The TFTP Server feature is compatible with a wide range of network devices and operating systems. 3. TFTP has limited support for larger file transfers and may not be suitable for transferring large files.

Part 2. Configuring TFTP Server on Windows Server 2016

Once the TFTP Server feature is installed on Windows Server 2016, we can proceed with the configuration. Here are the steps to configure TFTP Server on Windows Server 2016:

1. Open the Server Manager and click on «Tools» > «Windows Deployment Services.«
2. In the Windows Deployment Services console, expand the server node and right-click on «Server» > «Properties.«
3. In the Server Properties window, navigate to the «TFTP» tab.
4. Ensure that the checkbox for «Enable Variable Window Extension» is checked.
5. Set the value for «Maximum Block Size» to the desired block size for file transfers.
6. Set the value for «Maximum Retransmissions» to the desired number of retransmissions.
7. Click «Apply» to save the changes and then click «OK» to close the Server Properties window.

Pros and Cons of Configuring TFTP Server on Windows Server 2016:

Pros Cons
1. Easy and straightforward process to configure the TFTP Server on Windows Server 2016. 1. TFTP is a less secure protocol compared to other file transfer protocols such as SFTP or FTPS.
2. The TFTP Server configuration settings allow for customization of block size and retransmissions. 2. TFTP has limited support for larger file transfers and may not be suitable for transferring large files.
3. The TFTP Server is compatible with a wide range of network devices and operating systems. 3. Troubleshooting TFTP Server issues can be challenging without proper monitoring and logging tools.

Part 3. Creating a TFTP Server Root Folder

After configuring the TFTP Server on Windows Server 2016, we need to create a root folder where the files will be stored. Here are the steps to create a TFTP Server root folder:

1. Open Windows Explorer and navigate to the desired location where you want to create the TFTP Server root folder.
2. Right-click on the location and select «New» > «Folder.«
3. Give the folder a descriptive name, such as «TFTP Server,» and press Enter.
4. Right-click on the newly created folder and select «Properties.«
5. In the Properties window, navigate to the «Security» tab.
6. Click on «Edit» to change the security settings.
7. In the Permissions window, click on «Add» to add the desired user or group.
8. Enter the appropriate user or group name and click «Check Names» to verify.
9. Click «OK» to add the user or group to the permissions list.
10. Set the desired permissions for the user or group, such as Read, Write, or Full Control.
11. Click «Apply» to save the changes and then click «OK» to close the Properties window.

Pros and Cons of Creating a TFTP Server Root Folder:

Pros Cons
1. Creating a TFTP Server root folder provides a centralized location for storing files. 1. Improper security settings on the TFTP Server root folder can lead to unauthorized access.
2. The TFTP Server root folder can be easily accessed and managed from Windows Explorer. 2. If the TFTP Server root folder is not properly secured, it can be vulnerable to malicious attacks.
3. The TFTP Server root folder allows for easy organization and management of files. 3. Permissions for the TFTP Server root folder need to be carefully managed to ensure data integrity and security.

Part 4. Testing the TFTP Server on Windows Server 2016

After configuring the TFTP Server and creating the root folder, it’s important to test the functionality to ensure that everything is working correctly. Here are the steps to test the TFTP Server on Windows Server 2016:

1. Open a Command Prompt by clicking on the Windows icon and typing «cmd» in the search bar.
2. In the Command Prompt, type the following command to test the TFTP Server: tftp -i <server_ip> put <filename> <destination_filename>
– Replace «» with the IP address of the TFTP Server.
– Replace «» with the name of the file you want to transfer.
– Replace «» with the desired name for the file on the server.
3. Press Enter to execute the command.
4. The TFTP Server will attempt to transfer the file to the specified location.
5. If the command is successful, you will see a message indicating that the file was transferred successfully.
6. Verify that the file appears in the TFTP Server root folder.

Pros and Cons of Testing the TFTP Server on Windows Server 2016:

Pros Cons
1. Testing the TFTP Server ensures that the configuration is working correctly. 1. Troubleshooting TFTP Server issues can be challenging without proper monitoring and logging tools.
2. Testing allows for identifying any potential connectivity issues or configuration errors. 2. TFTP is a less secure protocol compared to other file transfer protocols such as SFTP or FTPS.
3. Verifying the successful transfer of files confirms the functionality of the TFTP Server. 3. TFTP has limited support for larger file transfers and may not be suitable for transferring large files.

What to Do If You Can’t Configure TFTP Server on Windows Server 2016

If you encounter any difficulties while configuring the TFTP Server on Windows Server 2016, here are three alternative solutions you can try:

1. Use a third-party TFTP Server software: If the built-in TFTP Server feature is not working or does not meet your requirements, you can consider using a third-party TFTP Server software. There are many free and paid options available that provide more advanced features and improved security.

2. Try a different file transfer protocol: If TFTP is not suitable for your needs, you can explore other file transfer protocols such as FTP (File Transfer Protocol), SFTP (SSH File Transfer Protocol), or FTPS (FTP Secure). These protocols offer greater security and more advanced features, but may require additional configuration and setup.

3. Consult the Windows Server documentation or seek professional assistance: If you are still unable to configure the TFTP Server on Windows Server 2016, it may be helpful to consult the official Windows Server documentation or seek assistance from a professional IT consultant or network administrator who has experience with TFTP and Windows Server configurations.

Bonus Tips for Configuring TFTP Server on Windows Server 2016

Here are three bonus tips to consider when configuring TFTP Server on Windows Server 2016:

1. Enable logging and monitoring: To track TFTP Server activity and troubleshoot any potential issues, enable logging and monitoring features. This will allow you to capture and analyze data related to file transfers, connectivity, and security.

2. Secure the TFTP Server: As mentioned earlier, TFTP is a less secure protocol compared to other file transfer protocols. To enhance the security of your TFTP Server, consider implementing additional security measures such as using firewalls, restricting access to the server, and implementing encryption protocols.

3. Regularly update and patch the server: To ensure the stability and security of your TFTP Server, regularly check for updates and patches from Microsoft. Applying these updates will address any known vulnerabilities and improve the overall performance of the server.

The Bottom Line

Configuring a TFTP Server on Windows Server 2016 is a straightforward process that can provide an efficient and convenient method for transferring files in a network environment. However, it is important to consider the security implications and limitations of TFTP when implementing it in your network.

By following the step-by-step instructions provided in this blog post, you can successfully configure a TFTP Server on Windows Server 2016 and leverage its capabilities for network administration tasks.

5 FAQs about Configuring TFTP Server on Windows Server 2016

Q1: Is the TFTP Server feature enabled by default on Windows Server 2016?

A1: No, the TFTP Server feature is not enabled by default on Windows Server 2016. It needs to be manually installed using the Server Manager.

Q2: Can I transfer large files using TFTP?

A2: TFTP has limited support for larger file transfers, and it may not be suitable for transferring large files. It is recommended to use other file transfer protocols such as FTP, SFTP, or FTPS for large file transfers.

Q3: How can I secure the TFTP Server on Windows Server 2016?

A3: To enhance the security of your TFTP Server, you can implement additional security measures such as using firewalls, restricting access to the server, and implementing encryption protocols. However, it is important to note that TFTP is inherently less secure than other file transfer protocols.

Q4: Can I use a third-party TFTP Server software instead of the built-in feature?

A4: Yes, if the built-in TFTP Server feature does not meet your requirements, you can use a third-party TFTP Server software. There are many free and paid options available that provide more advanced features and improved security.

Q5: What should I do if I encounter difficulties while configuring the TFTP Server on Windows Server 2016?

A5: If you encounter difficulties while configuring the TFTP Server, you can try using a third-party TFTP Server software, explore other file transfer protocols, or consult the Windows Server documentation or seek professional assistance.

Протокол TFTP (Trivial File Transfer Protocol) упрощенный протокол передачи файлов, обеспечивающей простую возможность скачивания и загрузки. Обычно протокол TFTP используется для загрузки по PXE (сетевая загрузка, бездисковые рабочие станции, установка ОС по сети, и пр.), загрузки/обновления конфигурации/прошивок сетевого оборудования и ряда других специфичных задач. В проколе отсутствуют средства защиты, аутентификации и управления. Основное его преимущество – простота реализации клиентской части и высокая производительность при передаче файлов большого объема. Протокол работает по порту 69 UDP.

Содержание:

  • Запуск TFTP сервера в Windows
  • Установка клиента TFTP в Windows
  • Установка встроенного TFTP сервера в Windows Server

Запуск TFTP сервера в Windows

Чаще всего для быстрого запуска TFTP сервера в Windows используют бесплатный opensource Tftpd64 (tftpd32). Вы можете скачать portable или установочный пакет tftpd64 здесь.

  1. Запустите исполняемый файл tftpd64.exe;
  2. Интерфейс tftpd64 состоит из нескольких вкладок. На вкладке Tftp Server нажмите кнопку Settings и выберите каталог, который вы хотите опубликовать;
    запуск сервера tftpd64 в windows

  3. Выберите TFTP Security = None
  4. После того, как вы изменили настройки TFTP, нужно перезапустить программу.
  5. Откройте в Windows Firewall порт 69/UDP для входящего TFTP трафика. Можно создать разрешающее правило в файерволе Windows с помощью PowerShell: N
    ew-NetFirewallRule -DisplayName 'TFTP-UDP-In'  -Direction Inbound -Action Allow -Protocol UDP -LocalPort 69
  6. Теперь вы можете подключиться к tftp, чтобы получить или загрузить файл.

Программу tftpd64 можно использовать в качестве TFTP клиента. Перейдите на вкладку Tftp Client, укажите IP адрес TFTP сервера и порт подключения (69 по умолчанию).

Теперь вы можете скачать (Get) или загрузить (Put) файлы на указанный tftp сервер.

На вкладке Log viewer можно посмотреть логи подключений к TFTP.

Установка клиента TFTP в Windows

По умолчанию в Windows не установлен клиент TFTP. Вы можете установить в Windows 10/11 его командой:

Enable-WindowsOptionalFeature –FeatureName TFTP -Online

В Windows Server для установки клиента TFTP используется другая команда:

Install-WindowsFeature TFTP-Client

Теперь вы можете использовать утилиту tftp.exe для скачки и загрузки файлов по TFTP.

  • Передать файл на TFTP сервер:
    tftp 192.168.1.100 PUT имя_файла.txt
  • Скачать файл с TFTP:
    tftp 168.1.100 GET имя_файла.txt

Установка встроенного TFTP сервера в Windows Server

В Windows Server доступен встроенный TFTP сервер, который входит в состав роли WDS и используется для PXE загрузки и установки Windows по сети. Чтобы установить службу TFTP, откройте консоль Server Manager -> Add Roles and Features Wizard -> выберите роль Windows Deployment Services (Службы развертывания Windows).

Установка роли wds в windows server

В компонентах роли WDS выберите только Transport Server (Транспортный сервер).

Установить транспортный сервис WDS с tftp службой

После завершения установки создайте каталог, который будет корневым каталогом для TFTP сервера. Например, C:\tftp.

Укажите путь к корневому каталогу TFTP в строковом REG_SZ параметре RootFolder в разделе реестра HKLM\SYSTEM\CurrentControlSet\services\WDSServer\Providers\WDSTFTP

Настройки tftp сервера windows в реестре

В параметре ReadFilter указан список каталогов, из которых разрешена загрузка файлов. По умолчанию загрузка возможна только из каталогов
\boot\
и
\tmp\
. Если вы используете другую структуру каталогов, нужно добавить разрешенные каталоги в параметр ReadFilter или указать тут
\*
.

Запустите службу WDSServer:

Get-Service WDSServer| Start-Service

Включить автоматический запуск службы с помощью Set-Service:

set-service WDSServer -StartupType Automatic

Проверьте, что служба запущена и ее процесс ожидает подключения на порту UDP 69:

Get-Process -Id (Get-NetUDPEndpoint -LocalPort 69).OwningProcess

В Windows Firewall доступ к UDP порту 69 отрывает правило “Windows Deployment Services (UDP-In)”. Проверьте, что правило брандмауэра включено:

(Get-NetFirewallRule -displayname 'Windows Deployment Services (UDP-In)').enabled

Попробуйте скачать файл с TFTP сервера с помощью встроенного клиента tftp.exe:

tftp -i 192.168.158.10 get test.zip

tftp.exe скачать файл с сервера из командной строки

Основной недостаток встроенного TFTP сервера в Windows Server – он не позволяет открыть папку для записи. Это означает, что клиенты могут только скачивать файлы с такого TFTP сервера, но не загружать.

В этой статье мы рассмотрим процесс установки и настройки TFTP сервера в операционной системе Windows. Протокол TFTP (Trivial File Transfer Protocol) представляет собой упрощенный протокол передачи файлов, обеспечивающий простую возможность загрузки и скачивания. Обычно он используется для таких задач, как сетевая загрузка (PXE), установка операционных систем по сети, обновление прошивок сетевого оборудования и другие специфичные задачи. TFTP отличается своей простотой и высокой производительностью при передаче файлов, однако в нем отсутствуют средства защиты и аутентификации.

Основные характеристики TFTP

TFTP работает по порту 69 (UDP) и не предоставляет средств для управления и безопасности. Его основное преимущество — это простота реализации клиентской части и высокая производительность при передаче крупных файлов.

Запуск TFTP сервера в Windows

Для быстрого развертывания TFTP сервера в Windows часто используют бесплатную утилиту Tftpd64 (или Tftpd32), которая является open-source решением. Эту утилиту можно скачать в виде portable версии или в виде установочного пакета.

Шаги по настройке Tftpd64:

1. Скачайте и запустите исполняемый файл tftpd64.exe.

2. В интерфейсе Tftpd64 перейдите на вкладку Tftp Server и нажмите кнопку Settings.

3. Выберите каталог, который вы хотите опубликовать, и установите TFTP Security в положение None.

4. После изменения настроек перезапустите программу.

5. Откройте в Windows Firewall порт 69/UDP для входящего трафика TFTP. Для этого можно создать разрешающее правило с помощью PowerShell:

New-NetFirewallRule -DisplayName 'TFTP-UDP-In' -Direction Inbound -Action Allow -Protocol UDP -LocalPort 69

Теперь сервер готов к подключению для загрузки или скачивания файлов по TFTP.

Использование Tftpd64 в качестве TFTP клиента

Tftpd64 также можно использовать как TFTP клиент. Для этого перейдите на вкладку Tftp Client, укажите IP-адрес TFTP сервера и порт подключения (по умолчанию 69). Теперь вы можете:

— Скачать файл с сервера (Get);

— Загрузить файл на сервер (Put).

Для просмотра логов подключений перейдите на вкладку Log Viewer.

Установка TFTP клиента в Windows

По умолчанию клиент TFTP не установлен в Windows. Для установки в Windows 10 или 11 можно использовать следующую команду PowerShell:

Enable-WindowsOptionalFeature –FeatureName TFTP -Online

Для установки клиента TFTP на Windows Server используется другая команда:

Install-WindowsFeature TFTP-Client

После установки вы сможете использовать утилиту tftp.exe для передачи файлов по TFTP.

Примеры команд:

— Передать файл на TFTP сервер:

tftp 192.168.1.100 PUT имя_файла.txt

— Скачать файл с TFTP сервера:

tftp 192.168.1.100 GET имя_файла.txt

Установка встроенного TFTP сервера в Windows Server

В операционной системе Windows Server доступен встроенный TFTP сервер, который является частью роли WDS (Windows Deployment Services). Он используется для сетевой загрузки (PXE) и установки Windows по сети.

Шаги по установке:

1. Откройте Server Manager и выберите Add Roles and Features Wizard.

2. Установите роль Windows Deployment Services (WDS).

3. В настройках WDS выберите компонент Transport Server.

4. После завершения установки создайте каталог для файлов TFTP сервера (например, C:\tftp).

5. Укажите путь к корневому каталогу TFTP сервера в параметре реестра RootFolder:

HKLM\SYSTEM\CurrentControlSet\services\WDSServer\Providers\WDSTFTP

6. В параметре ReadFilter можно задать каталоги, из которых разрешена загрузка файлов. По умолчанию разрешена загрузка только из каталогов \boot\ и \tmp\. Чтобы разрешить загрузку из других каталогов, добавьте их в этот параметр или установите значение \* для всех каталогов.

Запуск TFTP сервера:

1. Запустите службу WDS с помощью команды:

Get-Service WDSServer | Start-Service

2. Настройте автоматический запуск службы:

Set-Service WDSServer -StartupType Automatic

3. Проверьте, что служба запущена и ожидает подключения на порту UDP 69:

Get-Process -Id (Get-NetUDPEndpoint -LocalPort 69).OwningProcess

4. Убедитесь, что правило брандмауэра для доступа к порту UDP 69 включено:

(Get-NetFirewallRule -DisplayName 'Windows Deployment Services (UDP-In)').Enabled

Пример использования встроенного клиента:

Попробуйте скачать файл с TFTP сервера с помощью встроенного клиента tftp.exe:

tftp -i 192.168.158.10 GET test.zip

Основным недостатком встроенного TFTP сервера в Windows Server является невозможность открыть папку для записи. Это означает, что клиенты могут только скачивать файлы с такого TFTP сервера, но не загружать их.

Заключение

В статье мы рассмотрели процесс установки и настройки TFTP сервера в Windows, используя как сторонние решения, так и встроенные возможности Windows Server. TFTP — это простой и производительный протокол, часто используемый для загрузки прошивок, обновления сетевого оборудования и PXE загрузки операционных систем. Несмотря на свою простоту, TFTP имеет ряд ограничений, таких как отсутствие защиты и невозможность записи файлов на встроенном сервере Windows Server.

PXE Boot и WinPE для установки по сети Windows 10 / Server 2016

Порывшись в сети нашел массу инструкций по аналогичной теме. Вроде всё разжевано и
инструкции чёткие, но при их выполнении происходят какие-то не очевидные вещи и
пока разбираешься в том, что надо сделать приходится параллельно искать информацию о
появляющихся ошибках. Получив опыт и имея готовую систему я пришел к
выводу, что всё можно было сделать другими инструментами, не устанавливая массу
стороннего софта и не заморачиваясь со сложным редактированием образов. Материал
касающийся нашей темы косвенно я опишу лишь поверхностно, чтобы не скатываться в занудную
статью о настройке серии роутеров на раздачу DHCP. То, что касается непосредственно
создания аналога сервера развёртывания конфигураций я опишу подробно и с картинками.
Не скриншотами командных файлов, а нормальным текстом, который можно скопировать и
запустить на своём компьютере.

Если вы сталкивались с инструкциями в которых необходимо «поднимать»
активдиректори и доменкотроллер, монтировать диски через определённые утилиты и долго шаманить
над созданием текстовых файлов, перепечатывая текст с монитора, то представляю вам
более простой вариант реализации. Тот кто пользовался этой инструкцией дали пару рекомендаций
о подаче информации и думаю, что теперь она вылизана как никогда чётко и красиво.

Есть масса методов установки операционных систем по сети. Данный
вариант предназначен для маленьких сетей в которых нет возможности установить
сервер с операционной системой Windows Server. Например, если компания не хочет
нарушать лицензионную чистоту, а администратор сети не умеет администрировать
Linux-сервера. Единственная сложность с которой придётся столкнуться заключается
в поиске оригинального файла winpe.wim.

Хочу обратить особое внимание на то, что для сетевой установки желательно использовать
Windows Deployment Services (WDS), а не самопальные системы. Там больше инструментов и они
более гибкие.

Вот последовательность которую будем проводить для настройки нашей системы.

  • Настраиваем DHCP-сервер,
  • настраиваем TFTP-сервер,
  • копируем PXElinux,
  • расшариваем папку с распакованными образами,
  • скачиваем и извлекаем winpe.wim,
  • дорабатываем winpe.wim для работы с сетью,
  • создаём файл для выбора устанавливаемой ОС.

Думаю стоит немного уточнить, что для чего нужно.

Настройка DHCP-сервера

Исходя из того, что сеть небольшая и в ней нет ни Линуксового, ни виндового
сервера, то можно предположить, что в качестве DHCP-сервера выступает роутер
компании. Настройка каждого конкретного роутера уникальна и по этому администратор
должен самостоятельно решить вопрос о добавлении необходимых настроек. В качестве примера
могу привести настройку роутеров Cisco.

conf t
 ip dhcp pool {ИМЯ}
  bootfile pxelinux.0
  next-server {IP-адрес вашего TFTP-сервера}

В настройках роутера необходимо указать два параметра. Первый — это имя файла
для первоначальной загрузки PXE. Второй — это адрес TFTP-сервера. Настроив эти
данные на своём DHCP-сервере мы можем приступить к следующему шагу. Если у роутера нет
возможности манипулировать настройками его DHCP, то нужно искать выход. Например, можно
отключить автоматический DHCP на роутере и установить DHCP-сервер на компьютере
выделенном для сетевой установки операционных систем. В качестве универсального решения
могу предложить использовать Tftpd64, который выступает в роли как TFTP-сервера, так и
DHCP-сервера.

Настройка TFTP-сервера

Следующим шагом мы настраиваем TFTP-сервер. Хотя, что там настраивать? Устанавливаем
программу Tftpd64 и в ней указываем каталог в котором располагаются файлы для
нашего проекта. Допустим, что корень TFTP-сервера расположен по адресу D:\TFTP\.
Для усиления системы безопасности я не рекомендую располагать данные публичного
характера на системном диске.

Tftpd64 настройка сервера.

Подготовка PXElinux

Далее ищем самый свежий архив на сайте
www.kernel.org.
Скачиваем на компьютер и распаковываем в отдельный каталог. Нам необходимо несколько файлов из этого архива.
Сначала я думал сделать свой архив, чтобы люди не выискивали нужное из архива, но потом передумал, ведь через
несколько месяцев или лет выйдет новая версия, а моя безнадёжно устареет. После копирования файлов
нужно будет создать каталог pxelinux.cfg и в нём два пустых файла: default и
graphics.conf. В результате получится вот такая структура.

  • /pxelinux.cfg/
  • /pxelinux.cfg/default
  • /pxelinux.cfg/graphics.conf
  • /ldlinux.c32
  • /libcom32.c32
  • /libutil.c32
  • /pxelinux.0
  • /vesamenu.c32

Создаём главное меню с выбором действия. Меню состоит всего из двух пунктов. Первый
отвечает за загрузку операционной системы с первого раздела жесткого диска. Второй
же отвечает за загрузку установщика операционных систем который мы подготовим чуть позже.
Загрузка с локального диска срабатывает через десять секунд бездействия. Это сделано для
компьютеров у которых забыли убрать загрузку по сети и за ними работают пользователи.

Файл default:

DEFAULT vesamenu.c32
PROMPT 0
MENU INCLUDE pxelinux.cfg/graphics.conf
TIMEOUT 100

MENU TITLE WWW.ORCINUS.RU PXE Boot menu

LABEL bootlocal
menu label Boot Local HDD
menu default
localboot 0x80

LABEL wininstall64
menu label Установка MS Windows OS (x64)
kernel pxeboot.0

Второй файл содержит информацию о настройке графического режима. Так сложилось
исторически из-за того, что у меня на «боевом» сервере используется
разветвлённое меню загрузчика и это вполне оправдано. В маленьких проектах нет
необходимости во вложенных меню, но если вы следили за моими статьями, то
читали статью о PXE загрузке компьютеров.
Возможно для вас подобный подход станет необходимым и
каждодневным инструментом.

Файл graphics.conf:

MENU MARGIN 10
MENU ROWS 16
MENU TABMSGROW 21
MENU TIMEOUTROW 26
MENU COLOR BORDER 30;44 #00000000 #00000000 none
MENU COLOR SCROLLBAR 30;44 #00000000 #00000000 none
MENU COLOR TITLE 0 #ffffffff #00000000 none
MENU COLOR SEL 30;47 #40000000 #20ffffff
MENU BACKGROUND background.png
NOESCAPE 0
ALLOWOPTIONS 0

На этом основа проекта уже создана. PXE грузится, можно даже сделать меню, скопировать
пару утилит и пользоваться благами удалённой загрузки. Но наша цель — это установка
операционных систем Windows по сети. И тут кроется очень интересная система подводных
камней. В PXElinux можно подключить образ диска и загрузиться с него. Например, я таким
образом загружаю диски восстановления и LiveCD с антивирусными программами. Но у протокола
TFTP есть огромная проблема с передачей больших файлов. Дополнительно всё усугубляется тем,
что перед запуском образа весь файл образа копируется в оперативную память. Ради эксперимента
я запустил на нескольких компьютерах запуск установки Windows 10 используя стандартный
метод. На одном компьютере загрузка продлилась около трёх часов, а на остальных происходил
сбой приблизительно через час. И это только копирование образа в память. Так же на компьютере
должно быть установлено памяти больше чем занимает образ. Если вы попробуете загрузить
образ размером пять гигабайт, то памяти необходимо около шести. А в офисных компьютерах редко
встретишь больше четырёх гигабайт. Естественно, что это совершенно не рабочий вариант.

Расшариваем папку с образами операционных систем

Тут вообще всё очень просто. Создаём каталог на сервере и создаём не привилегированного пользователя
с доступом к этому каталогу с правами чтения и исполнения.

Допустим мы создали каталог D:\SETUP\ и дали к нему доступ. Так же надо сделать его сетевым.
Это тоже просто. Но для того, чтобы у пользователей не возник праздный интерес воспользоваться
публичным ресурсом я его сделал скрытым. Конечно, есть масса программ которые позволяют увидеть
скрытые каталоги на сервере, но сокрытие ресурсов не бывает лишним.

Но существует обходной путь. Мы воспользуемся небольшой операционной системой WindowsPE,
которая будет служить оболочкой для запуска установочной программы. WindowsPE
является полнофункциональной системой. В ней доступно подключение по сети к SMB-ресурсам,
есть графический интерфейс и возможность писать командные файлы, под ней можно запускать программы
написанные для ОС Windows. Больше всего меня интересует возможность работать с SMB, так как
это нас раскрепощает по скорости скачивания и уменьшает объём скачиваемой информации. Уменьшение
объёма произойдёт из-за того, что мы будем использовать лишь несколько реально необходимых файлов
из распакованного образа, а не огромный файл.

Продолжаем. Для дальнейшей работы нам необходимо найти чистый образ Winpe.wim. Лучше
его не скачивать со сторонних сайтов. Мало ли, кто туда заразу подсунет. Надо идти проторённым
и официальным путём. Заходим на сайт Майкрософта и скачиваем образ Windows AIK. Он распространяется
в виде ISO-образа, который необходимо смонтировать в систему. У Windows 10 ISO-образы
монтируются прямо средствами операционной системы. Находим внутри архив winpe.cab.

Windows AIK disk.

Внутри winpe.cab находится два файла: F1_WINPE.WIM и F3_WINPE.WIM.

Windows PE.

С этого момента необходимо определиться с разрядностью операционной системы. В F1_WINPE.WIM
расположена 32-разрядная система, а в F3_WINPE.WIM — 64-разрядная система.
Так как подавляющее большинство офисных компьютеров оснащается четырьмя гигабатами оперативной памяти,
а процессоры поддерживают 64-бита с незапамятных времён, то рекомендую остановиться именно на 64-битной
системе.

Создадим каталог Boot в корневой папке вашего TFTP-сервера. Скопируем туда понравившийся файл
и переименуем его в winpe.wim.

Теперь из winpe.wim нужно извлечь несколько файлов и положить их в определённые каталоги.
Для доступа к внутренностям этого файла можно использовать архиватор 7-zip или Far manager. Лично я
пользуюсь Far и не замечаю разницы между файловой системой и внутренностями архива. Чтобы открыть
wim-архив необходимо выделить его курсором и нажать Crtl+PageDown.

Windows PE.

Приведу таблицу размещения файлов для правильного копирования. В левой табличке каталог
вашего TFTP-сервера и название файла, а в правой файл из архива winpe.wim. Обратите внимание
на то, что файл pxeboot.n12 придётся переименовать, так как это одна из особенностей загрузки
файлов с использованием PXElinux.

TFTP файл WIM файлы
\pxeboot.0 Windows\Boot\PXE\pxeboot.n12
\bootmgr.exe Windows\Boot\PXE\bootmgr.exe
\Boot\Fonts\wgl4_boot.ttf Windows\Boot\Fonts\wgl4_boot.ttf
\boot.ini Создать пустой файл.
\Boot\winpe.wim Скопировать сам архив winpe.wim.

Но этого не достаточно для работы. Нужно еще сформировать BCD-файл, который
является заменой boot.ini в операционных системах Windows Vista и выше.
Для его формирования необходимо выполнить несколько команд с правами администратора.

Чтобы долго не печатать, создайте командный файл createbcd.cmd и скопируйте в него следующий текст.

bcdedit -createstore %1\BCD
bcdedit -store %1\BCD -create {ramdiskoptions} /d "Ramdisk options"
bcdedit -store %1\BCD -set {ramdiskoptions} ramdisksdidevice boot
bcdedit -store %1\BCD -set {ramdiskoptions} ramdisksdipath \boot\boot.sdi
for /F "tokens=2 delims={}" %%i in ('bcdedit -store %1\BCD -create /d "WWW.ORCINUS.RU Boot Image" /application osloader') do set guid={%%i}
bcdedit -store %1\BCD -set %guid% systemroot \Windows
bcdedit -store %1\BCD -set %guid% detecthal Yes
bcdedit -store %1\BCD -set %guid% winpe Yes
bcdedit -store %1\BCD -set %guid% osdevice ramdisk=[boot]\Boot\winpe.wim,{ramdiskoptions}
bcdedit -store %1\BCD -set %guid% device ramdisk=[boot]\Boot\winpe.wim,{ramdiskoptions}
bcdedit -store %1\BCD -create {bootmgr} /d "Windows BootManager"
bcdedit -store %1\BCD -set {bootmgr} timeout 1
bcdedit -store %1\BCD -set {bootmgr} displayorder %guid%

Так как при создании BCD будет несколько файлов, то создайте каталог, например, C:\pxe\.
Скопируйте туда createbcd.cmd. Запустите командную строку от имени администратора и дайте команду.

C:\pxe\createbcd.cmd c:\pxe

Из сгенерированных файлов нам понадобится только два: BCD и boot.sdi. Оба файла необходимо скопировать
на наш TFTP-сервер в каталог \Boot\.

На этом моменте всё готово для запуска нашей сетевой операционной системы. Но это лишь запуск
Windows PE. А как на счёт запуска установки операционных систем? Для этого придётся откорректировать
образ winpe.wim.

Доработка Windows PE

В образе winpe.wim есть файл отвечающий за первоначальное иницирование. Используя Far Manager
можно открыть и отредактировать этот файл состоящий всего из одной команды. Адрес файла:

\Windows\System32\startnet.cmd

Чаще всего встречается инструция в которой этот файл содержит подключение сетевого
диска с распакованными образами и меню для установки. Но во время использования меня это
не устроило. Да, в этом случае у нас получается удобное загрузочное меню, а все настройки
лежат в одном файле. Но лично меня это не устраивает из-за того, что я люблю экспериментировать
и мне нужна универсальная система. По этой причине я разделил задачу на две подзадачи.
В startnet.cmd будет простенький скрипт подключающий сетевой диск и запускающий с этого
сетевого диска командный файл autostart.cmd.

Почему именно такой подход? Дело в том, что получить доступ к командному файлу на SMB-шаре
на порядок проще чем вспоминать адрес и имя файла в wim-образе операционной системы. Тем более,
манипулируя файлами и каталогами с программами установки операционных систем, вы всё равно
будете рядом с этим файлом и сможете оперативно вносить изменения.

Но никто не мешает вам объединить оба файла в один.

Содержимое startnet.cmd:

@echo off
cls
echo.
echo Подготовка к запуску.
echo Подождите немного...
echo.

wpeinit

echo Подключение сетевого диска.
echo.
@net use Z: \\192.168.0.1\setup$ pa$$W0rd /USER:server\guest

Z:
z:\autostart.cmd
exit /b

Не забудьте указать пароль и имя пользователя для подключения к SMB-ресурсу.
Так же не забудьте ограничить права этого пользователя лишь чтением и исполнением.
Дело в том, что злоумышленник (даже внутри своей конторы могут быть нежелательные
личности и шутники) может воспользоваться возможностью записи и редактирования файлов
в своих целях. Не забывайте о безопасности никогда.

И так, что ж мы тут имеем? В файле запускается команда wpeinit которая отвечает за
запуск сетевых сервисов и прочих настроечных приблуд. Далее идёт наш код. Я поместил
строку подключения к сетевом ресурсу в невидимую для ползователя область так, что он увидит
факт подключения сетевого ресурса, но не увидит логин и пароль пользователя для подключения.
В какой-то степени защита от дурака, но у простого пользователя не возникнет праздный интерес
воспользоваться полученной информацией. Далее будет произведен запуск командного файла с
сетевого ресурса.

Как мы знаем, с SMB работа происходит значительно быстрее и не будет лишних проблем с
попыткой скачать весь образ установочного диска. Установщих Windows воспользуется только
реально необходимыми ему файлами.

Содержимое z:\autostart.cmd, расположенного в корневой директории нашего ресурса:

@echo off
:beginsetup
cls
echo Выберите интересующий вас пункт:
echo.
echo    1) Запуск Far manager
echo.
echo    2) Установка Windows 10 Professional 
echo.
echo    3) Установка Windows 7 Professional
echo.
echo    4) Установка Windows Server 2016 Standard
echo.
echo    5) Установка Windows Server 2016 Hyper-V
echo.
echo Введите номер и нажмите Enter. 
set /p ID=
echo.

if %ID%==1 goto :farman
if %ID%==2 goto :win10pro
if %ID%==3 goto :win07pro
if %ID%==4 goto :winsrv2016
if %ID%==5 goto :winsrv2016h
if %ID% GTR 3 goto :failure
if %ID% LSS 3 goto :failure
exit /b

:farman
echo.
echo Запуск установки.
z:\Far\far.exe
goto :beginsetup


:win10pro
echo.
echo Запуск установки.
z:\Windows_10_professional\setup.exe
exit /b

:win07pro
echo.
echo Запуск установки.
z:\Windows_07_professional\setup.exe
exit /b

:winsrv2016
echo.
echo Запуск установки.
z:\Windows_Server_2016\setup.exe
exit /b

:winsrv2016h
echo.
echo Запуск установки.
z:\Windows_Server_2016_hyperv\setup.exe
exit /b

:failure
cls
echo.
echo Доступных пунктов не выбрано. 
echo Вернитесь в предыдущее меню и выберите нужный пункт.
echo.
pause

goto :beginsetup

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

Надеюсь, что эта статья поможет в реализации ваших проектов, автоматизирует установку операционных
систем и создаст базу для дальнейшей автоматизации сетевых услуг.

Тэги: ИТ, Cisco

Отредактировано:2022-09-16 06:24:41

29 комментариев

Имя: Orcinus Orca 🖉
Андрей, какой размер дистрибутива? При загрузке ISO-шника нету строки прогресс-бара внизу. Если размер больше чем оперативы, то не загрузится.

Комментарий оставлен: 2017-12-19 00:00:00

Имя: Orcinus Orca 🖉
Андрей, тот который в дистрибутиве не запустится, он будет обращаться к несуществующему диску.

Судя по ошибкам на сервере на котором у вас крутится TFTP закрыты входящие соединения по портам 65***. В настройках TFTP можно жестко задать диапазон используемых портов для подключения клиентов (для функциональности лучше задать диапазон не менее 50 портов, на каждое новое подключение используется новый порт).

По февральскому надо внимательно смотреть имена образов, регистр и прочее. Почему-то повторяемость статьи оказалась не очень хорошей. Но проверить на большем количестве сетей не представляется возможным, я везде использую развёртывание через WDS. А то решение используется как временная заплатка.

Комментарий оставлен: 2017-12-28 00:00:00

Имя: Андрей 🖉
содержимое BCD после работы Вашего скрипта:

Windows Boot Manager
——————————
identifier {9dea862c-5cdd-4e70-acc1-f32b344d4795}
description Windows BootManager
displayorder {04cadba0-eb5c-11e7-8473-005056c00008}
timeout 1

Windows Boot Loader
—————————-
identifier {04cadba0-eb5c-11e7-8473-005056c00008}
device ramdisk=[boot]Bootwinpe.wim,{ae5534e0-a924-466c-b836-758539a3ee3a}
description Boot Image
osdevice ramdisk=[boot]Bootwinpe.wim,{ae5534e0-a924-466c-b836-758539a3ee3a}
systemroot Windows
detecthal Yes
winpe Yes

Комментарий оставлен: 2017-12-28 00:00:00

Имя: Андрей 🖉
Можно Вас попросить сбросить архивом Ваш полный рабочий пакет?

Комментарий оставлен: 2017-12-28 00:00:00

Имя: Андрей 🖉
получилось пройти этап с BCD
сформировал BCD без передачи параметра пути

Комментарий оставлен: 2017-12-28 00:00:00

Имя: Андрей 🖉
некоторые сетевые карты realtek не инициализируются wpeinit
соответственно требуется интеграция сетевых драйверов.

скорость копирования по tftpd32 до 6Mbs

Комментарий оставлен: 2017-12-28 00:00:00

Имя: Андрей 🖉
AIK все же пришлось установить, чтобы быстро интегрировать недостающие сетевые драйвера.

Windows установилась! Finish!

Спасибо за идею!
Никакой там WDS и близко не стоял.

Комментарий оставлен: 2017-12-28 00:00:00

Имя: Orcinus Orca 🖉
Андрей, отлично. Поздравляю с успехом.

Плюсы WDS в том, что всё происходит централизовано, ненужно заморачиваться с кучей граблей.

Но я рад, что вы смогли повторить данную инструкцию. Не у всех получается.

Комментарий оставлен: 2017-12-29 00:00:00

Имя: Orcinus Orca 🖉
Андрей, список файлов для загрузчика перечислен в разделе «Подготовка PXElinux». Но действительно при написании я могу заббыть указать вещи которые мне кажутся тривиальными.

Комментарий оставлен: 2017-12-29 00:00:00

Имя: Андрей 🖉
WDS
выделить ресурс под сервер
установить сервер
установить сам WDS
и т.д.

а в данном варинанте можно разворачиваться мобильно в любом месте со своего ноута, причем интеграция заключатся только в распаковке iso образа, и все, Вы готовы к сетевой установке.

поправте у себя в мануале, что BCD нужно создать без передачи параметров в cmd
т.к. текущий путь сохраняется в BCD, а затем ошибка при загрузке.
Конечно сразу заметил, что в BCD путь, заданный параметром прописался, но никаких намеков, что именно это влияло.

кроме того сделал cmd для автоматической интеграции в winpe.wim любого количества драйверов.
AIK должен быть установлен.

структура, 2 папоки и cmd:
inf — драйвера, можно по папкам.
mount — для распаковки winpe.win
integrate drivers to winpe.cmd

содержание cmd:

@echo 1. AIK must be installed to: C:Program FilesWindows AIKToolsPETools
@echo 2. Put drivers to folder inf
@echo 3. Copy winpe.wim to the current folder
@echo.
@pause
@echo.
@set winpepath=%CD%
@C:
@cd «C:Program FilesWindows AIKToolsPETools»

@echo off
echo Updating path to include dism, oscdimg, imagex
echo.
if /i %PROCESSOR_ARCHITECTURE% EQU X86 set PATH=%~dp0;%~dp0..\%PROCESSOR_ARCHITECTURE%;%~dp0..\%PROCESSOR_ARCHITECTURE%Servicing;%PATH%;
if /i %PROCESSOR_ARCHITECTURE% NEQ X86 set PATH=%~dp0;%~dp0..\%PROCESSOR_ARCHITECTURE%;%~dp0..x86;%~dp0..\%PROCESSOR_ARCHITECTURE%Servicing;%~dp0..x86Servicing;%PATH%;
cd /d %~dp0

@dism /Mount-Wim /WimFile:%winpepath%winpe.wim /index:1 /MountDir:%winpepath%mount
@dism /image:%winpepath%mount /add-driver /driver:»%winpepath%inf» /recurse /forceunsigned
@dism /unmount-wim /mountdir:%winpepath%mount /commit
@echo.
@echo.
@echo.
@echo Drivers from inf folder integrated to winpe.wim
@echo.
@echo Now you can copy winpe.wim to TFPTD root folder: ’Boot’
@echo.
@echo.
@pause
:end

p.s. почистите мои посты, оставьте только необходимое.
Спасибо.

Комментарий оставлен: 2017-12-29 00:00:00

Имя: Андрей 🖉
Да, Вы правы c BCD, возможно одновременно с созданием BCD перешел на tftpd32 и ошибочно принял, что проблема была в BCD, а не в tftpd64.

по интеграции драйверов, тем проще и быстре — тем лучше и эффективнее.
т.е. уставновили AIK, создали две папки и батник — winpe.wim с драйверами готов. все!

Что представляет наибольшую ценность на сегодня?
— простота
— быстрота
— минимализм
и т.д. в таком же духе

WDS, WSUS (кстати разворачивал, пользовался, удалил) — это полная противоположность, это мамонты прошлого века и must die

Windows считаю, что это дружественный инструмент пользователя, но никак для сервисных нужд.

p.s. Вообще, нужно будет как нибудь попробовать перенести это все на Linux, если создавать PXE как стационарный вариант.

Комментарий оставлен: 2017-12-30 00:00:00

Имя: Orcinus Orca 🖉
Андрей, у вас несколько устаревшее представление. Но думаю когда у вас перевалит хотябы за 800 компьютеров в сети, тогда вы поймёте в чем сила и плюсы большой развёрнутой системы.

Комментарий оставлен: 2017-12-30 00:00:00

Имя: Андрей 🖉
Возможно,
но пока всё сервисное ПО под Windows приводит только в ярость.
поэтому все что можно перевожу на linux, это gstes, site-to-site, backups, http, sftp, dhcp, loaders, и т.д.
вот и загрузчик для сетевой установки теперь одной ногой в linux…

Уточните, у Вас в офисе около 800 компьютеров?
Вам при жизни нужно ставить мемориал, если у Вас всё крутиться на Windows!!!
:)

Комментарий оставлен: 2017-12-30 00:00:00

Имя: Orcinus Orca 🖉
Конкретно данный пут внутри файлика ни на что не влияет. Я уже проверял. В майкрософтовских реализациях там иногда висят такие пути, что можно догадаться о именах пользователей в корпорации.

Про драйвера надо бы написать еще один мануал, пошаговый. Тут я хотел показать то, что без AIK в принципе реально создать образ.

Про мобильность развёртывания — это хорошо. Но она всё-же требуется на больших предприятиях, а когда у тебя много компов и десяток серверов, то можно и под развёртку ресурс найти. У меня WDS стоит вместе с WSUS.

Огромное спасибо за обратный отзыв.

Комментарий оставлен: 2017-12-30 00:00:00

Имя: Hash911 🖉
Я в первый раз собирал WinPE и все хорошо в описании кроме того, где брать boot.sdi
1) У меня в сборке f3_winpe.wim из AIK не было boot.sdi.
Брать boot.sdi надо с любого диска установки Win7/8/10 из /boot/boot.sdi (это драйвер виртуального диска и он универсальный)

2)Путь, как писали выше, который прописывается в BCD из-за переменной в батнике действительно может поставить раком TFTP Server. На Микротике прошло только без пути и забирать пришлось сгенерированный файл и корня системы.
3) У Андрея классный скрипт по интеграции драйверов .inf файла. Но начиная с Win7 необходимости ставить AIK нет так как DISM.exe идет в комплекте по умолчанию. Остальные утилиты в скрипте не используются. Ну и команды «mkdir %winpepath%mount» явно не хватает такак из-за её отсутствия dism некуда монтировать образ winpe.wim.
Сами драйвары, можно позаимствовать из DriverPack. Там хорошая свалка из Lan дравйверов.

Вот такой у меня получился скрипт:

@echo 1. Put drivers to folder inf
@echo 2. Copy winpe.wim to the current folder
@set winpepath=%CD%
mkdir %winpepath%mount

@dism /Mount-Wim /WimFile:%winpepath%winpe.wim /index:1 /MountDir:%winpepath%mount
@dism /image:%winpepath%mount /add-driver /driver:»%winpepath%inf» /recurse /forceunsigned
@dism /unmount-wim /mountdir:%winpepath%mount /commit
@echo.
@echo Drivers from inf folder integrated to winpe.wim
@echo.
@echo Now you can copy winpe.wim to TFPTD root folder: ’Boot’

Комментарий оставлен: 2018-02-28 00:00:00

Имя: Orcinus Orca 🖉
Hash911, в инструкции приведет командный файл createbcd.cmd который генерирует этот файлик.

Да, интеграция драйверов может быть серьёзным вопросом для новых материнок.

Комментарий оставлен: 2018-03-01 00:00:00

Имя: Павел 🖉
WinPE от Windows 7 не поддерживает большинство драйверов для современных сетевых карт, следовательно, не удается примонтировать сетевой диск.

выход — переделать WinPE (boot.wim), я это сделал с помощью нового Windows Kit (Win 10) (все по аналогии с гайдом автора)

Комментарий оставлен: 2018-03-02 00:00:00

Имя: Orcinus Orca 🖉
Павел, интересное решение.

Комментарий оставлен: 2018-03-11 00:00:00

Имя: imarek 🖉
У вас при формировании BCD вначале путь ootoot.sdi затем Bootwinpe.wim
Я долго мучался с tftp на ubuntu, где, как известно регистр значение имеет.
Еще проблема возникла — при старте WinPE (я взял ее от Windows 10 из-за драйверов) долго инициализируется сеть — около 10 секунд, поэтому команда net use выдает ошибку.
В startnet.cmd никаким способом не удалось всавить задержку или ping с обработкой ошибки.
Может кто сталкивался или идеи есть?

Комментарий оставлен: 2018-04-26 00:00:00

Имя: Orcinus Orca 🖉
imarek, при подготовке файлов необходимо было строго следовать инструкции, в исходниках именно такие регистры и должны использоваться.

Комментарий оставлен: 2018-04-27 00:00:00

Имя: Orcinus Orca 🖉
Алексей, всё зависит от того какой тип системы вы хотите использовать, лично я использую:
ioscom32elflinkldlinuxldlinux.c32
ioscom32liblibcom32.c32
ioscom32libutillibutil.c32
ioscorepxelinux.0
ioscom32menuvesamenu.c32

Комментарий оставлен: 2018-10-12 00:00:00

Имя: Orcinus Orca 🖉
user, десятка не запускается с помощью такой вот системы. Она хочет запущенную винду 32 или 64 разряда.

Комментарий оставлен: 2019-11-05 00:00:00

Имя: Евгений 🖉
Один символ в статье не отображается. Возможно из-за нестандартного шрифта. Например, вот здесь «? ootmgr.exe WindowsBootPXE? Ootmgr.exe» логично предположить неспособную отобразится букву «b» или «B». Соответственно регистр неизвестен, если он где-то влияет.

Комментарий оставлен: 2021-01-23 23:41:20

Ответ:
Спасибо за замечание. Косяк переезда сайта с ASP на PHP. В течение недели восстановлю правильные символы.

Ответ оставлен: 2021-01-26 19:01:39

Имя: Евгений 🖉
самое неприятное, что содержимое для файла «createbcd.cmd» у Вас на сайте выглядит вот так:
bcdedit -createstore %1BCD
bcdedit -store %1BCD -create {ramdiskoptions} /d «Ramdisk options»
bcdedit -store %1BCD -set {ramdiskoptions} ramdisksdidevice boot
bcdedit -store %1BCD -set {ramdiskoptions} ramdisksdipath ootoot.sdi
for /F «tokens=2 delims={}» %%i in (‘bcdedit -store %1BCD -create /d «WWW.ORCINUS.RU Boot Image» /application osloader’) do set guid={%%i}
bcdedit -store %1BCD -set %guid% systemroot Windows
bcdedit -store %1BCD -set %guid% detecthal Yes
bcdedit -store %1BCD -set %guid% winpe Yes
bcdedit -store %1BCD -set %guid% osdevice ramdisk=[boot]Bootwinpe.wim,{ramdiskoptions}
bcdedit -store %1BCD -set %guid% device ramdisk=[boot]Bootwinpe.wim,{ramdiskoptions}
bcdedit -store %1BCD -create {bootmgr} /d «Windows BootManager»
bcdedit -store %1BCD -set {bootmgr} timeout 1
bcdedit -store %1BCD -set {bootmgr} displayorder %guid%

Комментарий оставлен: 2021-01-24 03:25:03

Ответ:
Косяк переезда сайта с ASP на PHP. В течение недели восстановлю правильные символы.

Ответ оставлен: 2021-01-26 19:01:06

Имя: Orcinus Orca 🖉
Всё исправил.

Комментарий оставлен: 2021-01-27 10:59:17

Имя: Дмитрий 🖉
Мертва ли тема не знаю, делал разными способами. Во всех у меня все загружается но не работает клавиатура и мышь. Пробовал грузится с виртуалки там все работает, не работат только на физическом оборудовании. Все драйвера которые существуют уже позасовывал. Думаю этот варик работает только на старых компах.

Комментарий оставлен: 2024-11-12 09:25:01

Имя: Дмитрий 🖉
Вообще ради интереса еще потратил кучу времени и добил все таки образ рабочий. Все решилось путем установки с сайта Microsoft необходимые инструменты ADK и WinPE последней версии и вытягивании от туда bootwim, засунул туда драйвера и сделал iso образ так как pxelinux может грузить маленькие образы легко, и чудо все заработало.

Комментарий оставлен: 2024-11-21 08:53:49

Ответ:
Это старая технология, но работает до сих пор как часики.

Ответ оставлен: 2025-02-20 09:27:35


Этот сайт использует файлы cookies, чтобы упростить вашу навигацию по сайту,
предлагать только интересную информацию и упростить заполнение форм. Я
предполагаю, что, если вы продолжаете использовать мой сайт, то вы согласны с
использованием мной файлов cookies. Вы в любое время можете удалить и/или
запретить их использование изменив настройки своего интернет-браузера.

Сообщайте мне о замеченных ошибках на:
web@orcinus.ru.
Все пожелания и советы будут учтены при дальнейшем проектировании сайта.
Я готов сотрудничать со всеми желающими.
В некоторых случаях, мнение автора может не совпадать с мнением автора!
Phone: +7-902-924-70-49.

This guide is using Windows Server 2016 with WDS set up as standalone server and Mikrotik RB751U-2HnD serving as the DHCP and TFTP server.

Prerequisites

  • A deployed and functional WDS server, preferably in standalone configuration
  • A TFTP server that’s not hosted on the WDS server itself
  • A compiled iPXE binary with or without menu and a server serving the menu
  • DHCP server

If you need to know how to compile your iPXE binary, create the menu and set up DHCP, refer to the previous iPXE guide.

Setting up a TFTP server on Mikrotik RouterOS

Upload your undionly.kpxe file via FTP to your Mikrotik. To keep things clean, I will upload it into the tftp/ directory. In Winbox, under the IP rollout, open TFTP and add new item.

For IP Addresses, select the network or a specific IP from which you want to allow TFTP to be accessed. Don’t forget the netmask, as it is important.

Req. Filename is requested filename in which return gives back Real Filename. This field supports regex. Real Filename is what the TFTP server will return to the client that requested it. Next, enable Allow and Read Only for security purposes, as someone could override our iPXE binary.

In DHCP Network, set Next Server to the IP of the router and the Boot File Name to undionly.kpxe.

Configuring WDS

Since in this configuration our WDS server doesn’t serve the DHCP server, we need to disable it listening it to DHCP ports.
Go to the properties of Windows Deployment Services server, go to the DHCP tab and enable Do not listen on DHCP ports. If we don’t enable this, the WDS server could load first instead of iPXE as it hijacks the DHCP request sent to the router.

Because WDS relies on the DHCP option 66 and 67 when PXE booting, we need to set them in iPXE’s networking before chainloading the PXE file. If you use multiple NICs, make sure you set your net0 interface to the interface you are going to use for booting.

Due of the nature of Microsoft’s TFTP implementation, TFTP booting will fail if we use forward slash. Another problem is that if we use backslash in iPXE, it will fail as there’s no way how to escape characters. We can get around this problem by using the hexadecimal value of backslash, which is %5C

The iPXE code for menu containing just the WDS entry will look like this:

#!ipxe

menu iPXE menu

item win-wds Windows Deployment Services

:win-wds
set net0/next-server 10.1.69.5
set net0/filename boot\x86\wdsnbp.com
chain tftp://10.1.69.5/boot%5Cx86%5Cwdsnbp.com

If everything was set up correctly, WDS will successfully boot from iPXE.

We would like to use third party cookies and scripts to improve the functionality of this website.ApproveMore info

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Как посмотреть время использования компьютера windows 10
  • Hklm software microsoft windows nt currentversion perflib
  • Virtual pc windows xp torrent
  • Как улучшить интерфейс windows 10
  • Драйверы несамонастраиваемых устройств windows 7 что это