LINUX.ORG.RU

fsck vs pre mount /usr

 , ,


0

2

В связи с тем, что у разработчиков udev случился поттеринг головного мозга, пришлось городить костыли в виде монтирования /usr средствами initramfs. Все хорошо, оно работает. Вот только fsck теперь не может прочекать /usr, т.к. оно смонтировано. Как починить?

★★★★★

пришлось городить костыли в виде монтирования /usr средствами initramfs

монтируй в readonly, если ты поддерживаешь такие дистрибутивы.

sdio ★★★★★ ()

Я никак понять не могу, зачем /usr выносить на отдельный раздел? Я всё время выношу /usr/local, но /usr остаётся вместе с системой.

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

Если ты не можешь понять, это не значит что это никому не нужно.

sdio ★★★★★ ()

у разработчиков udev

Предполагаю, что максимум, что они сделали, это назло всем перенесли либы и бинарники из / в /usr. Это поправляемо.

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

Я написал и прочее, а именно /sbin и /usr/sbin, /lib и /usr/lib, /lib64 и /usr/lib64, /bin и /usr/bin, мне просто было лень писать. Одним словом то, что предложил Поттеринг.

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

пока busybox не будет также располагаться на /usr.

разработчики бокса болт клали на высеры поттеринга.
до тех пор, пока из него не выпилят ash (то есть никогда), он будет сидеть в /sbin

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

Не знаю, достали некоторые с наездами на Дебиан. А если во всех дистрибутивах выпилят /bin, /sbin, /... в пользу /usr/..., то видимо ВСЯ минимальная система будет впихнута в initramfs

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

Alan has explained that LVM2 actually is able to run under mdev, and he's investigating if there's any LVM2 feature that is not available.

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

Кто на ваш Debian наезжает ? Вы сами наезжаете на всех кто хоть что-то сказал не так по вашему мнению по отношению к Debian.

Я лишь констатировал факт о том, что разработчики Debian так же приняли решение о слиянии /bin, /sbin, /lib, /lib64 с /usr/{...}.

то видимо ВСЯ минимальная система

Собственно сейчас весь функционал начальной подготовки к запуску системы, монтирования корневого раздела, его проверки и так в initrd, в гентушном initrd, генерируемом genkernel уже добавили так же монтирование /usr., а дальше стандартный switch_root.

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

пока busybox не будет также располагаться на /usr.

Думаешь, что разработчики busybox'а могут заразиться вирусом поттеринга?

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

До ближайшего обновления, а учитывая что это гента, долго ждать не придется.

если тупо руками, но вроде в генте свои ебилды держать можно

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

Пока не сложно, но там не только libudev нужно переносить, а ещё /usr/sbin/udevadm и /usr/sbin/kmod, /usr/lib/libkmod*. в /lib и /sbin. Т.к. новый udev использует kmod.

Вот ссылки в bugzilla`у, я предложил патчи для udev-182.ebuild и kmod-7.ebuild, но их отвергли т.к. это контрпродкутивно, по отношению к слиянию /bin, /sbin, /lib и прочего с /usr, отверг мантейнер udev.

kmod-7.ebuild.patch:
https://bugs.gentoo.org/attachment.cgi?id=307085

udev-182-r2.ebuild.patch:
https://bugs.gentoo.org/attachment.cgi?id=307083

udev-182-separate_usr.patch:
https://bugs.gentoo.org/attachment.cgi?id=307073

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

для любителей извращений есть EXTRA_ECONF

echo 'EXTRA_ECONF="--prefix /"' >> /etc/portapge/package.env/sys-apps/kmod

сам не пробовал, но причин не работать нет.

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

William Hubbs 2012-03-30 22:41:25 UTC (In reply to comment #11)

Hopefully mdev will become its own project that aims to fill that gap for

people with simple setups, but who knows right now. It itself is a bit of a

hack, but it works and it negates the need for an initramfs until you start

adding in things like LVM, encryption, etc.

The other concern with this mdev setup is that busybox will eventually migrate to /usr and when it does this will not work.

Ответ одного из разработчиков Gentoo, вроде мантейнер udev.

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

Замена старых утилит module-init-tools, которые содержат modprobe, lsmod, rmmod, depmod, insmod, modinfo. На библиотеку libkmod, с которой проще работать приложениям.

kostik87 ★★★★★ ()

Проверять /usr (как и /) должен initramfs. С помощью какого-то файла-флага в /run он же должен сообщать основной системе, что второй раз проверять / и /usr не надо.

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

На библиотеку libkmod, с которой проще работать приложениям.

Разве работа с модулями не производится посредством сисколов? Или они туда забабахали dbus и прочие прелести?

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

С помощью какого-то файла-флага в /run

Костыли.

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

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

2. ты проверил, что изменене ебилдов kmod не ломает ничего от него зависящее?

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

Проверял всё, кроме freebsd-sources, т.к. слишком много надо в системе перелопатить.

Единственные проблемы были у udev, т.к. нужно преобпределять переменные окуржения KMOD_LIBS и KMOD_CFLAGS, поэтому предложил патч на confgiure для udev-182, но возможно можно обойтись и без патча. Всё остальное прекрасно собирается.

PS: у меня kmod в /bin.

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

Пруф дать не могу, не сохранил адрес, было вроде на opennet, месяц-два назад. Понимаю, что кажется голословным, но ничего более предложить не могу.

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

От идеи выкинуть отдельный /usr они отказались в 2009 (http://lists.debian.org/debian-devel/2009/05/msg00935.html), а обсуждение переноса /bin и /sbin в /usr прошлой осенью успешно заглохло (http://thread.gmane.org/gmane.linux.debian.devel.general/165785). Никаких других обсуждений и новостей с того времени я не помню.

opennet

Две новости про федорино горе.

GotF ★★★★★ ()

Та же фигня.

Только у меня в initramfs определяется устройство, соотвествующее /usr. И правил sysinit уже на остновной системе.

И с проверкой в ro тоже были проблемы: такое ощущение, что ro-костыль есть только для /.

Вроде порядок такой: 1) хуки экспортируют root, 2) init в образе его проверяет fsck (у меня это в init_functions) и монтирует в ro, 3) sysinit на всякий случай делает remoun ro ->fsck -A ... -> монтирует.

Вроде наименее костыльный способ - поправить init в образе (но это еще глубже, чем хуки). Сейчас у меня страшный костыль: fsck -A и монтирование в sysinit перемещено выше, usr-либы для mount - скопированы в /lib.

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