LinuxSkill - Сводки с прода и Шпаргалки
Следим за новостями Linux, DevOps и ИБ, чтобы быть готовым к любым факапам. Бонусом — плотные шпаргалки и чеклисты для ежедневной работы в терминале. 📩 По всем вопросам: @chorapov Зеркало в MAX: https://max.ru/LinuxSkill РКН https://vk.cc/cMUwm4
Ko'proq ko'rsatish📈 Telegram kanali LinuxSkill - Сводки с прода и Шпаргалки analitikasi
LinuxSkill - Сводки с прода и Шпаргалки (@linuxskill) Rus til segmentidagi kanali faol ishtirokchi. Hozirda hamjamiyat 10 676 obunachidan iborat bo'lib, Texnologiyalar & Aralashmalar toifasida 11 405-o'rinni va Rossiya mintaqasida 59 577-o'rinni egallagan.
📊 Auditoriya ko‘rsatkichlari va dinamika
невідомо sanasidan buyon loyiha tez o‘sib, 10 676 obunachiga ega bo‘ldi.
18 Oktabr, 2026 dagi oxirgi ma’lumotlarga ko‘ra kanal barqaror faollikka ega. Oxirgi 30 kunda obunachilar soni -48 ga, so‘nggi 24 soatda esa -1 ga o‘zgardi va umumiy qamrov yuqori darajada qolmoqda.
- Tasdiqlash holati: Tasdiqlanmagan
- Jalb etish (ER): Auditoriya o‘rtacha 10.84% darajada jalb etiladi. Nashrdan keyingi dastlabki 24 soatda kontent odatda umumiy obunachilar sonining 4.67% ini tashkil etuvchi reaksiyalarni to‘playdi.
- Post qamrovi: Har bir post o‘rtacha 1 157 marta ko‘riladi; birinchi sutkada odatda 499 ta ko‘rish yig‘iladi.
- Reaksiyalar va o‘zaro ta’sir: Auditoriya faol: har bir postga o‘rtacha 9 ta reaksiya keladi.
- Tematik yo‘nalishlar: Kontent docker, linux, bash, devops, скрипт kabi asosiy mavzularga jamlangan.
📝 Tavsif va kontent siyosati
Muallif resursni shaxsiy fikrni ifoda etish maydoni sifatida ta’riflaydi:
“Следим за новостями Linux, DevOps и ИБ, чтобы быть готовым к любым факапам.
Бонусом — плотные шпаргалки и чеклисты для ежедневной работы в терминале.
📩 По всем вопросам: @chorapov
Зеркало в MAX: https://max.ru/LinuxSkill
РКН https://vk.cc/cMUwm4”
Yuqori yangilanish chastotasi (oxirgi ma’lumot 19 Oktabr, 2026 da olingan) sababli kanal doimo dolzarb va katta qamrovli bo‘lib qoladi. Analitika auditoriya kontent bilan faol hamkorlik qilishini, uni Texnologiyalar & Aralashmalar toifasidagi muhim ta’sir nuqtasiga aylantirishini ko‘rsatadi.
# df -h
Ищем самые прожорливые директории:
# du -h -d 1 / | sort -hr
# du -hs /* | sort -hr
# Ограничиваем вывод топ-10
# du -h -d 1 / | sort -hr | head -10
# Топ-20 самых больших директорий
# du -hcx --max-depth=6 / | sort -rh | head -n 20
# Топ-20 самых больших файлов
# find / -mount -ignore_readdir_race -type f -exec du -h "{}" + 2>&1 \
> | sort -rh | head -n 20
Проверка inodes
Иногда место есть, но закончились inodes:
# df -ih
Охота на файлы-призраки
Ситуация: du показывает мало занятого места, но df говорит "диск полный". Причина — удалённые файлы, которые держит процесс:
# lsof | grep '(deleted)'
# lsof +L1
Нашли большие deleted-файлы? Перезапусти службу или убей процесс через kill -9 <pid>.
Ловушка с точками монтирования
Хитрый случай: скрипт должен был писать в смонтированный диск /mnt/backup, но диск не подключился. Файлы записались в локальную систему и теперь скрыты под точкой монтирования!
Как проверить:
1. Отмонтируй диск временно
2. Загляни в директорию
3. Удали мусор
4. Примонтируй обратно
Профилактика: всегда проверяй успешность монтирования перед записью данных в скриптах.
💡 Итог: 90% проблем с местом решаются этими командами. Сохрани и используй при первых признаках "disk full".
____________________
Дополнительный материал:
🧠 - Осваиваем RAID Массивы в Linux: Путь к Надежности и Производительности
🧠 - История OpenSUSE: От Зеленого Ящерика к Глобальному Сообществу
🧠 - Разблокируем секреты Linux: Специальные разрешения файлов
#Linux_Mastery #bash #terminal #linux #sysadmin #troubleshooting #storage#!/bin/bash
# Проверка аргументов
if [ $# -eq 0 ]; then
echo "Usage: $(basename $0) -mnopqrs"
exit 1
fi
# Парсинг опций
while getopts ":mnopq:rs" Option; do
case $Option in
m ) echo "Опция -m активна";;
n|o ) echo "Опция -$Option активна";;
p ) echo "Опция -p активна";;
q ) echo "Опция -q с аргументом: $OPTARG";;
r|s ) echo "Опция -$Option";;
* ) echo "Неверная опция";;
esac
done
# Сдвиг к не-опциям
shift $(($OPTIND - 1))
## 💡 Как работает:
- :mnopq:rs — строка опций (: после q = требует аргумент)
- $OPTARG — значение для опции с аргументом
- $OPTIND — индекс следующего аргумента
## 🚀 Примеры вызова:
./script.sh -m -n
./script.sh -mn # можно слитно!
./script.sh -q "значение"
./script.sh -mnop -q test
## 📌 Бонус — импорт функций:
# Загружаем общие функции
source /path/to/common_functions.sh
# или
. ./config.sh
Теперь твои скрипты выглядят как настоящие Linux-утилиты!
____________________
Дополнительный материал:
🧠 - Командный центр Linux: Ваше руководство по базовым консольным программам
🧠 - Защитный барьер Linux: Как система обеспечивает безопасность пользователей и групп
🧠 - Мастер-класс по консольным программам Linux: Разбираемся с UID и GID
#bash_guide #bash #getopts #cli #scripting #Linux #arguments# Установка одной строкой
curl -o - https://get.docker.com | bash -
📦 Управление контейнерами:
Запуск с автостартом:
docker run -d -p 80:80 --restart always --name nginx-proxy nginx
Просмотр контейнеров:
docker ps # запущенные
docker ps -a # все
Удаление:
docker rm nginx-proxy # остановленный
docker rm -f nginx-proxy # принудительно
Массовые операции:
# Остановить все
docker stop $(docker ps -a -q)
# Удалить все
docker rm $(docker ps -a -q)
🖼️ Работа с образами:
docker images # список
docker rmi nginx # удалить один
docker rmi $(docker images -a -q) # удалить все
🔍 Отладка и мониторинг:
Войти в контейнер:
docker exec -it nginx-proxy bash
Логи:
docker logs nginx-proxy # все логи
docker logs -n 100 nginx-proxy # последние 100 строк
docker logs -f nginx-proxy # следить в реальном времени
Мониторинг ресурсов:
docker stats nginx-proxy
docker stats --format "table {{.Name}}\t{{.CPUPerc}}\t{{.MemUsage}}"
Процессы в контейнере:
docker top nginx-proxy
🛠️ Продвинутые команды:
Детальная информация:
docker inspect nginx-proxy
docker inspect -f '{{ .NetworkSettings.Networks.bridge.IPAddress }}' nginx-proxy
docker inspect --format '{{json .Mounts}}' grafana | jq .
Управление местом:
docker system df # занятое место
docker system prune # очистка
Копирование файлов:
# Из контейнера
docker cp nginx-proxy:/etc/nginx/nginx.conf ~/nginx
# В контейнер
docker cp ~/nginx/nginx.conf nginx-proxy:/etc/nginx
Экспорт контейнера:
docker export nginx-proxy -o ~/nginx-proxy.tar.gz
📚 Бонус — полезные темы:
🔧 Инструменты: Portainer, ctop, cdebug
🛡️ Безопасность: Trivy, Dockle, CIS рекомендации
📊 Мониторинг: Zabbix, Prometheus
🗃️ Бэкапы: docker-volume-backup
Теперь у тебя есть всё для работы с Docker. Эти команды покрывают 90% повседневных задач!
____________________
Дополнительный материал:
🧠 - Открытый мир Linux: Сокровищница инструментов для системных администраторов
🧠 - Стартуйте в IT с Бесплатным курсом по Linux: от Нуля до DevOps
🧠 - От /etc/passwd к централизованному управлению: Как Linux трансформировал учетные записи
#Linux_Mastery #docker #DevOps #containers #Linux #подборка #automation#!/bin/bash
# Убийца процессов по имени
E_BADARGS=66
if test -z "$1"; then
echo "Usage: $(basename $0) имя_процесса"
exit $E_BADARGS
fi
PROCESS_NAME="$1"
# Магическая строка
ps ax | grep "$PROCESS_NAME" | awk '{print $1}' | xargs -i kill {} 2>/dev/null
exit $?
💡 Как работает магия:
- ps ax — список всех процессов
- grep — фильтруем по имени
- awk '{print $1}' — извлекаем PID
- xargs -i kill {} — убиваем каждый процесс
🚀 Использование:
# Убить все Chrome
./kill-byname.sh chrome
# Закрыть все терминалы
./kill-byname.sh xterm
# Остановить Firefox
./kill-byname.sh firefox
⚠️ ВНИМАНИЕ:
Скрипт опасен! Особенно под root. Можешь случайно убить системные процессы.
💡 Альтернативы:
# Если есть killall
killall chrome
# Через pkill
pkill -f chrome
# Через pidof
kill $(pidof chrome)
Теперь ты можешь массово управлять процессами даже на минимальной системе!
____________________
Дополнительный материал:
🧠 - Революция в управлении дисковым пространством: Встречайте topdiskconsumer
🧠 - Все о группах в Linux: Почему это важно для каждого пользователя?
🧠 - Энциклопедия Docker: Незаменимые инструменты для системных администраторов
#bash_guide #bash #process #kill #Linux #sysadmin #script# Посмотреть доступные интерфейсы
tcpdump -D
Базовый перехват:
# Все интерфейсы без резолва имён (-nn это важно!)
tcpdump -nn -i any
# Конкретный интерфейс
tcpdump -nn -i ens3
🔧 Главный лайфхак — исключаем SSH:
# SSH забивает вывод? Исключаем порт 22
tcpdump -nn -i any port not 22
📡 Фильтруем по адресам:
# Трафик к конкретному адресу
tcpdump -nn dst 8.8.8.8
# К нескольким адресам
tcpdump -nn dst 8.8.8.8 or dst 8.8.4.4
# Комбо: адрес + порт
tcpdump -nn dst 8.8.8.8 and port 53
🎯 Работа с протоколами:
# Только ARP
tcpdump arp -nn -i any
# Всё, кроме ARP
tcpdump not arp -nn -i any
# Исключаем несколько протоколов
tcpdump not arp and not icmp -nn -i any
💡 Реальный пример из жизни:
Отладка SIP-трафика через VPN:
tcpdump -nn -i tun4 src 10.1.4.23 and dst 10.1.3.205 and port 5060
🚀 Про-совет:
Большой поток? Сохраняй в файл:
tcpdump -nn -i any > ~/tcpdump.txt
Что искать в выводе:
IP 10.8.2.2.13083 > 10.8.2.3.8118Читается: IP источник.порт > получатель.порт Вот и всё! Этих команд хватает для 90% задач. tcpdump выглядит страшно, но на деле нужно только видеть, откуда и куда идут пакеты. ____________________ Дополнительный материал: 🧠 - Linux Systemd: Искусство мониторинга служб 🧠 - Linux Systemd: Мастер-класс по управлению службами 🧠 - Linux Systemd: Как стать магистром служб #Linux_Mastery #network #tcpdump #Linux #DevOps #networking #debug
monitor.py:
import psutil
import json
def get_system_stats():
stats = {
"cpu": psutil.cpu_percent(interval=1),
"memory": psutil.virtual_memory().percent,
"disk": psutil.disk_usage('/').percent
}
return json.dumps(stats)
if __name__ == "__main__":
print(get_system_stats())
🔧 Шаг 2: Bash-обработчик
Создай monitor.sh:
#!/bin/bash
# Получаем данные от Python
stats=$(python3 monitor.py)
# Парсим JSON через jq
cpu=$(echo $stats | jq -r '.cpu')
memory=$(echo $stats | jq -r '.memory')
disk=$(echo $stats | jq -r '.disk')
# Красивый вывод
echo "CPU Usage: $cpu%"
echo "Memory Usage: $memory%"
echo "Disk Usage: $disk%"
🚀 Запускаем:
# Делаем исполняемым
chmod +x monitor.sh
# Смотрим магию
./monitor.sh
Результат:
CPU Usage: 12.3% Memory Usage: 45.6% Disk Usage: 67.8%💡 Прокачай скрипт: - Добавь алерты при превышении порогов - Логируй данные для графиков - Отправляй метрики в Telegram при критических значениях Теперь один скрипт заменяет кучу утилит. А главное — ты можешь допилить его под свои задачи! ____________________ Дополнительный материал: 🧠 - Мастер-класс по выключению и перезагрузке Linux с помощью команды shutdown 🧠 - Прозрачность systemd: Освещаем теневые уголки системных процессов в Linux 🧠 - Управление питанием в Linux: Искусство выключения с помощью systemctl #Linux_Mastery #Linux #Monitoring #Python #Bash #DevOps #Performance
for i in 1 2 3 4 5? Покажу эволюцию циклов в Bash — от динозавров до современного синтаксиса!
🦕 Каменный век:
for a in 1 2 3 4 5 6 7 8 9 10
do
echo -n "$a "
done
🏛️ Античность (seq):
for a in `seq 10`
do
echo -n "$a "
done
🏭 Индустриальная эра (Bash 3+):
for a in {1..10}
do
echo -n "$a "
done
🚀 Современность (C-style):
LIMIT=10
for ((a=1; a <= LIMIT; a++))
do
echo -n "$a "
done
💥 Высший пилотаж — оператор запятая:
# Инкремент двух переменных одновременно!
for ((a=1, b=1; a <= LIMIT; a++, b++))
do
echo -n "$a-$b "
done
# Вывод: 1-1 2-2 3-3 4-4 5-5...
💡 Что выбрать:
- {1..10} — для простых диапазонов
- C-style — для сложной логики
- seq — для обратной совместимости
Все примеры выводят: 1 2 3 4 5 6 7 8 9 10
Больше никаких длинных перечислений! Используй современный синтаксис.
____________________
Дополнительный материал:
🧠 - Централизованное управление пользователями в Linux: Гармония преимуществ и вызовов
🧠 - Создание учетной записи пользователя в Linux: Пошаговое руководство
🧠 - Мастер-класс по созданию системных аккаунтов в Linux
#bash_guide #bash #loops #scripting #Linux #programming #for