DevOps Portal | Linux
Присоединяйтесь к нашему каналу и погрузитесь в мир DevOps Сотрудничество, реклама: @devmangx Менеджер: @Spiral_Yuri РКН: https://clck.ru/3P8kFH
نمایش بیشتر📈 تحلیل کانال تلگرام DevOps Portal | Linux
کانال DevOps Portal | Linux (@loose_code) در بخش زبانی روسی بازیگری فعال است. در حال حاضر جامعه شامل 13 084 مشترک است و جایگاه 9 390 را در دسته فناوری و برنامهها و رتبه 49 413 را در منطقه روسيا دارد.
📊 شاخصهای مخاطب و پویایی
از زمان ایجاد در невідомо، پروژه رشد سریعی داشته و 13 084 مشترک جذب کرده است.
بر اساس آخرین دادهها در تاریخ 31 اوت, 2026، کانال فعالیت پایداری دارد. در ۳۰ روز گذشته تغییر اعضا برابر 15 و در ۲۴ ساعت گذشته برابر -1 بوده و همچنان دسترسی گستردهای حفظ شده است.
- وضعیت تأیید: تأیید نشده
- نرخ تعامل (ER): میانگین تعامل مخاطب 17.56% است و در ۲۴ ساعت نخست پس از انتشار، محتوا معمولاً 9.58% واکنش نسبت به کل مشترکان کسب میکند.
- دسترسی پستها: هر پست به طور میانگین 2 298 بازدید دریافت میکند. در اولین روز معمولاً 1 254 بازدید جمعآوری میشود.
- واکنشها و تعامل: مخاطبان بهطور فعال حمایت میکنند؛ میانگین واکنش به هر پست 9 است.
- علایق موضوعی: محتوا بر موضوعات کلیدی مانند devops, kubernetes, docker, linux, ebpf تمرکز دارد.
📝 توضیح و سیاست محتوایی
نویسنده این فضا را محل بیان دیدگاههای شخصی توصیف میکند:
“Присоединяйтесь к нашему каналу и погрузитесь в мир DevOps
Сотрудничество, реклама: @devmangx
Менеджер: @Spiral_Yuri
РКН: https://clck.ru/3P8kFH”
به لطف بهروزرسانیهای پرتکرار (آخرین داده در تاریخ 01 سپتامبر, 2026)، کانال همواره بهروز و دارای دسترسی بالاست. تحلیلها نشان میدهد مخاطبان بهطور فعال با محتوا تعامل دارند و آن را به نقطه اثرگذاری مهم در دسته فناوری و برنامهها تبدیل کردهاند.
ps aux
Выводит список всех процессов с подробной информацией:
🔹USER — пользователь, запустивший процесс.
🔹PID — уникальный идентификатор процесса.
🔹%CPU / %MEM — использование процессора и памяти.
🔹COMMAND — название программы.
🟢 Интерактивный мониторинг:
top
Показывает процессы в реальном времени. Нажмите q, чтобы выйти.
🟢 Упрощенная альтернатива:
htop
Если не установлено, добавьте:
sudo apt install htop
2️⃣ Управление процессами
🟢 Завершение процесса:
kill <PID>
Например:
kill 1234
Чтобы принудительно завершить процесс:
kill -9 <PID>
🟢 Остановка и возобновление:
🔹Остановить процесс:
kill -STOP <PID>
🔹Возобновить процесс:
kill -CONT <PID>
🟢 Изменение приоритета процесса:
🔹Проверить приоритет (niceness):
ps -o pid,ni,cmd -p <PID>
🔹Изменить приоритет (чем ниже значение, тем выше приоритет):
renice -n 10 -p <PID>
3️⃣ Планирование задач
🟢 Запуск в фоне: Если команда занимает много времени, добавьте & в конце:
long_running_command &
Узнать PID фонового процесса:
jobs -l
🟢 Отложенный запуск: Используйте at, чтобы запланировать выполнение команды:
echo "backup.sh" | at 02:00
Если at не установлен:
sudo apt install at
🟢Периодические задачи: Для регулярных задач используйте cron:
1. Открыть редактор crontab:
crontab -e
2. Добавить задачу (пример: запуск каждую минуту):
* * * * * /path/to/script.sh⚡️ Советы ➖ Используйте
htop для удобной работы с процессами, если командная строка кажется сложной.
➖ Команда pkill позволяет завершить процессы по имени:
pkill firefox
➖ Следите за потреблением ресурсов с помощью iotop (для ввода-вывода) и nmon (общий мониторинг).
✅ Заключение
Управление процессами — это важнейшая часть работы в Linux. Знание этих инструментов позволит вам не только следить за состоянием системы, но и эффективно решать проблемы производительности. 😐
👉 DevOps Portaldocker ps
После ввода команды вы увидите удобный выхлоп, где нас интересует имя или ID нужного контейнера.
2️⃣ Вывод логов конкретного контейнера
Здесь есть два способа: менее удобный и совсем неудобный. Где какой решайте сами 🤷♂️ Первый способ заиметь доступ к логу контейнера указан был в сообщении про работу с логами, где я указывал место хранения логов Docker:
/var/lib/docker/containers/<id_контейнера>/<id_контейнера>-json.log
Но, как говорилось ранее, вы получаете лютый JSON, где вообще ничего непонятно. Второй способ - использовать команду для вывода логов конкретного контейнера:
docker logs <имя_или_ID_контейнера>По сути, команда вываливает в терминал содержимое JSON-файла из способа №1. Что делать дальше с этой информацией решает каждый сам, кому-то может оно и поможет, ну а мы идем дальше... 3️⃣ Сохраняем логи за определенный период в отдельный файл Совместим все, что узнали в пунктах выше и приправим ключом --since, который позволяет задать временной отрезок, с которого будет выведен лог. Вдобавок используя перенаправление вывода сохраним это все в отдельный файл, чтобы потом его изучить:
docker logs <имя_или_ID_контейнера> --since 60m > mydocker.logДанный пример выведет содержимое лога контейнера Docker за последний час. Ну а что делать, если нужно вывести данные с прошлого месяца? Все просто!
docker logs <имя_или_ID_контейнера> --since YYYY-MM-DD > mydocker.logЗдесь YYYY - год (2023, например), MM - месяц (09) и DD - день (21). Порядок идет именно такой, так как все эти ваши европейцы и американцы, создавшие Linux и большую часть того, что связано с программированием, используют такой формат даты. Всю эту информацию перенаправляем в файл с расширением log, который потом можно использовать как душе угодно. 4️⃣ Добавляем временную метку в логи Но даже после использования команды в п. 3 у вас получится файл, в котором все будет в кучу и не поймешь когда и во сколько какое событие, описанное в логе произошло. Поэтому нужно добавить временную метку, делается это при помощи ключа -t.
docker logs <имя_или_ID_контейнера> --since YYYY-MM-DD -t > mydocker.log
Вот теперь-то вы получите информативный лог о том, что происходило с вашим сервисом внутри контейнера!
Полученную в конце команду вы можете использовать вместе с сервисом Transfer.sh, чтобы без лишней головомойки делиться логами с кем нужно
👉 DevOps Portal/var/log/...Внутри нее могут располагаться как отдельные файлы-логи (имеющие расширение log), так и директории с названиями сервисов внутри которых находятся логи. Есть, естественно, исключения. Например, Docker. У него логи запущенных контейнеров находятся в другом месте:
/var/lib/docker/containers/<id_контейнера>/<id_контейнера>-json.log
Опять-таки, повторюсь, что чаще всего местоположение логов, заданное разработчиками программы или сервиса указывается в конфигурационных файлах и может, при желании, меняться пользователем. Системные логи, чаще всего, хранятся в /var/log.
🟢 Какие виды логов бывают?
Расскажу, опять-таки, про классическую схему того, какие логи бывают.
✅ access.log - содержат данные о доступе к серверу/ресурсу/приложению (например, успешные авторизации)
❌ error.log - содержат данные об ошибках, возникающих при работе с серверами/ресурсами/приложениями.
🔤 <имя_сервиса>.log - содержат данные обо всех взаимодействиях с сервисом (доступ, ошибки, информация и пр.)
Указанные имена логов являются стандартными, конкретный вариант уже зависит от того, как решили разработчики или пользователь. Используя конфигурационные файлы вы можете задать любое имя для файла с логами. Теперь уже перейдем к командам.
1️⃣ Команда cat для просмотра содержимого лога
При использовании этой команды в терминал будет выведено все содержимое лога:
cat /var/log/<имя_лога>.log
Удобно, когда лог небольшой, в обратном случае вывод может занять длительное время.
2️⃣ Команда tail -f для вывода содержимого лога в режиме реального времени
Напомню, что команда tail выводит по-умолчанию 10 последних строк содержимого файла. Но при использовании ключа -f в выхлоп будут попадать строки лога в режиме реального времени.
tail -f /var/log/<имя_лога>.log
Удобно запустить такую команду и начать тестирование сервиса или программы, чтобы сразу видеть влетающую информацию.
3️⃣ Команда echo -n > для зануления логов
Бывает так, что логи разрастаются до неимоверных размеров. Решается это настройкой так называемой ротации (про нее расскажу отдельно в следующий раз), но если лог разросся до размеров, которые нужно занулить здесь и сейчас, то указанная команда подойдет в самый раз:
echo -n > /var/log/<имя_лога>.log
Почему нельзя решить проблему простым удалением лога при помощи rm? Некоторые сервисы используют проверку наличия файла для записи лога и если он отсутствует, то считают это ошибкой и перестают работать. Поэтому вместо кажущегося очевидного удаления файла лога нужно его просто занулить.
Работа с логами не составляет каких-то сложностей. Помимо указанных выше команд можно использовать практически все другие инструменты, применяемые к работе с файлами в Linux. В логах можно искать информацию, сортировать ее вывод в терминал, применять редактор sed и так далее. Чтобы не утруждать пользователя или администратора просмотров логов вручную существуют автоматизированные системы сбора и обработки логов, которые позволяют собирать информацию сразу с нескольких серверов.
Поддержите пост лайком, если он оказался полезным 🤝
👉 DevOps Portalsudo apt install flatpak # для Ubuntu/Debian
sudo dnf install flatpak # для Fedora
sudo pacman -S flatpak # для Archlinux
При этом, стоит помнить, что большинство современных Linux-дистрибутивов имеют встроенную поддержку Flatpak. К таким относятся, например, Fedora, Manjaro, Linux Mint.
2️⃣ Установка приложения: чтобы установить приложение из репозитория Flatpak, используйте:
flatpak install название-приложенияГде взять название приложения? Переходим на сайт Flathub и выбираем то, что нужно. После нажатия кнопки Install, появится команда для ввода в терминал (также доступно скачивание установочного пакета, но менеджер приложений вашего дистрибутива должен уметь работать с такими пакетами), где и будет название приложения. Нет желания рыскать по сайтам? Смотрите команду №4. 3️⃣ Обновление приложений: Для обновления всех установленных Flatpak-приложений выполните:
flatpak update4️⃣ Поиск приложений: если вы хотите найти приложение в репозитории, воспользуйтесь командой поиска:
flatpak search ключевое-слово5️⃣ Удаление приложений: для удаления приложения используйте:
flatpak uninstall название-приложения
Если при этом вы забыли опять-таки имя приложения, то можете воспользоваться бонусной командой №6 😏
6️⃣ Вывод списка установленных приложения:
flatpak listЭти команды сделают работу с Flatpak в терминале максимально удобной и эффективной 😐 👉 DevOps Portal
nmap -p <port_number> <host_or_ip>
👉 DevOps Portalsplit --bytes=1024M file.mkv file.part.В этой команде: -
file.mkv — имя вашего большого файла.
- file.part. — префикс для имен файлов-частей (например, file.part.aa, file.part.ab и так далее).
- --bytes=1024M — размер каждой части (здесь мы выбрали 1024 мегабайта).
🧩 Как объединить файлы в один:
cat file.part.* > file.mkv
📄 Как разбить текстовый файл по строкам:
Если вам нужно разделить текстовый файл, на несколько файлов по количеству строк, то мы можем использовать команду split с опцией -l, которая задает количество строк в каждом файле, на которые мы разбиваем исходный файл.
split -l 1000 textfile.txt textfile.part.Мы разделили исходный текстовый файл, на файлы по 1000 строк в каждом. Объединение файлов выполняется также, как описано в предыдущем пункте. Заключение Мы рассмотрели простейшие способы разделения файла на несколько частей с использованием командной строки. Для разделения файлов используется команда split. Для объединения файлов мы использовали команду cat. Чтобы получить более подробную информацию по команде split, выполните в терминале:
man splitТак что, не бойтесь работать с большими данными в Linux! 💪 👉 DevOps Portal
sudo apt install atool (Debian/Ubuntu/Linux Mint)
sudo dnf install atool (Fedora)
sudo pacman -S atool (Archlinux)
2️⃣ Создание архивов
Для создания архива используется команда:
apack имя_архива.формат [список_файлов]
К примеру, команда
apack backup.tgz first second third
создаст в текущей директории архив backup.tgz и запакует в него файлы first, second и third. Причём формат создаваемого архива автоматически определяется из имени.
Создать несколько архивов можно вот так:
apack -e -F .tar.gz dir1 dir2 dir3
В этом примере три директории dir будут упакованы в три разных архива. Ключ -e означает выполнять команду отдельно для каждого аргумента, ключ -F указывает формат создаваемых архивов. Подобным образом эти ключи действуют и в других командах, как будет показано ниже.
3️⃣ Просмотр архивов
Что бы просмотреть содержимое архива введите
als имя_архива
Просмотреть содержимое нескольких архивов:
als -e *.tgz
Что бы вывести на экран содержимое файла, находящегося в архиве, можно использовать команду
acat имя_архива имя_файла_в_архиве
4️⃣ Распаковка архивов
Для распаковки архива используется команда
aunpack имя_архива [имя_файла_в_архиве]
Если в архиве содержится всего один файл, то он будет распакован в текущую директорию. Если же файлов несколько, то будет создана директория совпадающая с именем архива и файлы распакуются в неё. Если вам нужно распаковать архив в другую директорию, то можете её указать после ключа -X:
aunpack -X /tmp archive.zip
Распаковать несколько архивов можно указав ключ -e:
aunpack -e *.tar.gz
5️⃣ Перепаковка архивов
atool также можно использовать для перепаковки архивов в другой формат. Это делается командой
arepack старый_архив новый_архив
При этом старый архив не удаляется. Если вам необходимо перепаковать несколько архивов RAR в формат 7Z, то можно использовать следующую команду
arepack -F .7z -e *.rar
6️⃣ Сравнение архивов
Сравнить два архива можно командой
adiff архив1 архив2
atool использует программу diff для сравнения файлов.
7️⃣ Единая команда
Вместо всех этих команд возможно использовать команду atool с соответствующим ключем:
atool -l вместо als
atool -x вместо aunpack
atool -a вместо apack
atool -c вместо acat
atool -d вместо adiff
atool -r вместо arepack
Возможно, такой вариант кому-то покажется предпочтительным.
Заключение
Как вы могли увидеть, atool это очень простая и, в то же время, мощная программа. Разобравшись с ней один раз вы больше не будете испытывать проблем с запоминанием ключей для множества консольных архиваторов 🎹
👉 DevOps Portalmkdir <имя_папки>
Но что делать, если нужно создать за раз, например, пять директорий? Логичным выглядит ввод команды на создание каталога пять раз. Логичным, но крайне неудобным и точно не быстрым. Далее напрашивается использование символа точки с запятой, чтобы выполнить команды в терминале последовательно:
mkdir <имя_папки1>;mkdir <имя_папки2>;mkdir <имя_папки3>;mkdir <имя_папки4>;mkdir <имя_папки5>
Внешне смотрится просто отвратительно да и это, по сути, те же пять команд на создание, просто в одну строку написанные, поэтому тоже не подойдет. Правильным решением будет использование следующего синтаксиса:
mkdir -p {<имя_папки1>,<имя_папки2>,<имя_папки3>,<имя_папки4>,<имя_папки5>}
Ключ -p говорит о том, что должны будут создаться все директории, которые указаны в пути до нужно папки. Отлично работает в ситуациях, когда вы решили поиграть со вложенностью. Также обратите внимание, что никаких пробелов между названиями папок быть не должно, все плотненько и без отступов.
Ничего сложного, правда? Да и получается в разы быстрее, чем посредством GUI-шки клепать кликами мыши нужно число папок. Так что, запоминаем и используем по мере необходимости ☝️
👉 DevOps Portal$ sudo apt install smartmontools
Запустите службу с помощью следующей команды.
sudo /etc/init.d/smartmontools start
RHEL и CentOS
sudo yum install smartmontools
Fedora
sudo dnf install smartmontools
Служба Smartd запустится автоматически после успешной установки. Если вдруг Smartd не запустился, сделать это можно командой:
sudo systemctl start smartd
3️⃣ Проверка работоспособности SSD/HDD ⚒️
Чтобы проверить общее состояние, введите команду:
sudo smartctl -d ata -H /dev/sda
Что значат эти параметры:
-d - указывает тип устройства.
ata - тип устройства ATA, используйте scsi для типа устройства SCSI.
-H - проверяет устройство, чтобы сообщить о его состоянии и работоспособности.
Возможны два варианта выхлопа: все хорошо и диск исправен, или, если устройство сообщает о неисправном состоянии работоспособности, это означает, что устройство уже вышло из строя или может выйти из строя очень скоро. В этом случае, можно получить дополнительную информацию:
sudo smartctl -a /dev/sda
Вы можете увидеть следующие атрибуты:
- [ID 5] Reallocated Sectors Count - Количество секторов, перераспределенных из-за ошибок чтения.
- [ID 187] Reported Uncorrect - Количество неисправимых ошибок при доступе к сектору чтения/записи.
- [ID 230] Индикатор износа носителя - Текущее состояние работы диска на основе срока службы.
Если вы видите 100 - это лучшее значение. Если видите 0 - это ХУДШЕЕ значение.
Чтобы инициировать расширенный тест (long), выполните следующую команду:
sudo smartctl -t long /dev/sda
Чтобы выполнить самотестирование, введите команду:
sudo smartctl -t short /dev/sda
Чтобы найти результат самопроверки диска, используйте эту команду:
sudo smartctl -l selftest /dev/sda
Чтобы оценить время выполнения теста, выполните следующую команду.
sudo smartctl -c /dev/sda
Вы можете распечатать журналы ошибок диска с помощью команды:
sudo smartctl -l error /dev/sda
Команд кажется много, но все решает практика: стоит только пару раз попробовать вводить их и анализировать выхлоп и все станет просто и понятно
👉 DevOps Portal