====== Работа с дисками ====== **df -h** - смонтированные разделы в системе.\\ **lsblk** - список дисков и разделов.\\ **fdisk -l** - расширенная информация о дисках и разделах.\\ **blkid** - тоже инфа по дискам **mount** - инфа о смонтированных носителях **cfdisk** - работа с диском, с неразмеченной областью в т.ч.\\ **du -sh** - размер папок.\\ **udev** - управление устройствами\\ **udevadm** - собсна управление управлением устр-вами\\ # список дисков с ID ls -l /dev/disk/by-id # информация по диску (в т.ч. размер секторов) smartctl -a /dev/sda lsblk -td hdparm -I /dev/sdb # Полная инфа по устр-ву, серийники, номера и т.д. udevadm info --query=all --name=/dev/sda ===== Монтирование дисков/разделов ===== Монтировать указанный диск к ФС: # mount /dev/newdisk /desc-fold/ Размонтировать: # umount /desc-fold/ Монтирование NFS с удаленного хоста # mount host:/folder /desc-fold Автоматическое монтирование настраивается в файле **/etc/fstab**.\\ Структура записи: * **file system** - устройство (источник) для монтирования. * **mount point** - место монтирования. * **type** - тип ФС. * **options** - параметры монтирования. * **dump** - резервное копирование dump (устар). * **pass** - приоритет проверки при загрузки ОС (0- не проверять). Пример (монтирование raid массива): /dev/md0 /mnt ext4 defaults 0 0 ===== Разметка дисков ===== **cfdisk** - работа с разделами, "write" для сохранения изменений\\ Для ntfs используется тип "Microsoft basic.. что то там"\\ Для создания ФС утилита **mkfs.ext4** или **mkntfs**, последняя ставится в пакете "ntfs-3g"\\ ===== RAID массив ===== Для работы с raid массивами, в Linux есть утилита **mdadm**, ставится отдельно.\\ ==== Сборка ==== Для начала стоит проверить, при необходимости занулить суперблоки на дисках: # mdadm --zero-superblock --force /dev/sd{b,c} Далее, удалим метаданные с дисков: # wipefs --all --force /dev/sd{b,c} Сборка массива (-l 1 -уровень raid; -n 2 -кол-во дисков):\\ (рекомендуется указывать **ID дисков**, узнать можно командой **ls -l /dev/disk/by-id**) # mdadm --create --verbose /dev/dm0 -l 1 -n 2 /dev/sd{b,c} Далее, командой **lsblk** можно увидеть что в указанных дисках, появились разделы **md0**.\\ Процесс синхронизации можно увидеть командой **cat /proc/mdstat**.\\ **Для сохранения** результата, необходимо внести информацию в файл **/etc/mdadm/mdadm.conf** echo "DEVICE partitions" > /etc/mdadm/mdadm.conf mdadm --detail --scan --verbose | awk '/ARRAY/ {print}' >> /etc/mdadm/mdadm.conf Так же, создаем файловую систему, на созданном диске: **mkfs.ext4 /dev/md0** и монтируем диск, при необходимости.\\ ==== Информация о raid ==== Состояние всех raid # cat /proc/mdstat Подробная информация # mdadm -D /dev/md0 * **Version** - версия метаданных * **Creation time** - дата создания массива * **Update time** - дата последнего изменения * **State** - состояние, clean - все в порядке * **Active, Working, Failed, Spare devices** - кол-во работающих, добавленных, сбойных, запасных устр-в ==== Проверка целостности ==== Запуск проверки # echo 'check' > /sys/block/md0/md/sync_action Просмотр результата: (0- все в порядке) # cat /sys/block/md0/md/mismatch_cnt Остановка проверки: # echo 'idle' > /sys/block/md0/md/sync_action ==== Замена диска ==== Удаляем сбойный диск: # mdadm /dev/md0 --remove /dev/sdc Добавляем новый: # mdadm /dev/md0 --add /dev/sde Смотрим состояние, синхронизация должна начаться автоматически.\\ **Запасной диск**- запасным будет диск, который просто добавлен к массиву, при выходе из строя, он автоматически станет активным # mdadm /dev/md0 --add /dev/sdd Чтобы добавить диск в качестве активного, нужно после добавления, расширить массив: # mdadm -G /dev/md0 --raid-devices=3 **Симуляция выхода из строя** диска: # mdadm /dev/md0 --fail /dev/sdb ==== Удаление массива ==== umount /folder mdadm -S /dev/md0 mdadm --zero-superblock /dev/sd{d,c,d} wipefs --all --force /dev/sd{b,c,d} ==== Траблы ==== После аварийного завершения сервера, иногда не запускается ОС, из-за проблем с массивом, хз в чем там тонкости, иногда меняется название массива, => нужно изменить параметры монтирования.\\ Иногда не запускается сам массив, сейчас я просто остановил его командой **mdadm --stop /dev/md127**, попробовал пересобрать, но выдал ошибки, в итоге перезагрузил сервер и заработало..\\ ==== Переустановка ОС ==== # После переустановки, поиск созданных массивов mdadm --assemblr --scan # Тек состояние mdadm /proc/mdstat # Создайте конфиг файл для массива mdadm --detail --scan --verbose > /etc/mdadm.conf # Создайте точку монтирования mkdir /stor1 # Далее запись в /etc/fstab /dev/md127 /stor1 ext4 defaults 0 0 # Так же состояние можно посмотреть командой mdadm -D /dev/md127 ===== LVM ===== Это метод распределения пространства жесткого диска по логическим томам, размер которых, в последствии можно менять.\\ Объединить можно место с нескольких физических дисков, в общее логическое пространство, затем из этого пространства выделять логические тома.\\ Три уровня абстракции: * **PV** - физический уровень, диски или разделы. **pvcreate** * **VG** - группа томов, создается на инициализированных дисках. **vgcreate** * **LV** - логические тома, группы томов делятся на логические тома. **lvcreate** Для работы нужна утилита **lvm2**.\\ ==== Создание ==== Помечаем диски, для работы в LVM (**pvdisplay**- просмотр результата) #pvcreate /dev/sd{b,c} Создаем группу томов (**vgdisplay**- просмотр результата) # vgcreate vg0 /dev/sd{b,c} Создаем логические тома (**lvdisplay**- просмотр результата) # lvcreate -L 50G -n lv0 vg0 Далее создаем ФС, монтируем и т.д.\\ Обращение к логическому тому происходит через группу: **/dev/vg0/lv0**.\\ ==== Удаление ==== Размонтируем lvremove /dev/vg/lv0 vgremove vg0 pvremove /dev/sd{b,c} ===== Ручная разметка при установке ===== Во время установки, при ручной разметке, для загрузчика достаточно 500мб, с ФС ext2 т.к. она не журналируемая, так же, можно создать раздел подкачки, указав соответствующий тип раздела.\\ Первые три раздела можно делать **первичными**, остальные логическими.\\ Два варианта из-за специфики **MBR**..\\