Да, на один диск можно поставить сколько угодно Arch Linux. Ограничений нет — ни со стороны UEFI, ни Pacman, ни ядра. Нужны только отдельные корневые разделы для каждой системы, общая EFI-раздел для загрузки и аккуратная настройка GRUB.
Можно. Это даже проще, чем дуалбут с Windows — обе системы живут в одной экосистеме с одинаковыми утилитами и пакетами. Типичный сценарий — стабильная рабочая копия и экспериментальная на btrfs-снапшотах, или две изолированных среды для разных задач.
Ограничения — не софта, а здравый смысл:
/)./home — тема отдельного разговора (об этом ниже).Подходящий момент для разметки — до первой установки. Живёшь с live-USB, смотришь на диск и решаешь, какую схему строить.
Самый простой вариант. Один EFI System Partition на 1–1,5 ГБ, два раздела для корня:
/dev/nvme0n1p1 1G EFI System (FAT32)
/dev/nvme0n1p2 50G root1 — стабильный Arch (ext4/btrfs)
/dev/nvme0n1p3 50G root2 — экспериментальный Arch (ext4/btrfs)
/dev/nvme0n1p4 16G swap
Разметка через gdisk или cfdisk — стандартный GPT. Подробности процесса описаны в разборе GPT и MBR.
Если хочешь перераспределять место без переразметки — LVM:
pvcreate /dev/nvme0n1p2
vgcreate vg0 /dev/nvme0n1p2
lvcreate -L 50G -n lvroot1 vg0
lvcreate -L 50G -n lvroot2 vg0
lvcreate -L 16G -n lvswap vg0
Каждый корень — отдельный логический том. Потом mkfs.ext4 /dev/vg0/lvroot1 и аналогично для второго. Подробнее — в руководстве по Arch с LVM.
Два подтома (@root1, @root2) на одном разделе Btrfs. Компактно, но при ошибке одному подтому достанется другому. Зато снапшоты — на блюдечке. Детали — в статье про Arch и Btrfs-снапшоты.
Звучит заманчиво: одна папка, общие документы, общие настройки. На практике это болезненнее, чем кажется.
Конфликты конфигов. В ~/.config живут настройки DE, WM, терминалов, браузеров. Если на одном Arch стоит Hyprland, а на втором GNOME — конфликтуют scheme-ы, темы, плагины. Каждый DE ожидает свои ключи в dconf/kwinrc/swayrc, и при загрузке второго Arch всё поедет.
Версии пакетов. Если на одной системе обновления прошли, а на второй нет (или экспериментальная копия откатилась на снапшоте), бинарники из ~/.local/share могут оказаться несовместимы.
UID/GID. Обе системы должны назначить тебе одинаковый uid. Обычно это 1000, но если при второй установке создать пользователя раньше — получишь другой uid, и возникнут проблемы с правами доступа.
Рекомендация: отдельный /home каждому Arch, или общего_DATA_-раздел (просто ext4/btrfs с папкой Data), куда монтируешься из обеих систем. Документы, музыка, загрузки — на общем(DATA), конфиги — у каждого свои.
Это самая непростая часть. Главный принцип: GRUB ставится один раз (или управляется из одной копии Arch), а вторая система просто добавляется в его конфигурацию.
Стандартная установка. Когда дойдёшь до загрузчика:
pacman -S grub efibootmgr
grub-install --target=x86_64-efi --efi-directory=/boot --bootloader-id=GRUB
grub-mkconfig -o /boot/grub/grub.cfg
На этом этапе GRUB знает только об одном Arch. Это нормально.
При установке второй системы ВАЖНО:
/boot или /efi — зависит от схемы).После pacstrap и arch-chroot настрой locale, сеть, пароли, mkinitcpio для второго Arch:
mkinitcpio -P
Это пересоберёт initramfs для ядер второго Arch. Не забудь прописать второй корень в /etc/fstab —genfstab сделает это автоматически, если смонтировал разделы правильно.
Перезагрузись в первый Arch. Включи os-prober в конфиге GRUB:
# /etc/default/grub — добавь строку
GRUB_DISABLE_OS_PROBER=false
Установи os-prober:
pacman -S os-prober
И перегенерируй конфиг:
grub-mkconfig -o /boot/grub/grub.cfg
GRUB найдёт ядро второго Arch через os-prober и создаст пункт меню.
Если os-prober не нравится (иногда бывает хитрый с LVM или btrfs), добавь пункт вручную в /etc/grub.d/40_custom:
menuentry "Arch Linux (эксперимент)" {
insmod part_gpt
insmod lvm
linux /vmlinuz-linux root=/dev/vg0/lvroot2 rw
initrd /initramfs-linux.img
}
Путь linux указывай относительно ESP (куда смонтирован /boot второго Arch), а root= — UUID или путь LVM-тома второго корня. После правки:
grub-mkconfig -o /boot/grub/grub.cfg
Чтобы не путаться в меню GRUB и в терминале, смени hostname на второй системе:
hostnamectl set-hostname arch2
Локаль и часовой пояс можно не менять — они не конфликтуют при общей ESP.
Удалит ли второй Arch данные первого?
Нет, если не форматируешь чужой корневой раздел. При установке выбери конкретный раздел для монтирования и проверь lsblk, что всё совпадает. Подробный чек-лист — в пошаговом руководстве по установке.
Можно ли ставить GRUB второй раз поверх первого?
Технически можно, но не надо. GRUB перезапишет NVRAM-запись и может запутать приоритеты загрузки. Правильнее: один GRUB, две записи в grub.cfg.
Что будет, если обновить GRUB с второго Arch?
Обновится тот же файл /boot/grub/grub.cfg на общем ESP. Пункты меню пересоздадутся через os-prober. Конфликтов не будет, если оба Arch видят один и тот же ESP.
Как различаются boot и initramfs?
Каждый Arch генерирует свои vmlinuz и initramfs. Если монтировать ESP в /boot — файлы лежат рядом (vmlinuz-linux первого и второго Arch перезапишут друг друга). Поэтому при общей ESP лучше монтировать ESP в /efi, а ядра оставить на своих корневых разделах в /boot. Или использовать разные имена ядер (linux-lts для одного, linux для второго).
Как удалить второй Arch без последствий?
Удали его корневой раздел (через gdisk или LVM lvremove), вычисти запись из grub.cfg (или перегенерируй через grub-mkconfig). Про общую ESP для двух систем и конфликт загрузчика написано в статье про один EFI-раздел для двух ОС.
Два Arch на одном диске — рабочая и проверенная схема. Один ESP (1–1,5 ГБ), два корневых раздела, общий DATA-раздел вместо совместного /home. GRUB ставится один раз, os-prober или ручная запись в 40_custom добавляют второй Arch в меню. Главное — не форматируй чужие разделы и различай системы через hostname. После настройки получишь два независимых Arch, между которыми переключаешься в GRUB за пару секунд.
Задай вопрос в чате — отвечаем быстро, по делу и без воды.
Комментарии