Linux Books
16.1K subscribers
150 photos
6 videos
252 files
158 links
@linuxkalii - наш канал

По всем вопросам- @notxxx1

№ 5032799382
Download Telegram
🧠 Как точно измерить использование памяти процессом в Linux

Когда система начинает «тормозить» или неожиданно заканчивается память, первое, что стоит проверить - какие процессы её съедают. Команды ps и top помогают получить общее представление, но цифры там часто обманчивы.

Процесс может выглядеть как прожорливый монстр, хотя значительная часть его памяти 0 shared, то есть разделяется с другими процессами. А наоборот, «лёгкий» процесс может скрытно потреблять больше через общие библиотеки и кэш.

Чтобы понять реальную картину, нужно копнуть глубже — в файловую систему /proc, а именно в файл smaps, где хранится подробная карта памяти каждого процесса.

Перед этим важно разобраться в трёх ключевых метриках:
- VSZ (Virtual Memory Size) — общий объём виртуальной памяти;
- RSS (Resident Set Size) — реальный объём памяти в RAM;
- PSS (Proportional Set Size) — точная оценка «реального» потребления с учётом разделяемых страниц.

💡 Эти метрики показывают, сколько памяти процесс действительно использует — и где она делится с другими.
Полный разбор и примеры смотри в оригинальном материале: blog.sysxplore.com/p/how-to-accurately-check-process-memory-usage-in-linux
👍52
🧱 Что такое Linux namespaces

По умолчанию процессы в Linux видят один и тот же мир: общий список процессов, сетевые интерфейсы, файловую систему.

Namespaces меняют это.
Они дают каждому процессу собственную «реальность»: свой сетевой стек, свой список процессов, свою файловую иерархию — всё это работает на одном ядре, без отдельной виртуальной машины.

Так Linux создаёт базу для контейнеров: изоляция без лишней нагрузки и полноценного гипервизора.

В серии разборов посмотрим:
• какие бывают namespaces,
• как они устроены,
• как поиграться с ними с помощью обычных команд Linux.

#Linux #Containers #DevOps

blog.sysxplore.com/p/part-1-what-are-linux-namespaces
👍76
Если увлекаешься технологиями, не пропусти True Tech Champ 21 ноября — масштабный ИТ-фест от МТС 🔥

В программе:

📝 доклады о технологиях будущего от экспертов в ИИ, включая руководителя фундаментальных исследований MWS AI Валентина Малых и ведущего RnD-разработчика MWS и аспиранта ISR Lab и Skoltech Артема Лыкова;
🛻 шоу-битва роботов со спецэффектами и сюжетной линией;
📝 воркшоп по работе с ИИ-агентами от канадского разработчика и автора книги AI Agents in Action Майкла Ланэма, кодинг-практикум с MWS AI и интеллектуальный спарринг с искусственным интеллектом;
◻️ 20+ площадок с активностями: IT-Родео, робофайтинг, лазерный лабиринт и многое другое.
🔴 А в завершение дня — афтепати со звездным хедлайнером.

Фестиваль бесплатный, пройдет 21 ноября в Москве и онлайн.
Смотри подробную программу на сайте и регистрируйся — количество мест ограничено.
Please open Telegram to view this post
VIEW IN TELEGRAM
1
Forwarded from Kali Linux
🧱 Что такое Linux namespaces

По умолчанию процессы в Linux видят один и тот же мир: общий список процессов, сетевые интерфейсы, файловую систему.

Namespaces меняют это.
Они дают каждому процессу собственную «реальность»: свой сетевой стек, свой список процессов, свою файловую иерархию — всё это работает на одном ядре, без отдельной виртуальной машины.

Так Linux создаёт базу для контейнеров: изоляция без лишней нагрузки и полноценного гипервизора.

В серии разборов посмотрим:
• какие бывают namespaces,
• как они устроены,
• как поиграться с ними с помощью обычных команд Linux.

#Linux #Containers #DevOps

blog.sysxplore.com/p/part-1-what-are-linux-namespaces
👍72👎1
Media is too big
VIEW IN TELEGRAM
Linux под угрозой? Повысьте защищенность конечных устройств с помощью новой технологии Universal Linux Kernel Module от «Лаборатории Касперского»
🙊43
This media is not supported in your browser
VIEW IN TELEGRAM
⚡️ Linux-совет: изолируй любую команду в одноразовой файловой системе

