Инструменты пользователя

Инструменты сайта


linux:overall:disk

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
linux:overall:disk [2022/07/07 02:31]
admin
linux:overall:disk [2025/01/30 10:23] (текущий)
admin
Строка 3: Строка 3:
 **df -h** - смонтированные разделы в системе.\\ **df -h** - смонтированные разделы в системе.\\
 **lsblk** - список дисков и разделов.\\ **lsblk** - список дисков и разделов.\\
-**cfdisk** - работа с диском, с неразмеченной областью в т.ч.\\ 
 **fdisk -l** - расширенная информация о дисках и разделах.\\ **fdisk -l** - расширенная информация о дисках и разделах.\\
 +**blkid** - тоже инфа по дискам
 +**mount** - инфа о смонтированных носителях
  
 +**cfdisk** - работа с диском, с неразмеченной областью в т.ч.\\
 +**du -sh** - размер папок.\\
  
-===== udevadm ===== 
 **udev** - управление устройствами\\ **udev** - управление устройствами\\
 **udevadm** - собсна управление управлением устр-вами\\ **udevadm** - собсна управление управлением устр-вами\\
  
-Полная инфа по устр-ву +<code bash> 
-<code bash># udevadm info --query=all --name=/dev/sda</code>+  # список дисков с ID 
 +ls -l /dev/disk/by-id 
 + 
 +  # информация по диску (в т.ч. размер секторов) 
 +smartctl -/dev/sda 
 + 
 +lsblk -td 
 +hdparm -I /dev/sdb
  
 +  # Полная инфа по устр-ву, серийники, номера и т.д.
 +udevadm info --query=all --name=/dev/sda
 +</code>
  
  
Строка 41: Строка 53:
  
 ===== Разметка дисков ===== ===== Разметка дисков =====
-Командой **lsblk** можно просмотреть какие диски (и их разделы) подключены к системе, далее запускаем утилиту **cfdisk** с указанием нужного диска (/dev/sda например).\\+**cfdisk** работа с разделами, "write" для сохранения изменений\\ 
 +Для ntfs используется тип "Microsoft basic.. что то там"\\ 
 + 
 +Для создания ФС утилита **mkfs.ext4** или **mkntfs**, последняя ставится в пакете "ntfs-3g"\\ 
  
  
 ===== RAID массив ===== ===== RAID массив =====
 Для работы с raid массивами, в Linux есть утилита **mdadm**, ставится отдельно.\\ Для работы с raid массивами, в Linux есть утилита **mdadm**, ставится отдельно.\\
 +
  
  
Строка 57: Строка 74:
 Сборка массива (-l 1 -уровень raid; -n 2 -кол-во дисков):\\ Сборка массива (-l 1 -уровень raid; -n 2 -кол-во дисков):\\
 (рекомендуется указывать **ID дисков**, узнать можно командой **ls -l /dev/disk/by-id**) (рекомендуется указывать **ID дисков**, узнать можно командой **ls -l /dev/disk/by-id**)
-<code bash># mdadm --create --verbose /dev/dm0 -l 1 -n 2 /dev/sd{b,c}</code>+<code bash> 
 +# mdadm --create --verbose /dev/dm0 -l 1 -n 2 /dev/sd{b,c} 
 +</code>
  
 Далее, командой **lsblk** можно увидеть что в указанных дисках, появились разделы **md0**.\\ Далее, командой **lsblk** можно увидеть что в указанных дисках, появились разделы **md0**.\\
 Процесс синхронизации можно увидеть командой **cat /proc/mdstat**.\\ Процесс синхронизации можно увидеть командой **cat /proc/mdstat**.\\
 **Для сохранения** результата, необходимо внести информацию в файл **/etc/mdadm/mdadm.conf** **Для сохранения** результата, необходимо внести информацию в файл **/etc/mdadm/mdadm.conf**
-<code bash>echo "DEVICE partitions" > /etc/mdadm/mdadm.conf + 
-mdadm --detail --scan --verbose | awk '/ARRAY/ {print}' >> /etc/mdadm/mdadm.conf</code>+<code bash> 
 +echo "DEVICE partitions" > /etc/mdadm/mdadm.conf 
 +mdadm --detail --scan --verbose | awk '/ARRAY/ {print}' >> /etc/mdadm/mdadm.conf 
 +</code>
  
 Так же, создаем файловую систему, на созданном диске: **mkfs.ext4 /dev/md0** и монтируем диск, при необходимости.\\ Так же, создаем файловую систему, на созданном диске: **mkfs.ext4 /dev/md0** и монтируем диск, при необходимости.\\
 +
  
  
