fa
Feedback
Linux для чайника

Linux для чайника

رفتن به کانال در Telegram

Linux - Разбор утилит / инструментов - Новости / факты - Опросы для проверки знаний, навыков и многое другое. Только по вопросам сотрудничества: @altmainf Регистрация в перечне РКН https://clck.ru/3EpL9L

نمایش بیشتر

📈 تحلیل کانال تلگرام Linux для чайника

کانال Linux для чайника (@os_linux_ru) در بخش زبانی روسی بازیگری فعال است. در حال حاضر جامعه شامل 19 747 مشترک است و جایگاه 6 798 را در دسته فناوری و برنامه‌ها و رتبه 34 117 را در منطقه روسيا دارد.

📊 شاخص‌های مخاطب و پویایی

از زمان ایجاد در невідомо، پروژه رشد سریعی داشته و 19 747 مشترک جذب کرده است.

بر اساس آخرین داده‌ها در تاریخ 21 ژوئن, 2026، کانال فعالیت پایداری دارد. در ۳۰ روز گذشته تغییر اعضا برابر -36 و در ۲۴ ساعت گذشته برابر 6 بوده و همچنان دسترسی گسترده‌ای حفظ شده است.

  • وضعیت تأیید: تأیید نشده
  • نرخ تعامل (ER): میانگین تعامل مخاطب 21.97% است و در ۲۴ ساعت نخست پس از انتشار، محتوا معمولاً 7.84% واکنش نسبت به کل مشترکان کسب می‌کند.
  • دسترسی پست‌ها: هر پست به طور میانگین 4 340 بازدید دریافت می‌کند. در اولین روز معمولاً 1 548 بازدید جمع‌آوری می‌شود.
  • واکنش‌ها و تعامل: مخاطبان به‌طور فعال حمایت می‌کنند؛ میانگین واکنش به هر پست 0 است.
  • علایق موضوعی: محتوا بر موضوعات کلیدی مانند linux, скрипт, bash, grep, мониторинг تمرکز دارد.

📝 توضیح و سیاست محتوایی

نویسنده این فضا را محل بیان دیدگاه‌های شخصی توصیف می‌کند:
Linux - Разбор утилит / инструментов - Новости / факты - Опросы для проверки знаний, навыков и многое другое. Только по вопросам сотрудничества: @altmainf Регистрация в перечне РКН https://clck.ru/3EpL9L

به لطف به‌روزرسانی‌های پرتکرار (آخرین داده در تاریخ 22 ژوئن, 2026)، کانال همواره به‌روز و دارای دسترسی بالاست. تحلیل‌ها نشان می‌دهد مخاطبان به‌طور فعال با محتوا تعامل دارند و آن را به نقطه اثرگذاری مهم در دسته فناوری و برنامه‌ها تبدیل کرده‌اند.

19 747
مشترکین
+624 ساعت
-87 روز
-3630 روز
آرشیو پست ها
Изменения владельца файла или директории В Linux каждый пользователь имеет свои собственные файлы, причем он может регламентировать возможность доступа других пользователей к ним. С этим может помочь команда chown. Чтобы предоставить пользователю с именем name возможность распоряжаться файлом file.txt: chown name file.txt Помимо изменения владельца файла, может изменяться группа его владельцев или его владелец и группа его владельцев одновременно. В результате команды: chown name:group file.txt владельцем file.txt станет пользователь с именем name, а группой его владельцев — group.

Получить всю информацию о компонентах компьютера можно с помощью команды lshw Если запустить команду без параметров, то на выходе получим огромный список в несколько сотен строк, включающий версию прошивки, установленные драйверы, поддерживаемые возможности, серийные номера, номера версий и информацию о шине.  Поэтому следует немного отфильтровать поток, запустив: sudo lshw -short или sudo lshw -businfo, чтобы увидеть список классов устройств, которые дальше можно передать утилите. Пример вывода информации с конкретными классами: sudo lshw -short -class bus -class cpu  Вывод можно преобразовать в форматы HTML, XML или JSON, к примеру: sudo lshw -html -class storage > log.html  Чтобы убрать из вывода информацию, такую как IP адреса и серийные номера, можно добавить параметр -sanitize

