Могу ли я иметь два дистрибутива на одном разделе, используя btrfs?

Я успешно использую btrfs и, к счастью, разделил домашний и системный разделы.

Используя Ubuntu 13.10 и желая протестировать 14.04, как я могу это сделать с помощью файловой системы btrfs?

В системе есть раздел EFI, но нет дополнительного загрузочного раздела. /boot находится внутри системного раздела (/@/boot).

5
задан 5 January 2014 в 17:23

1 ответ

1135 Да, вы можете. Это то, что я использую в данный момент. Другая интересная вещь заключается в том, что вы можете создать раздел после того, как вы установили много похожих ОС (таких как Ubuntu и Linux Mint), чтобы сэкономить много места на жестком диске.

Хитрость заключается в том, чтобы переименовать подтомы по умолчанию: @ и @home во что-то уникальное для установки дистрибутива, например, @ -> @mint или @trusty и @home в @homemint или @hometrusty.

Это можно сделать в любой момент после установки первой системы, до установки второй системы. Самый надежный способ - сделать снимок подобъема, например, так:

  1. смонтировать корневой подобъем системного раздела btrfs (предполагается, что он / dev / sda3) где-нибудь, например, to / mnt: sudo mount btrfs /dev/sda3 /mnt
  2. Необязательно: перечислите уже существующие подобъемы - просто убедитесь, что вы не создаете конфликт имен в следующих шагах: sudo btrfs subvolume list /mnt
  3. Клонируйте основной @ подобъем: sudo btrfs subvolume snapshot /mnt/@ /mnt/@trusty
  4. Клонировать дом. Я настоятельно не рекомендую разделять весь домашний подобъем между различными системами. (Для общих документов создайте другой подобъем или, что еще лучше, отдельный раздел, свяжите его с ~ / Documents, ~ / Desktop и т. Д. И поделитесь этим): sudo btrfs subvolume snapshot /mnt/@home /mnt/@trustyhome
  5. Редактировать /mnt/@trusty/etc/fstab в новом корне @ верный, чтобы отразить изменение подтома @home -> @trustyhome (и @ -> @trusty, но этот шаг не является строго необходимым, потому что к тому времени, когда система читает @ trusty / etc / fstab, он уже должен был принять правильный подобъем для корня).
  6. Редактировать /boot/grub/grub.cfg: изменить все строки, которые вызывают текущее ядро ​​(они выглядят так: linux /vmlinuz-3.16.0-50-generic.efi.signed root=UUID=9e571eab-4c88-4913-baa3-8d41d94f73d5 ro recovery nomodeset rootflags=subvol=@), и изменить rootflags=subvol=@ на rootflags=subvol=@trusty, чтобы ядро ​​знало, что загружаться. Скорее чудесным образом этот параметр будет сохранен, когда вы сделаете update-grub.
  7. Перезагрузитесь и выполните sudo mount и убедитесь, что вместо @ и @home < - используются правильные новые подобъемы. Этот шаг действительно важен, в противном случае вы потеряете ваши данные

И как только вы переименовали подобъемы, и убедились, что система загружается, и убедились, что нет @ и @home - установите следующую ОС. В диалоговом окне разделения используйте пользовательское разбиение и установите систему в том же разделе, что и первая ОС. Просто будьте уверены, что вы скажете установщику не форматировать этот раздел!

После установки установите цепную загрузку grubs, чтобы вы могли выбрать grub из одной установки как запись для другой, и наоборот (как см. Каков рекомендуемый способ загрузки по цепочке отдельного раздела Ubuntu / boot ).

Имея отдельные разделы /boot, мне не нужно беспокоиться об одном бреде Linux для других Linux во время автоматического обновления ядра.

0
ответ дан 5 January 2014 в 17:23

Другие вопросы по тегам:

Похожие вопросы: