en
Feedback
DevOps Portal | Linux

DevOps Portal | Linux

Open in Telegram

Присоединяйтесь к нашему каналу и погрузитесь в мир DevOps Сотрудничество, реклама: @devmangx Менеджер: @Spiral_Yuri РКН: https://clck.ru/3P8kFH

Show more

📈 Analytical overview of Telegram channel DevOps Portal | Linux

Channel DevOps Portal | Linux (@loose_code) in the Russian language segment is an active participant. Currently, the community unites 13 084 subscribers, ranking 9 390 in the Technologies & Applications category and 49 413 in the Russia region.

📊 Audience metrics and dynamics

Since its creation on невідомо, the project has demonstrated rapid growth, gathering an audience of 13 084 subscribers.

According to the latest data from 31 August, 2026, the channel demonstrates stable activity. Although there has been a change in the number of participants by 15 over the last 30 days and by -1 over the last 24 hours, overall reach remains high.

  • Verification status: Not verified
  • Engagement rate (ER): The average audience engagement rate is 17.56%. Within the first 24 hours after publication, content typically collects 9.58% reactions from the total number of subscribers.
  • Post reach: On average, each post receives 2 298 views. Within the first day, a publication typically gains 1 254 views.
  • Reactions and interaction: The audience actively supports content: the average number of reactions per post is 9.
  • Thematic interests: Content is focused on key topics such as devops, kubernetes, docker, linux, ebpf.

📝 Description and content policy

The author describes the resource as a platform for expressing subjective opinions:
Присоединяйтесь к нашему каналу и погрузитесь в мир DevOps Сотрудничество, реклама: @devmangx Менеджер: @Spiral_Yuri РКН: https://clck.ru/3P8kFH

Thanks to the high frequency of updates (latest data received on 01 September, 2026), the channel maintains relevance and a high level of publication reach. Analytics show that the audience actively interacts with content, making it an important point of influence in the Technologies & Applications category.

13 084
Subscribers
-124 hours
+97 days
+1530 days
Posts Archive
Чем отличается su от sudo? su «substitute user» — заменить пользователя sudo «substitute user and do» — подменить пользователя и выполнить su требует пароль целевой учетной записи, на кого переключаемся. sudo требует пароль текущего пользователя и запускает от его имени команды, которым требуются права суперюзера. Например, мы сидим под пользователем user и хотим войти под John:
user@dev:/$ su john
Будет запрошен пароль, нужно ввести пароль именно от учетной записи john, а не от user. А вот пример с sudo:
user@dev:/$ sudo -u john whoami
А здесь нужно ввести пароль от учетной записи user, а не от John или рута. Но для этого случая сперва необходимо добавить пермишены для пользователя user в файл /etc/sudoers.
user ALL=(ALL:ALL) ALL
Редактировать этот файл можно по средствам команды visudo. А свалидировать конфиг можно командой visudo -c. Редактирование этого файла через visodu хорошо тем, что если вы допустите ошибку, то при сохранении, оно сообщит о ней.
А для чего нужен дефис после su? Для очистки переменных и чтобы пользоваться чистой оболочкой при переключении на другого пользователя. Авторизуемся под пользователем user и экспортируем переменную:
ssh user@pc
export a="test"
Теперь у пользователя user есть переменная "a" которая = test. Переключаемся на пользователя John и смотрим переменную "a"
su john
echo $a
Вывелась строчка test. То есть все что мы задали под user, перекочевало в оболочку john. А теперь добавим дефис:
su - john
echo $a
Переменная $a больше не выводится. Чистая оболочка. Кстати с этим дефисом часто косячат и потом долго не могут понять в чем причина. Переменные вроде были заданы, а потом куда-то пропали.
su (с дефисом) — сначала переключается пользователь, а затем запускается shell, зачищаются все переменные.
su (без дефиса) — переключает пользователя, оставляя переменные окружения старого пользователя.
У sudo есть подобные ключи -s -i
user@pc:/$ sudo -s
Запустится оболочка с правами root
user@pc:/$ sudo -i
Запустится оболочка, но уже с чтением файлов root/.profile/.bashrc и т.п. Можно попробовать добавить экспорт переменной в .profile, сделать sudo -s/-i и увидеть что с ключом -i переменная выведется на экран.
По сути sudo -i = команде sudo su -. Но обычно за sudo su - в приличных местах можно получить по шапке. Это плохая практика! Так как это порождает дополнительный процесс и больше гемора с набором самой команды.
👉 DevOps Portal