Контроль активности пользователя Чтобы мониторить действий пользователей в системе, можно использовать два приложения — psacct или acct. Они предоставляют отличный способ отслеживать, что делают пользователи, какие команды они запускают, сколько ресурсов они потребляют, как долго пользователи активны в системе. Еще одна замечательная особенность в том, что она дает общие ресурсы, потребляемые такими службами, как Apache, MySQL, FTP, SSH и т.д. Команды для мониторинга действий процесса:  ⁃ ac — выводит статистику пользовательских входов/выходов (время подключения) в часах.  ⁃ lastcomm — печатает информацию о ранее выполненных командах пользователя.  ⁃ accton — используются для включения/выключения процесса учета.  ⁃ sa — суммирует информацию о ранее выполненных командах.  ⁃ last и lastb — показывают список последних зарегистрированных пользователей. Пакет psacct доступен только для дистрибутивов на основе rpm (RHEL, CentOS и Fedora), а acct — для Ubuntu, Debian и Linux Mint.

Где вы окажетесь завтра, зависит от того, что вы изучаете сегодня. PostgreSQL — инструмент, который ищут компании, а грамотны
Где вы окажетесь завтра, зависит от того, что вы изучаете сегодня. PostgreSQL — инструмент, который ищут компании, а грамотных специалистов по нему все еще немного. Почему именно PostgreSQL? Потому что это не просто база данных, а сердце ваших проектов. Если вы администратор БД, разработчик, DevOps или администратор Linux, этот курс — ваш апгрейд. Мы научим настраивать кластеры, оптимизировать производительность, разбираться с блокировками и решать задачи работы с большими объемами данных. А также живые лекции, практические задания и диплом, который признают лидеры рынка. Учитесь у практиков, которые знают, как решать реальные задачи, и получите навыки, за которые платят топовые компании. Присоединяйтесь к курсу «PostgreSQL для администраторов баз данных и разработчиков» сейчас и начните свой путь к высокооплачиваемой карьере! Оставить заявку: https://otus.pw/VeBi/ 🎁Бонус: скидка 5% на обучение по промокоду go_dba. Предложение действительно до 12.02 Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Анализ логов с агрегацией и сортировкой Условие: Есть лог веб-сервера access.log в формате: IP - - [date] "METHOD URL HTTP/1.1" STATUS SIZE Пример: 192.168.1.10 - - [01/Feb/2026:10:12:34] "GET /api/users HTTP/1.1" 200 1234 Задача: Вывести топ-5 IP, которые сделали больше всего запросов с кодом 500. Решение:
awk '$9 == 500 {print $1}' access.log \
  | sort \
  | uniq -c \
  | sort -nr \
  | head -5
awk '$9 == 500 {print $1}' • • $9 — HTTP-код • • $1 — IP-адрес • sort — обязательная подготовка для uniq • uniq -c — считаем количество повторений • sort -nr — числовая сортировка по убыванию • head -5 — топ-5

Сочетание команд find и grep Комбинация этих команд позволяет искать файлы с помощью find, а затем искать определенное содержимое в этих файлах с помощью grep. Найти определенный текстовый шаблон в файлах в каталоге и его подкаталогах: find /path/to/search -type f -exec grep -H "pattern" {} + Найдите файлы, измененные в пределах временного диапазона, а затем выполните поиск внутри них: find /path/to/search -type f -mtime -7 -exec grep -H "pattern" {} + Найти файлы с расширением .txt и затем найти в них шаблон: find /path/to/search -type f -name "*.txt" -exec grep -H "pattern" {} +

Чтобы каждый раз не мониторить завершение какого-либо долгого процесса, к примеру, бэкапа или сборки пакетов, можно применить звуковой сигнал по его завершении. Пример псевдокода: some_long_command; echo $'\a'; - отделяет команды друг от друга. • echo $'\a' - подаст звуковой сигнал.

