Dual boot two Linux distributions on one disk
I currently have a single Lubuntu distribution installed on a 750 GB disk (sda1). I want to add a 2nd Linux distro to the disk. sda1 contains the following partitions: sda1 primary partition /root 48GB (8 GB used) sda2 extended partition 117 GB (116 GB used) sda5 linux swap 8 GB sda6 /home 108 GB (4 GB used) unallocated 1 GB unallocated 67 GB What is the best way to add the 2nd distro? On what partitions? Do I shrink, move a partition, which one, and in what order? Can or should the 2nd distro be in the extended partition? Is Gparted the best tool to do this? Can I do it from a live Lubuntu disk? Do I have to be concerned about GRUB? Thanks
For better understanding, the disk is sda, only partitions have number after sda. Do you have anything else on disk, I only see around 200GBs listed(sda5 and sda6 inside of sda2). Should have around 500GBs extra space to install other OSs. Need to work on Linux partitions from a USB/DVD with gparted. Each OS must have their own partition/s.
Since you mention extended partitions if sounds like you have the old BIOS/MBR configuration. Systems since about 2012 have used UEFI/gpt. So not share /home. If planning to use new install a lot, you may want to plan a shared data partition. New install will put its grub boot loader into the MBR and shoudl offer to boot both installs.
I don’t believe there is a best way. I’m involved in QA-testing Lubuntu & other Ubuntu flavors and I regularly put 3-7 systems on a disk using various methods (mostly chosen purely to use QA testcases) and can thus say there are all pretty equal. I also use more than just Lubuntu/ubuntu systems, so know it’s the same with debian, opensuse, fedora, . and the choice is really (in my opinion) what partition scheme will match what you intend for the machine (ie. your end goals, your software & intended uses for them). You’ve provided none of that detail. but to me that’s belongs on a forum.
You’ve provided no release details, Lubuntu 18.04 LTS which uses gparted reaches its EOL this month so if your mention of gparted was because you’re using 18.04, please consider re-install with a supported release. If you’re using a modern Lubuntu, KDE Partition Manager will do all you want (manual.lubuntu.me/stable/3/3.1/3.1.7/kde_partitionmanager.html) as it’s more efficient on a Qt based system like Lubuntu. And yes it all can be done by a Lubuntu live session.
Установка двух linux на один диск
Многих новичков интересует возможно ли установить два linux или больше дистрибутивов на свой компьютер. Это будет очень практично, если вы еще не определились с дистрибутивом и хотите протестировать сразу несколько систем, или вам нужны две разные системы.
Тут можно пойти сразу двумя путями. Первый — это установка нескольких дистрибутивов на реальное железо. Сразу скажу, что это делается очень просто и почти без каких-либо дополнительных настроек, все сработает почти также как с двойной загрузкой Windows и Linux. Только тут уже будут другие операционные системы. Второй путь — более сложный и он подразумевает использование chroot или контейнеров. В этой небольшой инструкции будет рассмотрено как выполняется установка два Linux на компьютер и почему это возможно.
Как это будет работать?
Я уже сказал, что установка двух Linux на компьютер выполняется очень просто. Но как это работает? Для выбора операционной системы перед загрузкой используется загрузчик Grub. Он обнаруживает все установленные системы и выводит меню, в котором предлагает выбрать нужную систему для загрузки. Причем загрузчику не столь важно какая это операционная система Windows или Linux. В случае с Linux все будет работать даже лучше. Также среди новичков бытует мнение, что для установки каждой следующей операционной системы нужен отдельный жесткий диск, а переключать потом системы можно будет с помощью выбора первого диска в Linux. Но все это совсем не обязательно. Для каждой операционной системы нужно выделить по несколько разделов на одном жестком диске, этого будет вполне достаточно. Выбор загружаемой операционной системы будет происходить с помощью Grub и вам не понадобится менять настройки BIOS. Таким образом, два Linux на одном диске отлично помещаются.
Теперь про контейнеры и chroot. Обе эти технологии позволяют запускать несколько дистрибутивов одновременно на одном ядре Linux. Это позволяет нам не терять производительность как при полной виртуализации с помощью VirtualBox или WMVare, но и накладывает кое-какие ограничения. Если рассматривать chroot, то этот метод создает изолированное окружение в системе, вы попадаете в консольное окружение выбранного дистрибутива и можете выполнять все его программы, они будут работать на том же ядре и будут иметь доступ ко всем тем же устройствам и файлам что и основная система, но, тем не менее, это будет отдельное окружение. Такой вариант может быть полезен если вам срочно нужно получить доступ к консоли другого дистрибутива, а также он постоянно используется при восстановлении системы. chroot может использоваться для запуска Linux на смартфонах Android. Контейнеры — это уже усовершенствованная версия chroot окружения с более жесткими ограничениями доступа к устройствам. Все файлы контейнера находятся в виртуальной файловой системе, а доступ ко всем устройствам строго контролируется ядром.
Как установить два Linux на компьютер
- /boot — раздел для загрузчика;
- swap — раздел подкачки;
- / — корневой раздел для системы и всех файлов программ;
- /home — раздел для файлов пользователя.
Но если вы хотите установить два Linux на компьютер, то такая разметка необходима только для одного из дистрибутивов. Все остальные могут обойтись одним разделом для системы. Рассмотрим подробнее почему:
- Раздел загрузчика — роль загрузчика будет выполнять дистрибутив, который был установлен последним, и хотя загрузчики в других дистрибутивах будут установлены, но фактически они не будут работать, поэтому этот раздел для них можно не создавать;
- Раздел подкачки — все системы могут использовать один раздел подкачки если не планируется, конечно, использовать гибернацию, в случае с гибернацией, для каждой системы вам будет нужен отдельный раздел swap;
- Системный раздел — это единственный раздел, который обязательно нужен для всех дистрибутивов? конечно, вы могли бы попытаться хранить файлы всех дистрибутивов на одном разделе, но так делать не нужно;
- Домашний раздел — тоже можно выделить в качестве одного раздела для всех. Вот только имена пользователей в разных дистрибутивах советую брать разными, чтобы в вашей домашней папке не было кучи мусора из различных конфигурационных файлов и все это не конфликтовало.
Теперь вам осталось установить обе системы просто следуя выше перечисленным рекомендациям по установке и разбивке диска. Дальше мы рассмотрим как работает chroot окружение.
Установка двоих Linux в chroot
Мы уже рассмотрели что это такое выше, поэтому сразу перейдем к практике. Допустим, у вас есть установленная на компьютере Ubuntu, представим, что она установлена на диске /dev/sda1, хотя файлы успешно могут лежать на этом же диске только в отдельной папке. Домашний раздел — /dev/sda2. Теперь попытаемся войти из текущей системы в окружение chroot для Ubuntu. Сначала монтируем разделы:
sudo mount /dev/sda1 /mnt
$ sudo mount /dev/sda2 /mnt/home
Дальше подключаем в ту же папку все виртуальные файловые системы, чтобы у нашего окружения был доступ к ядру:
sudo mount —bind /dev/ /mnt/dev/
$ sudo mount —bind /proc/ /mnt/proc/
$ sudo mount —bind /sys/ /mnt/sys/
И затем остается только войти в окружение chroot:
Первый параметр указывает папку с файлами дистрибутива, а второй используемую командную оболочку, причем это будет оболочка не из основной системы, а из той, для которой окружение нужно создать. Вот и все, теперь вы находитесь в окружении Ubuntu и можете выполнять все ее команды, устанавливать программы и другое. Только кроме графического окружения и любых графических программ. Я не буду рассматривать здесь настройку контейнеров, мы говорили о контейнерах openvz в отдельной статье.
Выводы
Теперь вы знаете несколько отличных способов как выполняется установка двух Linux на один компьютер. Все действительно очень просто и зависимости от ваших потребностей вы можете настроить отличную экосистему, установив несколько linux на одном компьютере. Если у вас остались вопросы, спрашивайте в комментариях!
На завершение подробное видео про настройку chroot на английском:
Установка двух linux на один диск
Всем доброго времени суток.
Решил поделиться своим опытом и наработками в этом вопросе.
Дано, ноутбук:
CPU — core i7;
RAM — 8 ГБ DDR3
SSD — 120ГБ.
GPU — ATI Radion HD7660
Так как компания ATI перестала выпускать обновления для своего драйвера FGLRX, то последний рабочей платформой стала P7. На P8 открытый драйвер Radeon.
Таблица разделов — MBR.
В результате, решено поставить Платформу P7 и P8 на один диск, и сделать общий домашний каталог.
На первом рисунке текущая конфигурация разметки диска.
Два раздела по 16 ГБ (возможно потом уменьшу) под корневые разделы каждой из систем.
Один большой раздел на 67ГБ для каталога /home.
Далее расширенный раздел.
В расширенном разделе находится раздел размером 4ГБ под каталог /opt, в который устанавливаю стороннее ПО не из репозитория, общее для обеих систем.
И в конце 8ГБ занимает SWAP раздел.
Разметить диск нужно либо заранее, с LiveCD при помощи утилиты Gparted, либо при установке первой системы.
/dev/sda1 — основной раздел, ext4
/dev/sda2 — основной раздел, ext4
/dev/sda3 — основной раздел, ext4
/dev/sda4 — расширенный раздел
/dev/sda5 — логический раздел, ext4
/dev/sda6 — логический раздел, swap
На первый раздел (в моём случае это /dev/sda1) обычным образом устанавливается Alt Linux P8.1, с загрузочного DVD диска.
Когда установщик предложит выбрать диск, нужно выбрать ручной режим, и, если вы ещё не разметили диск на разделы, сделать это. Если разделы уже созданы, то остайтся указать в установщике точки монтирования разделов.
В представленном случае:
/dev/sda1 — корневой раздел /
/dev/sda2 — не монтируем никуда
/dev/sda3 — домашний каталог /home
/dev/sda5 — каталог /opt
/dev/sda6 — swap
При установке указываем, что загрузчик нужно установить на этот же первый раздел /dev/sda1. Загрузку я отдал в распоряжение более новой системы, потому что здесь будет гарантированно более новый GRUB.
После окончания установки первой системы, устанавливаем вторую систему, Alt Linux P7 Centaurus.
На данном этапе диск уже будет размечен. Нужно вручную указать точки монтирования разделов.
/dev/sda1 — не монтируем никуда, не форматировать, не очищать.
/dev/sda2 — корневой раздел /
/dev/sda3 — домашний каталог /home, не форматировать, не очищать.
/dev/sda5 — каталог /opt, не форматировать, не очищать.
/dev/sda6 — swap, тут всё хитрее, установщик самовольно отформатирует данный раздел и это создаст нам некоторые проблемы, о них чуть позже.
При установке, указываем, что загрузчик устанавливать не нужно.
После окончания установки у нас в списке загрузки НЕ БУДЕТ P7.
По этому, загружаемся под P8, и.. получаем зависание при загрузке.
Причина — при установке, установщик P7 отформатировал раздел /dev/sda6 — swap и как результат, поменял UUID раздела.
По этому, либо загружаемся под LiveCD и проделываем это из графического интерфейса, или прямо из повисшей системы, ctrl+alt+F2, и логинимся под root.
Далее, нам нужно выполнить в консоли комманду (все командысейчас и далее выполняем от имени root, предворительно введя команду su- и введя пароль root ):
# blkid
и посмотреть UUID разделов
/dev/sda1: LABEL=»root_p8″ UUID=»c69a63c6-c1b4-40ce-81b2-8659f2eb42ba» TYPE=»ext4″ PARTUUID=»47638a55-01″
/dev/sda2: LABEL=»root_p7″ UUID=»4c0ed5ee-59cf-49e6-98ac-450d28a0b117″ TYPE=»ext4″ PTTYPE=»dos» PARTUUID=»47638a55-02″
/dev/sda3: LABEL=»home» UUID=»b511fce6-bb4a-4af6-90b1-d34438650ca5″ TYPE=»ext4″ PARTUUID=»47638a55-03″
/dev/sda5: LABEL=»opt» UUID=»b5cb67ad-307f-49e3-8949-4db74d34de45″ TYPE=»ext4″ PARTUUID=»47638a55-05″
/dev/sda6: LABEL=»swap» UUID=»5529ed40-eb69-4858-8407-bdcea3fa03cb» TYPE=»swap» PARTUUID=»47638a55-06″