Строка 79: Строка 102:
   * **State** - состояние, clean - все в порядке   * **State** - состояние, clean - все в порядке
   * **Active, Working, Failed, Spare devices** - кол-во работающих, добавленных, сбойных, запасных устр-в   * **Active, Working, Failed, Spare devices** - кол-во работающих, добавленных, сбойных, запасных устр-в
 +
  
  
Строка 90: Строка 114:
 Остановка проверки: Остановка проверки:
 <code bash># echo 'idle' > /sys/block/md0/md/sync_action</code> <code bash># echo 'idle' > /sys/block/md0/md/sync_action</code>
 +
  
  
Строка 108: Строка 133:
 **Симуляция выхода из строя** диска: **Симуляция выхода из строя** диска:
 <code bash># mdadm /dev/md0 --fail /dev/sdb</code> <code bash># mdadm /dev/md0 --fail /dev/sdb</code>
 +
  
  
Строка 115: Строка 141:
 mdadm --zero-superblock /dev/sd{d,c,d} mdadm --zero-superblock /dev/sd{d,c,d}
 wipefs --all --force /dev/sd{b,c,d}</code> wipefs --all --force /dev/sd{b,c,d}</code>
 +
  
  
Строка 120: Строка 147:
 После аварийного завершения сервера, иногда не запускается ОС, из-за проблем с массивом, хз в чем там тонкости, иногда меняется название массива, => нужно изменить параметры монтирования.\\ После аварийного завершения сервера, иногда не запускается ОС, из-за проблем с массивом, хз в чем там тонкости, иногда меняется название массива, => нужно изменить параметры монтирования.\\
 Иногда не запускается сам массив, сейчас я просто остановил его командой **mdadm --stop /dev/md127**, попробовал пересобрать, но выдал ошибки, в итоге перезагрузил сервер и заработало..\\ Иногда не запускается сам массив, сейчас я просто остановил его командой **mdadm --stop /dev/md127**, попробовал пересобрать, но выдал ошибки, в итоге перезагрузил сервер и заработало..\\
 +
 +
 +
 +==== Переустановка ОС ====
 +<code bash>
 +# После переустановки, поиск созданных массивов
 +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
 +</code>
 +
 +
  
  
Строка 131: Строка 183:
  
 Для работы нужна утилита **lvm2**.\\ Для работы нужна утилита **lvm2**.\\
 +
  
  
Строка 145: Строка 198:
 Далее создаем ФС, монтируем и т.д.\\ Далее создаем ФС, монтируем и т.д.\\
 Обращение к логическому тому происходит через группу: **/dev/vg0/lv0**.\\ Обращение к логическому тому происходит через группу: **/dev/vg0/lv0**.\\
 +
  
  
 ==== Удаление ==== ==== Удаление ====
-Размонтируем + 
-<code bash>lvremove /dev/vg/lv0 +Удаление логического тома: 
-vgremove vg0 +<code bash> 
-pvremove /dev/sd{b,c}</code>+ 
 +# Сначала размонтируем том, может потребоваться перезагрузка если падает ошибка использования FS  
 +umount ... 
 + 
 +# Затем дропаем LV, указываем имя группы и имя lv 
 +lvremove /vg-name/lv-name 
 + 
 + 
 +#----- 
 +#vgremove vg0 
 +#pvremove /dev/sd{b,c}</code> 
 + 
 + 
 + 
 +==== Примеры ==== 
 + 
 +<details> 
 +<summary>:!: Добавление нового диска в пулл</summary> 
 +<code bash> 
 +# Информация об установке LVM 
 +sudo lvmdiskscan 
 + 
 +# Проверяем подключение нового диска, в данном случае "/dev/sda" 
 +sudo fdisk -l 
 + 
 +# Создаем физический том 
 +sudo pvcreate /dev/sda 
 + 
 +# Смотрим существующие группы томов 
 +sudo vgs 
 + 
 +# Расширяем группу "ubuntu-vg" на созданный физ том 
 +sudo vgextend ubuntu-vg /dev/sda 
 + 
 +# Смотрим логические тома 
 +sudo lvdisplay 
 + 
 +# Расширяем нужный логический том 
 +sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv 
 + 
 +# Теперь нужно расширить файловую систему 
 +# Смотрим какая используется (в данном случае ext4) 
 +lsblk -f 
 + 
 +# Расширяем ФС на все доступное пространство (безопасно для файлов) 
 +sudo resize2fs /dev/ubuntu-vg/ubuntu-lv 
 + 
 +   # для xfs 
 +sudo xfs_growfs /dev/ubuntu-vg/ubuntu-lv 
 + 
 + 
 +# Смотрим результат 
 +df -h 
 +</code> 
 +</details> 
 + 
 + 
  
  
linux/overall/disk.1657161078.txt.gz · Последнее изменение: 2022/07/07 02:31 — admin