Шпаргалка по PowerShell / Краткий справочник
https://gist.github.com/pcgeek86/336e08d1a09e3dd1a8f0a30a9fe61c8a
https://gist.github.com/pcgeek86/336e08d1a09e3dd1a8f0a30a9fe61c8a
❤2
Сохраняем вывод команды Top в файл
Поскольку я не использовал опцию delay, приведенная ниже команда top перенаправит вывод команды top за одну итерацию в файл.
Сохранение вывода команды top с более чем одной итерацией из 5 итераций
Обычно программа работает непрерывно с задержкой в 2 секунды, и вы можете изменить это значение, добавив в верхнюю команду значение ‘-d’, как показано ниже:
Как захватить вывод команды top в файл каждые 5 минут в течение часа
Система создает отдельный файл каждые 5 минут, который поможет вам определить список процессов, которые потребляли больше CPU и памяти в системе.
Добавляем следующий cronjob, который будет выполняться с 5 до 6 утра каждые 5 минут в течение часа.
Где
-n : Задает максимальное количество итераций.
-b : Работа в пакетном режиме (Запуск команды top в пакетном режиме для перенаправления вывода в другие программы или в файл)
-d : Интервал задержки (Задает задержку между обновлениями экрана)
Собираем вывод в один файл, используйте следующий cronjob
Cronjob будет выполняться с 9 до 10 утра каждые 5 минут в течение часа и добавлять результаты в один файл.
Записываем вывод команды top в файл каждые 5 минут в течение получаса
Добавляем следующий cronjob, который будет запускаться каждые 5 минут с 13:30 до 14:00 в течение получаса.
Поскольку я не использовал опцию delay, приведенная ниже команда top перенаправит вывод команды top за одну итерацию в файл.
top -b -n 1 > /home/i_odmin/backup/output.txt
Сохранение вывода команды top с более чем одной итерацией из 5 итераций
Обычно программа работает непрерывно с задержкой в 2 секунды, и вы можете изменить это значение, добавив в верхнюю команду значение ‘-d’, как показано ниже:
top -n 5 -d 4 -b >/backup/output_1.txt
Как захватить вывод команды top в файл каждые 5 минут в течение часа
Система создает отдельный файл каждые 5 минут, который поможет вам определить список процессов, которые потребляли больше CPU и памяти в системе.
Добавляем следующий cronjob, который будет выполняться с 5 до 6 утра каждые 5 минут в течение часа.
Где
-n : Задает максимальное количество итераций.
-b : Работа в пакетном режиме (Запуск команды top в пакетном режиме для перенаправления вывода в другие программы или в файл)
-d : Интервал задержки (Задает задержку между обновлениями экрана)
0-59/5 5 * * * top -n 10 -d 4 -b > /home/i_odmin/backup/top_out-`date +\%Y\%m\%d\%H\%M\%S`.txt
Собираем вывод в один файл, используйте следующий cronjob
Cronjob будет выполняться с 9 до 10 утра каждые 5 минут в течение часа и добавлять результаты в один файл.
0-59/5 9 * * * top -b -n5 -d 5 >>/home/i_odmin/backup/output.txt
Записываем вывод команды top в файл каждые 5 минут в течение получаса
Добавляем следующий cronjob, который будет запускаться каждые 5 минут с 13:30 до 14:00 в течение получаса.
30-59/5 13 * * * top -n 10 -d 4 -b > /home/i_odmin/backup/top_out-`date +\%Y\%m\%d\%H\%M\%S`.txt
❤2👍1
❗️Большая база заметок о командах PowerShell на русском языке
Help, Object, Regex, DataType, Bit, Files, Credential, WinEvent, Firewall, Defender, WindowsUpdate, DISM, Scheduled, Network, Shutdown, LocalAccounts, SMB, ActiveDirectory, repadmin, dcdiag, ntdsutil, GPO, ServerManager, DNS, DHCP, DFS, StorageReplica, Package-Manager, PS2EXE, NSSM, Jobs, SMTP, Hyper-V, VMWare/PowerCLI, Exchange/EMShell, TrueNAS, Veeam, REST API, Telegram, Pode, Selenium, IE, COM, dotNET, Console API, Drawing, ObjectEvent, Sockets, Excel, CSV, XML, JSON, YAML, HTML, SQLite, MySQL, MSSQL, InfluxDB, Telegraf, Elasticsearch, CData, ODBC, PostgreSQL, WMI, Regedit, Performance, SNMP, Zabbix, pki, OpenSSL, OpenVPN, Route, NAT, WireGuard, VpnClient, Proxy, OpenSSH, WinRM, DSC, Git, Ansible.
https://github.com/Lifailon/PS-Commands
Help, Object, Regex, DataType, Bit, Files, Credential, WinEvent, Firewall, Defender, WindowsUpdate, DISM, Scheduled, Network, Shutdown, LocalAccounts, SMB, ActiveDirectory, repadmin, dcdiag, ntdsutil, GPO, ServerManager, DNS, DHCP, DFS, StorageReplica, Package-Manager, PS2EXE, NSSM, Jobs, SMTP, Hyper-V, VMWare/PowerCLI, Exchange/EMShell, TrueNAS, Veeam, REST API, Telegram, Pode, Selenium, IE, COM, dotNET, Console API, Drawing, ObjectEvent, Sockets, Excel, CSV, XML, JSON, YAML, HTML, SQLite, MySQL, MSSQL, InfluxDB, Telegraf, Elasticsearch, CData, ODBC, PostgreSQL, WMI, Regedit, Performance, SNMP, Zabbix, pki, OpenSSL, OpenVPN, Route, NAT, WireGuard, VpnClient, Proxy, OpenSSH, WinRM, DSC, Git, Ansible.
https://github.com/Lifailon/PS-Commands
👍2❤1🔥1
📌 Bash скрипт для поиска больших файлов и уведомление админа
1. Находит файлы больше заданного порога (в мегабайтах).
2. Генерирует отчёт и отправляет уведомление администратору (например, на почту или в лог).
• Скрипт:
• Описание работы
1. THRESHOLD — порог размера в мегабайтах, выше которого файл считается «большим».
2. DIR — директория, где ищем большие файлы (по умолчанию
3. Команда
▪️
▪️
▪️
4. Результат пишется в временный файл
5. Проверка
▪️ Если отчёт непустой (
▪️ В противном случае выводим сообщение об отсутствии «тяжёлых» файлов.
6. Логируем факт запуска в
• Дополнительные улучшения
▪️ Регулярные выражения: можно искать по шаблону, например, только логи с ротацией:
Здесь
▪️ Cron-задача: чтобы проверять раз в день, добавьте в
Это запустит скрипт каждый день в 8:00 утра и сразу уведомит вас, если что-то «не так».
1. Находит файлы больше заданного порога (в мегабайтах).
2. Генерирует отчёт и отправляет уведомление администратору (например, на почту или в лог).
• Скрипт:
check_large_files.sh
#!/usr/bin/env bash
# --------------------------------------------
# Скрипт для поиска «тяжёлых» файлов и уведомления
# Автор @i_odmin_book
# --------------------------------------------
# Порог размера в мегабайтах (можно изменить по-своему)
THRESHOLD=100
# Директория для сканирования (можно указать любую)
DIR="/var/log"
# Файл для временного отчёта
REPORT="/tmp/large_files_$(date +%Y%m%d_%H%M%S).txt"
# Адрес почты администратора (пример)
ADMIN_EMAIL="admin@example.com"
# Найти файлы больше порога и сохранить в отчёт
echo -e "🔎 Поиск файлов > ${THRESHOLD}M в директории: ${DIR}\n" > "$REPORT"
find "$DIR" -type f -size +"${THRESHOLD}"M -printf "%p (%s bytes)\n" >> "$REPORT"
# Если отчёт не пустой, отправляем уведомление
if [[ -s "$REPORT" ]]; then
echo -e "📬 Отправляем отчёт администратору: ${ADMIN_EMAIL}"
mail -s "Отчёт: большие файлы на $(hostname)" "$ADMIN_EMAIL" < "$REPORT"
else
echo "✅ Файлов больше ${THRESHOLD}M не найдено."
fi
# Дополнительно: можно логировать в файл
LOGFILE="/var/log/check_large_files.log"
echo "$(date +'%Y-%m-%d %H:%M:%S') - Проверка завершена. Отчёт: $REPORT" >> "$LOGFILE"
• Описание работы
1. THRESHOLD — порог размера в мегабайтах, выше которого файл считается «большим».
2. DIR — директория, где ищем большие файлы (по умолчанию
/var/log
, но можно изменить).3. Команда
find "$DIR" -type f -size +"${THRESHOLD}"M -printf "%p (%s bytes)\n"
:▪️
-type f
— только файлы.▪️
-size +<число>M
— размер больше заданного числа мегабайт.▪️
-printf "%p (%s bytes)\n"
— выводим полный путь и точный размер в байтах.4. Результат пишется в временный файл
${REPORT}
.5. Проверка
if [[ -s "$REPORT" ]]; then … fi
:▪️ Если отчёт непустой (
-s
), отправляем его на почту с помощью mail
(или любую другую команду уведомления).▪️ В противном случае выводим сообщение об отсутствии «тяжёлых» файлов.
6. Логируем факт запуска в
/var/log/check_large_files.log
.• Дополнительные улучшения
▪️ Регулярные выражения: можно искать по шаблону, например, только логи с ротацией:
find "$DIR" -regextype posix-extended -regex ".*/.*\.log\.[0-9]+" -size +"${THRESHOLD}"M -printf "%p (%s bytes)\n"
Здесь
-regex
найдёт файлы вроде syslog.1
, auth.log.2
, и игнорирует обычные *.log
.▪️ Cron-задача: чтобы проверять раз в день, добавьте в
crontab -e
:
0 8 * * * /usr/local/bin/check_large_files.sh
Это запустит скрипт каждый день в 8:00 утра и сразу уведомит вас, если что-то «не так».
❤4👍1🔥1
Pipeline инфраструктуры (Infra Pipeline)
Этот workflow описывает сквозной CI/CD-pipeline для сборки и деплоя инфраструктуры, включая quality gates (детекторы и оценку рисков).
Ветвление (Branching)
Рекомендуется создавать короткоживущие feature-ветки (локальные копии основной ветки trunk/main). В них выполняются изолированные изменения. На локальную ветку нет жёстких ограничений, но вы как разработчик обязаны регулярно синхронизировать её с основной (через rebase или merge), чтобы избежать merge conflicts.
Основная ветка (mainline/trunk)
Mainline (или trunk) служит для сборки и публикации deployable артефактов. Любой merge в неё может автоматически попасть в staging или production. Поэтому ветка должна быть постоянно в deployable-состоянии. Для этого в CI/CD pipeline настраиваются quality gates: статический анализ кода, unit- и интеграционные тесты, security scans, оценка рисков . Trunk остаётся locked до прохождения всех проверок и подтверждения безопасности изменения.
https://medium.com/@tusharmurudkar/devops-infrastructure-pipeline-beab47e7b876
Этот workflow описывает сквозной CI/CD-pipeline для сборки и деплоя инфраструктуры, включая quality gates (детекторы и оценку рисков).
Ветвление (Branching)
Рекомендуется создавать короткоживущие feature-ветки (локальные копии основной ветки trunk/main). В них выполняются изолированные изменения. На локальную ветку нет жёстких ограничений, но вы как разработчик обязаны регулярно синхронизировать её с основной (через rebase или merge), чтобы избежать merge conflicts.
Основная ветка (mainline/trunk)
Mainline (или trunk) служит для сборки и публикации deployable артефактов. Любой merge в неё может автоматически попасть в staging или production. Поэтому ветка должна быть постоянно в deployable-состоянии. Для этого в CI/CD pipeline настраиваются quality gates: статический анализ кода, unit- и интеграционные тесты, security scans, оценка рисков . Trunk остаётся locked до прохождения всех проверок и подтверждения безопасности изменения.
https://medium.com/@tusharmurudkar/devops-infrastructure-pipeline-beab47e7b876
❤3👍2🔥1
Prometheus и его хранилище: Архитектура, проблемы и решения
Эта серия из двух статей посвящена мониторингу. В первой части рассказывается о накоплении множества различных показателей в одном месте, обработке разрешений для различных аспектов этих показателей и хранении больших объемов данных. Во второй части мы сосредоточимся на выборе систем мониторинга, основываясь на кратком примере «путешествия» вымышленной компании в борьбе с постоянным расширением системы мониторинга и ростом инфраструктуры.
https://blog.palark.com/prometheus-architecture-tsdb/
Эта серия из двух статей посвящена мониторингу. В первой части рассказывается о накоплении множества различных показателей в одном месте, обработке разрешений для различных аспектов этих показателей и хранении больших объемов данных. Во второй части мы сосредоточимся на выборе систем мониторинга, основываясь на кратком примере «путешествия» вымышленной компании в борьбе с постоянным расширением системы мониторинга и ростом инфраструктуры.
https://blog.palark.com/prometheus-architecture-tsdb/
❤3👍2
📌 10 полезных функций Far Manager
1. Режимы отображения
Меняйте ширину и количество столбцов на активной панели интерфейса, в которых отображаются файлы и папки.
2. Сортировка элементов
Сортируйте файлы и папки на активной панели интерфейса.
3. Просмотр размера файлов и папок
Просматривайте размер выделенного файла или папки с помощью клавиши F3. Значение отображается в столбце Size или в нижней части активной панели — в зависимости от выбранного вида.
Чтобы выделить один элемент, нажмите Shift и стрелку вниз или вверх на клавиатуре. Для массового выделения используйте Shift со стрелками вправо и влево.
4. Одновременная работа с элементами, которые находятся в разных папках
Добавляйте файлы и папки из разных каталогов на «Временную панель», если вам нужно работать со всеми ними одновременно. Это позволит вам выполнять с элементами групповые операции так, будто они находятся в одном каталоге. При этом их реальное местоположение не изменится.
Чтобы открыть «Временную панель», нажмите F11 и выберите Temporary Panel. Для добавления файлов и папок просто перетащите их на неё с помощью курсора мыши. Вы также можете найти нужные файлы через комбинацию
5. Фильтрация файлов по типу
Фильтруйте список файлов по расширению, чтобы временно скрывать с панели лишние элементы. Чтобы включить фильтр, воспользуйтесь комбинацией
6. Просмотр списка процессов
Просматривайте список активных процессов прямо в окне Far Manager. Чтобы просмотреть его, откройте окно выбора диска (
7. Навигация по папкам
Вы можете быстро открывать корневую папку локального диска с помощью комбинации
8. Сравнение идентичности папок
Если захотите проверить две папки на предмет их идентичности, откройте одну из них на левой панели, а вторую на правой. Затем нажмите F11 и выберите Advanced Compare. В открывшемся окне укажите параметры сравнения и нажмите ОК. Программа отобразит размеры обеих папок и подсветит их файлы, которые не совпадают.
9. Запись макросов
Используйте макросы, чтобы автоматизировать рутинные операции с программой.
Чтобы создать макрос, нажмите
К примеру, во время создания макроса можно кликнуть правой кнопкой по файлу и выбрать в контекстном меню «Свойства», а после назначить эти действия на клавишу J. После этого вы сможете быстро вызывать свойства файлов с помощью J.
1. Режимы отображения
Меняйте ширину и количество столбцов на активной панели интерфейса, в которых отображаются файлы и папки.
Ctrl + 1
— установить краткий режим просмотра (три узких столбца).Ctrl + 2
— установить стандартный режим просмотра (два средних столбца).Ctrl + 3
— установить полный режим просмотра (один широкий и три узких столбца со служебной информацией).Ctrl + 4
— установить широкий режим просмотра (один широкий и один узкий столбец со служебной информацией).Ctrl + 5
— установить детальный режим просмотра (один максимально широкий и ещё несколько дополнительных стоблцов со служебной информацией — занимают всё окно программы).2. Сортировка элементов
Сортируйте файлы и папки на активной панели интерфейса.
Ctrl + F3
— сортировать по имени элемента.Ctrl + F4
— сортировать по типу расширения.Ctrl + F5
— сортировать по дате изменения.Ctrl + F6
— сортировать по размеру.Ctrl + F8
— сортировать по дате создания.Ctrl + F12
— вывести меню элементов сортировки.3. Просмотр размера файлов и папок
Просматривайте размер выделенного файла или папки с помощью клавиши F3. Значение отображается в столбце Size или в нижней части активной панели — в зависимости от выбранного вида.
Чтобы выделить один элемент, нажмите Shift и стрелку вниз или вверх на клавиатуре. Для массового выделения используйте Shift со стрелками вправо и влево.
4. Одновременная работа с элементами, которые находятся в разных папках
Добавляйте файлы и папки из разных каталогов на «Временную панель», если вам нужно работать со всеми ними одновременно. Это позволит вам выполнять с элементами групповые операции так, будто они находятся в одном каталоге. При этом их реальное местоположение не изменится.
Чтобы открыть «Временную панель», нажмите F11 и выберите Temporary Panel. Для добавления файлов и папок просто перетащите их на неё с помощью курсора мыши. Вы также можете найти нужные файлы через комбинацию
Alt + F7
и добавить результаты поиска на «Временную панель», кликнув Panel в поисковом окне.5. Фильтрация файлов по типу
Фильтруйте список файлов по расширению, чтобы временно скрывать с панели лишние элементы. Чтобы включить фильтр, воспользуйтесь комбинацией
CTRL + I
, в появившемся списке выделите нужное расширение и нажмите пробел. Возле выбранного типа файлов появится плюс. Когда нажмёте Enter, файлы с другими расширениями исчезнут с текущей панели. Чтобы отменить фильтрацию, снова нажмите CTRL + I
и уберите плюс с помощью пробела.6. Просмотр списка процессов
Просматривайте список активных процессов прямо в окне Far Manager. Чтобы просмотреть его, откройте окно выбора диска (
ALT + F1/F2
) и нажмите 0. В этом списке можно отсортировать процессы по размеру, нажав CTRL + F6
. Чтобы удалить процесс, выделите его и нажмите F8. Чтобы просмотреть детальную информацию о процессе, используйте клавишу F3.7. Навигация по папкам
Вы можете быстро открывать корневую папку локального диска с помощью комбинации
CTRL + \
. Клавиши ALT + F12
— отображают папки, которые вы открывали ранее8. Сравнение идентичности папок
Если захотите проверить две папки на предмет их идентичности, откройте одну из них на левой панели, а вторую на правой. Затем нажмите F11 и выберите Advanced Compare. В открывшемся окне укажите параметры сравнения и нажмите ОК. Программа отобразит размеры обеих папок и подсветит их файлы, которые не совпадают.
9. Запись макросов
Используйте макросы, чтобы автоматизировать рутинные операции с программой.
Чтобы создать макрос, нажмите
Shift + Ctrl + «.»
(точка) и совершите несколько действий в Far. Затем снова воспользуйтесь этой комбинацией и в открывшемся окне выберите удобную клавишу. Теперь по её нажатию программа будет выполнять эти действия автоматически.К примеру, во время создания макроса можно кликнуть правой кнопкой по файлу и выбрать в контекстном меню «Свойства», а после назначить эти действия на клавишу J. После этого вы сможете быстро вызывать свойства файлов с помощью J.
❤1
Сохраняем вывод команды Top в файл
Поскольку я не использовал опцию delay, приведенная ниже команда top перенаправит вывод команды top за одну итерацию в файл.
Сохранение вывода команды top с более чем одной итерацией из 5 итераций
Обычно программа работает непрерывно с задержкой в 2 секунды, и вы можете изменить это значение, добавив в верхнюю команду значение ‘-d’, как показано ниже:
Как захватить вывод команды top в файл каждые 5 минут в течение часа
Система создает отдельный файл каждые 5 минут, который поможет вам определить список процессов, которые потребляли больше CPU и памяти в системе.
Добавляем следующий cronjob, который будет выполняться с 5 до 6 утра каждые 5 минут в течение часа.
Где
-n : Задает максимальное количество итераций.
-b : Работа в пакетном режиме (Запуск команды top в пакетном режиме для перенаправления вывода в другие программы или в файл)
-d : Интервал задержки (Задает задержку между обновлениями экрана)
Собираем вывод в один файл, используйте следующий cronjob
Cronjob будет выполняться с 9 до 10 утра каждые 5 минут в течение часа и добавлять результаты в один файл.
Записываем вывод команды top в файл каждые 5 минут в течение получаса
Добавляем следующий cronjob, который будет запускаться каждые 5 минут с 13:30 до 14:00 в течение получаса.
Поскольку я не использовал опцию delay, приведенная ниже команда top перенаправит вывод команды top за одну итерацию в файл.
top -b -n 1 > /home/i_odmin/backup/output.txt
Сохранение вывода команды top с более чем одной итерацией из 5 итераций
Обычно программа работает непрерывно с задержкой в 2 секунды, и вы можете изменить это значение, добавив в верхнюю команду значение ‘-d’, как показано ниже:
top -n 5 -d 4 -b >/backup/output_1.txt
Как захватить вывод команды top в файл каждые 5 минут в течение часа
Система создает отдельный файл каждые 5 минут, который поможет вам определить список процессов, которые потребляли больше CPU и памяти в системе.
Добавляем следующий cronjob, который будет выполняться с 5 до 6 утра каждые 5 минут в течение часа.
Где
-n : Задает максимальное количество итераций.
-b : Работа в пакетном режиме (Запуск команды top в пакетном режиме для перенаправления вывода в другие программы или в файл)
-d : Интервал задержки (Задает задержку между обновлениями экрана)
0-59/5 5 * * * top -n 10 -d 4 -b > /home/i_odmin/backup/top_out-`date +\%Y\%m\%d\%H\%M\%S`.txt
Собираем вывод в один файл, используйте следующий cronjob
Cronjob будет выполняться с 9 до 10 утра каждые 5 минут в течение часа и добавлять результаты в один файл.
0-59/5 9 * * * top -b -n5 -d 5 >>/home/i_odmin/backup/output.txt
Записываем вывод команды top в файл каждые 5 минут в течение получаса
Добавляем следующий cronjob, который будет запускаться каждые 5 минут с 13:30 до 14:00 в течение получаса.
30-59/5 13 * * * top -n 10 -d 4 -b > /home/i_odmin/backup/top_out-`date +\%Y\%m\%d\%H\%M\%S`.txt
❤1
Полезные Bash-скрипты для повседневных задач
Ниже — два скрипта, которые могут сэкономить тебе время и нервы.
Перемещение директории
Переименование файла
Ниже — два скрипта, которые могут сэкономить тебе время и нервы.
Перемещение директории
#!/bin/bash
# Проверка существования директории-источника
if [ ! -d "$1" ]; then
echo "$1 doesn't exist"
exit 1
fi
# Проверка существования директории-назначения
if [ ! -d "$2" ]; then
echo "$2 doesn't exist"
exit 1
fi
# Копирование и удаление исходной директории
if cp -r "$1" "$2" && rm -r "$1"; then
echo "Dir $1 was moved to dir $2 successfully"
exit 0
else
echo "Something went wrong"
exit 1
fi
Переименование файла
#!/bin/bash
# Проверка количества аргументов
if [ $# -ne 2 ]; then
echo "2 args needed: file to rename and new name"
exit 1
fi
# Проверка существования файла
if [ ! -f "$1" ]; then
echo "File $1 does not exist or it's not a file"
exit 1
fi
# Переименование через копирование и удаление
if cp "$1" "$2" && rm -f "$1"; then
echo "Name of file $1 was changed to $2"
exit 0
else
echo "Something went wrong!"
exit 1
fi
❤2👍1
Шпаргалка по RAID
Информация о RAID
Сборка RAID
при получении ответа mdadm: Unrecognised md component device -
* где /dev/md0 — устройство RAID, которое появится после сборки; -l 1 — уровень RAID; -n 2 — количество дисков, из которых собирается массив; /dev/sd{b,c} — сборка выполняется из дисков sdb и sdc.
Создание файловой системы и монтирование массива
nano /etc/fstab, прописать
Восстановление RAID
Замена жесткого диска
При выходе из строя, команда mdadm -D /dev/md0 выдаст: State : clean, degraded
Статус должен стать Rebuild Status : 40% complete и так до полного восстановления
Пересборка массива
Если нам нужно вернуть ранее разобранный или развалившийся массив из дисков, которые уже входили в состав RAID, вводим:
Запасной диск (Hot Spare)
Если в массиве будет запасной диск для горячей замены, при выходе из строя одного из основных дисков, его место займет запасной.
Добавить диск к массиву, расширить массив
Добавление активного диска к RAID, который будет использоваться для работы, а не в качестве запасного.
* в данном примере подразумевается, что у нас RAID 1 и мы добавили к нему 3-й диск.
Установка mdadm
Если каким-то образом в дистрибутиве нет этого пакета
Удаление массива
Если нам нужно полностью разобрать RAID, сначала размонтируем и остановим его:
* где
Затем очищаем суперблоки на всех дисках, из которых он был собран:
mdadm
— утилита для работы с программными RAID-массивами различных уровней. В данной инструкции рассмотрим примеры ее использования.Информация о RAID
cat /proc/mdstat
- состояние всех RAIDmdadm -D /dev/md0
- подробная инфа о конкретном RAIDlsblk
- список дисков с разделами, местом, типомdf -hT
- свободное место, тип файловой системы, точки монтированияСборка RAID
mdadm —zero-superblock —force /dev/sd{b,c}
- обнуление суперблоков на дисках sdb sdc (для удаления инфы о других RAID)при получении ответа mdadm: Unrecognised md component device -
/dev/sdb
значит, что диск не использовался для RAID, продолжаемmdadm —create —verbose /dev/md0 -l 1 -n 2 /dev/sd{b,c}
* где /dev/md0 — устройство RAID, которое появится после сборки; -l 1 — уровень RAID; -n 2 — количество дисков, из которых собирается массив; /dev/sd{b,c} — сборка выполняется из дисков sdb и sdc.
Создание файловой системы и монтирование массива
mkfs.ext4 /dev/md0
- создание файловой системы ext4 на md0mount /dev/md0 /mnt
- разово примонтировать md0 к /mnt
nano /etc/fstab, прописать
/dev/md0 /mnt ext4 defaults 1 2
- постоянное монтирование, работает после перезагрузкиВосстановление RAID
Замена жесткого диска
При выходе из строя, команда mdadm -D /dev/md0 выдаст: State : clean, degraded
mdadm /dev/md0 —remove /dev/sdc
- удалить сбойный дискmdadm /dev/md0 —add /dev/sde
- добавить новый диск в массивСтатус должен стать Rebuild Status : 40% complete и так до полного восстановления
Пересборка массива
Если нам нужно вернуть ранее разобранный или развалившийся массив из дисков, которые уже входили в состав RAID, вводим:
mdadm —assemble —scan
- команда сама найдет необходимую конфигурацию и восстановит RAID.mdadm —assemble /dev/md0 /dev/sdb /dev/sdc
- с указанием из каких дисков пересобратьЗапасной диск (Hot Spare)
Если в массиве будет запасной диск для горячей замены, при выходе из строя одного из основных дисков, его место займет запасной.
mdadm /dev/md0 —add /dev/sdd
- Диском Hot Spare станет тот, который просто будет добавлен к массивуДобавить диск к массиву, расширить массив
Добавление активного диска к RAID, который будет использоваться для работы, а не в качестве запасного.
mdadm /dev/md0 —add /dev/sde
mdadm -G /dev/md0 —raid-devices=3
- расширяем RAID* в данном примере подразумевается, что у нас RAID 1 и мы добавили к нему 3-й диск.
Установка mdadm
Если каким-то образом в дистрибутиве нет этого пакета
apt-get install mdadm
Удаление массива
Если нам нужно полностью разобрать RAID, сначала размонтируем и остановим его:
umount /mnt
* где
/mnt
— каталог монтирования нашего RAID.mdadm -S /dev/md0
Затем очищаем суперблоки на всех дисках, из которых он был собран:
mdadm —zero-superblock /dev/sdb
mdadm —zero-superblock /dev/sdc
mdadm —zero-superblock /dev/sdd
❤3👍2🔥1