Разбираем, что даёт патч реального времени, как настраивать ядра, изоляцию CPU и приоритеты потоков, и чем Linux отличается от QNX и VxWorks.
#linux
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
Почему SSH-сессии обрываются через 2–3 минуты
Пинги живые, сеть вроде в порядке, но сессия падает.
Ну и иногда виноваты неправильные настройки keepalive или MTU, а также энергосберегающие режимы сетевой карты. TCPKeepAlive на клиенте ≠ ServerAliveInterval, и SSH-сервер может закрывать «тихие» соединения.
⏺ Подключение с максимальным выводом:
И проверка конфигурации сервера:
Смотрим, какие значения ClientAliveInterval, ClientAliveCountMax установлены.
⏺ Исправляем:
На сервере включаем keepalive и увеличиваем интервалы:
На клиенте можно настроить:
Если обрывы связаны с MTU или power-save сетевухи, проверяем:
И при необходимости корректируем MTU или отключаем энергосбережение.
#linux
🐧 Linux Club ©
Иногда вы подключаетесь по SSH, а через пару минут соединение внезапно обрывается.
Пинги живые, сеть вроде в порядке, но сессия падает.
Ну и иногда виноваты неправильные настройки keepalive или MTU, а также энергосберегающие режимы сетевой карты. TCPKeepAlive на клиенте ≠ ServerAliveInterval, и SSH-сервер может закрывать «тихие» соединения.
ssh -vvv user@server
И проверка конфигурации сервера:
grep Alive /etc/ssh/sshd_config
Смотрим, какие значения ClientAliveInterval, ClientAliveCountMax установлены.
На сервере включаем keepalive и увеличиваем интервалы:
ClientAliveInterval 60
ClientAliveCountMax 10
На клиенте можно настроить:
ServerAliveInterval 60
ServerAliveCountMax 10
Если обрывы связаны с MTU или power-save сетевухи, проверяем:
ip link show dev eth0
ethtool eth0
И при необходимости корректируем MTU или отключаем энергосбережение.
#linux
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤4
🎥 Вебинар по Linux: Процессы в Linux: как работает система изнутри
Разбираемся, что такое процессы в Linux, как их контролировать и что делать с зомби и сиротами.
На вебинаре вы узнаете:
- Что такое процесс в Linux и чем он отличается от программы.
- Как устроен жизненный цикл процесса — от создания до завершения.
- Что такое состояния процессов и как их отследить с помощью системных утилит.
- Как управлять процессами: приоритеты, фоновые задания, остановка и завершение.
В результате вебинара вы:
- Научитесь находить и анализировать процессы с помощью ps, top, htop и других инструментов.
- Разберётесь, кто такие “зомби” и “сироты” и как их «убить» корректно.
- Поймёте, как Linux управляет процессами и что происходит при системных вызовах к ядру.
- Сможете уверенно контролировать работу процессов и решать проблемы зависших приложений..
🎁 Все участники вебинара получат специальные условия на полное обучение курса "Administrator Linux. Basic"
👉 Для участия зарегистрируйтесь:
https://otus.pw/G8hy/?erid=2W5zFJqB2HE
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
Разбираемся, что такое процессы в Linux, как их контролировать и что делать с зомби и сиротами.
На вебинаре вы узнаете:
- Что такое процесс в Linux и чем он отличается от программы.
- Как устроен жизненный цикл процесса — от создания до завершения.
- Что такое состояния процессов и как их отследить с помощью системных утилит.
- Как управлять процессами: приоритеты, фоновые задания, остановка и завершение.
В результате вебинара вы:
- Научитесь находить и анализировать процессы с помощью ps, top, htop и других инструментов.
- Разберётесь, кто такие “зомби” и “сироты” и как их «убить» корректно.
- Поймёте, как Linux управляет процессами и что происходит при системных вызовах к ядру.
- Сможете уверенно контролировать работу процессов и решать проблемы зависших приложений..
🎁 Все участники вебинара получат специальные условия на полное обучение курса "Administrator Linux. Basic"
👉 Для участия зарегистрируйтесь:
https://otus.pw/G8hy/?erid=2W5zFJqB2HE
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
❤2👍1
90% игр с Windows уже хорошо работают на Linux
Портал Boiling Steam, специализирующийся на Linux-гейминге, поделился новой статистикой. Теперь на «пингвине» можно как минимум запустить 90% игр с «окошек». При этом в категорию Platinum входят порядка 60% проектов – они работают вообще без проблем. Еще 5% входят в Gold – такие игры отлично работают, но все-таки бывают мелкие шероховатости. 25% проектов имеют некоторые недостатки, которые не мешают их пройти. Полностью отказываются работать лишь 3.8% проектов (категория Borked) – в основном из-за различных античитов.
#linux
🐧 Linux Club ©
Портал Boiling Steam, специализирующийся на Linux-гейминге, поделился новой статистикой. Теперь на «пингвине» можно как минимум запустить 90% игр с «окошек». При этом в категорию Platinum входят порядка 60% проектов – они работают вообще без проблем. Еще 5% входят в Gold – такие игры отлично работают, но все-таки бывают мелкие шероховатости. 25% проектов имеют некоторые недостатки, которые не мешают их пройти. Полностью отказываются работать лишь 3.8% проектов (категория Borked) – в основном из-за различных античитов.
#linux
Please open Telegram to view this post
VIEW IN TELEGRAM
❤11👍4🦄3
Нужно безопасно заменить конфиг на диске, чтобы пережить внезапный ребут. Какой порядок действий верный?
#linux
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3👍2
Каналы с IT мероприятиями
Подписывайся,
чтобы не пропустить
1. IT мероприятия для стажеров и студентов
2. IT мероприятия по РФ
3. IT мероприятия и хакатоны
4. Бесплатные IT мероприятия
5. IT мероприятия онлайн
6. IT мероприятия Москва
7. IT мероприятия Санкт-Петербург
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
🔥 Быстро проверить, что слушает порт в Linux
Иногда нужно понять, какой процесс занял порт (например, 80 или 443) и почему сервис не стартует.
🔎 Проверка через
Пример вывода:
Альтернативы:
⚡️ Когда полезно:
при конфликте сервисов (Apache vs Nginx)
при отладке firewall (порт слушает, но снаружи не доступен)
при проверке автозапуска демонов
👉 Лайфхак: если процесс «убегает» после запуска, можно использовать
Так поймаете короткоживущие процессы.
#linux
🐧 Linux Club ©
Иногда нужно понять, какой процесс занял порт (например, 80 или 443) и почему сервис не стартует.
🔎 Проверка через
ss:
ss -ltnp | grep ':80'
-l — только listening сокеты-t — TCP-n — не резолвить имена-p — показывать PID/имя процессаПример вывода:
LISTEN 0 128 *:80 *:* users:(("nginx",pid=1234,fd=6))
Альтернативы:
lsof -i :80 — если привычнее через lsoffuser 80/tcp — быстрый вариант, сразу PID⚡️ Когда полезно:
при конфликте сервисов (Apache vs Nginx)
при отладке firewall (порт слушает, но снаружи не доступен)
при проверке автозапуска демонов
👉 Лайфхак: если процесс «убегает» после запуска, можно использовать
ss -ltunp в цикле:
watch -n1 "ss -ltunp | grep ':80'"
Так поймаете короткоживущие процессы.
#linux
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤3
В Linux выделение памяти ленивое:
malloc() / mmap() часто «успешны», пока страницы не тронуты. Итог — процесс живёт, а при первом же обращении к новым страницам может словить OOM.vm.overcommit_memory0 — эвристика, 1 — всегда, 2 — строго по лимиту
CommitLimit (задаётся через vm.overcommit_ratio).sysctl -n vm.overcommit_memory vm.overcommit_ratio
grep -E 'Commit(Limit|ted_AS)' /proc/meminfo
dmesg | grep -i oom | tail
overcommit_ratio на критичных узлах.memory.max / swap.max + memory.oom.group=1.malloc — pre-touch (memset), чтобы упасть сразу, а не в проде.Committed_AS и размером heap, не полагаться на «улетит в swap».#linux
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤2
Показываю, как подключить USB-токен к удалённой машине без костылей: разбираем проброс устройств через ядро, нужные модули и пару подводных камней из практики.
#linux
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤2☃1🦄1
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣25❤4👍1
Nezha - Легкий и элегантный аналог Zabbix
Plow - Этот инструмент был разработан для проведения нагрузочного тестирования HTTP
Hunt - Утилита для поиска файлов на локальном компьютере
AutoRegex - Регулярные выражения — это мощный инструмент для преобразования текстовых данных.
ContainerSSH - Утилита, которая позволяет вам незаметно направлять SSH-клиентов в изолированные контейнеры
Krunvm - Это инструмент, который позволяет создавать простые виртуальные машины на основе образов OCI.
Zellij - Это интересный мультиплексор, который может быть использован в качестве альтернативы tmux
#linux
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍4
Надёжно перезаписывает файл: пишет во временный в том же каталоге →
fsync → атомарный rename → fsync каталога. Переживает внезапный ребут.#!/usr/bin/env bash
# write-atomic TARGET [SRC] — читает из SRC или stdin
set -Eeuo pipefail
[[ $# -ge 1 ]] || { echo "usage: write-atomic TARGET [SRC]"; exit 2; }
t="$1"; s="${2:-}"
dir="$(dirname -- "$t")"; base="$(basename -- "$t")"
tmp="$(mktemp -p "$dir" ".${base}.tmp.XXXXXX")"
cleanup(){ rm -f -- "$tmp"; }; trap cleanup EXIT INT TERM
# ввод из файла или stdin
if [[ -n "$s" ]]; then cat -- "$s" >"$tmp"; else cat >"$tmp"; fi
# права как у целевого (если был)
if [[ -e "$t" ]]; then
chown --reference="$t" "$tmp" 2>/dev/null || true
chmod --reference="$t" "$tmp" 2>/dev/null || chmod 0644 "$tmp"
else
chmod 0644 "$tmp"
fi
# fsync файла/каталога (python3→perl→sync)
fsync_path(){
if command -v python3 >/dev/null; then
python3 - "$1" <<'PY'
import os,sys; fd=os.open(sys.argv[1],os.O_RDONLY); os.fsync(fd); os.close(fd)
PY
elif command -v perl >/dev/null; then
perl -MPOSIX=fsync -e 'open(F,"<",$ARGV[0]) or exit 1; fsync(fileno(F)); close F;' "$1" || true
else sync; fi
}
fsync_path "$tmp"
mv -f -T -- "$tmp" "$t"
fsync_path "$dir"
trap - EXIT INT TERM
echo "$json" | write-atomic /etc/myapp/config.json
write-atomic /etc/app.conf ./new.conf
#linux
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤2
🚨 7 смертельных ошибок CLI, которые уничтожат твой Linux
Приветствую, коллега по скриптам!
Работа под
1.
2. Fork Bomb (
3.
4.
5.
6.
7. Использование R-утилит (
#Linux #CLI #Безопасность #Ошибки #Сисадмин
#linux
🐧 Linux Club ©
Приветствую, коллега по скриптам!
Работа под
root требует максимальной осторожности. Вот главные "самострелы", которые могут привести к краху системы:1.
rm -rf /: Безоговорочное уничтожение всей файловой системы.2. Fork Bomb (
:(){ :|:& };:): Бесконечное порождение процессов, исчерпывающее системные ресурсы.3.
dd: Неправильное указание if и of (вход/выход) уничтожит диск.4.
rm $VAR: Неэкранированная переменная может привести к стиранию лишнего.5.
.:$PATH: Добавление текущего каталога (.) создает лазейку для троянских программ.6.
chmod -R 777 /: Некорректная установка прав доступа на корневую файловую систему. Неправильное использование chmod -R (например, 555 или 777) на корневом каталоге (/) может разрушить файловую систему и сделать систему непригодной для использования.7. Использование R-утилит (
rlogin, rsh, rcp): Эти утилиты небезопасны и передают данные в открытом виде. Их следует удалить из системы и использовать ssh в качестве замены.#Linux #CLI #Безопасность #Ошибки #Сисадмин
#linux
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤5🔥2
Почему ping даёт один адрес, а приложение — другой? Ответ — в цепочке резолва: порядок источников, кто именно спрашивает DNS и где есть кэш.
glibc ищет имя по NSS (см. /etc/nsswitch.conf), обычно: files → dns → (опц.) mdns/ldap. Сначала /etc/hosts, потом DNS.resolv.conf задаёт nameserver и search. В системах с systemd-resolved это часто stub 127.0.0.53 и «сплит-DNS» по интерфейсам.systemd-resolved, nscd, dnsmasq, unbound или сам апп.getent hosts example.com # итог по NSS
grep '^hosts:' /etc/nsswitch.conf # порядок источников
readlink -f /etc/resolv.conf && cat /etc/resolv.conf
resolvectl status | sed -n '1,120p' # если есть systemd-resolved
#linux
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤2