Как удалить Linux и установить Windows
В этой статье содержатся инструкции по удалению операционной системы Linux с последующей установкой Windows. При написании статьи предполагалось, что операционная система Linux уже установлена на жесткий диск компьютера, используются разделы native и swap (несовместимые с Windows) и на жестком диске нет свободного места.
Windows и Linux могут совместно использоваться на одном компьютере. Дополнительные сведения об этом см. в документации к операционной системе Linux.
Дополнительная информация
Для установки Windows на компьютер под управлением Linux (с удалением Linux) разделы, которые использует эта операционная система, необходимо удалить вручную. Windows-совместимый раздел будет создан автоматически при установке Windows.
ВНИМАНИЕ! Поскольку выполнение описанных в данной статье действий приведет к полному удалению операционной системы Linux, предварительно убедитесь в наличии загрузочного носителя или компакт-диска Linux. Если впоследствии необходимо будет восстановить операционную систему Linux, создайте резервную копию всех данных, хранящихся на компьютере. Кроме того, необходимо наличие полной версии операционной системы Windows.
В файловых системах Linux в начале каждого дискового раздела находится суперблок для определения размера, формы и состояния файловой системы.
Операционная система Linux обычно устанавливается в раздел типа 83 (Linux native) или 82 (Linux swap). Диспетчер загрузки Linux (LILO) можно настроить на выполнение загрузки из следующих мест:
основная загрузочная запись (Master Boot Record, MBR) жесткого диска;
корневая папка раздела Linux.
Разделы можно удалить с помощью служебной программы Fdisk, которая входит в состав Linux. (Существуют аналогичные служебные программы, например Fdisk в MS-DOS версии 5.0 или выше. Кроме того, разделы можно удалить и при установке.) Чтобы удалить Linux и установить Windows, сделайте следующее.
Удалите используемые Linux разделы native, swap и загрузочный раздел.
Загрузите компьютер с установочной дискеты Linux, введите в командной строке fdisk и нажмите клавишу ВВОД.
ПРИМЕЧАНИЕ. Чтобы получить справку по использованию программы Fdisk, введите в командной строке m и нажмите клавишу ВВОД.
Чтобы получить информацию о разделах, введите в командной строке p и нажмите клавишу ВВОД. Вначале содержатся сведения о первом разделе первого жесткого диска, а затем — о втором разделе первого жесткого диска.
Введите в командной строке d и нажмите клавишу ВВОД. Появится окно, в котором необходимо указать номер удаляемого раздела. Введите 1 и нажмите клавишу ВВОД, чтобы удалить раздел под номером 1. Повторяйте это действие, пока не удалите все разделы.
Чтобы записать эти данные в таблицу разделов, введите w и нажмите клавишу ВВОД. При записи данных в таблицу разделов могут появиться сообщения об ошибках. В данном случае они не имеют большого значения, поскольку следующим шагом является перезагрузка компьютера и установка новой операционной системы.
Чтобы завершить работу программы Fdisk, введите в командной строке q и нажмите клавишу ВВОД.
Вставьте загрузочную дискету или компакт-диск Windows и для перезагрузки компьютера нажмите сочетание клавиш CTRL+ALT+DELETE.
Установите Windows. Следуйте инструкциям по установке Windows. В процессе установки можно создать на компьютере необходимые разделы.
Примеры таблиц разделов Linux
Один SCSI-диск
Несколько SCSI-дисков
Один IDE-диск
Несколько IDE-дисков
Кроме того, Linux распознает более 40 типов разделов, в том числе следующие:
FAT 16 > 32 M Primary (тип 06)
FAT 16 Extended (тип 05)
FAT 32 без LBA Primary (тип 0b)
FAT 32 с LBA Primary (тип 0c)
FAT 16 с LBA (тип 0e)
FAT 16 с LBA Extended (тип 0f)
Следует помнить, что существуют другие способы удаления операционной системы Linux с последующей установкой Windows XP. В этой статье описан способ, который применяется в том случае, когда операционная система Linux уже функционирует и на жестком диске не осталось свободного места. Существует специальное программное обеспечение для изменения размеров раздела. Корпорация Майкрософт не поддерживает установку Windows в разделы, управляемые подобным образом.
Чтобы удалить одну операционную систему и установить другую, можно, кроме прочего, воспользоваться загрузочным диском MS-DOS версии 5.0 или более поздней, Windows 95 или Windows 98, которые содержат служебную программу Fdisk. Запустите программу Fdisk. Если на компьютере установлено несколько жестких дисков, выберите пятый пункт меню для определения диска, содержащего удаляемый раздел. После этого (или в том случае, если на компьютере имеется только один жесткий диск) выберите пункт 3 (Delete partition or logical DOS drive), а затем — пункт 4 (Delete non-DOS partition). Будет отображен список разделов, отличных от DOS, которые необходимо удалить. Обычно в операционной системе Linux есть два раздела, не являющимися разделами DOS, но их может быть и больше. Поочередно удалите все разделы, которые не являются разделами DOS.
После удаления разделов можно приступать к созданию новых и установке выбранной операционной системы. При помощи служебной программы Fdisk, входящей в состав MS-DOS версии 5.0 и более поздней, Windows 95 или Windows 98, можно создать только один основной и один расширенный разделы из нескольких логических дисков. Максимальный размер основного раздела FAT16 составляет 2 ГБ. Максимальный размер логического диска FAT16 — 2 ГБ. Для получения дополнительных сведений щелкните указанный ниже номер статьи базы знаний Майкрософт:
105074 Вопросы и ответы относительно создания разделов в MS-DOS 6.2
При установке Windows NT 4.0 или Windows 2000 разделы Linux можно удалить, создать новые разделы и отформатировать их, выбрав нужную файловую систему в процессе установки. Windows позволяет создать несколько основных разделов. Максимальный размер раздела, который создается в процессе установки Windows NT 4.0, составляет 4 ГБ. Это ограничение обусловлено особенностями файловой системы FAT16. Для раздела размером 4 ГБ используется кластер 64 КБ. MS-DOS 6.x, Windows 95 и Windows 98 не поддерживают файловые системы с размером кластера 64 КБ, поэтому в процессе установки такие файловые системы обычно преобразуются в NTFS. В отличие от Windows NT 4.0, операционная система Windows 2000 поддерживает файловую систему FAT32. При установке Windows 2000 можно создать диск FAT32 очень большого размера. После завершения установки, в случае необходимости, диск FAT32 можно преобразовать в NTFS.
Ручная установка Windows 7/8/8.1/10 в систему с загрузчиком GRUB2
Наверняка почти у каждого пользователя ОС Linux и ОС Windows, а я имею в виду именно тех, у кого, в силу ряда причин, установлены обе системы, время от времени возникал вопрос: «А нельзя ли, черт возьми, придумать способ, с помощью которого можно было бы устанавливать эти системы в произвольном порядке? Без порчи настроек загрузчика?» Ведь если ставим сначала Windows а потом Linux всё хорошо — линуксовый загрузчик (например GRUB) обычно подхватывает bootmgr. Если ставить в обратном порядке то увы. Даже с использованием GPT + EFI. В случае с EFI нет опасности перезаписи MBR, зато таки есть один нюанс, который лично мне не нравится — установщик Windows в режиме EFI хоть и не перезаписывает сектора диска своим кодом, но зато переопределяет NVRAM, подсовывая туда путь к своему загрузчику. Так что функционал GBUB всё равно приходится восстанавливать. В настройках штатного установщика нет опций для кастомизации процесса установки загрузчика. А что если… не использовать стандартный установщик?! Ну, или почти не использовать…

