- Install Windows after Ubuntu/Linux
- Install Windows on a Separate Partition
- Boot into a Windows installation media and complete the installation
- Restore / Reinstall Grub 2 with a Ubuntu Live Media
- Reinstalling Grub in an EFI Based System
- 9 responses
- Leave a comment
- Переход с Linux на Windows 10
- Вариант 1: Форматирование диска с дальнейшей установкой Windows 10
- Вариант 2: Установка Windows 10 рядом с Linux
- Шаг 1: Работа с дисковым пространством в Linux
- Шаг 2: Установка Виндовс 10
- Шаг 3: Восстановление загрузчика GRUB
Install Windows after Ubuntu/Linux
As you know, the most common, and probably the most recommended way of dual booting Ubuntu and Windows is to install Windows first and then Ubuntu. But what if you want to install Windows second on a computer with Ubuntu/Linux already installed?
This guide assumes that you have Ubuntu already installed on your system, and will guide you through installing Windows 7/8/8.1/10 when you have a working Ubuntu/Linux partition.
The problem here is that the Windows installer tends to overwrite Grub bootloader or whatever making only the Windows installation bootable. But the good news is that your Linux partition is untouched, including the original bootloader and the other Grub configurations. So restoring or recovering Grub is just a matter of running a few commands on the terminal.
Install Windows on a Separate Partition
If your Ubuntu installation occupies the entire hard drive, to be able to create free space for the Windows installation, you may have to shrink an existing partition using a disk utility like GParted. GParted comes preinstalled on Ubuntu LiveCD.
Boot into a Windows installation media and complete the installation
Once installed, because of Microsoft’s false assumption that there are no non-Microsoft operating systems you’ll be taken straight into Windows.
Restore / Reinstall Grub 2 with a Ubuntu Live Media
- Now boot into a Ubuntu Live/USB or CD.
- Open a terminal. (Ctrl + Alt + t)
- Use a command like lsblk, blkid or GParted to identify your Linux root, and boot partitions. You may or may not have a separate boot partition.
- Find Linux Partitions
$ lsblk -f NAME FSTYPE MOUNTPOINT sda ├─sda1 ext4 /boot ├─sda2 ext4 / ├─sda3 ntfs
If you’re using BTRFS (New Linux B-Tree File System) instead of EXT4, the above command should change to sudo mount -t btrfs -o subvol=@ /dev/sda2 /mnt/
Run ls /mnt to verify that the correct partition is mounted. It should list the content of your root.
$ ls /mnt bin dev home lib64 media opt root sbin sys usr vmlinuz boot etc initrd.img lost+found mnt proc run srv tmp var vmlinuz.old
sudo mount /dev/sda1 /mnt/boot
If you have an EFI partition you should mount that also. It is basically a small FAT32 partition around 100mb. Please refer to the section on how to reinstall Grub in an EFI system. Bind these directories, so grub can detect other operating systems, like so.
sudo mount --bind /dev /mnt/dev sudo mount --bind /dev/pts /mnt/dev/pts sudo mount --bind /proc /mnt/proc sudo mount --bind /sys /mnt/sys
grub-install /dev/sda (specify the disk `/dev/sdX`, not `/dev/sdaX`) grub-install --recheck /dev/sda exit
Reinstalling Grub in an EFI Based System
Reinstalling Grub bootloader in a UEFI based computer is no different from installing Grub on a legacy BIOS system. Here we also mount the EFI partition before chrooting, as we’d do with the boot partition.
Case #2
$ lsblk -f NAME FSTYPE MOUNTPOINT sda ├─sda1 ext4 /boot/efi ├─sda2 ext4 / ├─sda3 ntfs
Here /dev/sda1 is the EFI partition and /dev/sda2 is the root.
Mount EFI partition under ‘/mnt/boot/efi’
sudo mount /dev/sda1 /mnt/boot/efi
Forgetting to do so will result in errors being thrown while trying to execute grub-install: “/boot/efi does not appear to be the EFI partition”
As shown previously, bind the /dev , /dev/pts , /proc , and /sys directories.
sudo chroot /mnt grub-install exit
In some rare occasions, Grub might not detect Windows. In that case just login to Ubuntu (installed one on the disk, not the bootable Live USB/CD) and execute,
sudo os-prober sudo update-grub sudo reboot
9 responses
Just wanted to give you a heads up. I recently followed your guide for repairing Grub after installing windows but wanted to let you know I had to deviate due to a typo I noticed. I worried someone else might make a catastrophic mistake if they didn’t notice so I’m letting you know. In the section about Reinstalling Grub in an EFI based system, the example under “Mount EFI partition under ‘/mnt/boot/efi’” says to mount /dev/sda2, when I believe it should actually be /dev/sda1, according to your system layout shown earlier. It’s possible I’m wrong, I’m not extremely well versed, but changing it worked for me and it looks like following the guide to the tee would result in installing Grub in the wrong partition.
Hi Gayan, I need your help. I have both Linux mint and Ubuntu installed on my system. I had Windows 8.1 before and I tried dual booting with Linux mint, I failed so I ended up with just Linux mint because i really wanted it. I installed Ubuntu later on, but I don’t like it. The problem now is that there are applications I need to use which only support windows. I want to reinstall windows 8.1 on the Ubuntu partition but I keep getting error 0xc000000f. I do not mind doing a clean install of windows and dual boot later, but I’m stuck with that error. Please help.
Hi Bongi, It’s hard to tell without knowing the exact error, your partition scheme, when and how you got it. But what I’d do is to install GParted on Linux Mint. Then would create, and format partitions as necessary to install Windows. Find out if you’re currently using BIOS or UEFI. Boot into your Windows installation media in the same boot mood. Then would follow this article to recover Grub.
Not it’s not necessary to mount a /home partition or any other partition that is not mentioned in the post.
Hi, have very little knowledge but a new laptop came with ubuntu installed I would like windows 10 which I have just purchased but it does not install saying unable to use this file type? I cannot create a suitable partition for the install any ideas please?
Leave a comment
© 2022 Gayan Weerakutti, unless otherwise noted.
Переход с Linux на Windows 10
Вариант 1: Форматирование диска с дальнейшей установкой Windows 10
Этот способ подойдет пользователям в тех случаях, когда надобность в Linux просто отпала. Тогда ничего не мешает просто отформатировать содержимое диска или только конкретный раздел, чтобы без проблем инсталлировать туда Windows 10. В таких ситуациях никаких дополнительных настроек производить не придется, поскольку по сути это будет обычная «чистая» установка новой операционной системы на пустой жесткий диск или SSD. На нашем сайте уже имеется статья по данной теме, поэтому вам остается только изучить инструкции, перейдя по указанной ниже ссылке.
Вариант 2: Установка Windows 10 рядом с Linux
Многие пользователи знают о том, что установить любой дистрибутив рядом с любой версией Виндовс очень просто, поскольку не возникает никаких конфликтов с загрузчиками, а также инсталляторы предлагают выбрать соответствующий пункт, чтобы сохранить все файлы обнаруженной ОС. Однако при возникновении обратной ситуации процедура значительно усложняется. Она делится на несколько этапов, во время которых следует создать неразмеченное пространство, установить саму операционную систему и наладить корректную работу загрузчика. Именно это мы и предлагаем сделать далее.
Шаг 1: Работа с дисковым пространством в Linux
Для начала переместимся к Linux, чтобы здесь создать свободное дисковое пространство, которое в дальнейшем будет использовано для разметки файловой системы при установке Windows 10. За пример предлагаем взять самый популярный дистрибутив — Ubuntu, а вы, отталкиваясь от особенностей используемой сборки, выполните точно такие же действия.
- К сожалению, сжать раздел в Линукс просто так не получится, поскольку системный том изначально смонтирован, а размонтировать его нельзя. Придется запускать компьютер с LiveCD. Детальнее о создании такого загрузчика читайте в материале по ссылке ниже.
После успешного создания загрузочной флешки запустите ее и переходите к режиму ознакомления с ОС.
Мы рекомендуем отделять свободное пространство от основного раздела Linux только с конца, поскольку в начале всегда хранятся важные файлы для загрузки системы, о чем вы и должны быть уведомлены при работе с утилитой GParted. Дополнительно отметим, что стоит создать пространство с запасом и учетом того, что при работе с Windows может понадобиться добавление второго логического тома для хранения пользовательских файлов.
Шаг 2: Установка Виндовс 10
Мы бы не стали останавливаться на этом этапе, поскольку он знаком многим пользователям, но решили сделать это, чтобы учесть абсолютно все нюансы, связанные с неразмеченным пространством и созданием загрузочной флешки в Linux.
- Для начала приобретите Windows 10 на официальном сайте или загрузите ISO-образ. После этого его придется записать на флешку или диск, чтобы задействовать это устройство в качестве загрузочного. Детальнее о выполнении этой операции в Linux читайте в другом материале на нашем сайте, воспользовавшись указанной ниже ссылкой.
Позже вы сможете вернуться к использованию Windows 10, но сейчас загрузчик сломан, поэтому не получится корректно загрузить ни одну из инсталлированных ОС. Давайте приступим к исправлению этой ситуации.
Шаг 3: Восстановление загрузчика GRUB
Загрузиться в Linux на данном этапе не получится, поскольку загрузчик GRUB был нарушен. Придется вернуться к LiveCD, о которой мы уже говорили в первом шаге. Вставьте флешку с образом диска в свободный разъем и запустите компьютер.
- В появившемся окне инсталляции переходите к ознакомлению с дистрибутивом.
- Откройте меню приложений и запустите оттуда «Терминал». Сделать это можно и через горячую клавишу Ctrl + Alt + T.
- Смонтируем корневой раздел с файлами Linux. По умолчанию за это отвечает команда sudo mount /dev/sda1 /mnt . Если расположение диска отличается от /dev/sda1, замените данный фрагмент на необходимый.
- Следующая серия команд необходима для монтирования раздела с загрузчиком, если такой выделен в отдельный логический том. Для этого используйте строку sudo mount —bind /dev/ /mnt/dev/ .
- Вторая команда имеет вид sudo mount —bind /proc/ /mnt/proc/ .
- В конце остается только указать sudo mount —bind /sys/ /mnt/sys/ , чтобы завершить монтирование файловых систем.
- Перейдите к работе с необходимым окружением, указав sudo chroot /mnt/ .
- Здесь начните инсталляцию файлов загрузчика, вписав grub-install /dev/sda .
- После этого выполните обновление через update-grub2 .
- Вы будете уведомлены об обнаружении операционных систем и успешном окончании генерирования файла настройки GRUB.
- Перезагрузите компьютер, воспользовавшись удобным для вас методом.
- Теперь при старте ПК можно выбрать одну из установленных ОС для дальнейшей ее загрузки.
Теперь вы знакомы с принципом инсталляции Windows 10 рядом или вместо Linux. Как видно, при выполнении этой процедуры следует учитывать определенные особенности, которые связаны с загрузчиком операционных систем. Если все делать с точностью по приведенным инструкциям, никаких проблем с установкой возникнуть не должно и обе ОС будут доступны для взаимодействия в любой момент.