LINUX.ORG.RU

установить arch на usb

 , , ,


0

1

Решил сделать себе флэшку с линуксом. Выбрал арч(никогда им не пользовался) и действовал согласно этому манулу https://wiki.archlinux.org/index.php/Install_from_Existing_Linux#Method_1:_Us...

разбил флэшку так :
Таблица разделов gpt
100мб ext2 под boot
5гб f2fs под /
остальное не форматированное

установил grub через grub-install --force /dev/sdb

Гружусь с флэшки, запускается груб, пару секунд идёт загрузка, но после стадии 'loading initial ramdisk' появляется такое:

 Error: Unable to fin root device '/dev/sdb2'.
You are being dropped to a recovery shell
Type 'exit' to try and continue booting

Как действовать дальше? )

Update : fstab выглядит так

efc95dba-2ed0-49a3-9aa7-94f18cab6757    /boot   ext2    noatime         1       2
/dev/sdb2       /       f2fs    noatime         0       1

Может ядро не собрано с f2fs? Где бы достать конфиг ядра арча?

★★★★★

Последнее исправление: snaf (всего исправлений: 1)
Ответ на: комментарий от anonymous

я бы с радость, но насколько мне известно f2fs не поддерживает uuid

# blkid | grep f2fs
/dev/sdb2: TYPE="f2fs" PARTUUID="a39c7ba8-685b-4663-a4fd-3d65d1e6343d" 

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

если ты про

Some BIOS systems like Intel Desktop Board motherboards may not boot from GPT

то это не тот случай, initial ram disk всё же начиает грузится.

snaf ★★★★★
() автор топика

Тогда выбери из /dev/disk/by-id то, что ссылается на твой раздел (имя симлинка не зависит от запущенной системы, т. е. можно воткнуть флеш-диск в работающую систему) и пропиши везде.
Это будет идентификатор, зависящий от диска и номера раздела.

intelfx ★★★★★
()
Ответ на: комментарий от intelfx

Как этим пользоватся?

у меня есть
usb-JetFlash_Transcend_8GB_A4EFQDKS-0:0
usb-JetFlash_Transcend_8GB_A4EFQDKS-0:0-part1
usb-JetFlash_Transcend_8GB_A4EFQDKS-0:0-part2

part1 это /sdb1 а part2 это /sdb2? Я правильно понял? И как это всё вписать в fstab? всё целиком или только цифры?

Но что то мне подсказывает что ядро в арче собрано без f2fs

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

Да, разделы соответствуют. Точное соответствие можно узнать через readlink <файл> или ls -l <файл или папка>.
Прописывать нужно весь путь до файла, т. е. /dev/disk/by-id/<файл>, так же, как и с любым другим файлом в /dev.

F2FS в стандартном ядре арча собран как модуль и должен быть в initramfs (как минимум, в том, которое fallback).

В Grub'е должно быть два пункта меню для твоего ядра, одно из которых как раз использует fallback initramfs - попробуй с ним, чтобы исключить возможность неподгруженного модуля.

intelfx ★★★★★
()
Ответ на: комментарий от boyk0

ща попробую проделать тоже самое только используя ext2, чтобы убедится что проблемма не связанна с фс.

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

Note: указывать разделы по абсолютным номерам (вида /dev/sda2) не очень хорошо, потому что они назначаются устройствам в зависимости от порядка их обнаружения ядром.

Другими словами, если ты воткнёшь в комп вторую флешку и попробуешь так загрузиться, совершенно не факт, что загрузишься.

intelfx ★★★★★
()
Ответ на: комментарий от intelfx

Как мне получить конфиг ядра? /proc/config.gz недоступен т.к. я не могу загрузится и в /boot его тоже нету.

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

В дереве исходников ядра есть скрипт scripts/extract-ikconfig, которому надо дать путь к образу ядра (vmlinuz-linux). Он печатает конфиг в stdout.

intelfx ★★★★★
()
Ответ на: комментарий от intelfx

уот блин. Ядро собрано с f2fs

grep -i f2fs config
CONFIG_F2FS_FS=m
CONFIG_F2FS_STAT_FS=y
CONFIG_F2FS_FS_XATTR=y
CONFIG_F2FS_FS_POSIX_ACL=y
CONFIG_F2FS_FS_SECURITY=y

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

нашёл нечто интересно https://wiki.archlinux.org/index.php/F2fs

там сказанно

and remove fsck from hooks section since F2FS does not have fsck implementation yet.

собсно как это сделать?

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

В /etc/mkinitcpio.conf есть переменная-массив HOOKS, в которую и предлагается внести изменения, убрав элемент «fsck».

Но делать это необязательно (и даже в некотором смысле вредно), т. к. mkinitcpio достаточно умный, чтобы обнаружить факт отсутствия fsck.f2fs самостоятельно, а вот если ты будешь переходить на какую-то другую ФС (или когда fsck.f2fs появится), ты наверняка забудешь вернуть «fsck» в конфиге обратно.

intelfx ★★★★★
()
Ответ на: комментарий от intelfx

только что провернул тоже самое на ext2, всё прошло успешно.

snaf ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.