Отрезаем расширение у файла. Стандартный способ — использовать утилиту basename, который отрезает весь путь слева, а если указать дополнительный параметр, то дополнительно отрежет справа и суффикс. Например пишем file.txt и суффикс .txt basename file.txt .txt Получаем: file Но можно обойтись внутренними преобразованиями в bash  filename=file.txt; echo ${filename%.*} Получаем: file Или наоборот, отрезать имя файла и оставить только расширение: filename=file.txt; echo ${filename##*.} Получаем: txt

Разница между CHMOD и CHOWN Говоря простыми словами, chown определяет, кому принадлежит файл, а chmod определяет, кто что может делать этим файлом. chmod и chown работают вместе: chmod может контролировать, что разрешено владельцу и группе владельцев для данного файла или каталога, в то время как chown быстро меняет, кто в системе получает доступ к файлу.

Замена стандартной команды cat Команда bat — это утилита командной строки, предназначенная для замены стандартной команды cat - чтение данных из файла или стандартного ввода. Основное отличие bat от cat заключается в добавлении подсветки синтаксиса, интеграции с Git, а также в возможности отображения номеров строк и вывода в формате "paging". Примеры использования: 1. Просмотр файла с подсветкой синтаксиса и номерами строк: bat file.txt 2. Сравнение файла с его версией в Git: bat --diff file.txt 3. Сочетание с другими командами через pipe: Чтобы найти определенный текст в файле и вывести результат с подсветкой синтаксиса, вы можете использовать grep совместно с bat: grep -n 'search_term' file.txt | bat Установка bat зависит от дистрибутива. Пример для Debian: sudo apt install bat В некоторых дистрибутивах команда может быть доступна как batcat из-за конфликта имен.

Обработка артефактов сканирований. Сканирование запустили — а что дальше Запустить security-сканер — лишь половина дела. Гора
Обработка артефактов сканирований. Сканирование запустили — а что дальше Запустить security-сканер — лишь половина дела. Гораздо сложнее превратить результаты сканирования в рабочий процесс, который действительно приводит к исправлению уязвимостей, а не к накоплению отчётов «на складе». На открытом уроке разберём, как выстраивать работу с артефактами сканирований в GitLab CI/CD. Поговорим о хранении результатов, передаче их разработчикам и настройке security gates, которые автоматически влияют на сборку и релиз. Обсудим, как встроить безопасность в пайплайн так, чтобы она работала системно и не превращалась в формальность. Урок будет полезен DevSecOps и AppSec-специалистам, DevOps/SRE-инженерам и тимлидам, которые хотят наладить управляемый поток обработки результатов security-сканирований. → Вебинар проходит в формате открытого урока курса «Внедрение и работа в DevSecOps»: https://otus.pw/vk3e/ Реклама. ООО «Отус онлайн‑образование», ОГРН 1177746618576

Preload — это фоновая служба, которая анализирует, какие программы вы чаще всего запускаете, и предзагружает их библиотеки (.so), бинарники и зависимости в кэш страниц памяти. При следующем запуске система берёт всё из RAM, а не читает с диска. После установки ( sudo apt install preload ) автоматически стартует как systemd-сервис. Настройка (по желанию): Конфиг в /etc/preload.conf. Основные параметры:
# Количество процессов для отслеживания (по умолчанию 150–200)
model.cachesize = 200

# Какие директории сканировать (добавьте свои)
map.minimum = /usr/bin:/usr/local/bin:/usr/games:/bin:/sbin:/usr/sbin

# Исключить ненужное (например, редко используемые)
exclude = /usr/bin/rare_app /usr/lib/firefox/firefox-bin

# Частота обновления модели (в секундах)
cycle = 3600
После правки: sudo systemctl restart preload Проверяем, что работает: # статус службы sudo systemctl status preload # лог предзагрузок cat /var/log/preload.log # вручную обновить модель sudo preload-predict

iconv: превращаем «????????» обратно в нормальный русский текст В старых файлах, при копировании с Windows, в логах или при парсинге данных из разных источников часто появляется классика: вместо «Привет, мир» вы видите «ÐŸÑ€Ð¸Ð²ÐµÑ‚, мир» или полные кракозябры. Проблема кодировки. И лучший инструмент для её решения в Linux — утилита iconv. iconv — часть GNU libc, конвертирует текст из одной кодировки в другую. Поддерживает сотни encoding’ов: UTF-8, CP1251, KOI8-R, ISO-8859-1, CP866 и т.д. Установка (если вдруг нет): sudo apt install iconv # на Debian/Ubuntu уже есть в libc6 # или просто проверьте: iconv --version Основные опции:-f — from (исходная кодировка) • -t — to (целевая кодировка) • -o — файл вывода • --list — показать все поддерживаемые кодировки (их > 1000!) Примеры: 1. Конвертация файла на месте Файл text.txt в CP1251, нужно в UTF-8:
iconv -f CP1251 -t UTF-8 text.txt -o text_utf8.txt
Потом можно перезаписать оригинал:
iconv -f CP1251 -t UTF-8 text.txt > text.txt.tmp && mv text.txt.tmp text.txt
2. Через stdin/stdout (в пайплайне)
cat old_file.txt | iconv -f KOI8-R -t UTF-8
Или с curl:
curl -s http://old-site.ru/page | iconv -f CP1251 -t UTF-8
3. Автоопределение кодировки + конвертация iconv не угадывает сам, но комбинируем с file или uchardet:
# Сначала узнаём кодировку
file -i old_file.txt  
# или
uchardet old_file.txt  

# Потом конвертируем
iconv -f $(uchardet old_file.txt) -t UTF-8 old_file.txt -o new_file.txt
4. Массовое конвертирование всех файлов в директории
for file in *.txt; do
    iconv -f CP1251 -t UTF-8 "$$   file" -o "   $${file%.txt}_utf8.txt"
done
____________________ если iconv ругается «illegal input sequence» — добавьте //IGNORE или //TRANSLIT:
iconv -f CP1251 -t UTF-8//TRANSLIT//IGNORE bad_file.txt
TRANSLIT — заменит неизвестные символы на похожие, IGNORE — просто пропустит.

Hyper-V часто стоит рядом, но у многих остаётся туманом. В итоге виртуалки создаются наугад, сети работают странно, диски рас
Hyper-V часто стоит рядом, но у многих остаётся туманом. В итоге виртуалки создаются наугад, сети работают странно, диски растут как попало, а тестовый контур превращается в лотерею. На открытом уроке вы разберёте базу Hyper-V. Установка и первичная настройка роли, создание виртуальной машины, работа с виртуальными дисками и виртуальными сетями, типовые сценарии применения в инфраструктуре. → Записаться на открытый урок курса «Администратор Windows»: https://otus.pw/ayQZ/ Реклама. ООО «Отус онлайн‑образование», ОГРН 1177746618576

GNU Autotools - классический набор инструментов для автоматизации сборки ПО под Unix-подобные системы. Появился в 1990-х и до сих пор используется в тысячах open-source проектов. Главная цель Autotools — сделать исходный код портативным: один и тот же тарбол должен собираться на разных дистрибутивах, архитектурах, с разными версиями компилятора и библиотек, без ручной правки Makefile под каждую систему. Основные компоненты Autotools: Autoconf Генерирует скрипт configure из файла configure.ac (или configure.in). configure — это shell-скрипт, который при запуске проверяет систему: • есть ли нужные заголовки, библиотеки, функции • какой компилятор, какие флаги • где лежат зависимости (например, pkg-config) На выходе — настроенный Makefile и config.h. Automake Из файла Makefile.am генерирует Makefile.in - шаблон Makefile, который потом подставляется в Autoconf. Позволяет писать простые декларативные правила вместо огромных ручных Makefile. Libtool Упрощает сборку и использование shared-библиотек на разных платформах (особенно где .so, .dylib, .dll отличаются). M4 Макро-процессор, на котором построены Autoconf и Automake. В configure.ac вы пишете макросы M4. Дополнительно: gettext (для интернационализации), aclocal и т.д. Как это работает на практике: Разработчик проекта: 1. Пишет configure.ac и Makefile.am. 2. Запускает autoreconf -i (или старый autotools набор команд: aclocal → autoconf → automake). 3. Коммитит только эти файлы + вспомогательные (NEWS, README, AUTHORS). Пользователь (или дистрибутив): ./configure # проверяет систему, генерирует Makefile make # сборка sudo make install # установка Пример простого configure.ac: mAC_INIT([myprog], [1.0], [bug@example.com]) AM_INIT_AUTOMAKE AC_PROG_CC AC_CONFIG_FILES([Makefile src/Makefile]) AC_OUTPUT

Очищаем дисковый кэш в Linux Linux кэширует файлы в свободной RAM — это ускоряет всё. Но иногда нужно сбросить кэш. Полезно. когда нужен честный бенчмарк скорости диска диагностика памяти либо тесты в VM/контейнерах Не делай это регулярно — кэш заполнится заново, а производительность упадёт. Главная команда: sudo sync sudo sh -c 'echo 3 > /proc/sys/vm/drop_caches' Цифры: • 1 — только данные файлов • 2 — метаданные • 3 — всё Проверка: free -h | grep Mem buff/cache резко упадёт → больше free. Альтернатива: sudo sysctl -w vm.drop_caches=3 Готовый one-liner для теста диска: sudo sync; echo 3 > /proc/sys/vm/drop_caches; dd if=/bigfile of=/dev/null bs=1M status=progress Мини-скрипт:
#!/bin/bash
free -h | grep Mem
sudo sync; echo 3 > /proc/sys/vm/drop_caches
free -h | grep Mem
echo "Кэш сброшен"
Не ставь в cron — хуже будет. Linux сам управляет кэшем лучше нас.

VDI нужен там, где важно быстро выдавать рабочие места, держать доступ под контролем и не превращать поддержку пользователей
VDI нужен там, где важно быстро выдавать рабочие места, держать доступ под контролем и не превращать поддержку пользователей в бесконечный хаос. Если удалёнка, филиалы или много однотипных рабочих мест, VDI экономит недели администрирования. На открытом уроке разберёте архитектуру VDI на базе Microsoft RDS, полный цикл развертывания и настройку удалённого доступа. Без абстракций, с понятной схемой, что и зачем поднимается. → Записаться на открытый урок курса «Администратор Windows»: https://otus.pw/JbKh/ Реклама. ООО «Отус онлайн‑образование», ОГРН 1177746618576

Бывает, сервер или рабочая машина начинает «думать» дольше обычного: команды висят, интерфейс лагает, SSH отвечает с задержкой. Не паникуем — 90% случаев решаются системной диагностикой. Полный чек-лист, когда что-то тормозит: Шаг 1: Общая картина — что жрёт ресурсы прямо сейчас Сразу запускаем htop (если нет — sudo apt install htop или dnf install htop). Что смотреть:CPU: если все ядра на 100% — ищем процесс вверху списка (сортировка по %CPU — нажми F6 → %CPU). • RAM/Swap: если Swap активно используется (жёлтая полоска) — нехватка памяти, процесс убивает OOM-killer. • Load Average (вверху): три числа — 1/5/15 мин. Если на 4-ядерной машине >8-12 — перегрузка. Альтернатива без htop: top (Shift+P — сортировка по CPU, Shift+M — по MEM). Шаг 2: Память — free и vmstat free -h # сколько реально свободно vmstat -w 1 10 # каждую секунду 10 раз Ключевые колонки в vmstat: • r — процессы в очереди на CPU (если > числа ядер — CPU bottleneck) • b — процессы в uninterruptible sleep (обычно I/O wait) • si/so — swap in/out (если не нули — памяти не хватает) • wa — % CPU в I/O wait (высокий — диски тормозят) Шаг 3: Диски — iostat и iotop iostat -xz 1 10 # расширенная стат-а каждую сек. iotop # как htop, но для I/O (нужен root) В iostat смотрим: • %util близко к 100% — диск загружен полностью • await > 20-30 ms — медленный отклик (SSD должно быть <1 ms) • svctm устарело, но если высокое — проблемы Если NVMe/SSD, а util 100% — часто виноваты большие логи или бэкапы. Шаг 4: CPU детально — mpstat и pidstat mpstat -P ALL 1 10 # нагрузка по каждому ядру pidstat -u 1 10 # CPU по процессам со временем Поможет понять: один поток жрёт одно ядро или нагрузка равномерная. Шаг 5: Исторические данные — sar (sysstat) Если проблема не постоянная: sar -u 10 5 # CPU сейчас sar -r # память за день sar -d # диски за день sar -n DEV # сеть Sysstat по умолчанию собирает данные каждые 10 мин — золотой источник для ночных тормозов. Шаг 6: Конкретный процесс — strace и perf Если виновник известен (например, mysqld или java): strace -p PID -c # системные вызовы и сколько времени на них perf top -p PID # что именно в CPU жрёт (нужен kernel-headers) perf record -p PID -g sleep 10; perf report # профилирование Шаг 7: Ядро и аппаратные проблемы dmesg -T --follow # последние сообщения ядра с читаемыми датами cat /proc/interrupts # если один IRQ очень высокий — драйвер/устройство Частые виновники: ошибки диска, перегрев, сетевые драйверы. Шаг 8: Сеть — если тормозит только удалённо iftop # кто сколько трафика жрёт nethogs # по процессам ping -c 4 google.com mtr google.com # трассировка + пинг

«Xargs: как обрабатывать вывод команд пачками (параллельно!)» Pipe в Bash крут, но xargs делает его мощнее: берёт ввод и передаёт аргументами другой команде. Полезно для больших списков (файлы, PID). -P для параллели. Пример: убить процессы по grep ps aux | grep "myapp" | awk '{print $2}' | xargs -P 4 kill Пояснение: grep находит, awk берёт PID ($2), xargs kill'ит параллельно 4 штуки (-P4). Практика: с findfind . -name "*.tmp" | xargs rm (без -exec). Экономит время на серверах.

Автоматически выключаем компьютер в определённое время Выключать ПК каждый день в 23:00 (например, для детского ПК). Простое решение (в cron): cron0 23 * * * shutdown -h now Или с предупреждением за 10 минут: cron50 22 * * * wall "Компьютер выключится через 10 минут!" 0 23 * * * shutdown -h now