И такой способ есть. И основан он на технологии установки Windows, которую мы имеем в её дистрибутивах начиная с «семерки». Способ работает для случая Windows версий 7/8/8.1/10, как в случае с MBR + BIOS системы, так в случае с EFI + GPT. Установить систему можно как в раздел HDD, так и на VHD. При этом функционал установщика нужен нам в общем-то для запуска программы настройки BCD-хранилища конфигурации загрузчика. Вместо установочного диска можно использовать загрузочный носитель на основе WinPE. Если бы утилитам bcdedit.exe и BootICE была *nix альтернатива, весь процесс развертывания системы можно было бы вообще выполнить в среде Linux.
Предположим у вас имеется компьютер, с установленным на HDD загрузчиком GRUB2 и свободным разделом, отформатированном в NTFS. Устанавливать будем Windows 7 Ultimate SP1. Для этого потребуются:
- Установочный диск с виндой
- Чистая флешка объемом >= 4 Gb
- Архиватор 7-zip соответствующей разрядности
- Утилита BootICE, желательна, но совершенно не обязательна, можно обойтись и bcdedit.exe, входящим в дистрибутив винды
1. Создаем загрузочную флешку
Дело в том, что семерка не хочет устанавливаться в EFI-режиме с DVD. Вот не хочет и всё. К тому же, на установочном носителе нам понадобятся дополнительные утилиты, которые туда надо поместить, а в случае с флешкой это несколько проще, чем в случае с DVD.
Монтируем установочный образ с виндой, допустим он лежит у нас в /home/$USER/install с именем win7-setup.iso
/iso
$ sudo mount -t udf
Вставляем флешку в USB-порт. Допустим, она получила имя устройства /dev/sdb. Выполним её разметку в формате MBR
$ sudo fdisk /dev/sdb
Создем на флешке один единственный раздел. После чего форматируем её в FAT
$ sudo mkfs.vfat /dev/sdb1
Копируем содержимое дистрибутива винды на флешку
$ mkdir /tmp/flash
$ sudo mount /dev/sdb1 /tmp/flash -o uid=1000,gid=100,fmask=113,dmask=002
$ cp -rv
Скопируем конфиги EFI-загрузчика на уровень выше
Теперь нам нужен EFI-загрузчик винды. Его придется выцарапать из дистрибутива. Это легко сделать с помощью архиватора 7-zip, который имеется в репозитории extra/p7zip. Все содержимое дистрибутива винды сжато в образ wim-формата находится на установочном DVD в файле source/install.wim. Обычно этот образ имеет следующую структуру