😁 👉 DevOps Portal
😁 👉 DevOps Portal

Самоучитель по CI/CD в K8s Отличный ресурс, чтобы освоить Kubernetes и научиться доставлять в него код своих приложений Пошаг
Самоучитель по CI/CD в K8s Отличный ресурс, чтобы освоить Kubernetes и научиться доставлять в него код своих приложений Пошаговые инструкции, теория и примеры кода помогут быстро погрузиться в процесс Выбирайте свою технологию: 👉 Node.js 👉 Spring Boot 👉 Django 👉 Go 👉 Rails 👉 Laravel 👉 DevOps Portal | #ресурсы

Отомстил Binance Буба работал управляющим в Binance в России. Площадка — всё, и теперь он создал свой канал. ❗️Перед уходом B
Отомстил Binance Буба работал управляющим в Binance в России. Площадка — всё, и теперь он создал свой канал. ❗️Перед уходом Binance украл у него 200.000$ Теперь он помогает подписчикам выбирать правильные биржи и когда ждать биткоин по 120.000$. Этой информации нет в интернете — только тут: 📈 Топ-3 проверенных биржи 🪙 Альты, на которых вы сделаете +500% за декабрь 💬 Чат на 6.000+ инвесторов Буба рассказывает обо всех секретах торговли на крипторынке. Трейдерский опыт и знания, которых нет нигде: t.me/+TT9qMUF_Q1Q3MDYy

Топ 4 лучших типа сервисов Kubernetes в одной диаграмме. 👉 ClusterIP ClusterIP - это стандартный и наиболее распространенный
Топ 4 лучших типа сервисов Kubernetes в одной диаграмме. 👉 ClusterIP ClusterIP - это стандартный и наиболее распространенный тип службы. Kubernetes назначает сервису ClusterIP внутренний IP-адрес кластера. Это делает службу доступной только в пределах кластера. 👉 NodePort Это позволяет вывести сервис за пределы кластера, добавив общекластерный порт поверх ClusterIP. Мы можем запросить сервис по NodeIP:NodePort. 👉 LoadBalancer Этот способ раскрывает сервис извне, используя балансировщик нагрузки облачного провайдера. 👉 ExternalName Сопоставляет службу с доменным именем. Обычно это используется для создания службы в Kubernetes для представления внешней базы данных. 👉 DevOps Portal

Примеры типовых операций в bash-скриптах Арифметические действия, циклы по кол-ву раз #!/bin/bash A="10" B="5" C=`expr $A + $B` printf "A=10 B=5 C=expr \$A + \$B C=%d \n" "$C" # пример цикла по i I=0 while [ $I -lt 15 ] do printf "0x%02x " "$I" I=`expr $I + 1` done echo Разного рода проверки #!/bin/bash # пример проверки существования файла # создаем файл test1 touch test1 # проверяем существование файла test1 if [ -f test1 ] ; then echo "файл test1 существует" fi # проверяем несуществование файла test2 if ! [ -f test2 ] ; then echo "файл test2 не существует" fi # краткая справка по другим опциям команды [ ] # -d filename директория существует # -f filename файл существует # -L filename символьная ссылка существует # -r, -w, -x файл доступен для чтения, записи или выполнения # -s filename файл существует и имеет ненулевую длину # f1 -nt f2 f1 новее чем f2 # f1 -ot f2 f1 старше чем f2 Работа с FTP #!/bin/bash ADDRESS=192.168.1.150 USER=root PASSWORD=root ftp -n -p ADDRESS <<EoF user USER PASSWORD cd /usr/bin put my_cool_program quit EoF exit 0 Работа с telnet #!/bin/bash ( sleep 1 echo "root" echo "cd /tmp" echo "ls" sleep 1 echo "quit" ) | telnet 192.168.1.150 Примечание: в этом случае root логинится без пароля, если нужен пароль, то надо добавить после echo "root" еще одно эхо с паролем. Пример цикла по множеству значений #!/bin/bash # пример цикла по множеству значений for A in раз два три четыре пять do echo "$A," done echo "вышел заяц погулять" echo Не забываем, что для того, чтоб скрипт можно было запустить, надо изменить права доступа к нему, добавив возможность исполнения файла, например командой chmod a+x script.sh 👉 DevOps Portal

