📙
Linux
  • Sys Admin Linux
  • Системное администрирование
    • Базовые Знания
      • Введение
      • Структура Linux и команды
        • Сеть
          • Файлы конфигурации сети
          • Команды и Утилиты Сети
            • Настройка маршрутов в Linux
        • Команды для управления пользователями
        • Команды для управления системой
        • команды линукс для работы с разделами
        • Стандартные каталоги
        • Команды для работы с каталогами
        • Команды для работы с файлами
      • Потоки, Логические команды, Процессы, Сеть
      • Права Доступа
      • Атрибуты файла. Запрет изменения файла
      • Bash, сценарии
      • Стандартные программы и их команды( Путь к списку репозиториев)
      • Подключение по SSH
      • Untitled
      • Untitled
    • Основная Часть
      • Kernel Update
      • Работа с Raid 5
      • LVM
      • ZFS
      • NFS
      • Загрузка Системы
  • Анонимность в Сети
    • Настройка VPN-TOR-VPN
    • Настройка своего собственного VPN
      • Центр Сертификации (ЦС)
      • Шаг 1 Начало
      • Шаг 2 Подписание сертификата
      • Шаг 3 Повышение безопасности
      • Шаг 4 Клиент
      • Шаг 5 Настройка OpenVPN
      • Untitled
      • Untitled
      • Untitled
      • Untitled
      • Untitled
      • Untitled
      • Untitled
      • Untitled
      • Untitled
      • Untitled
      • Untitled
      • Untitled
    • Смена MAC адреса
Powered by GitBook
On this page

Was this helpful?

  1. Системное администрирование
  2. Основная Часть

LVM

lvm work

На имеющемся образе centos/7 - v. 1804.21 (приложенный Vagrantfile)

Уменьшить том под / до 8G Выделить том под /home Выделить том под /var - сделать в mirror /home - сделать том для снапшотов Прописать монтирование в fstab. Попробовать с разными опциями и разными файловыми системами ( на выбор)

Работа со снапшотами:- сгенерить файлы в /home/

снять снапшот удалить часть файлов восстановится со снапшота Залоггировать работу можно с помощью утилиты script

Разворачиваем Vagrantfile, подключаемся к машине lvm

    vagrant up
    vagrant ssh

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

    sudo yum install xfsdump vim

Смотрим список дисков и их разделов сразу после старта vm

    lsblk

Подготовим временный том для / раздела

    pvcreate /dev/sdb
    vgcreate vg_root /dev/sdb
    lvcreate -n lv_root -l +100%FREE /dev/vg_root

Создадим на нем файловую систему и смонтируем его, чтобы перенести туда данные:

    mkfs.xfs /dev/vg_root/lv_root
    mount /dev/vg_root/lv_root /mnt

Этой командой скопируем все данные с / раздела в /mnt - итог вывода на скрине:

    xfsdump -J - /dev/VolGroup00/LogVol00 | xfsrestore -J - /mnt

Проверим, что скопировалось

    ls /mnt

Переконфигурируем grub для того, чтобы при старте перейти в новый / Сымитируем текущий root -> сделаем в него chroot и обновим grub:

    for i in /proc/ /sys/ /dev/ /run/ /boot/; do mount --bind $i /mnt/$i; done
    chroot /mnt/
    grub2-mkconfig -o /boot/grub2/grub.cfg

Обновим образ initrd.

    cd /boot ; for i in `ls initramfs-*img`; do dracut -v $i `echo $i|sed "s/initramfs-//g; s/.img//g"` --force; done

Чтобы при загрузке был смонтирован нужный root: в файле /boot/grub2/grub.cfg заменим rd.lvm.lv=VolGroup00/LogVol00 на rd.lvm.lv=vg_root/lv_root. Для редактирования я использовала vim, установленный в самом начале.

    nano /etc/default/grub

После изменений - обновила grub

    grub2-mkconfig -o /boot/grub2/grub.cfg

Выход, перезагрузка. После подключения можно проверить, что успешно загрузились с новым рут томом

    lsblk

Теперь изменяем размер старой VG и возвращаем на него рут. Для этого удаляем старый LV размеров в 40G и создаем новый на 8G:

    lvremove /dev/VolGroup00/LogVol00
    lvcreate -n VolGroup00/LogVol00 -L 8G /dev/VolGroup00

Создаём файловую систему

    mkfs.xfs /dev/VolGroup00/LogVol00

Монтируем файловую систему, копируем данные

    mount /dev/VolGroup00/LogVol00 /mnt
    xfsdump -J - /dev/vg_root/lv_root | xfsrestore -J - /mnt

Переконфигурируем grub, за исключением правки /etc/grub2/grub.cfg

    for i in /proc/ /sys/ /dev/ /run/ /boot/; do mount --bind $i /mnt/$i; done
    chroot /mnt/
    grub2-mkconfig -o /boot/grub2/grub.cfg
    cd /boot ; for i in `ls initramfs-*img`; do dracut -v $i `echo $i|sed "s/initramfs-//g; s/.img//g"` --force; done

Пока не перезагружаемся и не выходим из под chroot - мы можем заодно перенести /var На свободных дисках создаем зеркало:

    pvcreate /dev/sdc /dev/sdd
    vgcreate vg_var /dev/sdc /dev/sdd
    lvcreate -L 950M -m1 -n lv_var vg_var

Создаем на нем ФС и перемещаем туда /var:

    mkfs.ext4 /dev/vg_var/lv_var
    mount /dev/vg_var/lv_var /mnt
    cp -aR /var/* /mnt/      # rsync -avHPSAX /var/ /mnt/

На всякий случай сохраняем содержимое старого var:

    mkdir /tmp/oldvar && mv /var/* /tmp/oldvar

Монтируем новый var в каталог /var:

    umount /mnt
    mount /dev/vg_var/lv_var /var

Правим fstab для автоматического монтирования /var:

    echo "`blkid | grep var: | awk '{print $2}'` /var ext4 defaults 0 0" >> /etc/fstab

Внесём правки в grub, заменив rd.lvm.lv=vg_root/lv_root на rd.lvm.lv=VolGroup00/LogVol00

    grub2-mkconfig -o /boot/grub2/grub.cfg
    nano /etc/default/grub

После изменений - обновим grub

    grub2-mkconfig -o /boot/grub2/grub.cfg

Перезагружаемся в новый (уменьшенный root), удаляем временную Volume Group:

    lvremove /dev/vg_root/lv_root
    vgremove /dev/vg_root
    pvremove /dev/sdb

Выделяем том под /home по тому же принципу что делали для /var:

    lvcreate -n LogVol_Home -L 2G /dev/VolGroup00 
    mkfs.xfs /dev/VolGroup00/LogVol_Home
    mount /dev/VolGroup00/LogVol_Home /mnt/
    cp -aR /home/* /mnt/
    rm -rf /home/*
    umount /mnt
    mount /dev/VolGroup00/LogVol_Home /home/

Правим fstab для автоматического монтирования /home

    echo "`blkid | grep Home | awk '{print $2}'` /home xfs defaults 0 0" >> /etc/fstab

Сгенерируем файлы в /home/:

    touch /home/file{1..20}

Снять снапшот:

    lvcreate -L 100MB -s -n home_snap /dev/VolGroup00/LogVol_Home

Удалить часть файлов:

    rm -f /home/file{11..20}

Процесс восстановления со снапшота:

    lvconvert --merge /dev/VolGroup00/home_snap
    mount /home

Выход, перезагрузка, проверяем, что всё в норме lsblk

PreviousРабота с Raid 5NextZFS

Last updated 5 years ago

Was this helpful?