В каталогах с именами в виде цифр 1-4 находятся разные редакции винды. Чтобы выбрать нужную надо посмотреть внутрь файла с именем [1].xml. Распакуем его в /tmp
и посмотрим с помощью какого-нибудь браузера, ибо в текстовом редакторе он выглядит ужасно, а специального редактора xml у меня в наличии не оказалось. Каждую редакцию винды описывают структурой вида

где нода EDITIONID указывает на редакцию. Параметр INDEX — как раз номер каталога, в котором валяется нужная редакция. Итак, мне нужна Ultimate, а это индекс 4. Соответсвенно выковыриваем загрузчик оттуда
Оки, теперь перенесем полученный файл на флешку
$ mv bootmgfwm.efi /tmp/flash/efi/boot/bootx64.efi
Порядок, теперь у нас в наличии загрузочная флешка для установки винды. Теперь добавим на неё необходимые для установки утилиты — виндозную версию архиватора 7-zip и утилиту BootICE. Архиватор качаем с официального сайта и распаковываем на флешку в каталог utils
$ mkdir -p /tmp/flash/utils/7-Zip/
$ cd /tmp/flash/utils/7-Zip/
$ 7z x
Туда же помещаем и bootice
Уф, всё, отмонтируем флешку
$ cd
$ sudo umount /tmp/flash/
Перезагружаемся. Если у вас система с EFI и съемные диски стоят в приоритете загрузки, то компьютер загрузится в установку винды автоматом. Если же появилось таки меню GRUB, ничего страшного, жмем «С» и в консоли набиваем команду exit. Вас вывалит в меню EFI, где выбираем загрузку с флешки. Если же ваша система с BIOS, то тут чуть сложнее, ибо мы не стали заморачиваться с настройкой MBR на флешке. Тогда в консоли GRUB даем команду ls — появится список всех дисков и разделов. Находим нашу флешку, она отобразится в виде (hdX, msdosY), где X, Y — номер диска и раздела соответственно. Теперь вбиваем в консоли команды
grub> set root=hdX,Y
grub> ntldr /bootmgr
grub> boot
Начнется загрузка установщика винды. Он то загрузится, но нам он и не нужен — мы всё будем делать руками. Чтобы стало понятно, что к чему, придется рассмотреть некоторую теорию
2. О развертывании Windows из WIM-образа и капризном нраве Sysprep
Начиная с семерки установка Windows заключается в следующих этапах
- Разметка диска в соответствии с архитектурой системы инициализации оборудования. Если BIOS — установщик размечает диск в MBR. При наличии активной EFI — разметка будет GPT.
- Распаковка образа install.wim в выбранный для установки раздел
- Установка загрузчика и перезагрузка
- Инициализация оборудования. Ребут
- Локализация, ввод ключа, окончание настройки системы
Это стандартный путь. У нас же диск уже размечен. И нам не нужна автоматическая установка загрузчика — мы поставим его вручную. Разметка диска должна удовлетворять следующим требованиям
- Если система с EFI на диске должен присутствовать FAT-раздел с типом 0xEF. Если у нас уже установлен линукс с EFI-загрузчиком, то таковой раздел уже имеется
- Если система с BIOS, то раздел, в котором располагается загрузчик, а это наш NTFS-раздел должен быть активным. Это очень важно! Почему, будет объяснено ниже.
Таким образом, перед распаковкой системы мы должны убедится в том, что перечисленные требования выполнены. После того, как мы распакуем все файл системы и установим загрузчик, система перезагрузиться. После перезагрузки запустится утилита Sysprep, среди прочего настраивающая оборудования и проверяющая конфигурацию системы. Так вот, если в режиме EFI Sysprep не найдет загрузчик и его конфигурацию в EFI-разделе по пути EFI/microsof/boot, а в системе с BIOS каталог \Boot и bootmgr будут лежать в неактивном разделе, то Sysprep завершится с ошибкой sysprep generalize error, а в лог, расположенный по адресу \Windows\Panther\sysperr.log выплюнет что-то похожее на
2015-03-11 16:55:42, Error [0x0e00b3] TOOL Sysprep_Specialize_Bcd: There was an error opening the system store. Status=[0xC0000098]
2015-03-11 16:55:42, Error [0x0f0082] SYSPRP LaunchDll:Failure occurred while executing ‘c:\Windows\System32\spbcd.dll,Sysprep_Specialize_Bcd’, returned error code 1006
2015-03-11 16:55:42, Error [0x060435] IBS Callback_Specialize: An error occurred while either deciding if we need to specialize or while specializing; dwRet = 0x3ee
и никакие танцы с бубном нам уже не помогут. Винда требует, чтобы загручик лежал в загрузочном разделе и точка. В случае с BIOS просто делаем активным раздел NTFS в котором лежит винда и туда же кладем и загрузчик. Грузится будем всё равно с помощью GRUB, а ему все равно, какой раздел будет активным. В случае с EFI загрузчик придется положить рядом с GRUB в EFI-разделе.
3. Распаковка системы
Итак, определимся, куда мы хотим ставить винду. Можно поставить в NTFS-раздел, а можно и в VHD-диск. Это уж как вам хочется. Я буду показывать процесс на примере с виртуальной машиной EFI, имеющей следующую разметку
The protective MBR’s 0xEE partition is oversized! Auto-repairing.
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
Found valid GPT with protective MBR; using GPT.
Command (? for help): p
Disk /dev/loop1: 104857600 sectors, 50.0 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 0D217C93-6699-435A-9BBB-61DFAA6F30B7
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 104857566
Partitions will be aligned on 2048-sector boundaries
Total free space is 4029 sectors (2.0 MiB)
Number Start (sector) End (sector) Size Code Name
1 2048 206847 100.0 MiB EF00 EFI system partition
2 206848 104855551 49.9 GiB 0700 Basic data partition
На этом диске нет линукса, установлен только GRUB в раздел с EFI. Если мы ставим систему непосредственно в NTFS-раздел, то загружаемся с флешки, дожидаемся запуска программы установки и жмем Shift + F10, чтобы вызвать консоль. Запускаем утилиту diskpart и смотрим список подключенных томов
X:\sources> diskpart
DISKPART> list vol