🎁Осталось две недели на то что бы стать программистом в 2024 В телеграмм появился канал в котором бесплатно слили весь топов
🎁Осталось две недели на то что бы стать программистом в 2024 В телеграмм появился канал в котором бесплатно слили весь топовый контент о программировании! Любой материал, всё разбито по хэш-тэгу в закрепе: 📱 Frontend 👩‍💻 C++ 📱 Python 🤔 Hacking 📱 Java 👩‍💻 Golang 📱 C# 👩‍💻 Linux 👩‍💻 Lua 👩‍💻 php 👩‍💻 Kotlin 👩‍💻 Git 👩‍💻 Assembler 👩‍💻 Swift 🖥 SQL 👩‍💻 Mob. Develop 👣 Backend 🐞 Qa Automation 🖥 Arduino 🖥 Desing Успей подписаться❗️ @CodHub_tg

🔥 Шпаргалка по SSH-командам Давно не делились полезными шпаргалками! Держите – объемная подборка по SSH: от базовых команд до туннелирования Сохраняй, пригодится 😎 👉 DevOps Portal | #ресурсы

Ansible против bash-скрипта 😀 👉 DevOps Portal
Ansible против bash-скрипта 😀 👉 DevOps Portal

DistroSea Удобный способ протестировать операционные системы перед установкой. Сервис позволяет запустить десятки дистрибутив
DistroSea Удобный способ протестировать операционные системы перед установкой. Сервис позволяет запустить десятки дистрибутивов Linux, ознакомиться с интерфейсом, протестировать функционал и поработать в терминале. 👉 distrosea.com 👉 DevOps Portal | #ресурсы

🧠 Machine Learning — авторский канал, где собрана вся база по ИИ и машинному обучению. Senior разработчик AI-алгоритмов и автономных агентов, разбирает гайды, редкую литературу и код топовых моделей машинного обучения и искусственного интеллекта. В 2025 году ИИ выйдет на совершенно новый уровень тот, кто не успеет за прогрессом - отстанет, а кто разберется - сорвет куш. Стоит подписаться: t.me/ai_machinelearning_big_data

Программа сообщает о том, что не может найти свой конфиг. Каким образом можно узнать, где она пытается его найти? line-buffered опция которая выведет результат как только найдет strace -f — отслеживание дочерних процессов strace -f l ftp sitename | & grep --line-buffered open | grep /home/user Либо в самой программе, если удастся найти параметры /usr/sbin/mysqld --verbose --help | grep -A 1 «Default options» 👉 DevOps Portal

Dockly Это интерактивный терминальный интерфейс для управления контейнерами Docker. Утилита позволяет в режиме реального времени просматривать активные контейнеры, образы и сети, выполнять команды, такие как перезапуск или удаление контейнеров, а также получать доступ к их логам и ресурсам. Подходит для разработчиков и администраторов, которым нужен быстрый и удобный способ мониторинга и управления Docker-средами. 👉 https://github.com/lirantal/dockly 👉 DevOps Portal | #ресурсы

Linux. Карманный справочник. 4-е изд Автор: Дэниел Джей Год: 2024 📂 Скачать книгу 👉 DevOps Portal | #книги
Linux. Карманный справочник. 4-е изд Автор: Дэниел Джей Год: 2024 📂 Скачать книгу 👉 DevOps Portal | #книги

✅️ GitHub теперь в Telegram! Подписывайтесь: @GitHub
✅️ GitHub теперь в Telegram! Подписывайтесь: @GitHub

