💡 Продвинутый совет для Linux-админов:
Хочешь узнать, какие процессы используют больше всего памяти (включая shared libraries, кэш и swap) — но не по PID, а по исполняемому бинарнику?
Вот способ сгруппировать потребление памяти по программам, а не по процессам.
📊 Использование RAM по исполняемым программам (не PID)
📌 Отлично подходит для выявления прожорливых демонов, особенно если у вас десятки fork-процессов одного сервиса.
#linux #memory #admin #devops #monitoring
Хочешь узнать, какие процессы используют больше всего памяти (включая shared libraries, кэш и swap) — но не по PID, а по исполняемому бинарнику?
Вот способ сгруппировать потребление памяти по программам, а не по процессам.
sudo ps -e -o pid,comm --no-headers | while read pid cmd; do
grep -q "^Name:\s\+$cmd$" /proc/$pid/status 2>/dev/null &&
awk '/^RssAnon:/ {rss+=$2} END {if (rss) printf "%s %d MiB\n", "'$cmd'", rss/1024}' /proc/$pid/status
done | sort -k2 -nr | uniq
📊 Использование RAM по исполняемым программам (не PID)
📌 Отлично подходит для выявления прожорливых демонов, особенно если у вас десятки fork-процессов одного сервиса.
#linux #memory #admin #devops #monitoring
🔥16👍6❤1
💡 Ещё один продвинутый совет для Linux-админов:
Проверь, какие процессы активно используют swap — даже если в системе вроде бы хватает RAM.
Это поможет найти медленные службы, которые вы не ожидали увидеть в свопе, и улучшить производительность.
🐌 Процессы, активно использующие swap (swap hog detector)
📌 Даже если swap включен "про запас", вы удивитесь, сколько "вроде бы активных" сервисов частично выгружены на диск — отсюда тормоза, задержки в API, медленные реакции.
Решения:
– пересмотреть
– перезапустить эти процессы
– увеличить RAM или выделить hugepages
#linux #performance #swap #memory #sysadmin #devops
Проверь, какие процессы активно используют swap — даже если в системе вроде бы хватает RAM.
Это поможет найти медленные службы, которые вы не ожидали увидеть в свопе, и улучшить производительность.
for pid in $(ls /proc | grep -E '^[0-9]+$'); do
cmd=$(cat /proc/$pid/comm 2>/dev/null)
swap=$(grep VmSwap /proc/$pid/status 2>/dev/null | awk '{print $2}')
if [ "$swap" != "" ] && [ "$swap" -gt 0 ]; then
echo "$swap KB swap used by $cmd (PID $pid)"
fi
done | sort -nr | head
🐌 Процессы, активно использующие swap (swap hog detector)
📌 Даже если swap включен "про запас", вы удивитесь, сколько "вроде бы активных" сервисов частично выгружены на диск — отсюда тормоза, задержки в API, медленные реакции.
Решения:
– пересмотреть
vm.swappiness – перезапустить эти процессы
– увеличить RAM или выделить hugepages
#linux #performance #swap #memory #sysadmin #devops
🔥9❤3🥰2🖕1
📌 20 ключевых навыков для Linux-администратора
Если хочешь уверенно работать с Linux в DevOps/инфраструктуре — вот карта, по которой можно идти:
— Командная строка: cd, ls, ps, top, tmux, ssh
— Права и пользователи: chmod, chown, группы, sudo
— SSH-ключи и безопасность доступа
— Firewall: iptables, ufw
— Резервные копии: rsync, cron
— Bash/Python скриптинг для автоматизации
— Package managers: apt, yum, dnf
— Network troubleshooting: ping, traceroute, netstat, ss, ip
— Процессы: ps, top, systemd
— Диски: df, du, fdisk, LVM
— Git и контроль версий
— Контейнеры: Docker, Podman + основы Kubernetes
— Конфигурационное управление: Ansible, Puppet, Chef
— Облака: AWS/Azure/GCP
— CI/CD: Jenkins, GitLab CI, GitHub Actions
— Мониторинг: Prometheus, Grafana, ELK
— IaC: Terraform, CloudFormation
— Оркестрация: Kubernetes, Docker Swarm
— Сертификации: AWS, RHCE, CKA
— Постоянное обучение и практика
Linux — это фундамент для DevOps, SRE и облачной инфраструктуры.
Освой базу, автоматизируй рутину и прокачивайся каждый день 🚀
#linux #devops #sysadmin #infrastructure #cloud
Если хочешь уверенно работать с Linux в DevOps/инфраструктуре — вот карта, по которой можно идти:
— Командная строка: cd, ls, ps, top, tmux, ssh
— Права и пользователи: chmod, chown, группы, sudo
— SSH-ключи и безопасность доступа
— Firewall: iptables, ufw
— Резервные копии: rsync, cron
— Bash/Python скриптинг для автоматизации
— Package managers: apt, yum, dnf
— Network troubleshooting: ping, traceroute, netstat, ss, ip
— Процессы: ps, top, systemd
— Диски: df, du, fdisk, LVM
— Git и контроль версий
— Контейнеры: Docker, Podman + основы Kubernetes
— Конфигурационное управление: Ansible, Puppet, Chef
— Облака: AWS/Azure/GCP
— CI/CD: Jenkins, GitLab CI, GitHub Actions
— Мониторинг: Prometheus, Grafana, ELK
— IaC: Terraform, CloudFormation
— Оркестрация: Kubernetes, Docker Swarm
— Сертификации: AWS, RHCE, CKA
— Постоянное обучение и практика
Linux — это фундамент для DevOps, SRE и облачной инфраструктуры.
Освой базу, автоматизируй рутину и прокачивайся каждый день 🚀
#linux #devops #sysadmin #infrastructure #cloud
🥴9❤4🔥1🥰1
7 бесплатных ресурсов, чтобы прокачаться в Linux и DevOps 👇
1) Bash → blog.sysxplore.com
2) Linux → linuxopsys.com
3) AWS → explore.skillbuilder.aws
4) Azure → learn.microsoft.com
5) DevOps → edx.org/learn/devops
6) Docker → docker-curriculum.com
7) Kubernetes → kubernetes.io
Фундамент DevOps = Linux + Shell + облака + контейнеры + оркестрация.
Начни с базиса — дальше всё соберётся.
#linux #devops #cloud #docker #kubernetes
1) Bash → blog.sysxplore.com
2) Linux → linuxopsys.com
3) AWS → explore.skillbuilder.aws
4) Azure → learn.microsoft.com
5) DevOps → edx.org/learn/devops
6) Docker → docker-curriculum.com
7) Kubernetes → kubernetes.io
Фундамент DevOps = Linux + Shell + облака + контейнеры + оркестрация.
Начни с базиса — дальше всё соберётся.
#linux #devops #cloud #docker #kubernetes
edX
DevOps courses online | edX
Learn DevOps from top universities on edX. Master CI/CD, cloud computing, and agile to advance your software engineering career.
👍14🍌4
This media is not supported in your browser
VIEW IN TELEGRAM
🚀 Docker за 30 секунд - поймёт даже новичок
Docker кажется сложным, пока не разложишь его на 5 элементов 👇
1. Docker Client
Это то, с чем ты работаешь каждый день:
команды build, push, pull, run
2. Docker Host + Daemon
“Мозг” Docker на машине
- хранит образы
- запускает контейнеры
- управляет всем процессом
3. Docker Registry
Хранилище образов
(например: MySQL, NGINX, Redis)
Ты либо скачиваешь оттуда, либо пушишь свои
4. Images vs Containers
- Image - это шаблон
- Container - это запущенный image
5. Как всё работает вместе
- build → создаешь image
- push → отправляешь в registry
- pull → скачиваешь image
- run → запускаешь container
💡 Вся магия Docker - это просто поток:
Если понимаешь этот flow - понимаешь Docker.
Именно это спрашивают на собеседованиях. #devops #docker #linux
https://www.youtube.com/shorts/y0dNbPCZI6E
🖥 Полезные Linux ресурсы 🚀 Max
@DevOPSitsec
Docker кажется сложным, пока не разложишь его на 5 элементов 👇
1. Docker Client
Это то, с чем ты работаешь каждый день:
команды build, push, pull, run
2. Docker Host + Daemon
“Мозг” Docker на машине
- хранит образы
- запускает контейнеры
- управляет всем процессом
3. Docker Registry
Хранилище образов
(например: MySQL, NGINX, Redis)
Ты либо скачиваешь оттуда, либо пушишь свои
4. Images vs Containers
- Image - это шаблон
- Container - это запущенный image
5. Как всё работает вместе
- build → создаешь image
- push → отправляешь в registry
- pull → скачиваешь image
- run → запускаешь container
💡 Вся магия Docker - это просто поток:
Client → Daemon → Registry → ContainerЕсли понимаешь этот flow - понимаешь Docker.
Именно это спрашивают на собеседованиях. #devops #docker #linux
https://www.youtube.com/shorts/y0dNbPCZI6E
@DevOPSitsec
Please open Telegram to view this post
VIEW IN TELEGRAM
👎7🖕6👍3❤2
Хочешь держать несколько терминальных сессий открытыми и не плодить кучу окон?
Используй `tmux`.
Он позволяет запускать отдельные сессии, делить терминал на панели, отключаться от работы и потом возвращаться к ней с того же места.
Например, ты подключился к серверу, запустил долгий процесс и не хочешь потерять его при разрыве SSH. Создаешь сессию:
tmux new -s myserver
Отключаешься от нее - процесс продолжает работать. Потом можно посмотреть список сессий:
tmux ls
И вернуться обратно:
tmux attach -t myserver
tmux превращает один терминал в полноценное рабочее пространство.
Сессии, окна, панели, detach, reattach - и ты больше не зависишь от одного открытого терминального окна.
#linux #terminal #tmux #devops
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12👍6❤3👎3
This media is not supported in your browser
VIEW IN TELEGRAM
Хватит держать сервер нараспашку: базовый хардэнинг Linux за 8 шагов
Большинство серверов взламывают не через киношные zero-day, а через базовые ошибки: парольный SSH, открытые порты, root-вход и отсутствие бэкапов.
В этом ролике короткий чек-лист, как обезопасить Linux-сервер с нуля.
Первое: вход только по SSH-ключу, парольную авторизацию отключить.
Второе: запретить прямой вход под root и работать через sudo.
Третье: закрыть все лишние порты через UFW или iptables.
Четвёртое: регулярно ставить security updates.
Дальше: fail2ban против перебора паролей, двухфакторка там, где возможно, минимум прав для пользователей и сервисов.
И обязательно бэкапы. Не “когда-нибудь”, а по расписанию и отдельно от сервера.
Финальный слой: логи и мониторинг, чтобы видеть подозрительную активность до того, как сервер уже лег.
Минимум, который реально нужен: SSH-ключи, firewall, обновления, fail2ban и бэкапы.
Полезно бэкендерам, DevOps и всем, кто держит VPS или продакшен.
#Linux #сервер #безопасность #DevOps #SSH #fail2ban #firewall #VPS #хардэнинг #кибербезопасность #бэкапы #системноеадминистрирование
Большинство серверов взламывают не через киношные zero-day, а через базовые ошибки: парольный SSH, открытые порты, root-вход и отсутствие бэкапов.
В этом ролике короткий чек-лист, как обезопасить Linux-сервер с нуля.
Первое: вход только по SSH-ключу, парольную авторизацию отключить.
Второе: запретить прямой вход под root и работать через sudo.
Третье: закрыть все лишние порты через UFW или iptables.
Четвёртое: регулярно ставить security updates.
Дальше: fail2ban против перебора паролей, двухфакторка там, где возможно, минимум прав для пользователей и сервисов.
И обязательно бэкапы. Не “когда-нибудь”, а по расписанию и отдельно от сервера.
Финальный слой: логи и мониторинг, чтобы видеть подозрительную активность до того, как сервер уже лег.
Минимум, который реально нужен: SSH-ключи, firewall, обновления, fail2ban и бэкапы.
Полезно бэкендерам, DevOps и всем, кто держит VPS или продакшен.
#Linux #сервер #безопасность #DevOps #SSH #fail2ban #firewall #VPS #хардэнинг #кибербезопасность #бэкапы #системноеадминистрирование
👍11❤8🔥4✍2
C умел «объектный стиль» задолго до модных споров про ООП.
В Linux-драйверах это видно особенно хорошо. Каждый драйвер фактически реализует интерфейс, просто заполняя структуру с указателями на функции.
file_operations из include/linux/fs.h - хороший пример. Ядро говорит: вот набор операций, которые может поддерживать файл, сокет или устройство. Драйвер сам решает, какие обработчики дать:
open
read
write
release
mmap
fsync
unlocked_ioctl
Если операция не нужна, поле остаётся NULL, и ядро использует поведение по умолчанию там, где это возможно.
По сути это тот же контракт между системой и реализацией, только без классов, наследования и рантаймовой магии. Есть таблица функций, есть объект, есть набор действий, которые с ним можно выполнить.
Именно поэтому C до сих пор живёт в ядрах, драйверах и системном коде. Он не навязывает модель абстракций, но даёт достаточно низкоуровневых инструментов, чтобы собрать нужную модель самому.
Просто вместо красивого слова interface у тебя struct с function pointers.
#programming #linux #c
В Linux-драйверах это видно особенно хорошо. Каждый драйвер фактически реализует интерфейс, просто заполняя структуру с указателями на функции.
file_operations из include/linux/fs.h - хороший пример. Ядро говорит: вот набор операций, которые может поддерживать файл, сокет или устройство. Драйвер сам решает, какие обработчики дать:
open
read
write
release
mmap
fsync
unlocked_ioctl
Если операция не нужна, поле остаётся NULL, и ядро использует поведение по умолчанию там, где это возможно.
По сути это тот же контракт между системой и реализацией, только без классов, наследования и рантаймовой магии. Есть таблица функций, есть объект, есть набор действий, которые с ним можно выполнить.
Именно поэтому C до сих пор живёт в ядрах, драйверах и системном коде. Он не навязывает модель абстракций, но даёт достаточно низкоуровневых инструментов, чтобы собрать нужную модель самому.
Просто вместо красивого слова interface у тебя struct с function pointers.
#programming #linux #c
👍4👎1😁1🖕1
This media is not supported in your browser
VIEW IN TELEGRAM
Прокачай терминал Linux: 7 утилит, которые экономят время
Описание: Что установить на Linux для удобной разработки? Быстрый поиск по коду, переходы между проектами, наглядный Git и сохранение рабочих сессий - 7 полезных инструментов с примерами.
#Linux #Терминал #Программирование #DevOps #НастройкаLinux
Описание: Что установить на Linux для удобной разработки? Быстрый поиск по коду, переходы между проектами, наглядный Git и сохранение рабочих сессий - 7 полезных инструментов с примерами.
#Linux #Терминал #Программирование #DevOps #НастройкаLinux
😁3❤2🌚1