Admin Guides | Сисадмин
11.4K subscribers
1.23K photos
19 videos
34 files
558 links
Обучающий канал по ОС Linux & Windows для начинающих и действующих администраторов.

Админ, реклама: @Ak_Mihail
Биржа: https://telega.in/c/admguides

РКН: https://kurl.ru/nQejS
Download Telegram
💬 Вопрос на собеседовании для сисадмина

Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.


Вопрос: Что такое CPU isolcpus и как это влияет на производительность Linux-систем?

Ответ: Параметр isolcpus ядра Linux позволяет изолировать один или несколько процессоров от планировщика задач общего назначения. Это значит, что ядро не будет автоматически распределять на них обычные процессы, оставляя их “чистыми” для определённых критичных задач, например, для real-time приложений или высокопроизводительных сервисов.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍84🔥3👎1
Secure Copy больших файлов: rsync vs scp

При работе с десятками гигабайт через SSH обычный scp начинает тормозить.

Почему?

Потому что он копирует файл целиком, без возможности возобновления, и каждый раз создаёт новое TCP-соединение.

Rsync через SSH решает это:
Передача только изменений (--partial и --inplace)
Можно включить сжатие (-z)
Поддерживает батчевую передачу и возобновление

Примеры:

Копирование одного большого файла с rsync:

rsync -avz --progress /local/largefile user@remote:/backup/


Если соединение обрывается, можно повторно выполнить команду — rsync продолжит с места прерывания.

Копирование каталога с контрольным мультиплексированием SSH:

Host remote
HostName 203.0.113.10
User admin
ControlMaster auto
ControlPath ~/.ssh/cm-%r@%h:%p
ControlPersist 10m


А затем:

rsync -avz /local/dir remote:/backup/dir


Все повторные подключения будут идти через уже открытое TCP-соединение, экономя время.

scp с мультиплексом и сжатием:

scp -o ControlMaster=auto -o ControlPath=~/.ssh/cm-%r@%h:%p -C /local/largefile remote:/backup/


Но для больших директорий rsync остаётся более гибким и надёжным, особенно если нужно резервное копирование или синхронизация.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12👍93
🥴22👍16😐72😁2
Sysctl для серверов с большим числом подключений

Когда сервер обслуживает сотни тысяч TCP-сессий, стандартные настройки ядра Linux могут стать узким местом.

TIME_WAIT, переполнение очередей сокетов и медленный отклик — типичные признаки. Тут на помощь приходят параметры sysctl.

Основные настройки

net.ipv4.ip_local_port_range — диапазон локальных портов для исходящих соединений. Увеличение диапазона помогает избежать исчерпания портов при массовых подключениях.
net.ipv4.tcp_tw_reuse — разрешает повторное использование сокетов в состоянии TIME_WAIT для новых исходящих соединений.
net.ipv4.tcp_tw_recycle — ускоряет очистку TIME_WAIT (не рекомендуется для NAT).
net.core.netdev_max_backlog — размер очереди пакетов в драйвере сети. Увеличение помогает при пиках входящего трафика.

Измеряем эффект

До изменений:

ss -s | grep TIME-WAIT
cat /proc/sys/net/core/netdev_max_backlog


Применяем sysctl:

sudo sysctl -w net.ipv4.ip_local_port_range="1024 65535"
sudo sysctl -w net.ipv4.tcp_tw_reuse=1
sudo sysctl -w net.core.netdev_max_backlog=5000


После изменений: повторяем измерения TPS (запросов в секунду) и TIME_WAIT.

Вывод: больше соединений проходит без ошибок, очередь пакетов меньше переполняется, нагрузка на сервер равномернее.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍63
Bcachefs теперь «внешне поддерживаемая»

28 августа 2025 года Линус Торвальдс перевёл файловую систему Bcachefs в режим Externally maintained. 


Это значит, что ядро больше не принимает её изменения, а дальнейшая разработка ведётся вне основной кодовой базы.

Причина — конфликты с автором проекта Кентом Оверстритом: он присылает крупные изменения в неподходящее время, нарушая процесс ядра.

