LINUX.ORG.RU

Внезапно сломалась Gentoo

 ,


0

2

Вчера начал собирать Gentoo, собрал ядро (3.8.13, с BFQ) и иксы. Время было позднее, оставил собираться Firefox (22.0) и ушел спать. Прихожу утром, включаю компьютер и наблюдаю такое приветствие:

This is gentoo.unknown.domain (Linux 3.8.13-total)
gentoo login:
Странно, думаю, ввожу имя юзера (своё или рута) и получаю
Login incorrect
Из лога загрузки увидел следующее:
[1.123207] EXT3-fs (sda2): error: couldn't mount because of unsupported optional feautures (240)
[1.123291] EXT2-fs (sda2): error: couldn't mount because of unsupported optional feautures (244)
Т.е. на сколько я понял, рут-раздел (ext4) не может смонтироваться. В /etc/fstab всё в порядке (проверил с LiveCD).

Что могло случиться? Полетела файловая система (может быть был сбой электричества, кто его знает, но как-то раньше ext4 такое выдерживала)? И что теперь можно сделать, дабы не собирать всё снова? =[

cast tazhate, devl547, Pinkbyte, megabaks

UPD: Были небольшие траблы при компиляции pulseaudio с shadow и pambase, но я их решил. Вряд ли конечно, но может быть это так же может быть причиной?

SOLVED: Внезапно сломалась Gentoo (комментарий)

★★★★★

Последнее исправление: neocrust (всего исправлений: 2)
GRUB_CMDLINE_LINUX="rootfstype=ext4"

и апдейт граб-конфига не помогают?

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

У тебя, наверное, ФС накрылась.

Печально, если так. Странно, ибо раньше с ext4 у меня не было проблем, хотя были сбои электроэнергии и хардварное выключение.

Сейчас пересоберу ядро без BFQ и с модульными EXT2/EXT3 (где-то читал, что это может помочь) и будет ясно, что к чему.

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

В /boot вообще никакого другого ядра нет? o_O

Нет. А что так удивляет? =]

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

(sda2): error: couldn't mount because of unsupported optional feautures (240)

unsupported optional feautures

Глупое предложение, извини, а диски не поменялись местами?

record ★★★★★
()

Включаю Ванга-мод: ты выкинул из ядра поддержку huge-файлов. Эту проблему решает загрузка с LiveUSB (или CD, если угодно) и

tune2fs -O ^huge_file /dev/sda2

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

Глупое предложение, извини, а диски не поменялись местами?

Диски или разделы?

У меня два жестких диска, пробовал один полностью отключить - не помогло.

А разделы на месте.

neocrust ★★★★★
() автор топика
Ответ на: комментарий от beresk_let
root@sysresccd /root % tune2fs -O ^huge_file /dev/sdb2
tune2fs 1.42.7 (21-Jan-2013)

Please run e2fsck on the filesystem.

root@sysresccd /root % e2fsck /dev/sdb2
e2fsck 1.42.7 (21-Jan-2013)
/dev/sdb2 was not cleanly unmounted, check forced.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/sdb2: 288705/3334144 files (0.1% non-contiguous), 1311407/13311523 blocks

root@sysresccd /root % tune2fs -O ^huge_file /dev/sdb2
tune2fs 1.42.7 (21-Jan-2013)
neocrust ★★★★★
() автор топика
Ответ на: комментарий от neocrust

Я имел ввиду те, которые обирались до и во время того, когда это случилось.

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

Всё правильно, tune2fs отработал, теперь попробуй грузиться с диска. Если моё предположение верно, проблемы больше быть не должно.

Только почему /dev/sdb2?

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

Не помогло. Всё так же =[

Только почему /dev/sdb2?

У меня два жестких диска и иногда /dev/sda становится /dev/sdb.

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

Так или иначе, подобная ошибка возникает в случае, когда в ext4 включены какие-то неподдерживаемые собранным тобой ядром фичи.

Покажи результат

tune2fs -l /dev/sdb2 | grep features

beresk_let ★★★★★
()
Ответ на: комментарий от beresk_let
root@sysresccd /root % tune2fs -l /dev/sdb2 | grep features
Filesystem features:      has_journal ext_attr resize_inode dir_index filetype extent flex_bg sparse_super large_file uninit_bg dir_nlink extra_isize
neocrust ★★★★★
() автор топика
Ответ на: комментарий от beresk_let

З.Ы.: Если в EXT4 включены какие-то неподдерживаемые собранным тобой ядром фичи, то почему система работала и успешно загружалась?

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

CONFIG_EXT4_DEBUG=y

Не помню, думал не помешает =]

-fomit-frame-pointer мог быть виноват? Хотя ядро компилилось с безопасными флагами, на сколько я понимаю.

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

собранным тобой ядром

Вчера начал собирать Gentoo, собрал ядро

А до этого у тебя было generic-ядро, потому и было всё нормально. Или я неверно понял?

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

А до этого у тебя было generic-ядро, потому и было всё нормально. Или я неверно понял?

Вчера было то же самое ядро, что и сейчас =]

Собирал без использования genkernel, со своим конфигом, который уже пару лет юзаю.

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

-fomit-frame-pointer мог быть виноват?

Нет.

Не помню, думал не помешает =]

Лучше выключи всё, что касается debug, если ты не разработчик ядра, конечно.

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

Лучше выключи всё, что касается debug, если ты не разработчик ядра, конечно.

Это могло вызвать крах файловой системы?

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

В общем, дабы быть уверенным в том, что это проблема не ядра, соберу его через genkernel. И если ошибка сохранится, думаю что бОльшая вероятность того, что проблема именно в файловой системе и я пойду конпелять Генту сначала =[

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

А не легче загрузиться с livecd и попробовать примонтировать этот раздел?

Примонтировал, а что дальше делать? Я не могу понять, в чем причина ошибки.

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

По умолчанию genkernel старое ядро всегда оставляет в /boot/kernel.old

Ничего он не оставляет по умолчанию.

fragmentor
()
Ответ на: комментарий от BattleCoder

Как нету? По умолчанию genkernel старое ядро всегда оставляет в /boot/kernel.old. Специально что ли удалил?

Я не использую genkernel.

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

Да, вроде

Тогда можно сохранить всё в архиве или просто cкопировать cp -a, потом разбиравться

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

Значит, проблема таки в ядре, а не в фс.

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

Сейчас скомпилю через genkernel и посмотрим, загрузится ли.

Я читал, что подобная ошибка есть проблема определенных версий ядра, возможно нужно попробовать другую версию.

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

Тем более ССЗБ. То есть пофик, что использовать - но при компиляции нового ядра не оставлять копии старого - опасный вы парень. Мало ли что там за нововведения?..

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

Сколько раз собирал Генту с этим конфигом (с незначителньными изменениями) - с 2.6.36 до текущего времени и не было проблем =]

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

Собрал ядро через genkernel, гружусь. Ругается на то, что /dev/sda2 не является рутовым разделом, задаю /dev/sdb2 - грузится. Но логиниться все равно не хочет - все тот же «gentoo.unknown.domain» и «Login incorrect».

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

Покажи пруф, где разработчики ядра гарантируют работоспособность твоей генты с тупым копированием конфига без ручной проверки?

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