Работа системного администратора часто напоминает попытку дирижировать оркестром, где каждый инструмент норовит сыграть свою партию в самый неподходящий момент. Постоянные сбои, обновления, запросы пользователей и бесконечный мониторинг требуют нечеловеческой многозадачности. В этой ситуации нейросети могут стать не просто помощником, а настоящим вторым пилотом. Правильно составленные промпты для системного администратора позволяют делегировать рутину, ускорять диагностику и даже генерировать готовые решения, высвобождая время для более сложных и стратегических задач.
Многие смотрят на ИИ-помощников со скепсисом, потому что первые попытки получить пользу часто заканчиваются разочарованием. Ответы получаются слишком общими, код – нерабочим, а советы – банальными. Но проблема почти всегда не в нейросети, а в качестве запроса. Эта статья создана, чтобы исправить ситуацию и показать, как превратить ИИ из «игрушки» в мощный рабочий инструмент.
Здесь вы не найдете абстрактных рассуждений. Только практика, конкретика и готовые к использованию шаблоны, которые можно сразу применять в работе. Внутри вы обнаружите:
- Типичные ошибки, которые мешают получать качественный результат.
- Готовые шаблоны запросов для широкого спектра задач системного администрирования.
- Неочевидные приемы для повышения точности и полезности ответов нейросети.
- Сравнение плохих и хороших запросов на реальных примерах.
Цель этого материала – дать вам набор инструментов, который поможет сэкономить десятки часов рабочего времени и значительно снизить уровень стресса от повседневных задач. Пора заставить технологии работать на вас в полную силу.
Типичные ошибки при составлении запросов к ИИ
Прежде чем переходить к готовым шаблонам, важно понять, что обычно делают не так. Многие наступают на одни и те же грабли, а потом разочарованно заявляют, что «нейросети бесполезны». Давайте разберем самые частые ошибки, чтобы вы могли их избежать и сразу получать более качественные результаты.
- Запрашивать решение без предоставления контекста. Просить «написать скрипт для бэкапа» – это как просить врача выписать лекарство по телефону, сказав лишь «у меня что-то болит». Нейросеть не видит вашу систему и даст максимально обобщенный, скорее всего, бесполезный код.
- Формулировать задачу слишком широко и абстрактно. Запросы вроде «оптимизируй мой сервер» или «сделай сеть безопаснее» обречены на провал. ИИ не может принять за вас стратегические решения; он может лишь помочь в реализации конкретных, четко поставленных задач.
- Слепо копировать и выполнять предложенный код. Нейросеть – это помощник, а не оракул. Она может допускать ошибки, использовать устаревшие методы или не учитывать специфику вашей конфигурации. Любой сгенерированный скрипт или команда должны быть внимательно изучены перед запуском в рабочей среде. Особенно если это команда `rm -rf`.
- Не указывать желаемый формат ответа. Если не попросить нейросеть о конкретной структуре, она выдаст информацию в виде сплошного текста, который потом придется долго разбирать. Запрос на вывод в виде таблицы, списка, JSON-файла или пошаговой инструкции творит чудеса.
- Забывать про итерационный подход. Редко удается получить идеальный результат с первого раза. Не бойтесь уточнять, просить переписать часть кода, добавить комментарии или рассмотреть альтернативный подход. Работа с ИИ – это диалог, а не монолог.
- Игнорировать «ролевую модель». Просьба к «универсальному помощнику» всегда даст более слабый результат, чем обращение к «опытному DevOps-инженеру» или «специалисту по сетевой безопасности с 20-летним стажем». Назначение роли задает нужный контекст и уровень экспертизы.
Сравнение неэффективных и точных запросов для ИИ
Разница между бесполезным и гениальным ответом нейросети часто кроется в деталях формулировки. Чтобы это было наглядно, давайте рассмотрим несколько типичных задач системного администратора и сравним, как большинство людей формулирует запрос и как это следует делать для получения реальной пользы.
| Задача | Распространенный, но неэффективный запрос | Точный и полезный запрос для ИИ |
| Написать скрипт для резервного копирования | «Напиши скрипт для бэкапа базы данных.» | «Ты – опытный администратор баз данных. Напиши Bash-скрипт для ежедневного резервного копирования базы данных PostgreSQL. База называется ‘prod_db’. Скрипт должен создавать дамп с помощью `pg_dump`, архивировать его в .gz формат, добавлять в имя файла текущую дату и удалять бэкапы старше 7 дней. Предоставь код с комментариями.» |
| Диагностика сетевой проблемы | «У меня не работает сеть на сервере, помоги.» | «Ты – специалист по сетям Linux. Мой сервер на Ubuntu 22.04 потерял доступ к интернету после перезагрузки. Вот вывод команд `ip a`, `ip r` и `cat /etc/resolv.conf`. Проанализируй данные и предложи пошаговый план диагностики и возможные причины проблемы. Формат ответа: 1. Анализ конфигурации. 2. Гипотезы. 3. План действий.» |
| Анализ лог-файла | «Что не так в этом логе?» (и кусок лога) | «Ты – эксперт по веб-серверу Nginx. Проанализируй фрагмент лог-файла ошибок Nginx (`error.log`). Найди все критические ошибки (уровень CRIT), объясни их вероятные причины и предложи способы исправления. Структурируй ответ: для каждой найденной ошибки укажи временную метку, текст сообщения, возможное объяснение и рекомендуемое действие.» |
| Установка программного обеспечения | «Как установить Zabbix?» | «Ты – сертифицированный специалист по Zabbix. Предоставь пошаговую инструкцию по установке Zabbix Server 6.0 LTS на операционную систему Astra Linux 1.7 с использованием базы данных PostgreSQL. Инструкция должна включать шаги по настройке репозиториев, установке всех компонентов, созданию базы данных и начальной настройке веб-интерфейса. Укажи точные команды для терминала.» |
29 промптов для системного администратора: готовые шаблоны для работы
Теперь перейдем к самому главному – коллекции готовых запросов, которые охватывают широкий круг повседневных задач системного администратора. Каждый промпт построен по принципу «копируй, вставляй, адаптируй» и снабжен объяснением, почему он работает.
1. Генерация скрипта резервного копирования
Проблема: Нужно быстро создать надежный скрипт для бэкапа важных данных, но нет времени писать его с нуля и вспоминать все параметры.
Решение: Промпт генерирует готовый к использованию Bash-скрипт с логированием, ротацией и комментариями.
Текст промпта:
*****
Ты – опытный Linux-администратор с 15-летним стажем. Твоя задача – написать надежный и хорошо документированный Bash-скрипт.
Задача: Создай скрипт для ежедневного резервного копирования.
Контекст:
1. Исходная директория для копирования: [укажите путь, например, «/var/www/html»]
2. Директория для хранения резервных копий: [укажите путь, например, «/mnt/backups»]
3. Имя базы данных MySQL для дампа: [укажите имя БД, например, «website_db»]
4. Пользователь БД: [укажите пользователя, например, «backup_user»]
5. Пароль БД: [укажите пароль]
Требования к скрипту:
1. Сначала создается дамп указанной базы данных MySQL с помощью `mysqldump`.
2. Затем вся исходная директория вместе с дампом БД архивируется в один tar.gz архив.
3. Имя архива должно содержать текущую дату в формате ГОД-МЕСЯЦ-ДЕНЬ.
4. Скрипт должен автоматически удалять архивы старше [укажите количество дней, например, «14»] дней.
5. Весь вывод работы скрипта (успех, ошибки) должен записываться в лог-файл [укажите путь к логу, например, «/var/log/backup.log»].
6. Добавь в код подробные комментарии, объясняющие каждый шаг.
Формат ответа: Предоставь только код скрипта внутри блока для кода.
*****
Почему это работает: Промпт дает четкие и исчерпывающие инструкции: роль, контекст (пути, данные), конкретные шаги (дамп, архивация, ротация, логирование) и формат вывода. Это не оставляет нейросети пространства для домыслов.
2. Анализ логов веб-сервера
Проблема: В логах веб-сервера тысячи строк, и нужно быстро найти причину сбоя или атаки.
Решение: Запрос помогает автоматически проанализировать большой объем логов, выделить аномалии и сгруппировать их.
Текст промпта:
*****
Ты – эксперт по кибербезопасности и анализу логов веб-серверов. Твоя задача – проанализировать лог-файл доступа Nginx и выявить подозрительную активность.
Контекст: Я предоставлю тебе фрагмент файла `access.log`.
Задача: Проанализируй лог и выполни следующие действия:
1. Найди 10 IP-адресов, с которых было сделано больше всего запросов.
2. Определи все запросы, которые привели к ошибкам клиента (коды 4xx) или сервера (коды 5xx). Сгруппируй их по коду ответа.
3. Выяви попытки сканирования уязвимостей (например, запросы к `wp-login.php`, `.env`, `/phpmyadmin/`).
4. Найди все запросы от необычных пользовательских агентов (user-agents), которые могут указывать на ботов или сканеры (например, «python-requests», «Go-http-client», пустой user-agent).
Формат ответа: Представь результат в виде структурированного отчета:
Отчет по анализу лога
1. Топ-10 IP-адресов по активности:
- IP: [адрес], Количество запросов: [число]
2. Сводка по ошибкам:
- Код [код ошибки]: [количество] раз. Примеры запросов: [список из 2-3 примеров]
3. Попытки сканирования уязвимостей:
- [Полная строка лога]
4. Подозрительные пользовательские агенты:
- [Полная строка лога]
Вот фрагмент лога для анализа:
[вставьте сюда ваш фрагмент лог-файла]
*****
Почему это работает: Жестко заданный формат ответа и четкая, пошаговая задача (найти топы, найти ошибки, найти сканеры) заставляют ИИ структурировать информацию, а не выдавать ее сплошным текстом.
3. Написание PowerShell-скрипта для Active Directory
Проблема: Рутинные задачи в Active Directory, такие как создание пользователей или изменение групп, отнимают много времени.
Решение: Генерация PowerShell-скрипта для автоматизации управления пользователями на основе CSV-файла.
Текст промпта:
*****
Ты – опытный системный администратор Windows Server со специализацией на автоматизации с помощью PowerShell.
Задача: Напиши PowerShell-скрипт для массового создания пользователей в Active Directory из CSV-файла.
Контекст:
1. CSV-файл (`new_users.csv`) имеет следующие столбцы: `FirstName`, `LastName`, `Department`, `JobTitle`.
2. Пользователей нужно создавать в определенном организационном подразделении (OU): [укажите путь, например, «OU=NewEmployees,DC=company,DC=local»].
3. Имя пользователя для входа (SamAccountName) должно генерироваться как [укажите формат, например, «первая буква имени + фамилия» (j.smith)].
4. Для каждого нового пользователя должен быть сгенерирован случайный пароль, который будет выведен в консоль вместе с именем пользователя. Пользователь должен будет сменить пароль при первом входе.
Требования к скрипту:
1. Скрипт должен проверять наличие необходимого модуля Active Directory.
2. Он должен считывать данные из `new_users.csv`.
3. В цикле обрабатывать каждую строку файла, создавая нового пользователя с указанными атрибутами.
4. Выводить в консоль информацию о каждом созданном пользователе и его временном пароле.
5. Добавь обработку ошибок (например, если пользователь с таким именем уже существует).
6. Код должен быть снабжен комментариями.
Формат ответа: Предоставь только полный код PowerShell-скрипта.
*****
Почему это работает: Промпт четко описывает бизнес-логику (как генерировать имя, где создавать), источник данных (CSV и его структура) и требования к «обвесу» скрипта (проверки, обработка ошибок, вывод), что ведет к созданию комплексного и рабочего решения.
4. Разработка плана миграции сервиса
Проблема: Нужно перенести важный сервис на новый сервер, но страшно что-то упустить и вызвать простой.
Решение: ИИ генерирует структурированный чек-лист и план миграции, который можно использовать как основу для работы.
Текст промпта:
*****
Ты – IT-проектный менеджер и системный архитектор. Твоя задача – составить детальный план миграции.
Задача: Разработай пошаговый план миграции веб-приложения с одного сервера на другой.
Контекст:
1. Приложение: [опишите приложение, например, «корпоративный портал на Битрикс»].
2. Исходный сервер: [опишите параметры, например, «Ubuntu 18.04, Nginx, PHP-FPM 7.2, MySQL 5.7»].
3. Целевой сервер: [опишите параметры, например, «Astra Linux, Apache, PHP 8.1, PostgreSQL 14»].
4. Основная цель: минимизировать время простоя и обеспечить полную работоспособность после переноса.
Требования к плану:
План должен быть разбит на 5 этапов: Подготовка, Резервное копирование, Перенос и настройка, Тестирование, Финализация.
Для каждого этапа составь подробный чек-лист с конкретными действиями.
Обязательно включи в план шаги по:
— Переносу файлов сайта.
— Миграции базы данных (с учетом смены СУБД с MySQL на PostgreSQL).
— Настройке веб-сервера и PHP на новом сервере.
— Проверке и изменению конфигурационных файлов приложения.
— Переключению DNS-записей.
— Проведению пост-миграционного тестирования.
Формат ответа: Представь план в виде структурированного документа с заголовками для каждого этапа и нумерованными списками действий внутри.
*****
Почему это работает: Запрос заставляет ИИ думать как проектировщик. Разбивка на этапы (Подготовка, Перенос, Тестирование и т.д.) и требование создать чек-листы для каждого этапа превращают абстрактную задачу в конкретный план действий.
5. Составление чек-листа для аудита безопасности
Проблема: Необходимо проверить сервер на соответствие базовым требованиям безопасности, но легко упустить важные моменты.
Решение: Генерация подробного чек-листа для аудита, который можно использовать для систематической проверки сервера.
Текст промпта:
*****
Ты – специалист по информационной безопасности, специализирующийся на укреплении (hardening) Linux-систем.
Задача: Создай подробный чек-лист для аудита безопасности сервера под управлением [укажите ОС, например, «Ubuntu 22.04»].
Контекст: Сервер используется как [укажите роль сервера, например, «веб-сервер для публичного сайта»]. Чек-лист должен быть ориентирован на практические действия и проверки, которые можно выполнить из командной строки.
Требования к чек-листу:
Раздели чек-лист на логические категории:
1. Управление доступом: проверка парольных политик, использование `sudo`, отключение root-доступа по SSH, поиск неиспользуемых аккаунтов.
2. Сетевая безопасность: настройка брандмауэра (`ufw`/`iptables`), проверка открытых портов, отключение ненужных сетевых служб.
3. Файловая система: проверка прав доступа к критически важным файлам и директориям (`/etc/shadow`, `/etc/ssh/sshd_config`), поиск файлов с установленным SUID-битом.
4. Обновления и патчи: проверка наличия не установленных обновлений безопасности.
5. Логирование и мониторинг: проверка, что аудит (`auditd`) и логирование системных событий включены и настроены.
Для каждого пункта проверки укажи команду, с помощью которой его можно выполнить.
Формат ответа: Представь чек-лист в виде маркированного списка, сгруппированного по категориям.
*****
Почему это работает: Четкая структура (категории) и требование предоставить конкретные команды для каждой проверки превращают ИИ в генератор практических инструкций, а не теоретических советов.
6. Генерация правил брандмауэра
Проблема: Нужно быстро настроить брандмауэр на сервере, открыв только необходимые порты, но синтаксис `iptables` или `firewalld` сложен.
Решение: Промпт генерирует готовый набор команд для настройки брандмауэра под конкретные задачи.
Текст промпта:
*****
Ты – эксперт по сетевой безопасности Linux.
Задача: Сгенерируй набор команд для настройки брандмауэра [укажите инструмент, например, «iptables»] на сервере.
Контекст:
1. Операционная система: [укажите ОС, например, «CentOS 8»].
2. Политика по умолчанию: Запретить все входящие соединения, разрешить все исходящие.
3. Разрешенные входящие службы и порты:
— SSH на порту [укажите порт, например, «2222»] только с IP-адреса [укажите ваш IP, например, «1.2.3.4»].
— HTTP на порту 80.
— HTTPS на порту 443.
— [Перечислите другие необходимые порты и протоколы, например, «Ping (ICMP)»].
4. Необходимо разрешить трафик на loopback-интерфейсе.
Требования:
1. Предоставь полный и последовательный набор команд, который можно выполнить как скрипт.
2. Добавь команду для сохранения правил, чтобы они применялись после перезагрузки.
3. Включи комментарии, объясняющие назначение каждого правила.
Формат ответа: Только блок кода с командами и комментариями.
*****
Почему это работает: Запрос оперирует конкретными сущностями (порты, IP-адреса, политика по умолчанию), что позволяет сгенерировать точный и безопасный набор правил вместо общих рекомендаций.
7. Объяснение сложной технической концепции
Проблема: Нужно объяснить коллеге или менеджеру, что такое BGP или VLAN, но сложно подобрать простые слова.
Решение: ИИ выступает в роли переводчика с «технического» на «человеческий», используя аналогии.
Текст промпта:
*****
Ты – талантливый технический писатель и преподаватель, мастер объяснять сложные вещи простыми словами.
Задача: Объясни концепцию [укажите концепцию, например, «контейнеризации Docker»] для [укажите аудиторию, например, «начинающего разработчика» или «менеджера продукта»].
Требования к объяснению:
1. Используй простую и понятную аналогию из реального мира (например, грузовые контейнеры, квартира со всей мебелью).
2. Объясни, какую проблему решает эта технология.
3. Опиши ключевые преимущества (например, изоляция, переносимость, воспроизводимость).
4. Сравни с более старым подходом (например, с виртуальными машинами).
5. Избегай глубоко технического жаргона. Если термин необходим, объясни его.
Формат ответа: Структурированный текст, разбитый на короткие абзацы. Объем – не более 400 слов.
*****
Почему это работает: Указание целевой аудитории и требование использовать аналогии заставляет нейросеть адаптировать уровень сложности и стиль изложения, что приводит к понятному и полезному тексту.
8. Создание Dockerfile для приложения
Проблема: Нужно упаковать приложение в контейнер, но писать Dockerfile с нуля долго и можно допустить ошибки.
Решение: Генерация оптимизированного Dockerfile на основе описания приложения.
Текст промпта:
*****
Ты – DevOps-инженер со специализацией на контейнеризации приложений.
Задача: Напиши оптимизированный Dockerfile для [опишите тип приложения, например, «простого Python-приложения на Flask»].
Контекст:
1. Язык/фреймворк: [укажите, например, «Python 3.10 / Flask»].
2. Файл с зависимостями: [укажите имя, например, «requirements.txt»].
3. Файл для запуска приложения: [укажите, например, «app.py»].
4. Порт, который слушает приложение: [укажите порт, например, «5000»].
Требования к Dockerfile:
1. Используй многоэтапную сборку (multi-stage build) для уменьшения размера итогового образа.
2. Используй официальный базовый образ с минимальным размером (например, `python:3.10-slim`).
3. Копируй файл с зависимостями и устанавливай их отдельным слоем для эффективного кеширования.
4. Запускай приложение от имени пользователя без root-прав.
5. Добавь подробные комментарии к каждой инструкции в Dockerfile.
Формат ответа: Только содержимое Dockerfile в блоке кода.
*****
Почему это работает: Упоминание продвинутых техник (multi-stage builds, non-root user, кеширование слоев) направляет ИИ на создание не просто рабочего, а качественного и безопасного Dockerfile, соответствующего лучшим практикам.
9. Написание регулярного выражения
Проблема: Регулярные выражения – мощный инструмент, но их синтаксис похож на заклинание из темной магии. Нужно извлечь данные из текста, а писать «регулярку» нет ни времени, ни желания.
Решение: Промпт генерирует нужное регулярное выражение на основе примеров и четкого описания задачи.
Текст промпта:
*****
Ты – эксперт по регулярным выражениям (RegEx). Твоя задача – создать точное и эффективное регулярное выражение.
Задача: Напиши регулярное выражение, которое извлекает [что извлекаем, например, «IP-адреса и коды ответа HTTP»] из строк лог-файла.
Контекст: Мне нужно обработать текст, где каждая строка имеет примерно следующий формат. Вот несколько примеров:
[Приведите 3-5 строк-примеров, где содержатся нужные данные]
`192.168.1.1 — — [10/Oct/2023:13:55:36 +0000] «GET /index.html HTTP/1.1» 200 503`
`10.0.0.5 — — [10/Oct/2023:13:56:12 +0000] «POST /api/login HTTP/1.1» 401 12`
Требования:
1. Выражение должно находить и извлекать [опишите данные, например, «IPv4-адрес в начале строки и трехзначный HTTP-код состояния в конце»].
2. Предоставь выражение в формате, совместимом с [укажите инструмент, например, «PCRE (PHP, Python)» или «grep -E»].
3. Объясни каждую часть регулярного выражения (что означает `d+`, `s`, `()` и т.д.).
Формат ответа:
1. Регулярное выражение: `[само выражение]`
2. Объяснение:
— `[часть выражения]`: [объяснение]
*****
Почему это работает: Предоставление конкретных примеров входных данных – ключ к успеху. Это позволяет ИИ точно понять структуру текста и создать выражение, которое работает именно для вашего случая. Требование объяснить результат помогает проверить его логику.
10. Сравнение двух технологий
Проблема: Нужно выбрать между двумя инструментами (например, Zabbix и Prometheus) для решения задачи, но не хватает времени на глубокое изучение обоих.
Решение: ИИ генерирует структурированное сравнение в виде таблицы, highlighting ключевые различия, плюсы и минусы.
Текст промпта:
*****
Ты – независимый IT-архитектор с обширным опытом внедрения различных систем.
Задача: Проведи детальное сравнение двух технологий: [технология 1, например, «Nginx»] и [технология 2, например, «Apache HTTP Server»].
Контекст: Сравнение необходимо для выбора [укажите назначение, например, «веб-сервера для высоконагруженного новостного сайта»].
Требования к сравнению:
Представь результат в виде таблицы со следующими строками (критериями сравнения):
— Архитектура (обработка соединений).
— Производительность (обработка статического и динамического контента).
— Конфигурация (простота и гибкость).
— Экосистема и модули.
— Поддержка сообщества и документация.
— Типичные сценарии использования (где каждая из технологий проявляет себя лучше всего).
Для каждого критерия кратко опиши, как себя ведут обе технологии. В конце таблицы добавь раздел «Выводы» с рекомендацией, какая технология лучше подходит для указанного контекста и почему.
Формат ответа: Таблица и текстовый вывод.
*****
Почему это работает: Запрос на табличное сравнение по конкретным критериям заставляет ИИ структурировать информацию и делать прямое сопоставление, а не писать два отдельных эссе о каждой технологии.
11. Генерация Ansible-плейбука
Проблема: Нужно выполнить одну и ту же последовательность действий на нескольких серверах. Делать это вручную долго и чревато ошибками.
Решение: Создание плейбука для системы управления конфигурациями Ansible, который автоматизирует рутинную задачу.
Текст промпта:
*****
Ты – сертифицированный инженер по Ansible. Твоя задача – написать чистый и идеоматичный плейбук.
Задача: Создай Ansible-плейбук для [опишите задачу, например, «установки и базовой настройки веб-сервера Nginx»].
Контекст:
1. Целевые хосты: группа `webservers` в инвентарном файле.
2. Операционная система: [укажите дистрибутив, например, «Debian 11»].
3. Требуется выполнить следующие действия:
— Обновить кэш пакетов.
— Установить пакет `nginx`.
— Убедиться, что служба `nginx` запущена и добавлена в автозагрузку.
— Скопировать локальный конфигурационный файл [укажите путь, например, «files/nginx.conf»] на сервер в [укажите путь, например, «/etc/nginx/nginx.conf»].
— После копирования конфигурации перезапустить службу `nginx`.
Требования к плейбуку:
1. Плейбук должен быть в формате YAML.
2. Используй соответствующие модули Ansible (`apt`, `service`, `copy`).
3. Добавь обработчик (handler) для перезапуска Nginx, чтобы он срабатывал только при изменении конфигурационного файла.
4. Дай задачам (tasks) осмысленные имена.
Формат ответа: Только код плейбука в формате YAML.
*****
Почему это работает: Упоминание специфичных для Ansible концепций (модули, обработчики, группы хостов) направляет ИИ на создание правильного, эффективного и «идиоматичного» плейбука, а не просто последовательности shell-команд.
12. Написание скрипта для проверки SSL-сертификатов
Проблема: Просроченный SSL-сертификат на важном сервисе – это всегда неприятный сюрприз. Нужно автоматизировать их проверку.
Решение: Генерация скрипта, который проверяет срок действия сертификатов для списка доменов и отправляет уведомление.
Текст промпта:
*****
Ты – системный администратор, параноидально относящийся к своевременному обновлению SSL-сертификатов.
Задача: Напиши скрипт на [укажите язык, например, «Python» или «Bash»], который проверяет срок действия SSL-сертификатов.
Контекст:
1. Список доменов для проверки должен читаться из текстового файла [укажите имя, например, «domains.txt»], по одному домену на строку.
2. Скрипт должен предупреждать, если сертификат истекает в течение следующих [укажите количество дней, например, «30»] дней.
Требования к скрипту:
1. Для каждого домена скрипт должен подключаться к порту 443 и получать информацию о сертификате.
2. Он должен вычислять, сколько дней осталось до истечения срока действия.
3. Если оставшийся срок меньше заданного порога, скрипт должен вывести в консоль предупреждение в формате: «ВНИМАНИЕ: Сертификат для [домен] истекает через [количество] дней!».
4. В случае успешной проверки (если сертификат действителен еще долго) выводить: «ОК: Сертификат для [домен] в порядке.»
5. Добавь обработку ошибок (например, если домен недоступен).
6. Код должен быть прокомментирован.
Формат ответа: Предоставь только код скрипта.
*****
Почему это работает: Промпт четко определяет логику работы (пороговое значение, формат вывода для успеха и тревоги, источник данных), что позволяет сгенерировать готовый к использованию в cron-задаче инструмент мониторинга.
13. Разработка схемы сети
Проблема: Нужно визуализировать сетевую инфраструктуру для документации или презентации, но рисовать схемы вручную долго.
Решение: Генерация кода для описания схемы в формате «code-as-diagram» (например, Mermaid), который можно вставить в Markdown или специальные редакторы.
Текст промпта:
*****
Ты – сетевой архитектор, который документирует инфраструктуру с помощью подхода «diagrams as code».
Задача: Создай код на языке [укажите язык, например, «Mermaid»] для описания сетевой диаграммы.
Контекст: Мне нужна диаграмма, описывающая простую офисную сеть. В ней должны быть следующие элементы:
— Интернет-шлюз (роутер).
— Брандмауэр.
— Коммутатор.
— Два сервера: Веб-сервер и Сервер баз данных.
— Пользовательские рабочие станции.
Требования к диаграмме:
1. Используй синтаксис Mermaid graph (диаграмма связей).
2. Покажи логические связи: Интернет -> Роутер -> Брандмауэр -> Коммутатор.
3. От коммутатора должны идти связи к Веб-серверу, Серверу БД и Рабочим станциям.
4. Веб-сервер и Сервер БД должны быть визуально сгруппированы в подграф «Серверная зона».
5. Дай узлам понятные имена.
Формат ответа: Только блок кода с диаграммой Mermaid.
*****
Почему это работает: Запрос использует профессиональный термин «diagrams as code» и указывает конкретный инструмент (Mermaid), что помогает ИИ понять задачу и сгенерировать не просто описание, а готовый код для рендеринга визуальной схемы.
14. Перевод технической ошибки на понятный язык
Проблема: Сервис выдал непонятную ошибку, и нужно быстро объяснить ее суть менеджеру или пользователю без технических знаний.
Решение: ИИ анализирует технический текст ошибки и «переводит» его, объясняя причину и следствия простыми словами.
Текст промпта:
*****
Ты – руководитель службы технической поддержки, который умеет объяснять сложные технические проблемы клиентам и руководству.
Задача: Проанализируй сообщение об ошибке и напиши два варианта его объяснения.
Контекст: Вот техническое сообщение об ошибке, полученное из лога приложения:
[вставьте сюда сообщение об ошибке, например, «FATAL: C_POSTGRES_ERROR::DATABASE_CONNECTION_FAILED: psql: could not connect to server: Connection refused. Is the server running on host «db.prod.local» (10.10.1.5) and accepting TCP/IP connections on port 5432?»]
Требования:
Подготовь два объяснения:
1. Для пользователя/клиента: Короткое, простое и успокаивающее сообщение. Объясни, что произошло на высоком уровне (без технических деталей), сообщи, что проблема уже в работе, и укажи примерное время решения, если это возможно. Например: «В данный момент наблюдаются временные технические неполадки с доступом к сервису. Наша команда уже работает над устранением проблемы.»
2. Для менеджера/руководителя: Чуть более подробное объяснение. Опиши суть проблемы (например, «Потеряна связь между веб-сервером и базой данных»), возможные причины (например, «сбой в сети или перезагрузка сервера БД»), влияние на бизнес (например, «пользователи не могут войти в систему») и какие шаги предпринимаются для решения.
Формат ответа:
Объяснение ошибки
1. Вариант для пользователя:
[текст]
2. Вариант для менеджера:
[текст]
*****
Почему это работает: Разделение задачи на две аудитории (пользователь и менеджер) заставляет ИИ генерировать два разных по стилю и содержанию текста, что гораздо полезнее, чем один «универсальный» ответ.
15. Составление плана обновления ПО на серверах
Проблема: Нужно обновить критически важное ПО (например, ОС или СУБД) на рабочих серверах. Требуется минимизировать риски и простои.
Решение: Генерация структурированного плана действий с этапами подготовки, тестирования, самого обновления и отката в случае неудачи.
Текст промпта:
*****
Ты – опытный системный инженер, ответственный за стабильность продакшн-инфраструктуры.
Задача: Разработай детальный план по обновлению [название ПО и версия, например, «PostgreSQL с версии 12 до 14»] на рабочем сервере.
Контекст:
1. Операционная система сервера: [укажите ОС, например, «AlmaLinux 9»].
2. Текущее состояние: ПО используется в рабочей среде, есть зависимые приложения.
3. Главный приоритет – минимизация времени простоя и сохранение данных.
Требования к плану:
План должен состоять из следующих обязательных разделов:
1. Подготовительный этап:
— Изучение документации по обновлению.
— Полное резервное копирование базы данных и конфигурационных файлов.
— Проведение тестов обновления на тестовом стенде, идентичном рабочему.
2. Этап обновления (в период наименьшей нагрузки):
— Уведомление пользователей о технических работах.
— Остановка зависимых приложений.
— Выполнение самого процесса обновления (укажи ключевые команды).
3. Пост-обновление и верификация:
— Проверка запуска и работоспособности обновленной службы.
— Базовое тестирование функционала зависимых приложений.
— Мониторинг логов на предмет ошибок.
4. План отката (Rollback Plan):
— Четкая последовательность действий для возврата к предыдущей версии из резервной копии в случае критического сбоя.
Формат ответа: Представь план в виде нумерованного списка с подпунктами для каждого этапа.
*****
Почему это работает: Требование включить в план не только само обновление, но и подготовку, тестирование и, что особенно важно, план отката, заставляет ИИ создать comprehensive, а не поверхностный документ, который реально снижает риски.
16. Анализ производительности SQL-запроса
Проблема: Приложение тормозит, и есть подозрение, что виной всему «тяжелый» SQL-запрос. Нужно понять, что с ним не так.
Решение: ИИ анализирует SQL-запрос и план его выполнения, предлагая конкретные шаги по оптимизации.
Текст промпта:
*****
Ты – администратор баз данных (DBA) с 20-летним опытом оптимизации SQL.
Задача: Проанализируй SQL-запрос и план его выполнения (EXPLAIN) и предложи варианты оптимизации.
Контекст:
1. СУБД: [укажите СУБД, например, «PostgreSQL 15»].
2. SQL-запрос: [вставьте сюда ваш SQL-запрос].
3. План выполнения (результат команды `EXPLAIN ANALYZE`): [вставьте сюда план выполнения].
Требования к анализу:
1. Найди самые «дорогие» операции в плане выполнения (например, `Seq Scan` на больших таблицах).
2. Объясни, почему эти операции являются узким местом.
3. Предложи конкретные действия для оптимизации. Это могут быть:
— Создание недостающих индексов (предоставь `CREATE INDEX` команду).
— Переписывание самого запроса для более эффективного выполнения.
— Изменение настроек СУБД, если это применимо.
Формат ответа: Структурированный отчет: 1. Проблема. 2. Анализ плана. 3. Рекомендации.
*****
Почему это работает: Промпт требует не просто «оптимизировать запрос», а работать с конкретными данными – самим запросом и, что важнее, планом его выполнения. Это позволяет ИИ провести детальный анализ, а не давать общие советы.
17. Написание скрипта для инвентаризации
Проблема: Нужно собрать актуальную информацию о конфигурации (ОС, ЦП, ОЗУ, диски) парка серверов.
Решение: Генерация скрипта, который собирает системную информацию и выводит ее в структурированном формате (например, CSV).
Текст промпта:
*****
Ты – системный администратор, которому поручили провести инвентаризацию серверов.
Задача: Напиши скрипт на [укажите язык, например, «Bash»], который собирает основную информацию о системе и выводит ее в формате CSV.
Требования к скрипту:
1. Скрипт должен собирать следующие данные:
— Имя хоста (Hostname).
— Название и версия ОС (OS Version).
— Модель процессора и количество ядер (CPU).
— Общий объем оперативной памяти в ГБ (RAM).
— Общий объем дискового пространства и процент использования (Disk Usage).
— IP-адрес основного сетевого интерфейса (IP Address).
2. Все данные должны выводиться в одну строку в формате CSV с разделителем-запятой. Первая строка вывода должна быть заголовком (Hostname,OS Version,CPU,…).
3. Используй стандартные утилиты Linux (`hostname`, `lsb_release`, `lscpu`, `free`, `df`, `ip`).
Формат ответа: Только код скрипта с комментариями.
*****
Почему это работает: Четкое определение формата вывода (CSV) и полей для сбора данных делает скрипт сразу пригодным для использования в автоматизированных системах и для последующей обработки в таблицах.
18. Генерация конфигурации VPN-сервера
Проблема: Нужно быстро развернуть VPN-сервер для безопасного доступа сотрудников к внутренней сети.
Решение: Промпт создает готовый конфигурационный файл для популярного VPN-решения (OpenVPN или WireGuard).
Текст промпта:
*****
Ты – эксперт по сетевой безопасности, настраивающий VPN-серверы.
Задача: Сгенерируй конфигурационный файл для сервера [укажите технологию, например, «WireGuard»].
Контекст:
1. Адрес VPN-сети: [укажите подсеть, например, «10.10.0.0/24»].
2. Адрес сервера в этой сети: [укажите, например, «10.10.0.1»].
3. Внешний порт, который будет слушать сервер: [укажите порт, например, «51820»].
4. Часть трафика клиентов должна направляться через VPN (split-tunnel). Клиентам нужен доступ только к внутренней сети [укажите подсеть, например, «192.168.1.0/24»].
Требования:
1. Сгенерируй файл конфигурации `wg0.conf` для сервера.
2. Включи в него настройки `[Interface]` и один пример секции `[Peer]` для первого клиента.
3. Добавь PostUp и PostDown правила для `iptables`, чтобы настроить маршрутизацию (NAT) для доступа клиентов в интернет через сервер (если это необходимо) и к внутренней сети.
4. Предоставь комментарии к ключевым параметрам.
Формат ответа: Только содержимое файла `wg0.conf`.
*****
Почему это работает: Запрос содержит все необходимые сетевые параметры (адреса, порты, маршруты), что позволяет ИИ сгенерировать не абстрактный пример, а практически готовый к использованию конфигурационный файл.
19. Составление инструкции для пользователя
Проблема: Пользователи постоянно задают одни и те же вопросы по настройке почтового клиента или подключению к Wi-Fi. Нужно создать понятную инструкцию.
Решение: ИИ генерирует пошаговую инструкцию с учетом того, что ее будет читать человек без технических знаний.
Текст промпта:
*****
Ты – сотрудник службы поддержки, который пишет инструкции для пользователей. Твой девиз: «Никаких сложных терминов!».
Задача: Напиши пошаговую иллюстрированную инструкцию для [опишите задачу, например, «настройки корпоративной почты в приложении Microsoft Outlook на Windows»].
Контекст:
— Тип почтового сервера: [например, «IMAP/SMTP»].
— Адрес сервера входящей почты (IMAP): [например, «imap.mycompany.ru»].
— Порт и шифрование (IMAP): [например, «993, SSL/TLS»].
— Адрес сервера исходящей почты (SMTP): [например, «smtp.mycompany.ru»].
— Порт и шифрование (SMTP): [например, «465, SSL/TLS»].
— Логин: [например, «полный адрес электронной почты»].
Требования к инструкции:
1. Инструкция должна быть в виде нумерованного списка шагов.
2. Каждый шаг должен описывать одно простое действие.
3. Используй очень простой язык. Вместо «аутентификация» пиши «ввод пароля».
4. Для каждого шага укажи, на какую кнопку нажать или в какое поле что ввести. Используй кавычки для названий кнопок и полей.
5. В местах, где пользователь должен ввести свои данные, используй плейсхолдеры, например, «Ваш e-mail» или «Ваш пароль».
Формат ответа: Нумерованный список шагов.
*****
Почему это работает: Четкое указание на простую лексику и пошаговый формат, а также предоставление всех технических параметров, позволяет ИИ сфокусироваться на форме подачи, создавая действительно дружелюбное руководство.
20. Анализ конфигурационного файла
Проблема: Сервис работает нестабильно, и есть подозрение на ошибки в его конфигурационном файле.
Решение: ИИ анализирует конфиг на предмет распространенных ошибок, опечаток и неоптимальных настроек.
Текст промпта:
*****
Ты – эксперт по [название ПО, например, «PostgreSQL»] с глубоким знанием всех параметров конфигурации.
Задача: Проанализируй конфигурационный файл `postgresql.conf` и дай рекомендации по его улучшению.
Контекст:
— Версия ПО: [например, «PostgreSQL 14»].
— Характеристики сервера: [например, «16 ядер ЦП, 64 ГБ ОЗУ, SSD-диски»].
— Нагрузка: [например, «OLTP, высоконагруженная система с большим количеством коротких транзакций»].
— Конфигурационный файл для анализа: [вставьте сюда содержимое файла].
Требования к анализу:
1. Проверь файл на синтаксические ошибки или опечатки.
2. Найди параметры, которые не соответствуют лучшим практикам для указанной нагрузки и характеристик сервера (например, слишком маленький `shared_buffers` или `work_mem`).
3. Предложи оптимальные значения для ключевых параметров производительности.
4. Укажи на любые небезопасные настройки (например, `listen_addresses = ‘*’`).
Формат ответа:
1. Обнаруженные проблемы: `[параметр]: [текущее значение] — [почему это плохо]`.
2. Рекомендуемые изменения: `[параметр]: [рекомендуемое значение] — [почему это улучшит ситуацию]`.
*****
Почему это работает: Предоставление контекста (характеристики сервера, тип нагрузки) критически важно. Это позволяет ИИ давать не общие, а кастомизированные под конкретную систему рекомендации.
21. Генерация скрипта для очистки системы
Проблема: Со временем на серверах накапливаются временные файлы, старые логи и кэш, что съедает дисковое пространство.
Решение: Создание безопасного скрипта для автоматической очистки «мусора».
Текст промпта:
*****
Ты – осторожный Linux-администратор. Твой главный принцип: «Семь раз отмерь, один раз удали».
Задача: Напиши Bash-скрипт для безопасной очистки дискового пространства на Linux-сервере.
Требования к скрипту:
1. Скрипт должен выполнять следующие действия:
— Очищать кэш пакетного менеджера (`apt` или `yum/dnf`).
— Удалять старые ядра Linux, кроме текущего и предыдущего.
— Находить и удалять файлы логов с расширением `.log.1`, `.log.gz`, `.old` в директории `/var/log`, которые не изменялись более [укажите количество дней, например, «30»] дней.
— Очищать директорию `/tmp` от файлов старше [укажите количество дней, например, «7»] дней.
2. Перед каждым действием по удалению скрипт должен выводить сообщение о том, что он собирается делать.
3. Включи «защиту от дурака»: скрипт не должен выполняться, если запущен не от имени root.
Формат ответа: Только код скрипта с подробными комментариями.
*****
Почему это работает: Роль «осторожного администратора» и требование «защиты от дурака» нацеливают ИИ на создание не просто эффективного, но и безопасного скрипта, что критически важно для задач, связанных с удалением файлов.
22. Написание технического задания
Проблема: Есть идея для небольшого внутреннего инструмента, но нужно ее формализовать, чтобы передать в разработку или сделать самому в свободное время.
Решение: ИИ помогает структурировать мысли и составить краткое, но емкое техническое задание.
Текст промпта:
*****
Ты – системный аналитик, который помогает техническим специалистам превращать идеи в формализованные требования.
Задача: Напиши краткое техническое задание (ТЗ) на разработку [название инструмента, например, «веб-интерфейса для управления резервными копиями»].
Контекст:
— Идея: [опишите идею в 1-2 предложениях, например, «Сделать простую веб-страницу, где можно видеть список бэкапов, их статус и запускать восстановление в один клик»].
— Целевые пользователи: [например, «системные администраторы, служба поддержки»].
— Технологический стек: [например, «Python (Flask) + HTML/JavaScript»].
Требования к ТЗ:
Структурируй документ следующим образом:
1. Назначение системы: Какую проблему решает инструмент?
2. Требования к функциональности:
— Опиши основные функции в формате «Пользователь должен иметь возможность…».
— Например: «видеть список доступных резервных копий с датами», «восстанавливать выбранную копию на тестовый стенд», «получать уведомление об успешном/неуспешном восстановлении».
3. Требования к интерфейсу:
— Кратко опиши, какие элементы должны быть на главном экране (таблица, кнопки и т.д.).
4. Нефункциональные требования:
— Упомяни требования к безопасности (например, «доступ только для авторизованных пользователей»).
Формат ответа: Текст технического задания.
*****
Почему это работает: Промпт предоставляет ИИ стандартную структуру ТЗ (назначение, функциональные, нефункциональные требования), что позволяет быстро превратить расплывчатую идею в документ, понятный разработчикам.
23. Подготовка ответа для IT-аудита
Проблема: Пришли аудиторы и запрашивают информацию о политиках и процедурах. Нужно подготовить официальный и корректный ответ.
Решение: ИИ генерирует текст ответа на типичный запрос аудитора, используя формальный и точный язык.
Текст промпта:
*****
Ты – руководитель IT-отдела, готовящий ответы на запросы внутренних и внешних аудиторов.
Задача: Подготовь официальный ответ на следующий запрос аудитора: «Просим предоставить описание вашей политики управления резервным копированием критически важных данных».
Контекст:
Наша реальная политика такова:
— Критически важные данные: [например, «базы данных 1С и файловые хранилища»].
— Частота полного бэкапа: [например, «ежедневно, ночью»].
— Частота инкрементального бэкапа: [например, «каждый час»].
— Место хранения: [например, «основная копия на локальном СХД, вторая копия в географически удаленном ЦОД»].
— Срок хранения: [например, «ежедневные — 14 дней, еженедельные — 1 месяц, ежемесячные — 1 год»].
— Проверка восстановления: [например, «ежеквартально, на тестовом стенде»].
Требования к ответу:
1. Используй формальный, деловой стиль.
2. Структурируй ответ по пунктам, соответствующим аспектам политики (объекты, частота, хранение, проверка).
3. Не сообщай лишней информации, отвечай строго на поставленный вопрос.
Формат ответа: Текст письма-ответа.
*****
Почему это работает: ИИ выступает в роли «переводчика» с внутреннего технического жаргона на формальный язык для внешних проверяющих. Предоставление реальных параметров политики позволяет создать правдоподобный и точный документ.
24. Создание политики паролей для домена
Проблема: Нужно ужесточить требования к паролям в домене Active Directory, но сложно сбалансировать безопасность и удобство.
Решение: ИИ помогает сформулировать сбалансированную парольную политику и предоставляет команды для ее применения.
Текст промпта:
*****
Ты – специалист по безопасности Active Directory. Твоя задача – разработать и внедрить Fine-Grained Password Policy (FGPP).
Задача: Создай новую политику паролей для группы пользователей [название группы, например, «Администраторы домена»].
Контекст: Цель – максимальная безопасность для привилегированных учетных записей.
Требования к политике:
— Минимальная длина пароля: [например, «14 символов»].
— Сложность: Пароль должен содержать символы из трех категорий (заглавные, строчные, цифры, спецсимволы).
— Срок действия пароля: [например, «60 дней»].
— Длина журнала паролей: [например, «запрещено использовать последние 24 пароля»].
— Порог блокировки учетной записи: [например, «блокировать после 5 неудачных попыток входа»].
— Длительность блокировки: [например, «30 минут»].
Формат ответа:
1. Краткое обоснование выбранных параметров.
2. Полный набор команд PowerShell для создания и применения этой политики (FGPP) к указанной группе.
*****
Почему это работает: Промпт использует профессиональную терминологию (FGPP) и запрашивает не только описание политики, но и конкретные PowerShell-команды для ее внедрения, что делает ответ максимально практичным.
25. Ротация лог-файлов
Проблема: Лог-файлы приложений разрастаются до гигантских размеров, занимая все место на диске.
Решение: Генерация конфигурации для стандартной утилиты `logrotate`.
Текст промпта:
*****
Ты – Linux-администратор, который заботится о порядке на дисках.
Задача: Напиши конфигурационный файл для `logrotate` для управления логами кастомного приложения.
Контекст:
— Путь к лог-файлу: [укажите путь, например, «/var/log/myapp/app.log»].
— Пользователь и группа, от имени которых работает приложение: [например, «myapp:myapp»].
Требования к ротации:
— Ротация должна происходить ежедневно.
— Старые логи нужно сжимать (compress).
— Хранить [например, «14»] ротированных файлов.
— Создавать новый пустой лог-файл после ротации с правами [например, «640»] и владельцем [например, «myapp:myapp»].
— Если лог-файл пуст, ротацию не производить.
— После ротации необходимо выполнить команду для перезагрузки логов в приложении: [например, «systemctl kill -s HUP myapp.service»].
Формат ответа: Только содержимое конфигурационного файла для `logrotate` (например, `/etc/logrotate.d/myapp`).
*****
Почему это работает: Промпт перечисляет все ключевые директивы `logrotate` (daily, compress, rotate, create, postrotate), что позволяет сгенерировать полный и корректный файл конфигурации.
26. Автоматическая установка ПО
Проблема: Нужно установить одинаковый набор ПО на несколько новых машин. Делать это вручную – долго и скучно.
Решение: Генерация «однострочника» для неинтерактивной установки пакетов.
Текст промпта:
*****
Ты – системный администратор, который любит автоматизировать все, что можно.
Задача: Напиши одну команду для терминала, которая установит стандартный набор утилит на свежую систему.
Контекст:
— Операционная система: [например, «Ubuntu 22.04»].
— Пакетный менеджер: `apt`.
— Список пакетов для установки: [перечислите пакеты, например, «mc, htop, curl, wget, git, ncdu, net-tools»].
Требования к команде:
1. Команда должна сначала обновить список пакетов.
2. Затем установить все перечисленные пакеты за один раз.
3. Установка должна пройти в неинтерактивном режиме, без запросов «Y/n».
Формат ответа: Только одна строка с полной командой.
*****
Почему это работает: Задача максимально конкретизирована (одна команда, неинтерактивный режим), что идеально подходит для генерации короткого и утилитарного решения.
27. Диагностика производительности сервера
Проблема: Пользователи жалуются, что сервер «тормозит», но непонятно, где именно проблема – в ЦП, памяти, дисках или сети.
Решение: Промпт генерирует план пошаговой диагностики с использованием стандартных утилит.
Текст промпта:
*****
Ты – эксперт по производительности Linux-систем, «доктор Хаус» для серверов.
Задача: Составь пошаговый план для диагностики общей низкой производительности на Linux-сервере.
Контекст: Сервер начал медленно отвечать на запросы, видимых ошибок в логах нет.
Требования к плану:
Предложи последовательность команд для проверки основных подсистем. Для каждой команды объясни, на что обращать внимание в ее выводе.
1. Общая нагрузка: Как быстро оценить загрузку ЦП, памяти и Load Average (например, с помощью `uptime` и `htop`).
2. Процессор (ЦП): Как найти процессы, которые больше всего потребляют процессорное время (`top`/`htop`).
3. Память (ОЗУ): Как проверить использование оперативной памяти и свопа (`free -h`), и кто ее «ест».
4. Дисковый ввод/вывод (I/O): Как определить, есть ли «бутылочное горлышко» в дисковой подсистеме и какие процессы активно пишут/читают (`iostat`, `iotop`).
5. Сеть: Как проверить наличие большого количества сетевых соединений или ошибок на интерфейсах (`ss -s`, `netstat`).
Формат ответа: Нумерованный список с командами и пояснениями.
*****
Почему это работает: План построен по методу исключения – от общей картины к частностям. Это логичная и эффективная стратегия диагностики, которую ИИ воспроизводит, следуя структуре промпта.
28. Мониторинг состояния дисков
Проблема: Внезапный отказ диска в RAID-массиве может привести к потере данных. Нужно настроить мониторинг.
Решение: Генерация скрипта, который использует `smartmontools` для проверки SMART-статуса дисков.
Текст промпта:
*****
Ты – администратор, который знает, что диски не вечны.
Задача: Напиши Bash-скрипт, который проверяет SMART-статус всех дисков в системе и отправляет уведомление в случае проблем.
Контекст:
— Утилита для проверки: `smartctl` (из пакета `smartmontools`).
— Уведомление нужно отправить на email: [укажите ваш email].
Требования к скрипту:
1. Скрипт должен автоматически найти все диски в системе (например, `/dev/sd*`, `/dev/nvme*`).
2. Для каждого диска он должен выполнить `smartctl -H` для проверки общего состояния здоровья.
3. Если вывод команды для любого из дисков не содержит «PASSED», скрипт должен сформировать и отправить email-сообщение с темой «ВНИМАНИЕ: Проблема с диском на сервере [имя хоста]» и телом, содержащим полный вывод `smartctl -a` для сбойного диска.
4. Если все диски в порядке, скрипт должен завершиться молча.
Формат ответа: Только код скрипта.
*****
Почему это работает: Промпт четко определяет триггер (не «PASSED») и действие (отправка email с подробным отчетом), что позволяет создать полезный инструмент проактивного мониторинга.
29. Миграция с CentOS на альтернативный дистрибутив
Проблема: CentOS 7/8 больше не поддерживается, и нужно спланировать миграцию на другой Enterprise Linux дистрибутив, например, Astra Linux или AlmaLinux.
Решение: ИИ генерирует высокоуровневый план действий, который учитывает основные риски и шаги.
Текст промпта:
*****
Ты – системный архитектор, планирующий крупные инфраструктурные изменения.
Задача: Составь стратегический план миграции парка серверов с CentOS 8 на [укажите целевой дистрибутив, например, «Astra Linux 1.7»].
Контекст: В парке есть разные типы серверов: веб-серверы, серверы баз данных, серверы приложений.
Требования к плану:
План должен быть не технической инструкцией, а стратегией. Опиши следующие этапы:
1. Аудит и инвентаризация: Какие шаги предпринять для составления полного списка серверов, установленного ПО и их зависимостей.
2. Выбор пилотной группы: Как выбрать некритичные серверы для первого этапа миграции, чтобы отработать процесс.
3. Тестирование совместимости: Какие действия нужно выполнить, чтобы убедиться, что все используемые приложения и скрипты будут работать на новой ОС. Особое внимание удели потенциальным проблемам (версии библиотек, системные утилиты).
4. Разработка процесса миграции: Опиши два возможных подхода: «in-place upgrade» (если поддерживается) и «чистая установка с переносом данных». Укажи плюсы и минусы каждого.
5. Порядок миграции: В какой последовательности следует мигрировать серверы (например, сначала dev, потом test, потом prod; сначала менее важные, потом более важные).
Формат ответа: Структурированный текст с заголовками для каждого этапа.
*****
Почему это работает: Запрос смещает фокус с технических команд на стратегическое планирование. Это позволяет получить не просто инструкцию, а дорожную карту, которая поможет избежать хаоса и правильно организовать сложный проект.
Продвинутые приемы для управления выводом ИИ
Помимо точной постановки задачи, существуют специальные «модификаторы» и команды, которые позволяют лучше контролировать результат. Это ваш пульт управления нейросетью. Знание этих приемов часто отделяет хороший результат от превосходного.
| Прием / Модификатор | Описание и назначение | Пример использования в запросе |
| «Действуй пошагово» | Заставляет ИИ разбивать сложное рассуждение или задачу на последовательные логические шаги. Особенно полезно для диагностики и планирования. | «Проанализируй эту проблему и предложи решение. Действуй пошагово, объясняя каждый свой шаг.» |
| «Представь в виде таблицы» | Лучший способ получить структурированное сравнение или список с несколькими атрибутами. ИИ отлично справляется с созданием таблиц, если его об этом попросить. | «Сравни Nginx и Apache. Представь результат в виде таблицы с критериями: производительность, конфигурация, использование памяти.» |
| «Исключи…» | Помогает отсечь нежелательные или устаревшие решения. Например, можно запретить использование определенных библиотек или методов. | «Напиши скрипт для парсинга HTML. Исключи использование регулярных выражений для этой задачи, используй библиотеку BeautifulSoup.» |
| «Предложи три альтернативных решения» | Полезно, когда нет единственно верного ответа. Это заставляет ИИ рассмотреть задачу с разных сторон и предложить несколько подходов с их плюсами и минусами. | «Как мне организовать резервное копирование? Предложи три альтернативных решения: на основе rsync, с помощью BorgBackup и с использованием облачного хранилища.» |
| «Оцени плюсы и минусы» | Запрос на сбалансированный анализ. Вместо того чтобы хвалить одно решение, ИИ будет вынужден указать и на его недостатки. | «Я думаю использовать Ansible для управления конфигурацией. Оцени плюсы и минусы этого подхода по сравнению с написанием собственных скриптов.» |
| «Объясни как для пятилетнего» (ELi5) | Утрированный прием, который заставляет ИИ максимально упростить объяснение, отбросив всю техническую терминологию и используя простые аналогии. | «Что такое DNS? Объясни как для пятилетнего.« |
Неочевидные советы по работе с нейросетями
Когда вы освоите базовые и продвинутые приемы, можно переходить на следующий уровень. Эти советы помогут вам выжать максимум из нейросетей и интегрировать их в свою работу еще глубже. Некоторые из них могут показаться контринтуитивными, но именно в этом их ценность.
- Используйте ИИ для генерации негативных сценариев. Попросите нейросеть выступить в роли «красной команды» или злоумышленника. Дайте ей описание своей системы и спросите: «Если бы ты был хакером, как бы ты попытался взломать эту систему?». Это отличный способ найти неочевидные уязвимости и слабые места в вашей защите.
- Сохраняйте удачные диалоги как шаблоны. Если вы потратили 10-15 итераций, чтобы добиться от ИИ идеального скрипта или плана, не дайте этой работе пропасть. Сохраните всю цепочку диалога в текстовый файл. В следующий раз, когда возникнет похожая задача, вам не придется начинать с нуля – у вас будет готовый «скелет» рассуждений.
- Генерируйте документацию из кода. У вас есть сложный скрипт или конфигурационный файл без комментариев? Отдайте его нейросети с задачей «Проанализируй этот код и напиши для него подробную документацию в формате Markdown». ИИ отлично справляется с реверс-инжинирингом логики и объяснением того, что делает каждая часть кода.
- Создавайте обучающие симуляции для стажеров. Попросите ИИ сгенерировать сценарий поломки. Например: «Представь, что ты – Linux-сервер, у которого пропал доступ к базе данных. Я – младший администратор. Задавай мне наводящие вопросы и реагируй на мои команды, чтобы я смог найти и устранить проблему». Это безопасный и эффективный способ обучения.
- Переводите «с технического на русский» и обратно. Нейросеть – идеальный переводчик между миром IT и миром бизнеса. Используйте ее, чтобы превратить отчет об ошибках в понятное письмо для клиента или, наоборот, чтобы перевести расплывчатый запрос от менеджера («сделайте, чтобы все летало») в конкретный список технических задач.
- Используйте ИИ как спарринг-партнера для идей. Прежде чем приступить к реализации сложного проекта, «обсудите» его с нейросетью. Опишите свой план и спросите: «Какие риски я не учел? Какие есть альтернативные подходы? Что может пойти не так?». Часто ИИ подсвечивает проблемы, о которых вы даже не задумывались.