[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: resize / on working system



Hello!

On Mon, May 21, 2007 at 06:38:03PM -0400, Nicholas wrote:
> Alexander Burnos wrote:
> >А реально ли изменить размер /, при условии что это единственный раздел
> >на всей системе и доступа к консоли нет? Fs: ext3.
> 
> Недавно пытались сделать тоже самое.
> Тоже на свап новую систему установили и т.д.
> Но при перезагрузке система зависла и пришлось делать ресет (удаленно), 
>  что ситуацию не спасло - переставить ОС пришлось сотрудникам колокейшина.

Увы, похоже иду по вашему пути..

> Человек который пытался этот процесс реализовать читает эту рассылку, но 
> почему то не высказывается в этом топике, хотя, наверняка, есть что 
> рассказать :) Например о сложностях анализа логов некоректной загрузки 
> (основная сложность - их нет).
> 
> Справедливости ради надо отметить, что заменялось ядро и проблема могла 
> быть в нем.
> 
> Творческих вам успехов.
> Если попробуете - пожалуйста расскажите о результате (любом).

Итак, докладываю:

Есть (была? :) машина со следующей разбивкой (повторяюсь):

   Device Boot      Start         End      Blocks   Id  System                                                                              
/dev/sda1   *           1       19127   153637596   83  Linux
/dev/sda2           19128       19457     2650725    5  Extended
/dev/sda5           19128       19457     2650693+  82  Linux swap / Solaris

/dev/sda1 - /
/dev/sda5 - swap
debian etch, 2.6.18-4-686 стандартное ядро.

Задача: уменьшить / до нескольких гиг, создать на освободившемся месте
другие разделы.

Что было сделано:

I этап:

1. swapoff /dev/sda5 && mkfs.ext3 /dev/sda5
2. mkdir /etch-root && mount /dev/sda5 /etch-root
3. debootstrap в /etch-root
4. chroot в /etch-root
5. настроена сеть, нарисован fstab, поднят ssh, создан юзер
6. выход из chroot, правка grub'а с fallback'ом на основную
систему.
7. grub-set-default на "новую" систему в /dev/sda5

Результат первого этапа:
2 бутабельные системы. Грузимся, попадаем в / == /dev/sda5,
перезагружаемся, попадаем в / == /dev/sda1. Надо заметить, что есть
возможность самостоятельного удаленного хардварного ребута.

II этап:
1. Бутаемся в /dev/sda5 систему.
2. e2fsck -f /dev/sda1
3. resize2fs /dev/sda1 5G
4. cfdisk в котором сначала удалил /dev/sda1 партишн, а потом создал
его, но меньшего размера. На всякий случай сделал его чуть больше 5G,
чтобы не попасть на границу новой уменьшенной fs.
5. Бутаюсь, в надежде попасть в "основную" систему но с уменьшенным
корнем.

Результат второго этапа:
Мертвая система, на ребуты не реагирует.

Жду ответа от саппорта в данный момент, что они там на экране увидят.

ИМХО, вероятные причины провала:

1. Может быть не стоило делать партишн больше размера fs? Может нужно
было байт-в-байт размер сделать?
2. Возможно cfdisk, при удалении первого партишна, потер и mbr? Или grub
как-то по-другому стал к этому все относиться? Возможно стоило
переинициализировать grub (к этому варианту больше всего склоняюсь).

Ну и, перед тем, как бутался уже в урезанную основную систему - неплохо
было бы сделать fallback на мою "новую" систему в /dev/sda5, чтобы в
случае чего можно было обратно в нее откатиться хардварным ресетом (при
условии, что grub все же живой остался).

Вот такая вот история..

-- 
WBR,
Alexander Burnos



Reply to: