LINUX.ORG.RU

При входе в arch-chroot размонтируется efi раздел

 , ,


0

1

Здравствуйте, всем, решил я поставил снова арч, но не тут-то было. Делю диск на efi раздел (512 MB), swap (16 GB), и остальное под файловую. Указываю везде нужный тип (делю через cfdisk) , форматирую, монтирую efi в /mnt/boot (я пробовал в /mnt/boot/efi, но разницы, вроде, нету) делаю pacstrap, genfstab, проверяю, что все разделы правильно примонтированы, вхожу в arch-chroot, проверяю опять же через lsblk разделы и efi раздел чудом никуда не примонтирован, смотрю через mount, также, никуда, выхожу из arch-chroot, смотрю lsblk, mount и все в норме, что делать? Пытался несколько раз, перезаписывал образ, ничего не помогает. Раньше проблем не было, может я забыл что-то, но если я дважды монтирую, то в arch-chroot все в норме, но после установки ничего нету, grub не запускается


Забыл добавить, делаю все через Uefi, запускаю флешку через uefi, в настройках везде стоит uefi, secure boot, fast boot отключены

exe1a
() автор топика

cfdisk файловую систему не создает. он лишь создает разделы и метки ставит (у любой файловой системы есть метка). нужно через mkfs создать файловые системы. разделы нужно располагат по правилу от меньшего к большему. swap не нужен.

cfdisk /dev/nvme0n1

mkfs.btrfs /dev/nvme0n1p1
mkfs.vfat -F32 /dev/nvme0n1p2

mount /dev/nvme0n1p1 /mnt
btrfs su cr /mnt/@
btrfs su cr /mnt/@home
btrfs su cr /mnt/@swap

umount /mnt

mount -o noatime,compress=zstd:3,subvol=@ /mnt
mount -o x-mount-mkdir,noatime,compress=zstd:3,subvol=@home /mnt/home
mount -o x-mount-mkdir,noatime,compress=zstd:3,subvol=@swap /mnt/swap
mount -o x-mount-mkdir /dev/nvme0n1p2 /mnt/boot

pacstrap /mnt linux linux-headers base ... git wget curl zsh
arch-chroot /mnt
# ...
grub ...
bootctl-install ... 
rtxtxtrx ★★
()
Последнее исправление: rtxtxtrx (всего исправлений: 2)
Ответ на: комментарий от rtxtxtrx

При установке, я форматирую разделы с помощью mkfs , efi раздел на Fat32, файловую систему на ext4, также хотел узнать почему swap не нужен? У меня 16 гб оперативки и в случае надобности использования тяжелых приложений swap понадобиться же

exe1a
() автор топика

Это очень странная проблема. По описанию в посте всё делаете правильно, но будет лучше если вы просто выложите все команды которые вводите с самого начала и до момента arch-chroot. Подозреваю, что дело может быть в банальной опечатке.

spal
()
Ответ на: комментарий от exe1a

У меня 16 гб оперативки и в случае надобности использования тяжелых приложений swap понадобиться же

Если ты не пользуешься гибернацией (не путай со спящим режимом), с 16 Гб ОЗУ тебе вполне хватит свопа в 4 Гб.

posixbit ★★
()

что делать?

Попробуй примонтировать все разделы, кроме /boot/efi, до arch-chroot, а его примонтируй его уже в chroot (очевидно, уже без написания /mnt).

Как-то так:

mount /dev/sda2 /mnt
mkdir /mnt/home
mount /dev/sda3 /mnt/home
swapon /dev/sda4
pacstrap /mnt base base-devel linux-lts linux-lts-headers linux-firmware grub efibootmgr arch-install-scripts
arch-chroot /mnt
mkdir /boot
mkdir /boot/efi
mount /dev/sda1 /mnt/boot/efi
genfstab -U -p / >> /etc/fstab
lsblk
grub-install /dev/sda
grub-mkconfig -o /boot/grub/grub.cfg
posixbit ★★
()
Последнее исправление: posixbit (всего исправлений: 5)
Ответ на: комментарий от spal

cfdisk /dev/sda mkfs.ext4 /dev/sda3 mkfs.fat -F32 /dev/sda1 mkswap /dev/sda2 swapon /dev/sda2 mount —mkdir /dev/sda1 /mnt/boot mount /dev/sda3 /mnt pacstrap -K /mnt base linux linux-firmware genfstab -U /mnt >> /mnt/etc/fstab arch-chroot /mnt После arch-chroot в lsblk уже отображается, что efi никуда не примонтирован

exe1a
() автор топика
Ответ на: комментарий от exe1a

Сначала монтируйте корневой каталог

mount /dev/sda3 /mnt

И уже дальше монтируйте загрузочный раздел

mount --mkdir /dev/sda1 /mnt/boot
spal
()
Последнее исправление: spal (всего исправлений: 1)
Ответ на: комментарий от exe1a

Конечно есть. У вас пустой корневой раздел, который всегда монтируется в первую очередь. Потом на нём создается каталог boot, к нему уже монтируется загрузочный раздел и все прочие разделы (например home) и разворачивается система.

spal
()
Ответ на: комментарий от exe1a

Когда используется UEFI, наличие раздела EFI (ESP), который монтируется в /boot/efi, является обязательным условием для корректной работы загрузчика GRUB и самой системы. Поэтому в статьях и инструкциях по современным системам (особенно на дисках с GPT) рекомендуют монтировать раздел в /boot/efi, чтобы загрузчик GRUB мог корректно работать с UEFI и обнаружить загрузочный efi-раздел.

/boot обычно хранит ядро и initramfs, которые нужны ядру Linux. Эти файлы могут быть большими и специфичными для работы Linux. /boot/efi же хранит только EFI-загрузчики, такие как grubx64.efi, а также файлы конфигурации для UEFI. Эти файлы маленькие, и их использование в FAT32 оправдано, так как UEFI прошивка должна иметь возможность прочитать их без необходимости в поддержке сложных файловых систем.

Отдельное монтирование ESP в /boot/efi позволяет избежать путаницы и чётко разделить файлы UEFI-загрузчика (хранятся в /boot/efi) и файлы, нужные Linux для загрузки (хранятся в /boot). Если не используешь загрузчик Grub, можешь монтировать иначе. Некоторые пользователи вообще создают единый загрузочный файл с linux-ядром bootx64.efi.

posixbit ★★
()
Последнее исправление: posixbit (всего исправлений: 2)
Ответ на: комментарий от posixbit

Два момента.

  1. Эфистабовое ядро надо обязательно переименовать, добавив суффикс .efi : cd /mnt/boot; mv vmlinuz-linux vmlinuz-linux.efi И желательно потом хук сотворить, чтобы при обновлении ядра оно потом само переименовывалось.
  2. Зачем использовать атавизм на 4 буквы в 2024 году? Он нужен разве что только на китайских хламо-буках с кривым биосом, который не позволяет нормальную загрузку по стандартам EFI. Все загрузки нужно настраивать через efibootmgr, выбор в бут-меню по зажатию и удержанию [F11].
anonymous
()