Добавление нового диска. Linux & LVM & BTRFS

Добавление нового диска. Linux & LVM & BTRFS


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

Описание. На компьютере с Fedora 18 (Gnome 3) стоял HDD 80 Gb. Кроме всего прочего (Windows) на диске присутствовал LVM, где на нескольких логических томах (содержащих /usr и /var) заканчивалось место. Также в LVM входил том, содержащий /home - его-то и решено было переместить на новый HDD (уже вне LVM). Всё сделано без использования загрузочных дисков, на живой рабочей системе.

Новый HDD. Вставляем новый диск. Через программы открываем Стандартные -> Диски. Без консоли разбиваем форматируем по желанию новый диск. Я разбил на два раздела, один из которых отформатировал в ext4 для переноса туда /home.

Перенос /home на новый диск. По "нагугленным" подсказкам делал так.
Сначала создаём директорию для переноса /home и монтируем новый диск (в моём случае это sda1) в эту директорию. В консоли:

sudo mkdir /mnt/newhome
sudo mount -t ext4 /dev/sda1 /mnt/newhome


Затем в подготовленное место копируем весь /home:

cd /home/
find . -depth -print0 | sudo cpio --null --sparse -pvd /mnt/newhome/


Это копирование сохранило все права и атрибуты файлов. После копирования, выясняем UUID нового раздела, куда скопировали /home:

ls - l /dev/disk/by-uuid

На новой вкладке консоли (или в отдельном окне консоли) выполняем:

sudo nano /etc/fstab

Ищем в этом файле строку, где прописано, как монтировать при загрузке /home и комментируем эту строку (ставим впереди #). Затем копируем целиком эту строку (без #) и прописываем загрузочное устройство через UUID, который копируем из соседней вкладки консоли. Также обращаем внимание на файловую систему. В моём случае /home переехал из логического тома LVM с btrfs на новый раздел sda1 с ext4. Содержимое моего fstab:
было:
/dev/mapper/vg_tc525-LogVol05 /home btrfs defaults 1 2
стало:
#/dev/mapper/vg_tc525-LogVol05 /home btrfs defaults 1 2
UUID=98c8677e-0e32-4f2b-b276-481132656a13 /home ext4 defaults 1 2


После изменений сохраняем fstab (в nano - Ctrl+X и затем Y (согласны сохранить изменения) и Enter). Перезагружаемся. Если всё было правильно прописано, то загрузка пройдёт уже с новым /home.

Удаляем раздел со старым /home. Через ту же утилиту "Диски" находим нужный раздел (у меня он был не примонтиован после перезагрузки) и удаляем его (одноимённой кнопкой).

Удаляем логический том LVM. У меня в системе установлены утилита system-config-lvm. Я открываю её через программы Прочие -> Управление логическими томами. Тут отыскиваем опустевший и не нужный более логический том, выделяем его и внизу нажимаем кнопку "Удалить логический том". В результате образуется не задействованное пространство, которое мы задействуем для увеличения оставшихся логических томов LVM.

Увеличиваем размер логических томов LVM за счёт свободного пространства в группе томов. В консоли вводим необходимые команды для увеличения существующих томов. В моём случае я прибавил в логическому тому с /var 5 Gb и логическому тому с /usr всё оставшееся свободное пространство:

sudo lvextend -L+5G /dev/vg_tc525/LogVol02
sudo lvextend -l +100FREE /dev/vg_tc525/LogVol03

Увеличиваем размер btrfs на весь размер логического тома LVM. После расширения логических томов ещё надо расширить файловую систему на всё пространство. В моём случае файловая система btrfs. Без всяких перезагрузок в root или Live CD, прямо в работающей системе я вводил в консоли:

sudo btrfsctl -r +5g /var
sudo btrfsctl -r max /usr

Проверяем результат. Открываем через программы Системные -> Системный монитор / Файловые системы

или в консоли:

df -h

Будет видно, что место прибавилось! Вот так не сложно можно управиться с переносом /home на новый диск, редактированием логических томов LVM.

Комментарии

Популярные сообщения из этого блога

Пропорциональное распределение суммы

Битрикс: своя геолокация

Bitrix24 API - разбор демо приложения третьего типа