Видим, что флешка (объемом 8 Гб) подключена как диск C:, а раздел для установки вовсе не смонтирован. Непорядок. Делаем так
DISKPART> sel vol 3
DISKPART> remove
DISKPART> assign letter=E
DISKPART> sel vol 1
DISKPART> assign letter=C
DISKPART> list vol
DISKPART> sel vol 2
DISKPART> assign letter=F
Вот теперь порядок, диск на который будем ставить винду стал диском C:, флешка — диском E:, а EFI-раздел — диском F:

Если же мы хотим поставить систему на VHD, то делаем так
DISKPART> sel vol 3
DISKPART> remove
DISKPART> assign letter=E
DISKPART> sel vol 1
DISKPART> assign letter=G
DISKPART> exit
Для порядка создаем каталог с образами
X:\sources> md G:\vhd
X:\sources> diskpart
Создаем виртуальный диск, создаем на нем разметку GPT и раздел NTFS и монтируем его к C:
DISKPART> create vdisk file=»G:\vhd\win7.vhd» maximum=25600 type=fixed
DISKPART> attach vdisk
DISKPART> clean
DISKPART> convert gpt
DISKPART> create part primary
DISKPART> format fs=ntfs quick
DISKPART> assign letter=C
EFI-раздел монтируем к F:
DISKPART> sel vol 2
DISKPART> assign letter=F
Получаем такую картину

