для упрощения рутинных задач 1. Проверка использования дискового пространства Нехватка места на диске может привести к сбою приложений. Эта команда выводит список всех смонтированных разделов и выделяет те, которые утилизированы на 80% и более. ==`df -h | awk '$5+0 > 80 {print}' - df -hотображает использование диска в удобном для чтения формате. - awk ‘$5+0 > 80 {print}’извлекает строки, в которых утилизация превышает 80%. 2. Поиск больших файлов, которые занимают место Определите 10 самых больших файлов в системе. ==`find / -type f -exec du -h {} + | sort -rh | head -10 - find / -type fищет все файлы. - du -hвычисляет размеры файлов в удобном для чтения формате. - sort -rhсортирует результаты по убыванию. - head -10ограничивает вывод 10 самыми большими файлами. 3. Отслеживание обновлений лога в реальном времени Просмотр файлов логов в режиме реального времени, с фильтрацией сообщений об ошибках. ==`tail -f /var/log/syslog | grep - line-buffered "error" - tail -fотслеживает файл журнала по мере добавления новых записей. - grep — line-buffered “error” фильтрует строки, содержащие "error". 4. Перезапуск службы в случае сбоя Проверка, что критически важная служба, такая как Nginx, всегда запущена. ==`systemctl is-active - quiet nginx || systemctl restart nginx - systemctl is-active — quiet nginx проверяет состояние службы. - Если она не запущена, systemctl restart nginx перезапускает ее. 5. Мониторинг использования CPU в режиме реального времени Проверка загрузки CPU в реальном времени для устранения неполадок с производительностью. ==`top -b -n 1 | grep "Cpu(s)" - top -b -n 1запускает «top» в пакетном режиме для одной итерации. - grep “Cpu(s)”извлекает сведения об использовании CPU. 6. Уничтожение самого ресурсоемкого процесса Поиск и завершение процесса, потребляющего больше всего ресурсов CPU. ==`kill -9 $(ps -eo pid,%cpu - sort=-%cpu | awk 'NR==2 {print $1}') - ps -eo pid,%cpu — sort=-%cpuвыводит список процессов, отсортированных по использованию CPU. - awk ‘NR\==2 {print $1}’выбирает процесс с наибольшим потреблением ЦП. - kill -9принудительно завершает его. 7. Получение публичного IP- адреса Быстрое получение публичного IP-адреса сервера. ==`curl -s ifconfig.me - Способ использует curl для запроса текущего публичного IP-адреса из «ifconfig.me». - -s Подавляет ненужный вывод. 8. Поиск всех открытых сетевых портов Перечисление всех активных прослушиваемых портов на вашем компьютере. ==`netstat -tulnp | grep LISTEN - netstat -tulnpотображает открытые порты и связанные с ними процессы. - grep LISTENфильтрует результаты по прослушиваемым портам. 9. Копирование SSH-ключа на удаленный сервер Настройка беспарольной SSH- аутентификации за секунды. ==`ssh-keygen -t rsa -b 2048 -q -N "" && ssh-copy-id user@remote_server - ssh-keygen создает пару ключей RSA. - ssh-copy-id передает открытый ключ на удаленный сервер. 10. Синхронизация файлов между серверами Использование rsync для зеркалирования файлов с одного сервера на другой. ==`rsync -avz /local/path user@remote:/remote/path - -a сохраняет разрешения и временные метки. - -v включает подробный режим. - -z сжимает данные для более быстрой передачи. 11. Планирование задач с помощью Cron Добавление задания cron для резервного копирования файлов каждую ночь в 2 часа ночи. ==`echo "0 2 * * * tar -czf / backup.tar.gz /important/data" | crontab - - 0 2 * * *планирует задание на 2 часа ночи ежедневно. - tar -czfсжимает и создает резервную копию "/important/data". 12. Загрузка файла в фоновом режиме Использование «wget» для загрузки больших файлов без блокировки терминала. ==`nohup wget -q https:// example.com/bigfile.zip & - nohup обеспечивает выполнение процесса даже после выхода из системы. - wget -q незаметно загружает файл. - & запускает процесс в фоновом режиме. 13. Поиск и удаление старых файлов логов Автоматическая очистка логов старше 7 дней. ==`find /var/log -name "*.log" -mtime +7 -exec rm -f {} \; - -mtime +7выбирает файлы старше 7 дней. - -exec rm -f {}удаляет их. 14. Проверка открыт ли порт на удаленном сервере Проверка открыт ли определенный порт (например, 443) на удаленном хосте. ==`nc -zv example.com 443 - nc -zvпроверяет соединение без отправки данных. - Полезно для устранения неполадок брандмауэра и подключения. 15. Список всех запущенных Docker-контейнеров Удобный просмотр активных контейнеров Docker. ==`docker ps - format "table {{.ID}} \t {{.Image}} \t {{.Status}}" - docker psвыводит список запущенных контейнеров. - — formatструктурирует вывод для лучшей читабельности. ========================= Подборка полезных скриптов для опытных Linux-админов 1) 🔍 Быстрый поиск крупных файлов (удобно перед очисткой диска) du -ah / | sort -rh | head -n 30 2) 🛑 Массовое убийство зависших процессов по шаблону pkill -f "pattern" 3) 🧼 Очистка старых логов/кэша старше X дней find /var/log -type f -mtime +7 -delete 4) 🧬 Проверка файловой системы без остановки fsck -n /dev/sdX 5) 📦 Список пакетов, обновлённых за последние 5 дней grep "upgrade" /var/log/dpkg.log | tail 6) 🕵️ Слежение за открытыми портами в реальном времени watch -n1 "ss -tulpn" 7) 📊 Сбор top-нагружающих процессов по CPU за минуту ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu | head 8) 🔁 Авто-рестарт службы при падении while true; do systemctl restart myservice; sleep 5; done 9) 🔗 Быстрый тест сетевой задержки и MTU tracepath google.com 10) 🔐 Сканирование слабых SSH-ключей ssh-audit -p 22 localhost Такие короткие утилитарные команды экономят кучу времени в рутине админа.