Когда хочешь протестировать скрипт, подозрительный бинарь или инсталлятор - не обязательно создавать отдельный контейнер. В Linux есть простой трюк: смонтировать временную файловую систему поверх каталога и выполнить команду так, будто она работает в «чистом» окружении.

Быстро, безопасно, без Docker.

Пример: заменить /tmp/testdir на пустой tmpfs и запускать всё внутри него, не трогая реальные файлы.


Изоляция через tmpfs - мини-песочница без Docker

создаём каталог и подменяем его на чистый tmpfs

sudo mkdir -p /tmp/safezone
sudo mount -t tmpfs -o size=100M tmpfs /tmp/safezone

запускаем тестируемую команду в изоляции

cd /tmp/safezone
bash suspicious_script.sh

снимаем изоляцию

cd /
sudo umount /tmp/safezone
👍157👎2🔥2
Forwarded from Just Xor
This media is not supported in your browser
VIEW IN TELEGRAM
⚡️ Linux-совет: изолируй любую команду в одноразовой файловой системе

Когда хочешь протестировать скрипт, подозрительный бинарь или инсталлятор - не обязательно создавать отдельный контейнер. В Linux есть простой трюк: смонтировать временную файловую систему поверх каталога и выполнить команду так, будто она работает в «чистом» окружении.

Быстро, безопасно, без Docker.

Пример: заменить /tmp/testdir на пустой tmpfs и запускать всё внутри него, не трогая реальные файлы.


Изоляция через tmpfs - мини-песочница без Docker

создаём каталог и подменяем его на чистый tmpfs

sudo mkdir -p /tmp/safezone
sudo mount -t tmpfs -o size=100M tmpfs /tmp/safezone

запускаем тестируемую команду в изоляции

cd /tmp/safezone
bash suspicious_script.sh

снимаем изоляцию

cd /
sudo umount /tmp/safezone
👍7👎3
Networking in Linux — команда ip

В Linux практически всё, что касается сети: интерфейсы, IP-адреса, маршруты и даже ARP-кеш, можно управлять прямо из терминала. Раньше для этого использовались утилиты ifconfig, route и arp, но они считаются устаревшими. Их современная замена — это команда ip.

Команда ip входит в состав набора iproute2, который включён по умолчанию во всех современных дистрибутивах Linux. Эта мощная универсальная утилита позволяет управлять сетевыми интерфейсами, IP-адресами, маршрутами и таблицами соседей, заменяя старые инструменты.

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

В этой статье рассказывается о том, как использовать команду ip для управления сетевыми интерфейсами, адресами, маршрутами и соединениями на Linux-системе.

Источник: https://blog.sysxplore.com/p/ep1-networking-in-linux-ip-command
👍54🖕2
🔥 Подборка полезных ресурсов для программистов.

Здесь ты найдёшь всё это - коротко, по делу и без воды.
Пока другие ищут, где “подглядеть решение”, ты уже используешь самые свежие инструменты!

AI: t.iss.one/ai_machinelearning_big_data
Python: t.iss.one/pythonl
Linux: t.iss.one/linuxacademiya
Devops: t.iss.one/DevOPSitsec
Собеседования DS: t.iss.one/machinelearning_interview
C++ t.iss.one/cpluspluc
Docker: t.iss.one/DevopsDocker
Хакинг: t.iss.one/linuxkalii
Data Science: t.iss.one/data_analysis_ml
Javascript: t.iss.one/javascriptv
C#: t.iss.one/csharp_1001_notes
Java: t.iss.one/java_library
Базы данных: t.iss.one/sqlhub
Python собеседования: t.iss.one/python_job_interview
Мобильная разработка: t.iss.one/mobdevelop
Golang: t.iss.one/Golang_google
React: t.iss.one/react_tg
Rust: t.iss.one/rust_code
ИИ: t.iss.one/vistehno
PHP: t.iss.one/phpshka
Android: t.iss.one/android_its
Frontend: t.iss.one/front
Big Data: t.iss.one/bigdatai
МАТЕМАТИКА: t.iss.one/data_math
Kubernets: t.iss.one/kubernetc
Разработка игр: https://t.iss.one/gamedev
Haskell: t.iss.one/haskell_tg
Физика: t.iss.one/fizmat

