Корень фс в файле-образе - реально ли это?
Arago 3 Августа, 2010 - 13:37
Здравствуйте.
Есть инсталлированная Gentoo amd64. Задолбал iowaitbug, плюс не могу настроить сканер (он просто вырубается при попытке сканить), плюс иксы жрут 100-256 метров памяти. Хочу поставить x86, но нет желания экспериментировать с разметкой диска. На диске 3 раздела -
sda1 Основной Linux своп / Solaris 2048,10 sda2 Загрузочный Основной Linux ext3 [gentoo-root] 26847,32 sda3 Основной Linux ext3 [home] 471209,85
В sda3 есть место для создания образа, хочу создать его (размером 26847,32 метра), смонтировать его и ставить на него, затем поэкспериментировать с x86, если понравится - вкачать через dd на sda2 и радоваться жизни, если нет - просто удалить его и жить дальше. Можно конечно ставить непосредственно в sda3, но уж больно криво это будет смотреться, да и риск имхо выше.
Собственно вопрос - как обьяснить ядру что корень фс в образе на другом разделе?
»
- Для комментирования войдите или зарегистрируйтесь
хм... а как вы его
хм... а как вы его монтировать собрались при загрузке системы? не могу представить. не проще ли отдельный раздел на винте сделать и на нем "тестить" ?
P.S.: можно виртуальную машину замутить, но без аппаратной поддержки (со стороны процессора) будет уныло. на x86 другие заморчки.
P.S.: Linux - это красная таблетка :-) Windows - синяя...
Виртуалка ничего не даст - уж
Виртуалка ничего не даст - уж больно косяки специфические. Сканер был настроен под Кубунтой 9.04 x86, работал лечше чем под альтернативной ос (единственное что можно потестить под виртуалкой, ибо usb), iowaitbug по идее только на amd64, а ксорг жрёт память с дровами nvidia и nouveau, которые под виртуалкой не заводятся.
Монтировать - есть идея что через initramfs смонтировать sda3 куда нить, затем смонтировать образ поверх рута, а затем снова смонтировать sda3 уже в /home/ (вот только безопасно ли это будет?). Правда в initramfs-строении я пока не силён, но думаю это не слишком сложно. Просто мне казалось что должно быть уже существующее решение...
.
Это вполне реально сделать (то есть, сам это делал).
Очень кратко выглядит таким образом:
Для этого понадобиться genkernel, на initrd есть скрипт загрузки на bash. Там можно реализовать почти всё что угодно.
Далее, как я понимаю, система будет смонтирована файлом через loop с физического раздела донора. В fstab надо указать что корень монтируется с loop0.
Разобрал initramfs от
Разобрал initramfs от genkernel, но вот обратно собрать нормально так и не смог - система с новым initramfs не загрузилась. Как правильно собирать его?
.
У меня работали следующие способы
распаковка
запаковка
Arago написал(а): iowaitbug
неа, он присутствует на всех архитектурах, к тому-же из длинного бага становится ясно что это не баг, а фича для серверных систем...
o_O Это как? Значит если
o_O
Это как? Значит если ктото решил поюзать диск, то пусть весь мир подождёт? Ну не должно же так быть...
там какието политики
там какието политики кэширования и чегото с дисками, которые оптимальные для серверов, но не для рабочих станций, хотя всё это настраивается, в последнее время там высокая активность, в этом баге https://bugzilla.kernel.org/show_bug.cgi?id=12309
Я думаю реально, но смысла
Я думаю реально, но смысла делать это нет, т.к. есть более простые варианты, например использовать sda3 в качестве корня.
Я же рассказал почему не хочу
Я же рассказал почему не хочу так делать. Ещё, возможно реализация такой загрузки ещё пригодится мне в дальнейшем.
Упс, сорри, когда первый раз
Упс, сорри, когда первый раз читал не увидел.
Какой риск? Почему криво?
Весь вопрос в цели:
1) Потесить 32битную систему - корень в sda3 - просто, быстро и надежно
2) Загрузиться с образа, на винче с целью дальнейшего использования такой схемы - ответ тоже очевиден, но требует куда больше времени
_SerEga_ написал(а): Я думаю
Тогда уж лучше sda1 ;) - а своп - временно на файл.
Но если очень хочется - можно и с луп-девайсом. Смотрите в сторону создания ЛайвЦД...