Многих новичков интересует возможно ли установить два linux или больше дистрибутивов на свой компьютер. Это будет очень практично, если вы еще не определились с дистрибутивом и хотите протестировать сразу несколько систем, или вам нужны две разные системы.
Тут можно пойти сразу двумя путями. Первый - это установка нескольких дистрибутивов на реальное железо. Сразу скажу, что это делается очень просто и почти без каких-либо дополнительных настроек, все сработает почти также как с двойной загрузкой Windows и Linux. Только тут уже будут другие операционные системы.
Второй путь - более сложный и он подразумевает использование chroot или контейнеров. В этой небольшой инструкции будет рассмотрено как выполняется установка два Linux на компьютер и почему это возможно.
Содержание статьи
Как это будет работать?
Я уже сказал, что установка двух Linux на компьютер выполняется очень просто. Но как это работает? Для выбора операционной системы перед загрузкой используется загрузчик Grub. Он обнаруживает все установленные системы и выводит меню, в котором предлагает выбрать нужную систему для загрузки. Причем загрузчику не столь важно какая это операционная система Windows или Linux. В случае с Linux все будет работать даже лучше.
Также среди новичков бытует мнение, что для установки каждой следующей операционной системы нужен отдельный жесткий диск, а переключать потом системы можно будет с помощью выбора первого диска в Linux. Но все это совсем не обязательно. Для каждой операционной системы нужно выделить по несколько разделов на одном жестком диске, этого будет вполне достаточно. Выбор загружаемой операционной системы будет происходить с помощью Grub и вам не понадобится менять настройки BIOS. Таким образом, два Linux на одном диске отлично помещаются.
Теперь про контейнеры и chroot. Обе эти технологии позволяют запускать несколько дистрибутивов одновременно на одном ядре Linux. Это позволяет нам не терять производительность как при полной виртуализации с помощью VirtualBox или WMVare, но и накладывает кое-какие ограничения.
Если рассматривать chroot, то этот метод создает изолированное окружение в системе, вы попадаете в консольное окружение выбранного дистрибутива и можете выполнять все его программы, они будут работать на том же ядре и будут иметь доступ ко всем тем же устройствам и файлам что и основная система, но, тем не менее, это будет отдельное окружение. Такой вариант может быть полезен если вам срочно нужно получить доступ к консоли другого дистрибутива, а также он постоянно используется при восстановлении системы. chroot может использоваться для запуска Linux на смартфонах Android.
Контейнеры - это уже усовершенствованная версия chroot окружения с более жесткими ограничениями доступа к устройствам. Все файлы контейнера находятся в виртуальной файловой системе, а доступ ко всем устройствам строго контролируется ядром.
Как установить два Linux на компьютер
Сначала давайте разберемся с очередностью установки дистрибутивов. Каждый дистрибутив устанавливает свою версию загрузчика Grub, если для вас не важно от какого дистрибутива будет установлен загрузчик, то вы можете выбрать любой порядок, в противном же случае тот дистрибутив, которого загрузчик вы хотите использовать должен устанавливаться последним.
Теперь перейдем к разметке диска. Это один из самых важных этапов. Если при установке Linux рядом с Windows вы можете только отделить немного пространства для Linux. Но в нашем сегодняшнем варианте у вас будет намного больше свободы для планирования.
Обычно для установки дистрибутива 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:
chroot /mnt/ /bin/bash
Первый параметр указывает папку с файлами дистрибутива, а второй используемую командную оболочку, причем это будет оболочка не из основной системы, а из той, для которой окружение нужно создать. Вот и все, теперь вы находитесь в окружении Ubuntu и можете выполнять все ее команды, устанавливать программы и другое. Только кроме графического окружения и любых графических программ. Я не буду рассматривать здесь настройку контейнеров. Для этого существует несколько технологий:
В последнее время очень популярным стал Docker, он позволяет скачать образ любого дистрибутива в контейнере и делать с ним всё, что надо. О контейнерах openvz я рассказывал в отдельной статье. Ещё есть виртуализация KVM, XEN или если такой вариант вам не нравится, то можно воспользоваться виртуальной машиной VirtualBox или WMVare.
Выводы
Теперь вы знаете несколько отличных способов как выполняется установка двух Linux на один компьютер. Все действительно очень просто и зависимости от ваших потребностей вы можете настроить отличную экосистему, установив несколько linux на одном компьютере. Если у вас остались вопросы, спрашивайте в комментариях!
На завершение подробное видео про настройку chroot на английском:
У меня установлено 2 Линукс (Kubuntu и Ubuntu - 16.04) на одном винте (500 Гб), на разных разделах:
1 раздел своп, общий на 2 системы (4 Гб)
2 раздел Первичный - / - корневой раздел для Ubuntu (35 Гб)
3 раздел Первичный - / - корневой раздел для Kubuntu (35 Гб)
4 раздел - расширенный, в нём такие вот разделы:
а - /home Ubuntu (10 Гб)
б - /home Kubuntu (10 гб)
в - раздел - "файлопомойка", смонтирован на /media/data
Все разделы, кроме свопа, имеют файловую систему ext4.
Поведение систем нормальное, без глюков.
В загрузчике Grub отображено 2 ОС и к каждой стандартное подменю.
В общих чертах неплохо, хорошо что затронули эту тему.
Спасибо. Буду пробовать.
А 10 линуксов и одну винду получится установить на один комп?
Всем привет! подскажите как вообще все это провернуть чтоб установить 2 убунту. Не могу разобраться с дисками. Как подготовить для инсталяции 2 ос
Возможно при установленной Ubuntu уменьшить раздел /home и поставить ещё три дистрибутива? Надо добавить ещё Mint, RHEL и CentOS. Или лучше снести Ubuntu и сделать предварительную разметку.
Я кстати не делел раздел swap. Где-то читал что это "убивает" SSD. Физически у меня один диск - SSD m.2 480Гб. 16Гб RAM. Так и жить без swap или он всё-таки нужен?
так и живи
На ноуте Mint, Zorin и следы Ubuntu (её нет, но в писке она есть). Сейчас хочу снести Зорин и почистить следы после Убунты, оставив Мяту безраздельно господствовать на ноуте. Есть статья или можете описать как почистить список загрузчика? Везде есть информация только о том, как удалить линукс с компа, где так же стоит винда, но как удалить один установленный линукс, оставив другой, ничего нет. Спасибо.