На схеме структурированы направления: обучающие YouTube-каналы, профильные блоги, специализированная литература, популярные дистрибутивы, сертификации.
Это удобная схема — можно быстро понять, куда двигаться дальше и какие ресурсы использовать.
Сохраните, чтобы не потерять!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20❤11🤝8👎1
Как понять, что делает процесс в Linux?
Бывает ситуация, когда процесс есть, но непонятно, что он делает. В Linux можно смотреть системные вызовы.
Подключаемся к живому процессу:
Видно, какие файлы он открывает, читает или не может найти.
Если подозрение на сеть:
Покажет сетевые
Если нужно понять поведение целиком:
Флаг
🔥 Это часто даёт ответ быстрее, чем чтение кода или логов, особенно при работе с чужими бинарями, контейнерами или нестабильными сервисами.
🚪 Linux Ready | #совет
Бывает ситуация, когда процесс есть, но непонятно, что он делает. В Linux можно смотреть системные вызовы.
Подключаемся к живому процессу:
strace -e trace=%file -p <PID>
Видно, какие файлы он открывает, читает или не может найти.
Если подозрение на сеть:
strace -e trace=%network -p <PID>
Покажет сетевые
syscalls (connect, send*, recv*).Если нужно понять поведение целиком:
strace -f -o trace.log your_command
Флаг
-f отслеживает дочерние процессы, а лог можно спокойно разобрать позже.Please open Telegram to view this post
VIEW IN TELEGRAM
👍18❤9🔥9
Например, Phishing обманывает пользователя и заставляет ввести свои данные на поддельной странице, а SQL Injection позволяет атакующему получить доступ к базе данных через уязвимость в запросах.
На картинке — самые распространённые типы атак, которые важно понимать каждому разработчику и специалисту по безопасности.
Сохрани, чтобы не забыть!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥17👍10🤝9
Знали, что можно просканировать поведение процесса без его исходников и перезапуска?
Когда процесс ведёт себя странно, но трогать его нельзя,
Подключаешься к уже запущенному процессу и смотришь, что он делает на уровне ядра:
Видно, куда он ходит по сети, какие файлы читает или пытается открыть. Это быстрый способ понять, где он залип.
Если нужен общий профиль без тонны вывода, можно использовать агрегированную статистику:
🔥 Это один из самых быстрых способов первичной диагностики на Linux, когда нет логов, нет доступа к коду и нельзя перезапускать сервис.
🚪 Linux Ready | #совет
Когда процесс ведёт себя странно, но трогать его нельзя,
strace даёт доступ к системным вызовам в реальном времени.Подключаешься к уже запущенному процессу и смотришь, что он делает на уровне ядра:
$ strace -p 1234 -e trace=%network
$ strace -p 1234 -e trace=%file
Видно, куда он ходит по сети, какие файлы читает или пытается открыть. Это быстрый способ понять, где он залип.
Если нужен общий профиль без тонны вывода, можно использовать агрегированную статистику:
$ strace -p 1234 -c
$ strace -p 1234 -c -f
strace -p использует ptrace, требует прав и при подключении может прервать текущий syscall (редко, но бывает).Please open Telegram to view this post
VIEW IN TELEGRAM
🔥17❤11👍8🤝2
В этой статье:
• Пошаговая сборка загрузочного диска на базе Debian;
• Минимизация размера системы — всего ~25 МБ;
• Удаление ненужного и настройка initramfs под себя.🔊 Продолжай читать на Habr!
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥19👍10🤝8❤1😁1
Права доступа — одна из основ безопасности в Linux. Через chmod, chown и umask можно управлять доступом к файлам, а команды вроде ls -l и stat помогут быстро проанализировать текущие разрешения и владельцев.Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17🤝14🔥11❤6
This media is not supported in your browser
VIEW IN TELEGRAM
Это структурированная коллекция заметок по Linux и смежным темам: процессы, файловые системы, shell и работа с ядром. Материал ориентирован на практическое понимание того, как устроена система на низком уровне. Информация подаётся в компактном формате без избыточной теории, с акцентом на реальные сценарии использования.
Оставляю ссылочку: GitHub📱
Please open Telegram to view this post
VIEW IN TELEGRAM
❤17👍12🤝8
Как переиспользовать команды из history?
Набрал длинную команду, но забыл sudo и получил отказ. Вместо перепечатывания просто можно повторить её с повышенными правами:
Bash подставит предыдущую команду целиком и выполнит её с
Нужно вернуться к команде, которую выполнял пару шагов назад, не листая историю:
Bash возьмёт команду по относительному номеру из history и выполнит её сразу.
Если помнишь только начало команды, можно вызвать последнюю подходящую:
Bash найдёт последнюю команду, начинающуюся с этого слова, и выполнит её.
Команда выполняется сразу. Для проверки можно добавить
🔥 Это ускоряет работу в терминале кратно, особенно когда команды длинные и сложные.
🚪 Linux Ready | #совет
Набрал длинную команду, но забыл sudo и получил отказ. Вместо перепечатывания просто можно повторить её с повышенными правами:
$ apt install nginx
$ sudo !!
Bash подставит предыдущую команду целиком и выполнит её с
sudo.Нужно вернуться к команде, которую выполнял пару шагов назад, не листая историю:
$ !-2
Bash возьмёт команду по относительному номеру из history и выполнит её сразу.
Если помнишь только начало команды, можно вызвать последнюю подходящую:
$ !docker
$ !grep
Bash найдёт последнюю команду, начинающуюся с этого слова, и выполнит её.
Команда выполняется сразу. Для проверки можно добавить
:p (например, !grep:p).Please open Telegram to view this post
VIEW IN TELEGRAM
👍24❤10🔥6🤝6
Например, при подключении по SSH сначала устанавливается TCP-соединение, затем происходит согласование версий и алгоритмов, после чего выполняется key exchange и аутентификация по ключам.
На картинке — полный процесс: от установления соединения до выполнения команд внутри зашифрованного канала.
Сохрани, чтобы не потерять!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥18❤11👍9🤝3
Убиваем залипшие процессы с fuser и kill. Когда Ctrl+C не помогает, а процесс держит порт или файл!
Иногда процесс залипает и не хочет умирать даже после Ctrl+C. Или наоборот — ты не знаешь, что за процесс мешает работать. В таких случаях помогает связка fuser + kill.
Проверим, кто использует порт (например, 8080):
Или файл, занятый каким-то процессом:
Если надо сразу завершить все процессы, держащие ресурс:
Или убить по PID (который вернул fuser):
🔥
🚪 Linux Ready | #практика
Иногда процесс залипает и не хочет умирать даже после Ctrl+C. Или наоборот — ты не знаешь, что за процесс мешает работать. В таких случаях помогает связка fuser + kill.
Проверим, кто использует порт (например, 8080):
fuser -n tcp 8080
Или файл, занятый каким-то процессом:
fuser /var/log/syslog
Если надо сразу завершить все процессы, держащие ресурс:
fuser -k 8080/tcp
Или убить по PID (который вернул fuser):
kill -9 <PID>
🔥
fuser показывает, какие процессы используют файл или порт, а -k завершает их. Аккуратно — можно прибить что-то важное.Please open Telegram to view this post
VIEW IN TELEGRAM
🔥17👍14🤝9❤1
This media is not supported in your browser
VIEW IN TELEGRAM
Пошаговое введение в мир bash-скриптов. От простых команд до циклов, условий и автоматизации задач. Писать скрипты проще, когда есть такой ресурс под рукой.
Please open Telegram to view this post
VIEW IN TELEGRAM
🤝10👍9🔥7👎3❤1
В этом посте набор утилит, которые помогают глубоко разбирать сетевые проблемы: смотреть пакеты, искать данные в трафике, анализировать маршруты, проверять сокеты и отслеживать состояния соединений. Подходят для диагностики сетевых сбоев, поиска узких мест и дебага.Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤17👍9🤝6🔥2
Например, HTTP (80) используется для обычного веб-трафика, SSH (22) — для удалённого доступа к серверу, а DNS (53) — для преобразования доменных имён в IP.
На картинке — базовые и наиболее часто используемые сетевые протоколы с портами и типами транспорта (TCP/UDP).
Сохрани, чтобы не потерять!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21❤11🔥8