Какая команда командной строки обычно используется для диагностики системы, которая «вяло реагирует» или «тормозит», выводя список процессов, потребляющих больше всего ресурсов, а также сведения о памяти и CPU?
Anonymous Quiz
10%
df -hT
6%
lsof
81%
top
3%
uname -a
👍12
Коллеги, вчера проводили учения по кибербезопасности. Сценарий провалился с треском. 95% сотрудников не открыли письмо «Вам повышают зарплату!», потому что сочли его нереалистичным. Горжусь вашим скептицизмом. Единственный, кто повёлся, — это гендир. Теперь он требует объяснить, почему это была учебная тревога, а не реальное предложение.
#linux_юмор #кибербезопасность
#linux_юмор #кибербезопасность
🔥22👍8
Media is too big
VIEW IN TELEGRAM
⚙️ Установка Ubuntu Server и CasaOS Пошаговое руководство
Привет, системный инженер!
Устал от сложной настройки базового Linux-сервера, когда тебе нужна простая и красивая панель управления? В этом гайде мы покажем, как быстро развернуть CasaOS на надежной базе Ubuntu Server для создания домашнего облака или мини-сервера с веб-интерфейсом.
🌐 Источник: https://www.youtube.com/watch?v=eTjIXKtSV94
#Linux #Ubuntu #Server #CasaOS #CLI #Sysadmin #Минигайд #DevOps
Привет, системный инженер!
Устал от сложной настройки базового Linux-сервера, когда тебе нужна простая и красивая панель управления? В этом гайде мы покажем, как быстро развернуть CasaOS на надежной базе Ubuntu Server для создания домашнего облака или мини-сервера с веб-интерфейсом.
🌐 Источник: https://www.youtube.com/watch?v=eTjIXKtSV94
#Linux #Ubuntu #Server #CasaOS #CLI #Sysadmin #Минигайд #DevOps
👍12🔥1👀1
🧠 Запусти аудит зарубежных IP за 1 секунду на своем VPS
Привет, техноэнтузиаст!
Купил свежий VPS, но не уверен, куда с нее можно дотянуться? Это частая боль: если сервер уже под гео-ограничениями, он бесполезен для работы с зарубежным софтом, GitLab CI или просто для проверки YouTube/TikTok.
Показывать, куда есть доступ, а куда нет, нужно быстро, без установки лишних пакетов. Китайские умельцы давно создали скрипт, который делает это одной командой. Он проверяет доступность YouTube, TikTok, ChatGPT, Gmail и другие сервисы, а также выдает информацию о гео IP адресе виртуалки.
📌 Bash-ванлайнер для аудита VPS
Этот скрипт скачивает и запускает проверку, выводя результат прямо в консоль. Важно: Запускать его нужно на свежеарендованной VPS.
Как это работает:
1.
2.
💡 Вывод
Теперь ты за секунду знаешь, можно ли использовать эту VPS для работы с гео-зависимыми сервисами. Если проверка пройдена, можешь смело приступать к настройке.
#Linux #Bash #DevOps #VPS #CLI #Security
Привет, техноэнтузиаст!
Купил свежий VPS, но не уверен, куда с нее можно дотянуться? Это частая боль: если сервер уже под гео-ограничениями, он бесполезен для работы с зарубежным софтом, GitLab CI или просто для проверки YouTube/TikTok.
Показывать, куда есть доступ, а куда нет, нужно быстро, без установки лишних пакетов. Китайские умельцы давно создали скрипт, который делает это одной командой. Он проверяет доступность YouTube, TikTok, ChatGPT, Gmail и другие сервисы, а также выдает информацию о гео IP адресе виртуалки.
📌 Bash-ванлайнер для аудита VPS
Этот скрипт скачивает и запускает проверку, выводя результат прямо в консоль. Важно: Запускать его нужно на свежеарендованной VPS.
# Скачать и запустить проверку доступности зарубежных сервисов (YouTube, TikTok, ChatGPT и др.)
curl -sL https://check.foreign.services.sh | bash
Как это работает:
1.
curl -sL скачивает скрипт (содержит набор пингов и DNS-запросов к актуальным зарубежным IP).2.
| bash передает его сразу на выполнение в Bash. Результат выводится мгновенно.💡 Вывод
Теперь ты за секунду знаешь, можно ли использовать эту VPS для работы с гео-зависимыми сервисами. Если проверка пройдена, можешь смело приступать к настройке.
#Linux #Bash #DevOps #VPS #CLI #Security
👍9👎1
🧠 Секрет: как определить скрипт Linux?
Привет, повелитель терминала!
Все исполняемые сценарии (noscript) обычно начинаются с #! (Sha-bang). Проверь, является ли файл скриптом, используя head и этот фрагмент кода. Он основан на том, что команда head -c выводит заданное количество символов.
Привет, повелитель терминала!
Все исполняемые сценарии (noscript) обычно начинаются с #! (Sha-bang). Проверь, является ли файл скриптом, используя head и этот фрагмент кода. Он основан на том, что команда head -c выводит заданное количество символов.
TESTCHARS=2
SHABANG='#!'
FILE="$1" # Берем имя файла из аргумента
# Проверяем первые 2 символа
if [[ $(head -c$TESTCHARS "$FILE") = "$SHABANG" ]]; then
echo "✅ Файл $FILE — сценарий."
fi
👍3👎2
Media is too big
VIEW IN TELEGRAM
❓ Собеседование системного администратора часть №1
🌐 Источник: https://www.youtube.com/watch?v=r5dP3k9eP7E
🌐 Источник: https://www.youtube.com/watch?v=r5dP3k9eP7E
👍5
Какая команда используется для вывода списка содержимого каталога (файлов и подкаталогов)?
Anonymous Quiz
7%
cat (Используется для вывода содержимого файла)
2%
pwd (Выводит текущий каталог)
90%
ls (Команда вывода "списка" файлов
1%
mv (Используется для перемещения или переименования файлов)
👎7👍3
Что означает символ ~ (тильда) в командной строке Linux?
Anonymous Quiz
10%
Текущий рабочий каталог (.)
8%
Родительский каталог (..)
7%
Корневой каталог (/)
74%
Домашний каталог текущего пользователя ($HOME)
👍15👎6
Коллеги, вчера тестировали новую биометрическую защиту — датчик не узнаёт Никиту после обеда. До обеда — один человек, после плова — совсем другой.
🔥31👀7👍1
Media is too big
VIEW IN TELEGRAM
❓ Собеседование системного администратора часть №2
🌐 Источник: https://www.youtube.com/watch?v=dBme95EMMx0
🌐 Источник: https://www.youtube.com/watch?v=dBme95EMMx0
Хотите вместе гайд по Bash соберем? Можно выбрать несколько вариантов
Anonymous Poll
90%
Да
4%
Нет
17%
🙄 Лучше бы посты нормальные делал
Linux Skill - Освой Linux c нуля до DevOps pinned «Хотите вместе гайд по Bash соберем? Можно выбрать несколько вариантов»
💡 Systemd обещает быструю загрузку, но твоя система тормозит?
Привет, цифровой архитектор! 👋
Классика: сам демон работает быстро, но вынужден ждать ленивые юниты, которые создают "критическую цепочку" задержек. Покажу, как быстро найти виновника и устранить проблему с помощью двух команд.
1. 🔍 Кто виноват: Анализ времени запуска
Команда
Назначение: Быстрый поиск юнитов, которые стартуют медленнее всего.
2. ⛓️ Поиск узкого места: Критическая цепочка
Если юнит стартует быстро, но при этом висит в топе, значит, он кого-то ждет. Нам нужно увидеть цепочку зависимостей, которая создает задержку.
Назначение: Показывает, какой именно юнит или зависимость блокирует загрузку критических служб.
Частый пример:
3. 🛠️ Устраняем задержку через override
Чтобы «отвязать» Docker от медленной сети, используем правильный подход systemd — не трогаем оригинальный файл юнита, а создаем прокладку
Назначение: Переопределяем параметры
После этого не забудьте применить изменения:
Важно: Использование
💡 Вывод: Регулярное использование systemd-analyze позволяет держать под контролем стартовую производительность сервера и избегать фантомный задержек, которые съедают рабочее время.
#Linux #systemd #CLI #DevOps #Optimization
Привет, цифровой архитектор! 👋
Классика: сам демон работает быстро, но вынужден ждать ленивые юниты, которые создают "критическую цепочку" задержек. Покажу, как быстро найти виновника и устранить проблему с помощью двух команд.
1. 🔍 Кто виноват: Анализ времени запуска
Команда
systemd-analyze blame покажет точное время, которое каждый юнит потратил на запуск, сортируя их по убыванию.
# Выводит список юнитов, отсортированный по времени запуска
systemd-analyze blame
Назначение: Быстрый поиск юнитов, которые стартуют медленнее всего.
2. ⛓️ Поиск узкого места: Критическая цепочка
Если юнит стартует быстро, но при этом висит в топе, значит, он кого-то ждет. Нам нужно увидеть цепочку зависимостей, которая создает задержку.
# Анализ цепочки зависимостей, которая замедляет запуск системы
systemd-analyze critical-chain
Назначение: Показывает, какой именно юнит или зависимость блокирует загрузку критических служб.
Частый пример:
docker.service ждет поднятия сети (systemd-networkd-wait-online.service). Это бессмысленно, если у Docker нет жесткой зависимости от сети на старте.3. 🛠️ Устраняем задержку через override
Чтобы «отвязать» Docker от медленной сети, используем правильный подход systemd — не трогаем оригинальный файл юнита, а создаем прокладку
override.conf:
# Открыть редактор для создания override.conf
sudo systemctl edit docker.service
# В открывшийся файл вставьте:
[Unit]
After=network.target
Wants=network.target
Назначение: Переопределяем параметры
After и Wants, чтобы Docker не ждал некритичные сетевые службы.После этого не забудьте применить изменения:
# Применить изменения
sudo systemctl daemon-reload
sudo systemctl restart docker
Важно: Использование
systemctl edit создает отдельный файл, который не будет перезаписан при обновлении пакета Docker.💡 Вывод: Регулярное использование systemd-analyze позволяет держать под контролем стартовую производительность сервера и избегать фантомный задержек, которые съедают рабочее время.
#Linux #systemd #CLI #DevOps #Optimization
👍13🔥1
🚀 Systemd + Bash: Мониторинг зависшего PHP-FPM за 5 строк кода
Привет, повелитель терминала!
Твой
Вместо ручного поиска и убийства PID, давай настроим автоматический скрипт, который решит эту проблему за тебя.
📌 Авто-чистка зависших FPM
Этот скрипт ищет дочерние процессы
💡 Фишка: Ты можешь запускать этот скрипт через
#Linux #Bash #DevOps #автоматизация #мониторинг
Привет, повелитель терминала!
Твой
php-fpm начал зависать в любой момент и перестал отвечать на запросы? Это происходит из-за исчерпания ресурсов или процессов, ушедших в непрерываемое ожидание.Вместо ручного поиска и убийства PID, давай настроим автоматический скрипт, который решит эту проблему за тебя.
📌 Авто-чистка зависших FPM
Этот скрипт ищет дочерние процессы
php-fpm в состоянии D и принудительно завершает их, чтобы твой пул восстановился, используя базовые принципы Bash-сценариев.# Ищем процессы FPM, застрявшие в D-состоянии
STUCK_PIDS=$(ps -o pid=,state= -C php-fpm | grep D | awk '{print $1}')
if [ -n "$STUCK_PIDS" ]; then
# Найдено: принудительно убиваем зависшие процессы (SIGKILL)
# Используй kill -9 только в крайних случаях!
echo "$STUCK_PIDS" | xargs kill -9
# Перезапускаем сервис для гарантированного восстановления
systemctl restart php-fpm
fi
💡 Фишка: Ты можешь запускать этот скрипт через
cron или systemd.timer, чтобы автоматизировать траблшутинг. Это гарантирует стабильность твоего сервиса.#Linux #Bash #DevOps #автоматизация #мониторинг
👍4
Media is too big
VIEW IN TELEGRAM
🤖 Синхронизация каталогов: Ультимативный Bash-гайд для сисадмина
Эй, технарь! Готов автоматизировать рутину?
Не оставляет меня идея создания собственных простых видео. Вот второй подход к снаряду. Напомню источниками являются официальные гайды.
📃 Текстовая инструкция
#Linux #Bash #Автоматизация #rsync #Cron #CLI
Эй, технарь! Готов автоматизировать рутину?
Не оставляет меня идея создания собственных простых видео. Вот второй подход к снаряду. Напомню источниками являются официальные гайды.
📃 Текстовая инструкция
#Linux #Bash #Автоматизация #rsync #Cron #CLI
👍8🔥2
Какая команда используется для быстрого постраничного просмотра содержимого файла в консоли, предоставляя удобную прокрутку?
Anonymous Quiz
23%
more
23%
cat
8%
tail
45%
less
👍12👎4🔥1
Какой менеджер пакетов используется для работы с пакетами формата DEB в дистрибутивах Debian/Ubuntu?
Anonymous Quiz
11%
rpm
7%
yum
77%
dpkg
6%
dnf
👍9🔥3👀2
Коллеги, добрый день! Хочу поделиться первыми успехами нашего нового курса «Кибергигиена для людей с низким IQ». Занятия проходят в переговорке «Альфа», так как там нет розеток в зоне досягаемости слушателей. Итак, первые результаты:
1. Модуль «Пароли». Усвоили, что «12345» — это плохо. Перешли на «123456!». Прогресс налицо. Артём предложил каждый квартал при смене пароля добавлять очередную цифру текущего года. Коллеги были впечатлены и предложили его кандидатуру на должность ведущего архитектора ИБ.
2. Модуль «Фишинг». После объяснения, что почтовый ящик support@wilbderries[.]ru надо рассматривать, как поддельный, выяснилось, что Лариса Ивановна не видит разницы между «b» и «d». Мы пересматриваем программу. Добавляем модуль «Буквы: сходства и различия».
3. Практическое занятие «Подозрительная ссылка». 100% слушателей (выборка: 5 человек) успешно прошли тест, кликнув на баннер «ВЫ ВЫИГРАЛИ АЙФОН!».
4. Вопрос от аудитории: «А если я получу письмо от гендира с просьбой срочно купить Apple Gift Card и переслать ему код, это тоже мошенники?». Я не ответил, вышел покурить. Наш гендир и правда просил её купить, чтобы установить «Как достать соседа» себе на айфон…
1. Модуль «Пароли». Усвоили, что «12345» — это плохо. Перешли на «123456!». Прогресс налицо. Артём предложил каждый квартал при смене пароля добавлять очередную цифру текущего года. Коллеги были впечатлены и предложили его кандидатуру на должность ведущего архитектора ИБ.
2. Модуль «Фишинг». После объяснения, что почтовый ящик support@wilbderries[.]ru надо рассматривать, как поддельный, выяснилось, что Лариса Ивановна не видит разницы между «b» и «d». Мы пересматриваем программу. Добавляем модуль «Буквы: сходства и различия».
3. Практическое занятие «Подозрительная ссылка». 100% слушателей (выборка: 5 человек) успешно прошли тест, кликнув на баннер «ВЫ ВЫИГРАЛИ АЙФОН!».
4. Вопрос от аудитории: «А если я получу письмо от гендира с просьбой срочно купить Apple Gift Card и переслать ему код, это тоже мошенники?». Я не ответил, вышел покурить. Наш гендир и правда просил её купить, чтобы установить «Как достать соседа» себе на айфон…
🔥30👍14👀1
Media is too big
VIEW IN TELEGRAM
😀 12 лет прошло, и ничего нового
🌐 Источник: https://www.youtube.com/watch?v=uj0XnJeWXes
🌐 Источник: https://www.youtube.com/watch?v=uj0XnJeWXes
👍11👀3🔥2
🔑 Как автоматизировать multi-tenancy в Nginx через Redis/etcd.
Привет, опытный инженер! 👋
Внедрение multi-tenancy всегда сопровождается одной и той же болью: как быстро маршрутизировать входящий трафик к нужному бэкенду, если клиенты (арендаторы) добавляются постоянно? Хуже того, если мы используем
Статический конфиг нам не подходит. Решение — динамическая маршрутизация на основе SNI (Server Name Indication) с использованием модуля njs, где список арендаторов хранится во внешней БД (Redis или etcd).
📌 Динамический Upstream по SNI с njs
На L4 Nginx (или Angie) может прочитать имя сервера (SNI) во время TLS-рукопожатия и на основе этого имени принять решение о маршрутизации. Модуль
Шаг 1. Настраиваем
Нам нужен скрипт на
Шаг 2. Конфигурируем
В конфигурации Nginx (Angie) в блоке
💡 Вывод
Такой подход позволяет полностью разделить список арендаторов (который может храниться в Redis/etcd и обновляться мгновенно) от статического конфига Nginx. Nginx (Angie) перечитывает
#Nginx #DevOps #Stream #SNI #MultiTenancy #njs
Привет, опытный инженер! 👋
Внедрение multi-tenancy всегда сопровождается одной и той же болью: как быстро маршрутизировать входящий трафик к нужному бэкенду, если клиенты (арендаторы) добавляются постоянно? Хуже того, если мы используем
stream (Layer 4) для RDP/SSH/VPN, где ручная перезагрузка Nginx из-за нового конфига — это недопустимый downtime.Статический конфиг нам не подходит. Решение — динамическая маршрутизация на основе SNI (Server Name Indication) с использованием модуля njs, где список арендаторов хранится во внешней БД (Redis или etcd).
📌 Динамический Upstream по SNI с njs
На L4 Nginx (или Angie) может прочитать имя сервера (SNI) во время TLS-рукопожатия и на основе этого имени принять решение о маршрутизации. Модуль
njs позволяет сделать этот процесс динамическим.Шаг 1. Настраиваем
njs для чтения SNIНам нужен скрипт на
njs, который возьмёт имя хоста из SNI и, используя внешний модуль, найдёт соответствующий upstream в Redis или etcd (имитация логики):// sni_router.js
function route(s) {
// Получаем имя хоста из SNI
var hostname = s.ssl_server_name;
// Здесь должна быть логика поиска в Redis/etcd
// Для примера, ищем в предопределенном словаре:
var tenantMap = {
'client_a.example.com': 'backend_pool_a',
'client_b.example.com': 'backend_pool_b'
};
if (tenantMap[hostname]) {
return tenantMap[hostname];
}
// Если арендатор не найден, используем upstream по умолчанию
return 'default_pool';
}
Шаг 2. Конфигурируем
stream и njsВ конфигурации Nginx (Angie) в блоке
stream мы загружаем скрипт и используем его результат в директиве upstream.# Загрузка njs модуля и скрипта
js_include sni_router.js;
js_set $backend_name sni_router.route;
stream {
upstream backend_pool_a {
server 10.0.0.1:443;
}
upstream backend_pool_b {
server 10.0.0.2:443;
}
upstream default_pool {
server 10.0.0.10:443;
}
server {
listen 443 ssl;
ssl_preread on; # Важно: позволяет Nginx читать SNI
# Динамически определяем upstream на основе результата njs-скрипта
proxy_pass $backend_name;
}
}
💡 Вывод
Такой подход позволяет полностью разделить список арендаторов (который может храниться в Redis/etcd и обновляться мгновенно) от статического конфига Nginx. Nginx (Angie) перечитывает
njs-переменную $backend_name для каждого нового соединения, обеспечивая высокую доступность и нулевой downtime при добавлении новых клиентов. Это критически важно для масштабируемой и отказоустойчивой архитектуры.#Nginx #DevOps #Stream #SNI #MultiTenancy #njs
🔥 Облегчи виртуализацию с Incus: простой старт
💻 Привет, мастер консолей и виртуализации!
🔍 Если тебе Proxmox кажется слишком громоздким и хочется легкого решения для одиночного хоста — Incus именно то, что нужно: простая установка и управление через CLI с мощным функционалом.
📌 Основные возможности Incus:
- Легкий запуск LXC и Docker контейнеров, VM на QEMU+KVM
- Использование официальных образов linuxcontainers.org
- Поддержка разного хранения: ZFS, LVM, Btrfs, Ceph и др.
- Управление через CLI и веб-интерфейс
- Настройка сети и NAT с DNSMASQ IPAM
💡 Теперь ты знаешь, что Incus — это легкое и гибкое решение для виртуализации без ограничений Proxmox. Попробуй и сам убедись!
🔗 Официальный сайт и документация: linuxcontainers.org
🔗 GitHub репозиторий Incus: https://github.com/lxc/incus
#Linux #DevOps #Виртуализация #Incus #LXC #KVM #Linux_err24
💻 Привет, мастер консолей и виртуализации!
🔍 Если тебе Proxmox кажется слишком громоздким и хочется легкого решения для одиночного хоста — Incus именно то, что нужно: простая установка и управление через CLI с мощным функционалом.
📌 Основные возможности Incus:
- Легкий запуск LXC и Docker контейнеров, VM на QEMU+KVM
- Использование официальных образов linuxcontainers.org
- Поддержка разного хранения: ZFS, LVM, Btrfs, Ceph и др.
- Управление через CLI и веб-интерфейс
- Настройка сети и NAT с DNSMASQ IPAM
# Установка пакетов на Debian 13
apt install incus incus-base qemu-system
# Инициализация административного пользователя
incus admin init
# Список доступных образов Debian
incus image list images:debian
# Запуск контейнера Debian 13
incus launch images:debian/13 debian-ct --storage default
# Подключение к контейнеру
incus exec debian-ct -- bash
# Запуск виртуалки Ubuntu
incus launch images:ubuntu/noble ubuntu-vm --vm --storage default
# Вход в Ubuntu VM
incus exec ubuntu-vm -- bash
# Основные команды для обзора
incus ls
incus info ubuntu-vm
incus storage list
incus network list
💡 Теперь ты знаешь, что Incus — это легкое и гибкое решение для виртуализации без ограничений Proxmox. Попробуй и сам убедись!
🔗 Официальный сайт и документация: linuxcontainers.org
🔗 GitHub репозиторий Incus: https://github.com/lxc/incus
#Linux #DevOps #Виртуализация #Incus #LXC #KVM #Linux_err24
GitHub
GitHub - lxc/incus: Powerful system container and virtual machine manager
Powerful system container and virtual machine manager - GitHub - lxc/incus: Powerful system container and virtual machine manager