Торвальдс считает, что поздние релизы должны лишь исправлять ошибки, а Оверстрит настаивает на срочном исправлении багов для сохранности данных. Bcachefs остаётся экспериментальной ФС.
Please open Telegram to view this post
VIEW IN TELEGRAM
6👍2🤔1
Logrotate для нестандартных приложений

Стандартные сервисы вроде Nginx или syslog ротируются автоматически, а вот для нестандартных daemon или собственных приложений нужно использовать postrotate, sharedscripts и правильно обрабатывать сигнал HUP.

postrotate — команды после ротации (например, сигнал процессу перечитать лог).
sharedscripts — если несколько файлов ротируются, скрипт выполняется один раз.
HUP — заставляет daemon перечитать файл без перезапуска.

Пример для PostgreSQL:

/var/log/postgresql/*.log {
daily
rotate 7
compress
delaycompress
notifempty
missingok
sharedscripts
postrotate
systemctl reload postgresql > /dev/null 2>/dev/null || true
endscript
}


Здесь логи сжимаются и хранятся неделю, пустые файлы не ротируются, а PostgreSQL после ротации продолжает писать в новый файл.

Пример для Nginx:

/var/log/nginx/*.log {
daily
rotate 14
missingok
notifempty
sharedscripts
postrotate
[ -f /run/nginx.pid ] && kill -HUP `cat /run/nginx.pid`
endscript
}


Можно добавить уведомление админа через mail или Slack.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍93
Контейнер в Kubernetes постоянно перезапускается. Команда kubectl describe pod показывает:

Back-off restarting failed container Что это означает?
Anonymous Quiz
20%
kubelet не видит контейнер
57%
Pod зациклился в CrashLoopBackOff
7%
Подов слишком много в namespace
17%
Kubernetes перезапустил узел
5🔥2
DevOps, админы, разработчики, архитекторы — хватит закрывать глаза на «серого кардинала» кластера. 

9 сентября в 19:00 мы разберём все тонкости работы kubelet с ведущим DevOps-инженером и магистром Михаилом Чугуновым.

На вебинаре вы узнаете:
💡Как kubelet управляет жизненным циклом подов и почему без него кластер — как корабль без капитана 
💡Что происходит, когда kubelet падает, и как быстро возвращать систему в строй
💡Взаимодействие с API-сервером, CRI, CNI, CSI и kube-proxy — не только теория, но реальные практические советы
💡Как избежать катастроф из-за неправильной настройки kubelet и продумать архитектуру под микросервисы

🎁Бонусы для участников:
7% скидка на любой курс OTUS
Видео-урок: «Детальный разбор Kubernetes»
Видео-разбор: «строим конвейер поставки»

Не откладывай — количество мест ограничено, а кластер ждать не станет. 
Записывайся https://tglink.io/211848aff6ef

Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963. erid: 2W5zFG9LYkG
2👎2
Мониторинг открытых файлов: lsof

В Linux всё — это файл. Сюда попадают не только документы на диске, но и сокеты, устройства, пайпы.

Иногда это приводит к странным ситуациям: файл вроде удалили, а место на диске не освободилось. Или порт висит занятым, хотя процесс уже остановлен. 


В таких случаях незаменим инструмент lsof (list open files).

Несколько базовых приёмов:
lsof /path/to/file — покажет, какой процесс держит файл открытым. Полезно, если удалённый лог «не освобождает» место.
lsof -i :8080 — кто слушает порт 8080 или держит соединение. Отлично работает при отладке сервисов.
lsof -u www-data — все открытые файлы конкретного пользователя, например, у веб-сервера.

Кроме поиска по файлам и портам, lsof помогает находить процессы с утечками дескрипторов. Иногда сервисы постепенно «съедают» лимит открытых файлов, и тогда lsof -p <PID> покажет, чем именно завален процесс.

🔥 В связке с df и du утилита позволяет быстро вычислить «невидимых пожирателей места», а при отладке сетей — вычленить подозрительные соединения.

Инструмент старый, но до сих пор один из самых надёжных для диагностики.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍144
💬 Вопрос на собеседовании для DevOps-инженера

Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать.


Вопрос: Что такое Transparent Hugepage defrag и как это влияет на производительность системы?

Ответ: Transparent Hugepage (THP) defrag — это механизм в Linux, который пытается объединять мелкие страницы памяти в большие (HugePages) для оптимизации TLB и уменьшения накладных расходов на управление памятью.

Однако агрессивная дефрагментация может вызвать паузы в работе приложений из-за копирования страниц, поэтому в высоконагруженных системах её часто отключают или настраивают в режиме “madvise”, чтобы влияние на производительность было минимальным.
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍3
Поиск «тяжёлых» файлов: ncdu

Когда на сервере заканчивается место, команды вроде du и ls -lh не всегда помогают быстро понять, что именно съедает дисковое пространство. 


На помощь приходит ncdu — интерактивный аналог du, который показывает размер каталогов и файлов в удобной древовидной структуре и позволяет управлять ими прямо из интерфейса.

Например, чтобы проверить логи:

ncdu /var/log


Откроется текстовый интерфейс, где можно быстро сортировать файлы и папки по размеру, перемещать их или удалять.

Это помогает находить крупные логи, временные файлы и другие объекты, которые занимают место, без необходимости писать сложные скрипты.

Плюсы ncdu:
Видно, сколько реально занимает каждая папка.
Можно удалять или перемещать файлы прямо в интерфейсе.
Быстро ориентируетесь на серверах с ограниченным SSD.
Подходит для диагностики как пользовательских, так и системных директорий.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍76
Первый альфа-выпуск дистрибутива KDE Linux

Команда KDE представила первый альфа-выпуск дистрибутива KDE Linux. 


Системные образы (~5 ГБ) работают в Live-режиме, основаны на Arch Linux, обновляются атомарно и поддерживают зашифрованные разделы для пользовательских данных.

Обновления идут на пассивный Btrfs-раздел с возможностью отката, а дополнительные приложения можно устанавливать через Flatpak, AppImage, Snap, Distrobox или Toolbox.

Альфа рассчитана на тестирование и контроль качества, поддерживает только UEFI, Wayland и новые GPU NVIDIA (Turing+).

В будущем появятся Stable и Enthusiast Edition с финальными и свежими релизами KDE Plasma.
8👍5🔥2👎1
Впервые на экранах! Онлайн-марафон «PT NGFW: исповедь инженеров» 😲

Пять дней инженерного хардкора: с 15 по 19 сентября, 11:00-13:00💪

Кажется, команда готова исповедоваться: за одну неделю расскажет не только, как работает PT NGFW, но и почему он работает именно так. Это будет не просто теория, а живой обмен опытом, разбор реальных кейсов и практические советы, которые можно сразу применить в работе.

В спикерах — вся команда PT NGFW.

🏆Головоломки от наших экспертов и шанс выиграть собственный PT NGFW*🏆

Регистрируйтесь на сайте

Информация о конкурсе
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍1🔥1
Inotify и fsnotify для событий на файловой системе

Linux умеет уведомлять процессы о событиях на файловой системе.

С помощью inotify (и абстракции fsnotify в ядре) можно отслеживать создание, удаление, модификацию файлов и каталогов, что удобно для автоматизации.

Пример применения: нужно запускать скрипт каждый раз, когда появляются новые логи или выгружается дамп БД. 


Вместо регулярного опроса ls или find достаточно «подписаться» на события файловой системы — это экономит ресурсы и ускоряет реакцию.

Базовый пример с inotifywait (из пакета inotify-tools):

# следим за появлением новых файлов в каталоге /var/log/myapp
inotifywait -m /var/log/myapp -e create -e moved_to |
while read path action file; do
echo "Новый файл $file обнаружен в $path, запускаем скрипт..."
/usr/local/bin/process_new_log.sh "$path/$file"
done


Что можно отслеживать:
• create — создание файла
• delete — удаление
• modify — изменение содержимого
• moved_to / moved_from — перемещение файлов в/из каталога
8👍3