Nov
29
Разделяй и властвуй
22:34Мой корневой раздел почти заполнен. Мне нужно больше места, и у меня есть свободный раздел, куда я могу положить, скажем, /usr/lib. Но как это сделать?
Linux позволяет монтировать отдельные разделы где угодно под /, упрощая использование отдельных разделов для каждой части Вашей системы. Самая хитрая часть процесса – перенос данных из оригинальной файловой системы на новую. Если Вы не используете отдельный раздел под /home, я очень рекомендую сделать это, поскольку отделение /home от остальной файловой системы имеет несколько преимуществ. Что бы Вы ни делали, сделайте резервные копии. Если Вы удалите что-то нужное, то будете рады, что послушались меня.
Копирование данных, особенно системных файлов, на живой системе – рискованное занятие, поэтому загрузитесь с LiveCD, например, с KNOPPIX. Я подразумеваю, что Ваш текущий системный раздел – /dev/hda1, а /home Вы будете перемещать на /dev/hda2. Внесите соответствующие изменения, в соответствии с Вашей системой.
Первый шаг – запуск QtParted, разметка и форматирование раздела. Теперь откройте терминал и выполните следующие команды:
su
mount /dev/hda1 /mnt/hda1
mount /dev/hda2 /mnt/hda2
rsync -avx /mnt/hda1/home/ /mnt/hda2/
Первая строка дает привилегии суперпользователя, следующие две монтируют старый и новый разделы, последняя – копирует все из старой директории home в новый раздел. Можно было бы использовать cp или tar для копирования файлов, но по-моему, самый надежный метод создания копии – rsync, если нужно сохранить временные отметки и права доступа.
Теперь добавьте строку, относящуюся к новому разделу, в /etc/fstab. Knoppix поставляется с редактором Nano:
nano /mnt/hda1/etc/fstab
Добавьте что-то вроде
/dev/hda2 /home ext3 defaults 0 0
Это если Вы отформатировали раздел в файловой системе ext3, как это делает по умолчанию QtParted. Если Вы используете ReiserFS, замените ext3 на reiserfs.
Если Вы загрузитесь в систему и выполните df -h в терминале, то увидите, что /home (или любая другая директория, которую Вы переносили на другой раздел), теперь находится на отдельном разделе. «Но», вскрикнете Вы в монитор, «мой корневой раздел все еще заполнен!»
Это потому, что Вы скопировали данные на другой раздел, и они теперь в находятся в обоих местах. Так и задумано в случае неверных действий Вы сможете все откатить. Данные все еще здесь, но они невидимы, поскольку новый раздел смонтирован в /home, и старые данные скрыты. Можете загрузиться в Knoppix и удалить данные оттуда, как только убедитесь, что все в порядке, но вот небольшой трюк для избежания перезагрузки:
mkdir /mnt/tmp
mount --bind / /mnt/tmp
rm -fr /mnt/tmp/home/*
Он позволит Вам увидеть и удалить файлы в старой домашней директории. Убедитесь, что Вы удалили только содержимое, а не саму директорию. Она нужна, чтобы смонтировать новый раздел. Можете сделать то же самое с /usr/lib, если захотите, однако /home – лучший вариант, если он еще не на отдельном разделе (в противном случае обдумайте перемещение /usr/local). Все зависит от того, сколько места Вы хотите освободить; поможет информация о том, сколько места занимает каждая директория, от утилиты FileLight, доступной на www.methylblue.com/filelight и включенной в репозитории многих дистрибутивов.
Можете также использовать LVM для комбинирования дисков, как описано в LXF83. НБ
(с) скомунижжено, ссылка утеряна