Очень важно! Убеждаемся в том, что EFI-раздел отформатирован именно в FAT, а не в FAT32. Иначе Sysprep не простит нам этой ошибки. Если на компе уже есть линукс, то настройки будут верны.
Теперь распаковываем дистрибутив на диск C:
X:\sources> E:
E:\> utils\7-Zip\7zFM.exe
Откроется GUI архиватора 7-zip. В нем открываем каталог E:\sources, находим там файл install.wim

Правой кнопкой на этом файле вызываем контектстное меню и переходим по 7-zip -> Открыть архив. Появится содержимое образа.

Лезем в папку 4 — там лежит Ultimate

Выделяем всё Ctrl + A и жмем кнопку «Извлечь». Появится окно, где нам предложат указать путь распаковки

Указываем корень диска C: и жмем ОК.

Ну и теперь, как говорится: «Откиньтесь на спинку кресла и. »
4. Установка и настройка загрузчика
Итак, после некоторого время ожидания распаковка окончена. И вот тут, вот в этом месте винда обчно делает бяку, а именно портит MBR или перенастраивает NVRAM. Но мы не дадим ей этого сделать — мы установим загрузчик вручную.
В случае с EFI, переходим на раздел EFI, смонтированный к F: и создаем необходимые пути и копируем файлы загрузчика
E:\> F:
F:\> mkdir EFI\microsoft\boot
F:\> xcopy C:\Windows\Boot\EFI\* F:\EFI\microsoft\boot /s /e
F:\> mkdir EFI\microsoft\boot\Fonts
F:\> xcopy C:\Windows\Boot\Fonts\* F:\EFI\microsoft\boot\Fonts\ /s /e
F:\> copy C:\Windows\System32\config\BCD-Template F:\EFI\microsoft\boot\BCD
Отлично, загрузчик скопирован. Теперь настроим его
Открываем файл F:\EFI\Microsoft\Boot\BCD. В случае установки на раздел, его параметры задаются так

Если же мы устанавливали систему на VHD, то настройки будут такими

Важно! Имя вторичного загрузчика для EFI-системы winload.efi, для BIOS-системы — winload.exe.
В случае, если мы устанавливаем BIOS-систему установка загрузчика будет выглядеть так
F:\> mkdir C:\Boot
F:\> xcopy C:\Windows\Boot\PCAT\* C:\Boot /s /e
F:\> mkdir C:\Boot\Fonts
F:\> xcopy C:\Windows\Boot\Fonts\* C:\Boot\Fonts /s /e
F:\> copy C:\Boot\bootmgr C:\bootmgr
F:\> copy C:\Windows\System32\config\BCD-Template C:\Boot\BCD
Важно! Раздел, смонтированный к C: (там где размещен загрузчик) обязан быть активным! Убедитесь в этом перед перезагрузкой!
Настройку выполняем так же точно, используя BootICE.
Ну, вроде все. Закрываем все окна и идем в ребут. Флешку можно вытащить из компа.
5. Скрестим пальцы да вознесем молитвы тебе, о Великий и Ужасный Sysprep.
GRUB у нас еще не настроен пункта для винды в меню нет. Как только появится меню GRUB жмем «C». В консоли набираем
grub> set root=hdX,Y
grub> chainloader /EFI/Microsoft/Boot/bootmgfw.efi
grub> boot
X, Y — соответственно диск и раздел, где лежит загрузчик. Это в случае EFI. В случае с BIOS делаем так
grub> set root=hdX,Y
grub> ntldr /bootmgr
grub> boot
X, Y — диск и раздел с NTFS. Там где распакована винда и лежит её загрузчик.
В режиме EFI вместо логотипа винды я увидел черный экран, так как не нашел в дистрибутиве билиотеки bootres.dll, которую надо поместить в папку EFI\Mictosoft\Boot\Resourses. В случае с BIOS всё в порядке — знакомая эмблема «семерки». А потом в обоих случаях увидим это

Это работает Sysprep. На 57% моргнет экран — настраивается видяха. И если мы все сделали верно, то надпись «Применение параметров системы» повисит довольно долго, потом система сообщит, что установка будет продолжена после перезагрузки. Если мы где-то напортачили с установкой загрузчика — неправильный EFI раздел или неактивный NTFS, то тогда будет ошибка 🙁 Но мы молодцы и у нас все получится, и после очередной перезагрузки мы увидим это

а потом, наконец вот это

Дальше все как при обычной, штатной установке.
6. Настраиваем GRUB
Обратили внимание на то, что каждый раз мы грузим систему из консоли GRUB руками. Это очень хорошо — значит ни MBR ни NVRAM не перезаписаны коварным майкрософтом. Настало время грузится в арч и добавить в меню GRUB новый пункт
menuentry ‘Windows 7 Ultimate SP1 (EFI)’ <
set root=hdX,Y
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
>
в случае EFI. Или
menuentry ‘Windows 7 Ultimate SP1’ <
set root=hdX,Y
ntldr /bootmgr
>
в случае BIOS. Применяем настройки GRUB и перезагружаемся и видем систему в пункте меню загрузки

после выбора которого получаем загруженную Windows

Заключение
Упреждая гнев профессиональных win-админов, скажу сразу — я знаю о DISM. Именно информация об этой системе и привела меня к описанному решению. Цель была одна — выяснить сколько нужно возможностей собственно Windows для установки Windows.
Оказалось вот что — для установки Windows её среда необходима только для одного — настройки BCD-хранилища. Всё. Остальное можно сделать из среды любой другой операционной системы.
Установить Windows 7 после Linux не удаляя его
Раньше у меня стояла Windows и я мог играть в игры, например Emperor Battle for Dune, WarCraft III, Ведьмак 1, WoW и т.д. Даже Сайрим запускался в небольшом окне.
Потом я перешел на Lubuntu, так как очень шустрая ОС. И по работе меня полностью устраивает.
Но вновь захотелось поиграть. Wine — хорошая штука, на нем можно запустить очень старую Windows-игру, которая уже не хочет запускаться на новом Windows (7 и старше). Устанавливал я через POL — игры запускались, но сильно лагали и были проблемы с текстурами.
У меня появились мысли, что как-то еще нужно правильно установить или настроить драйвер на видеокарту в Wine. Или как-то с параметром запускать игру через Wine, что бы она работала.
Но если мне не помочь, тогда скажите, пожалуйста, как установить Windows 7 после Ubuntu (Lubuntu), не стирая и не удаляя последнюю.
Lubuntu устанавливал не разбивая раздел, т.е. на весь раздел точка монтирования «/» и файловая система btrfs.