Чем отличается CMD от ENTRYPOINT в Dockerfile? Инструкции CMD и ENTRYPOINT выполняются в момент запуска контейнера, тольо инструкция CMD позволяет переопределить передаваемые команде аргументы. Пример 1. CMD: Опишем сборку образа в Dockerfile. FROM alpine CMD ["ping", "8.8.8.8"] В инструкцию CMD передаются 2 аргумента. Выполним сборку образа docker build -t test . и запустим контейнер. $ docker run test PING 8.8.8.8 (8.8.8.8): 56 data bytes 64 bytes from 8.8.8.8: seq=0 ttl=43 time=32.976 ms 64 bytes from 8.8.8.8: seq=1 ttl=43 time=31.998 ms 64 bytes from 8.8.8.8: seq=2 ttl=43 time=31.843 ms --- 8.8.8.8 ping statistics --- 3 packets transmitted, 3 packets received, 0% packet loss round-trip min/avg/max = 31.708/33.316/36.823 ms Теперь передадим 2 новых аргумента для запуска контейнера. $ docker run test traceroute 1.1.1.1 traceroute to 1.1.1.1 (1.1.1.1), 30 hops max, 46 byte packets 1 172.17.0.1 (172.17.0.1) 0.017 ms 0.016 ms 0.009 ms 2 192.168.168.1 (192.168.168.1) 0.996 ms 1.553 ms 2.069 ms 3 * * * 4 lag-2-435.bgw01.samara.ertelecom.ru (85.113.62.125) 1.454 ms 1.427 ms 1.984 ms 5 172.68.8.3 (172.68.8.3) 19.685 ms 15.722 ms 15.565 ms 6 172.68.8.2 (172.68.8.2) 15.846 ms 22.696 ms 35.093 ms 7 one.one.one.one (1.1.1.1) 17.439 ms 17.670 ms 24.202 ms ping заменен на traceroute, IP адрес заменен на 1.1.1.1. Пример 2. ENTRYPOINT: Опишем сборку образа в Dockerfile. FROM alpine ENTRYPOINT ["ping", "8.8.8.8"] В инструкцию ENTRYPOINT передаются 2 аргумента. Выполним сборку образа docker build -t test . и запустим контейнер. $ docker run test2 PING 8.8.8.8 (8.8.8.8): 56 data bytes 64 bytes from 8.8.8.8: seq=0 ttl=43 time=36.189 ms 64 bytes from 8.8.8.8: seq=1 ttl=43 time=44.120 ms 64 bytes from 8.8.8.8: seq=2 ttl=43 time=44.584 ms ^C --- 8.8.8.8 ping statistics --- 3 packets transmitted, 3 packets received, 0% packet loss round-trip min/avg/max = 36.189/41.631/44.584 ms Теперь передадим изменим один из аргументов для запуска контейнера. $ docker run test2 ping 1.1.1.1 BusyBox v1.31.1 () multi-call binary. Usage: ping [OPTIONS] HOST Send ICMP ECHO_REQUEST packets to network hosts -4,-6 Force IP or IPv6 name resolution -c CNT Send only CNT pings -s SIZE Send SIZE data bytes in packets (default 56) -i SECS Interval -A Ping as soon as reply is recevied -t TTL Set TTL -I IFACE/IP Source interface or IP address -W SEC Seconds to wait for the first response (default 10) (after all -c CNT packets are sent) -w SEC Seconds until ping exits (default:infinite) (can exit earlier with -c CNT) -q Quiet, only display output at start and when finished -p HEXBYTE Pattern to use for payload Как видим, аргумент передать контейнеру нельзя. 👉 DevOps Portal

KodeKloud Free Labs — площадка c интерактивными заданиями и реальными сценариями, которые помогут погрузиться в практическое
+1
KodeKloud Free Labs — площадка c интерактивными заданиями и реальными сценариями, которые помогут погрузиться в практическое применение принципов DevOps и облачных технологий, не выходя из браузера. В бесплатных лабах сейчас есть: Linux, Кубер, Docker, GiT, Python и прочие прелести. 👉 DevOps Portal | #ресурсы