💼 Папка с вакансиями: t.iss.one/addlist/_zyy_jQ_QUsyM2Vi
Папка Go разработчика: t.iss.one/addlist/MUtJEeJSxeY2YTFi
Папка Python разработчика: t.iss.one/addlist/eEPya-HF6mkxMGIy
Папка ML: https://t.iss.one/addlist/2Ls-snqEeytkMDgy
Папка FRONTEND: https://t.iss.one/addlist/mzMMG3RPZhY2M2Iy
Папка Linux:https://t.iss.one/addlist/w4Doot-XBG4xNzYy

😆ИТ-Мемы: t.iss.one/memes_prog
🇬🇧Английский: t.iss.one/english_forprogrammers
🧠ИИ: t.iss.one/vistehno

🎓954ГБ ОПЕНСОРС КУРСОВ: @courses
📕Ит-книги бесплатно: https://t.iss.one/addlist/BkskQciUW_FhNjEy

Сохрани себе, чтобы не потерять!
21🌭1
Linux tutorial

📚 Читать
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6👎1
⚡️ Полное руководство по Bash: от основ к продвинутым темам

Bash (Bourne Again SHell) — это одна из самых популярных Unix-оболочек, широко используемая для запуска команд и написания скриптов в Linux и macOS.

Скрипты Bash позволяют автоматизировать рутинные задачи, объединять команды в программы и управлять системой через командную строку.

Данное руководство последовательно познакомит вас с основами Bash (синтаксис, переменные, условия, циклы и т.д.), а затем перейдет к продвинутым возможностям (таким как настройка strict mode, использование trap-обработчиков, планирование задач через cron и др.). Мы рассмотрим практические примеры скриптов, сопровождая их поясняющими комментариями, чтобы у вас сложилось цельное понимание создания надежных Bash-скриптов.

https://uproger.com/polnoe-rukovodstvo-po-bash-ot-osnov-k-prodvinutym-temam/
4👍4🔥2
🖥 Bash Академия: секреты командной строки, которые нигде не рассказывают

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

- Без воды.
- Без лишней теории.

Только практические приёмы, которые реально используют профи.

Если хочешь уверенно владеть Bash - здесь ты получишь всё, что нужно: t.iss.one/bashmastter
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥2
🧩 Редкий, но очень полезный Linux совет, о котором знают далеко не все

Если хочешь понять, кто именно удерживает файл открытым и почему диск «занят», даже когда файл уже удалён, используй команду:

lsof -a +L1

Это покажет процессы, которые держат открытые дескрипторы на удалённые файлы. Да, в Linux файл может продолжать занимать место на диске, даже если его стёрли, пока процесс не завершит работу.

Зачем это нужно
• помогает найти утечки логов
• решает проблему «диск заполнен, но где именно»
• спасает от внезапного out of space на проде
• позволяет не перезапускать весь сервер, а убить только нужный процесс

Масштабировать свой Linux скилл проще, когда понимаешь такие скрытые механики.

@linux_read
👍151
💡 Продвинутый и редко используемый Linux совет - работа с PID-неймспейсами прямо из терминала

Если нужно отлаживать процессы в полностью изолированном пространстве процессов (почти как в контейнере), можно запустить команду в отдельном PID-namespace. Это позволяет:

- видеть процессы только внутри пространства
- запускать init-процесс PID 1
- безопасно тестировать сервисы, сигналы, демонизацию
- воспроизводить поведение контейнеров без Docker

Команда:

sudo unshare --pid --fork --mount-proc bash


Что происходит:

- `--pid` создаёт новый PID-namespace
- `--fork` запускает новый процесс как PID 1 внутри пространства
- `--mount-proc` подменяет `/proc`, чтобы видеть только локальные процессы

Теперь внутри вы увидите:


ps aux


и получите полностью изолированное дерево процессов.

Это идеальный инструмент, если нужно отлаживать демоны, изучать сигналы, тестировать systemd-поведение или понимать, как контейнеры управляют процессами под капотом.

@linux_read
👍52🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
🔥 BASH СОВЕТ

Если тебе нужно быстро найти, какие команды ты запускал для конкретного проекта, но не хочешь листать весь history - используй историю по директории.
Bash сохраняет путь вместе с командой, и можно фильтровать только то, что выполнялось в текущем каталоге.





grep "$(pwd)" ~/.bash_history \
| sed "s|$(pwd)||" \
| sed 's/^.*: //' \
| sort -u \
| less

# Показывает только те команды,
# которые запускались в текущей директории.
# Можно искать по проектам, не засоряя историю.
👍42🔥1