Linux Ninja
3.41K subscribers
862 photos
142 videos
1 file
854 links
Linux Ninja – ваш гид по миру Linux! Лайфхаки, фишки и мощные команды для настоящих мастеров CLI.
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
Нашёл для вас удобный конструктор Linux-песочниц

Нужно быстро развернуть окружение для теста или обучения? Конструктор Linux-песочниц позволяет собрать до 5 виртуальных машин на базе Ubuntu, Debian, Alpine и других дистрибутивов, с поддержкой Docker и нужного софта

Шаблоны сохраняются, запуск занимает меньше минуты💪

☝️ Ссылка источник

✈️ Linux Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5
Новички это подгон для вас «Quick Introduction to Linux Command Line»

Свежий курс для новичков который позволит за короткое время освоить основы работы с терминалом Linux. Слушатели знакомятся с базовыми командами, навигацией по файловой системе, использованием man-страниц и принципами работы с Bash-оболочкой

Всё понятно и без сложных слов 😇

☝️ Ссылка источник

✈️ Linux Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5
Быстрый совет по Linux

Вы можете предотвратить случайную перезапись существующих файлов при перенаправлении, включив опцию оболочки noclobber с помощью встроенной команды set:
$ set -o noclobber

Однако это можно обойти, используя >|

Чтобы отключить эту опцию, используйте set +o с именем опции:
$ set +o noclobber


Опция noclobber применяется ко всем файлам в системе. Если вы хотите применить ограничение только к определённым файлам, используйте атрибут append

Атрибут append в Linux — это файловый атрибут, который запрещает модификацию содержимого файла, но позволяет добавлять новые данные в конец

Чтобы установить атрибут append для файла, используйте команду chattr с параметром +a. Для этого требуются права суперпользователя:
$ sudo chattr +a key.txt


Чтобы удалить атрибут append, используйте -a:
$ sudo chattr -a key.txt


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

✈️ Linux Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3👍3
Полезная находка «Linux Command Library» справочник по Linux-командам

Ресурс который должен быть у каждого админа, структурированная библиотека команд по Linux командам и утилитам: от простых ls и cd до продвинутых сценариев с awk, sed, find, iptables.

☝️ Ссылка источник

✈️ Linux Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Полный справочник Linux-команд от A до Z

✈️ Linux Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7
Быстрый совет по Linux

Не нравится бесконечно длинный вывод в команде top?

Используйте опцию -i, чтобы скрыть неактивные процессы и видеть только активные:

$ top -i


✈️ Linux Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
Управление ресурсами контейнеров и подов с использованием cgroups

В Linux механизм control groups (cgroups) применяется для ограничения и контроля ресурсов процессов. Docker и Kubernetes интегрируют этот функционал, обеспечивая пользователю возможность управлять:

🟠CPU (ограничение доли процессорного времени)

🟠Памятью (лимиты и гарантии)

🟠I/O (приоритеты и квоты ввода-вывода)

Вот подборка лабораторных заданий для практической отработки данных механизмов:

🔹Ограничить использование CPU и памяти для Linux-процесса
https://labs.iximiuz.com/challenges/limit-cpu-and-memory-of-linux-process

🔹Запустить контейнер с ограниченными ресурсами
https://labs.iximiuz.com/challenges/start-container-with-limited-resources

🔹Завершить работу контейнера, если один из его процессов выйдет за пределы доступной памяти
https://labs.iximiuz.com/challenges/kill-container-on-child-process-oom-event-docker

🔹Ограничить использование CPU и памяти для приложения, запущенного через Docker Compose
https://labs.iximiuz.com/challenges/run-multiple-containers-in-one-cgroup

🔹Задеплоить «прожорливый» Pod, не положив при этом весь кластер
https://labs.iximiuz.com/challenges/start-pod-with-limited-resources

🔹Устранить проблемы со стабильностью в Deployment-е Go-приложения
https://labs.iximiuz.com/challenges/fix-go-app-container-oom

🔹Настроить Pod так, чтобы он пережил OOM-событие без перезапуска
https://labs.iximiuz.com/challenges/make-kubernetes-pod-outlive-oom-event


Забираем в закладки и отрабатываем на практике 📝

✈️ Linux Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3
Большинство пользователей Linux знакомы с командой cp для копирования файлов. Однако немногие знают о её встроенной поддержке версионности.

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

Понимание версионности в
cp

Команда cp предлагает два ключевых параметра для поддержки версионности:

1. --backup: создаёт резервную копию файла назначения перед его перезаписью.

2. --suffix: задаёт пользовательский суффикс для резервной копии.

Простое резервное копирование

Чтобы создать простую резервную копию:

$ cp --backup=numbered /путь/к/исходному/файлу /путь/к/папке/назначения/


Эта команда создаёт резервную копию с суффиксом по умолчанию (~) и увеличивающимся номером (например, файл.~1~, файл.~2~ и т.д.).

Резервная копия с пользовательским суффиксом

Для более наглядных резервных копий:

$ cp --backup=numbered --suffix=.bak /путь/к/исходному/файлу /путь/к/папке/назначения/

Это создаёт резервные копии с суффиксом .bak и увеличивающимся номером (например, файл.bak.1, файл.bak.2 и т.д.).

Практический пример: резервное копирование конфигурации SSH

Предположим, вы часто обновляете файл конфигурации SSH (/etc/ssh/sshd_config) для управления правилами доступа. Вот как можно вести версионированные резервные копии:

1. Создание резервной копии с нумерацией:
$ cp --backup=numbered /etc/ssh/sshd_config /data/backup/

Это создаёт файлы вида sshd_config.~1~, sshd_config.~2~ и т.д.

2. Создание резервной копии с пользовательским суффиксом:
$ cp --backup=numbered --suffix=.bak /etc/ssh/sshd_config /data/backup/

Это создаёт файлы вида sshd_config.bak.1, sshd_config.bak.2 и т.д.

Преимущества:
🟠Сохраняется история изменений файлов

🟠Предотвращается случайная перезапись важных данных

🟠Предлагается простая система версионности без необходимости использовать сложные системы контроля версий


✈️ Linux Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
Скобки в Bash: краткий гид

Разбираемся, какие бывают виды скобок в Bash и чем они отличаются. Памятка для тех, кто хочет писать аккуратные и понятные shell-скрипты ❤️

PDF в хорошем качестве здесь ⬇️

☝️ Ссылка источник

✈️ Linux Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Откопал полезный инструмент «The Fuck»

CLI-утилита, которая сама исправляет ошибки и опечатки в консоли. Опечатался в команде? Просто жми Enter — она предложит или выполнит правильный вариант

Забираем в коллекцию 🔞

☝️ Ссылка источник

✈️ Linux Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4👍2
Типы портов VLAN: Trunk vs Access наглядная шпаргалка

Разбираемся чем отличаются порты Access и Trunk в VLAN:
какие пакеты они передают, как работает тегирование (802.1Q) и зачем нужно разделять трафик по VLAN 😎

PDF в хорошем качестве здесь ⬇️

☝️ Ссылка источник

✈ Linux Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
Быстрый совет по Linux

Команда diff — полезный инструмент для поиска различий между файлами в терминале Linux. Однако icdiff предлагает ещё более удобное сравнение — бок о бок, с цветным выделением различий

$ icdiff config-dev.ini config-prod.ini


Вывод покажет оба файла рядом, а различия будут подсвечены красным и зелёным, что делает их легко заметными 😜

✈ Linux Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3👍3
Девсекопс 🚶‍♀️

✈ Linux Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
😁4
Хабр торт принес увлекательную статью разбор уязвимости в ядре Linux

В свежем разборе автор шаг за шагом исследует CVE-2024-50264 — хитрую race condition в подсистеме AF_VSOCK, демонстрируя, как на тестовой площадке kernel-hack-drill выстраивался концепт-эксплойта, с тонкими пояснениями по use-after-free, null-deref и работе kworker

Отличный материал для тех, кто хочет понять реальные механики escalation of privileges и методы защитных проверок 👀

☝ Ссылка источник

✈ Linux Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Быстрый совет по Linux

Запустите Vim с несколькими файлами, открытыми в отдельных вкладках:

$ vim -p file1.py file2.py file3.py


✈️ Linux Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5
50 команд Linux которые нужно знать

✈️ Linux Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6