Учишь Python, но как дело доходит до собственного кода — всё, кирдык? 😥 На форумах только одно: «Больше практиковаться!» А т
Учишь Python, но как дело доходит до собственного кода — всё, кирдык? 😥 На форумах только одно: «Больше практиковаться!» А толку? Ноль понимания и никакой поддержки от профи… Плавали - знаем)) Поэтому специально для тебя - чат для начинающих и продолжающих Python-щиков 🤝 Что получишь? 1️⃣ Сможешь задавать любые вопросы без страха и осуждения и получать ответы за минуты, а не часы поиска в инете 2️⃣ Регулярные плюшки в виде стримов от препода с 15-ти летним опытом 3️⃣ Общение с единомышленниками и заряд мотивации ➡️ А еще, забирай в закрепе БЕСПЛАТНЫЙ вводный курс по Python Короче, всё для прокачки! Залетай к нам — ссылка на чат (тык)

💡 Короткий совет по Linux Если вы хотите очистить пустые каталоги, команда find может упростить эту работу: $ find . -type d
💡 Короткий совет по Linux Если вы хотите очистить пустые каталоги, команда find может упростить эту работу: $ find . -type d -empty -exec rmdir -v {} + Параметр -type d выполняет поиск каталогов, -empty выбирает пустые каталоги, а -exec rmdir {} выполняет команду rmdir для их удаления. Команда rmdir гарантирует, что каталог пуст перед его удалением. В качестве альтернативы, вы также можете использовать эту команду для выполнения той же задачи: $ find . -type d -empty -delete 👉 DevOps Portal

Мониторинг сети с помощью Python: Начни с SNMP и PySNMP Мониторинг сетевой инфраструктуры — это основа стабильной работы ИТ-экосистемы. С помощью Python и библиотеки PySNMP можно собрать данные о состоянии устройств и использовать их для анализа или визуализации. Сегодня рассмотрим пример простого скрипта для сбора информации через SNMP. Что такое SNMP? SNMP (Simple Network Management Protocol) — это стандартный протокол управления сетями. Он используется для: 🔹Сбора метрик с устройств (CPU, память, трафик интерфейсов). 🔹Отправки уведомлений о событиях. 🔹Управления конфигурацией. Установка PySNMP Для работы установим библиотеку PySNMP:
pip install pysnmp
Пример скрипта: Сбор метрик интерфейса Вот пример кода, который получает статистику интерфейса по OID:
from pysnmp.hlapi import *

# Укажите параметры устройства
snmp_target = '192.168.1.1'
community = 'public'
oid = '1.3.6.1.2.1.2.2.1.10.1'  # OID для входящего трафика интерфейса

# Запрос SNMP
def get_snmp_data(target, community, oid):
    iterator = getCmd(
        SnmpEngine(),
        CommunityData(community, mpModel=0),
        UdpTransportTarget((target, 161)),
        ContextData(),
        ObjectType(ObjectIdentity(oid))
    )
    error_indication, error_status, error_index, var_binds = next(iterator)

    if error_indication:
        print(f"Error: {error_indication}")
    elif error_status:
        print(f"Error: {error_status.prettyPrint()}")
    else:
        for var_bind in var_binds:
            print(f"{var_bind[0]} = {var_bind[1]}")

# Выполнение запроса
get_snmp_data(snmp_target, community, oid)
Как это работает: 1. getCmd выполняет запрос на устройство по указанному OID. 2. CommunityData указывает тип доступа (public — стандартное имя сообщества для чтения). 3. Результат содержит текущую метрику (например, объем входящего трафика на интерфейсе). Применение: 🔹Получите данные о загрузке процессора, памяти или состоянии интерфейсов. 🔹Интегрируйте скрипт в существующую систему мониторинга. 🔹Расширьте функционал для уведомлений или построения графиков. Что дальше? Для визуализации собранных данных можно использовать библиотеки, такие как Matplotlib или Pygal. Это позволяет легко строить графики, показывающие состояние сети. 👉 DevOps Portal