es
Feedback
LinuxSkill - Сводки с прода и Шпаргалки

LinuxSkill - Сводки с прода и Шпаргалки

Ir al canal en Telegram

Следим за новостями Linux, DevOps и ИБ, чтобы быть готовым к любым факапам. Бонусом — плотные шпаргалки и чеклисты для ежедневной работы в терминале. 📩 По всем вопросам: @chorapov Зеркало в MAX: https://max.ru/LinuxSkill РКН https://vk.cc/cMUwm4

Mostrar más

📈 Análisis del canal de Telegram LinuxSkill - Сводки с прода и Шпаргалки

El canal LinuxSkill - Сводки с прода и Шпаргалки (@linuxskill) en el segmento lingüístico de Ruso es un actor destacado. Actualmente la comunidad reúne a 10 740 suscriptores, ocupando la posición 11 158 en la categoría Tecnologías y Aplicaciones y el puesto 59 600 en la región Rusia.

📊 Métricas de audiencia y dinámica

Desde su creación el невідомо, el proyecto ha mostrado un crecimiento acelerado, reuniendo a 10 740 suscriptores.

Según los últimos datos del 02 septiembre, 2026, el canal mantiene una actividad estable. En los últimos 30 días la variación de miembros fue de -53, y en las últimas 24 horas de -3, conservando un alto alcance.

  • Estado de verificación: No verificado
  • Tasa de interacción (ER): El promedio de interacción de la audiencia es 11.96%. Durante las primeras 24 horas tras publicar, el contenido suele obtener 4.94% de reacciones respecto al total de suscriptores.
  • Alcance de las publicaciones: Cada publicación recibe en promedio 1 285 visualizaciones. En el primer día suele acumular 531 visualizaciones.
  • Reacciones e interacción: La audiencia responde de forma activa: el promedio de reacciones por publicación es 4.
  • Intereses temáticos: El contenido se centra en temas clave como docker, linux, bash, devops, скрипт.

📝 Descripción y política de contenido

El autor describe el recurso como un espacio para expresar opiniones subjetivas:
Следим за новостями Linux, DevOps и ИБ, чтобы быть готовым к любым факапам. Бонусом — плотные шпаргалки и чеклисты для ежедневной работы в терминале. 📩 По всем вопросам: @chorapov Зеркало в MAX: https://max.ru/LinuxSkill РКН https://vk.cc/cMUwm4

Gracias a la alta frecuencia de actualizaciones (últimos datos recibidos el 03 septiembre, 2026), el canal mantiene la vigencia y un amplio alcance. La analítica demuestra que la audiencia interactúa activamente con el contenido, lo que lo convierte en un punto de referencia dentro de la categoría Tecnologías y Aplicaciones.

10 740
Suscriptores
-324 horas
-177 días
-5330 días
Archivo de publicaciones
🔧 Укрощаем bash: 15 железобетонных функций для профи Самописные функции в конфигурации оболочки экономят часы рутины, но часто пишутся "на коленке" и падают с синтаксическими ошибками, если забыть передать им аргумент. Я собрал 15 убойных функций для твоего конфига и добавил в них жесткие проверки и значения по умолчанию. Забирай в продакшен. Навигация и управление файлами

# 1. Создать директорию и сразу в нее перейти
mkcd() {
  mkdir -p "$1" && cd "$1"
}

# 2. Подняться на N уровней вверх. Если аргумент не передан, поднимаемся на 1 (защита от syntax error)
up() {
  local d=""
  local limit="${1:-1}"
  for ((i=1; i<=limit; i++)); do d+="../"; done
  cd "$d"
}

# 3. Быстрый поиск файла по имени в текущей директории
ff() {
  find . -type f -iname "*$1*"
}

# 4. Быстрый поиск директории по имени
fd() {
  find . -type d -iname "*$1*"
}

# 5. Узнать размер директории. Если путь не передан, считаем текущую (.)
dirsize() {
  du -sh "${1:-.}"
}
Работа с процессами и историей

# 6. Найти процесс, отсекая из вывода сам grep
psg() {
  ps aux | grep -i "$1" | grep -v grep
}

# 7. Посмотреть N последних введенных команд (по умолчанию 10)
h() {
  history | tail -n "${1:-10}"
}

# 8. Быстрый поиск по истории команд
hg() {
  history | grep "$1"
}
Сеть и порты

# 9. Поднять HTTP-сервер в текущей папке (по умолчанию порт 8000)
serve() {
  python3 -m http.server "${1:-8000}"
}

# 10. Узнать свой внешний IP-адрес
myip() {
  curl -s ifconfig.me
}

# 11. Узнать IP-адрес нужного домена
ipinfo() {
  dig +short "$1"
}

# 12. Показать все открытые слушающие порты
ports() {
  ss -tuln
}
Система и безопасность

# 13. Полная очистка терминала вместе с буфером прокрутки
cls() {
  clear && printf '\e[3J'
}

# 14. Универсальная распаковка архива с проверкой существования файла
extract() {
  if [ -f "$1" ]; then
    case "$1" in
      *.tar.bz2|*.tbz2) tar xjf "$1" ;;
      *.tar.gz|*.tgz)   tar xzf "$1" ;;
      *.bz2)            bunzip2 "$1" ;;
      *.rar)            unrar x "$1" ;;
      *.gz)             gunzip "$1" ;;
      *.tar)            tar xf "$1" ;;
      *.zip)            unzip "$1" ;;
      *.7z)             7z x "$1" ;;
      *)                echo "Неизвестный архив" ;;
    esac
  else
    echo "Файл '$1' не найден"
  fi
}

# 15. Безопасный rm: защита от пустого вызова и регистронезависимое подтверждение (Y/y)
rm() {
  if [ -z "$1" ]; then
    command rm
    return
  fi
  ls -FCsd -- "$@"
  read -p 'Удалить безвозвратно? [y/N] ' ans
  if [[ "$ans" =~ ^[Yy]$ ]]; then
    command rm -rf -- "$@"
  fi
}
Все конструкции используют конструкцию ${1:-значение}, которая спасает bash от падения при пустых переменных. Добавь нужные блоки в свой файл конфигурации и выполни команду source ~/.bashrc для применения изменений. ❗️❗️❗️ Нравится формат? Ставь 👍 👉 Рубрика: #шпаргалка@LinuxSkill #Linux #Bash #CLI #DevOps #Bashrc

💀 Твой демон падает из-за изоляции? Учим AppArmor работать правильно Использование aa-disable или teardown для неработающего демона полностью снимает MAC-изоляцию на продакшене. Вместо выгрузки защиты мы переведем профиль в режим обучения, соберем реальные пути и вернем жесткий контроль. Помни: AppArmor привязывает правила к абсолютному пути бинарника, а не к меткам типов, как это делает SELinux. ❗️❗️❗️ Нравится формат? Ставь 👍 👉 Рубрика: #шпаргалка@LinuxSkill #Linux #AppArmor #Security #Ubuntu #DevOps

🎯 Инкрементные бэкапы без костылей: хардкорная шпаргалка по tar -g Ежедневное создание полных архивов убивает дисковое пространство и перегружает подсистему ввода-вывода. Показываю, как собирать только измененные файлы и правильно отслеживать удаления, не копируя терабайты лишних данных. Настрой инкрементное копирование, чтобы радикально снизить нагрузку на дисковую подсистему серверов. ❗️❗️❗️ Нравится формат? Ставь 👍 👉 Рубрика: #шпаргалка@LinuxSkill #Linux #Bash #Backup #Tar #DevOps #SysAdmin

Магия Lovable: как создавать готовые интерфейсы с помощью одного запроса. Бесплатный урок курса «Вайб-кодинг: создание цифров
Магия Lovable: как создавать готовые интерфейсы с помощью одного запроса. Бесплатный урок курса «Вайб-кодинг: создание цифровых продуктов с ИИ» Lovable может за минуты собрать экран, который выглядит как почти готовый интерфейс. Но результат зависит не от «магии нейросети», а от того, насколько точно вы ставите задачу. Один расплывчатый запрос даст случайный макет, а правильно собранный системный промпт — понятную структуру, единый стиль и экран, который уже можно показывать команде, заказчику или использовать для проверки идеи. На открытом уроке 2 июля в 20:00 разберём, как формулировать задачи для Lovable, чтобы получать предсказуемый результат с первой попытки. Поговорим о структуре системного промпта, ключевых словах, которые помогают превратить текст в качественный интерфейс, и способах доработки результата через встроенный редактор и повторные запросы. Отдельно обсудим, как управлять компонентами, просить нейросеть переиспользовать элементы и сохранять единый визуальный стиль. Урок не для тех, кто ждёт, что Lovable «сам всё поймёт», не готов уточнять задачу и хочет получать качественный интерфейс без структуры, контекста и итераций. 👉 Записаться: https://otus.pw/Aoqd/ Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

🎯 Твой DROP пропускает пакеты? Исправляем фатальную ошибку лимитов nftables Stateless-фаерволы сверяют каждый пакет со всем списком правил, сжигая ресурсы. Stateful-фаервол с conntrack помнит сессии и пропускает 99% трафика первым же правилом. Показываю, как написать эталонный конфиг и не попасть в ловушку лимитирования, из-за которой часть мусорного трафика пробивает твою защиту. Перед применением policy drop без разрешающего правила SSH ты заблокируешь сам себя — сначала всегда прописывай свой доступ. Всегда держи второй открытый сеанс для отката и не забудь сделать systemctl enable nftables, чтобы защита пережила перезагрузку. ❗️❗️❗️ Нравится формат? Ставь 👍 👉 Рубрика: #шпаргалка@LinuxSkill #Linux #Security #nftables #Firewall #DevOps

❓Администрируете Linux «по наитию» и гасите инциденты по ночам, вместо того чтобы управлять инфраструктурой системно? 🧠 На повышении квалификации «Администратор Linux. Продвинутый уровень» вы разложите Linux по полочкам: от установки, загрузки и работы с файловыми системами до сетей, сервисов, мониторинга, резервного копирования и безопасности. Будете разбирать реальные кейсы, а не учебные примеры уровня «домашнего сервера». 💪 После обучения вы сможете уверенно подбирать конфигурации под нагрузки, оптимизировать производительность, строить отказоустойчивые схемы, настраивать Zabbix/Prometheus, Nginx, базы данных, файрволы и бэкапы. Эти навыки — прямое усиление вашей позиции как системного администратора, DevOps-инженера или backend-разработчика. 🎁 Пройди вступительный тест и получи в подарок запись урока «Простой роутер на Linux». Десятки других записей будут разблокированы на странице курса. 👉 Пройти вступительный тест: https://otus.pw/QabsT/ Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

📦 Ломаются зависимости при unshare? Настраиваем изоляцию как профи Ошибки libc.so возникают, когда ты меняешь корень через chroot в пустую файловую систему без библиотек. Оставим ФС хоста на месте и изолируем только namespaces: все бинарники останутся доступны, а процессы и сеть будут в глухой песочнице. ❗️❗️❗️ Нравится формат? Ставь 👍 👉 Рубрика: #шпаргалка@LinuxSkill #Linux #Namespaces #Containers #DevOps #SysAdmin

🕰 Твои скрипты падают в systemd? Идеальный конфиг .timer Демоны systemd работают с сильно урезанным окружением $PATH. Из-за этого вызовы обычных утилит внутри сервисов часто падают без видимых причин. Показываю, как написать железобетонный конфиг таймера, защититься от шторма нагрузки и отловить синтаксические ошибки еще до деплоя. ❗️❗️❗️ Нравится формат? Ставь 👍 👉 Рубрика: #шпаргалка@LinuxSkill #Linux #Systemd #DevOps #Timers #SysAdmin

🚫 Хватит "тыкать" мышкой! Переходи на тёмную сторону консоли. 2 курса, чтобы понять Linux с нуля до senior-уровня. 🧠 Курс «Администратор Linux. Базовый уровень» Курс OTUS создан для тех, кто хочет перейти от случайного опыта к уверенной работе с сервером. Вы освоите основы операционной системы, научитесь работать в Bash, поймёте, как устроены сети, а также научитесь запускать веб-сервисы, работать с MySQL, Docker, Git, Prometheus и Grafana. Это фундамент, без которого невозможен дальнейший рост. 🎁 Пройди вступительный квиз и получи в подарок записи двух уроков: «Что нужно знать, когда переходишь с Windows на Linux. Базовые понятия Linux, работа в консоли с базовыми командами» и «Вся правда о рынке труда, или как быть востребованным в современных реалиях». 👉 Пройти квиз: https://otus.pw/jYa7/ 🧠 Курс «Администратор Linux. Продвинутый уровень» После обучения вы сможете уверенно подбирать конфигурации под нагрузки, оптимизировать производительность, строить отказоустойчивые схемы, настраивать Zabbix/Prometheus, Nginx, базы данных, файрволы и бэкапы. Эти навыки — прямое усиление вашей позиции как системного администратора, DevOps-инженера или backend-разработчика. 🎁 Пройди вступительный тест и получи в подарок запись урока «Простой роутер на Linux». Десятки других записей будут разблокированы на странице курса. 👉 Пройти вступительный тест: https://otus.pw/XcmG/ Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

🔧 Забудь про сотни пайпов: хардкорная фильтрация логов через grep -E Базовый синтаксис grep (BRE) заставляет экранировать каждый спецсимвол, превращая сложные фильтры в нечитаемую кашу из слешей. Расширенные регулярные выражения (ERE) через параметр -E позволяют использовать группировки и квантификаторы напрямую. Классическая утилита egrep устарела (deprecated), поэтому на современных серверах всегда используй grep -E. ❗️❗️❗️ Нравится формат? Ставь 👍 👉 Рубрика: #шпаргалка@LinuxSkill #Linux #Bash #Grep #DevOps #SysAdmin

💀 Забудь про тормоза strace: мониторим процессы через eBPF Привычный strace безжалостно тормозит приложения, прерывая их на каждом системном вызове. Сейчас покажу, как фильтровать события прямо в ядре через bcc-tools, ловить короткоживущие процессы и отлаживать I/O с нулевым оверхедом. ❗️❗️❗️ Нравится формат? Ставь 👍 👉 Рубрика: #шпаргалка@LinuxSkill #Linux #eBPF #BCC #DevOps #Security

🔪 Забудь про grep: ультимативная шпаргалка по journalctl Обычные текстовые логи отнимают время. Переходи на journalctl, чтобы находить причины сбоев мгновенно по бинарным метаданным, без лишнего мусора. ❗️❗️❗️ Нравится формат? Ставь 👍 👉 Рубрика: #шпаргалка@LinuxSkill #Linux #Systemd #Journalctl #DevOps #SysAdmin

💣 find -delete сносит всё? Исправляем фатальные ошибки зачистки Наивный конвейер с xargs rm легко ломается о пробелы и кавычки в именах файлов, удаляя нужные данные. Показываю, как безопасно зачищать систему и работать со списками файлов, не боясь кривых имен. ❗️❗️❗️ Нравится формат? Ставь 👍 👉 Рубрика: #шпаргалка@LinuxSkill #Linux #Bash #xargs #rm #find

⏱ Таймеры systemd: продвинутая альтернатива cron Они требуют чуть больше строчек, чем crontab, но из коробки дают защиту от наслаивания процессов, контроль зависимостей и мощное логирование в journald. ❗️❗️❗️ Нравится формат? Ставь 👍 👉 Рубрика: #шпаргалка@LinuxSkill #Linux #Systemd #DevOps #Timers #SysAdmin

🛡 Железобетонный SSH: харденинг без ошибок Внедряй эти параметры в свои пайплайны, и твой сервер станет неприступной крепостью. ❗️❗️❗️ Нравится формат? Ставь 👍 👉 Рубрика: #шпаргалка@LinuxSkill #Linux #SSH #Security #Hardening #SysAdmin #DevOps

⚠️ Хватит плодить хрупкие скрипты и оставлять дыры для троянов. Пора писать пуленепробиваемый инфраструктурный код. 🎥 Пригла
⚠️ Хватит плодить хрупкие скрипты и оставлять дыры для троянов. Пора писать пуленепробиваемый инфраструктурный код. 🎥 Приглашаем на вебинар - Продвинутый Bash На вебинаре вы узнаете: - Связка set -euo pipefail навсегда исключит тихое проглатывание ошибок и потерю данных в конвейерах. - Нативные подстановки Bash заменят тысячи ресурсоемких вызовов sed и сэкономят CPU. - Регулярный мониторинг системных профилей защитит продакшен от перехвата команд троянами. - Грамотный перехват сигналов через trap обеспечит безопасное сворачивание процессов при сбоях. В результате вебинара вы: - Замените многоуровневые костыли лаконичной логикой на базе ассоциативных массивов. - Исключите утечки глобальных переменных через жесткую изоляцию областей видимости в функциях. - Внедрите нативную построчную трассировку скриптов вместо примитивного дебага echo-принтами. - Начнете напрямую пробрасывать переменные окружения в SystemD-юниты для надежного старта сервисов. 🧠 Открытый урок проходит в преддверии старта курса «Администратор Linux. Продвинутый уровень» 👉 Для участи зарегистрируйтесь: https://otus.pw/7CHT/ Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

💣 Cron для сеньоров: защита от дублей и правильные логи Держи концентрат боевых примеров для crontab, которые нужны на реальном продакшене. ❗️❗️❗️ Нравится формат? Ставь 👍 👉 Рубрика: #шпаргалка@LinuxSkill #Linux #Cron #DevOps #Bash #SysAdmin

🎥 Вебинар: Введение в Docker: контейнеризация приложений в Linux На вебинаре вы узнаете: - Как контейнеры делят одно ядро хо
🎥 Вебинар: Введение в Docker: контейнеризация приложений в Linux На вебинаре вы узнаете: - Как контейнеры делят одно ядро хоста без тормозов гипервизора и навсегда избавляют от конфликта зависимостей. - Правду о неидеальной изоляции Docker и рисках взлома сервера из-за скачивания левых образов от "Васи Пупкина". - Почему сеть bridge режет скорость под нагрузкой и зачем базам данных нужны только проверенные файловые системы вроде ext4. - Как правильно дробить монолит на микросервисы, соблюдая жесткое правило: один сервис — один контейнер. В результате вебинара вы: - Усвоите принцип эфемерности (stateless) и навсегда отучитесь лезть внутрь работающего контейнера для установки пакетов или правки конфигов. - Научитесь железобетонно сохранять данные при перезапусках, отвязав их от жизненного цикла контейнера через docker volume и bind mount. - Освоите реальную сетевую механику: от проброса портов через Docker Proxy до полного снятия изоляции в режиме host. - Избавитесь от синдрома «на моей машине всё работало», научившись собирать неизменяемые слои образа через Dockerfile для развертывания инфраструктуры за секунды. 🧠 Открытый урок проходит в преддверии старта курса «Администратор Linux. Базовый уровень» 👉 Для участи зарегистрируйтесь: https://otus.pw/SpeOL/ Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

🛡️ SSH-туннель отваливается? Вечные соединения за секунду
Обычный SSH-туннель или прокси падает при малейшем сбое сети, оставляя тебя без связи. Утилита autossh решает эту проблему: она оборачивает SSH-соединение, мониторит его состояние и автоматически перезапускает при обрыве. Ниже подробная шпаргалка, как поднять вечные туннели для любых задач. 1. Поднимаем постоянный локальный SSH-туннель (Local port forward) Пробрасываем удаленный порт 80 на локальный 8080 с портом мониторинга 20000 autossh -M 20000 -N -L 8080:localhost:80 user@remote 2. Туннель без отдельного порта мониторинга Полезно, если порты мониторинга закрыты (полагается на ServerAliveInterval) autossh -M 0 -N -L 8080:localhost:80 user@remote 3. Поднимаем вечный обратный туннель (Reverse port forward) Пробрасываем наш локальный порт 80 на удаленный порт 8080 autossh -M 20000 -N -R 8080:localhost:80 user@remote 4. Запуск в фоновом режиме Ключ -f уводит процесс в фон сразу после аутентификации autossh -f -M 20000 -N -L 8080:localhost:80 user@remote 5. Создаем неразрывный SOCKS-прокси autossh -M 20000 -N -D 8080 user@remote 6. Управление через переменные окружения Включаем отладку и задаем задержку перед первой проверкой (по умолчанию 30 сек) AUTOSSH_DEBUG=1 AUTOSSH_GATETIME=10 autossh -M 20000 -N -D 8080 user@remote Настрой это один раз, и твои пробросы портов больше никогда не умрут от смены IP или перезагрузки роутера. Проверь свои туннели прямо сейчас.
❗️❗️❗️ Нравится формат? Ставь 👍 👉 Рубрика: #шпаргалка@LinuxSkill #SSH #Autossh #Linux #DevOps #SysAdmin

🧨 Твои скрипты падают на проде? 43 команды Bash, которые спасут твою репутацию
Скрипт отработал с ошибкой, но не остановился и удалил половину нужных файлов? Или CI/CD пайплайн споткнулся о пустую переменную? Я отжал воду из огромных справочников и оставил ровно 50 самых хардкорных и важных конструкций Bash, которые жизненно необходимы. 1. Безопасность и запуск (Strict Mode) Эти настройки — стандарт де-факто для любых production-скриптов. Они отлавливают ошибки на раннем этапе. # Указать интерпретатор (лучшая практика переносимости) #!/usr/bin/env bash # Сделать скрипт исполняемым chmod +x script.sh # "Strict Mode" (выход при ошибке, ошибке переменной или в пайплайне) set -euo pipefail # Выйти немедленно при ошибке set -e # Режим отладки (выводить команды перед выполнением) set -x 2. Продвинутая работа с переменными Защита от пустых значений, которые могут сломать автоматизацию. # Присвоить значение (строго без пробелов вокруг =) VAR=value # Безопасное чтение с кавычками (предотвращает word splitting) "$VAR" # Использовать по умолчанию, если переменная не задана (важно для Docker) ${VAR:-default} # Назначить значение по умолчанию, если VAR не задана ${VAR:=default} # Выйти с ошибкой, если переменная не задана (failsafe для деплоя) ${VAR:?error msg} # Сделать переменную доступной только для чтения (константа) readonly VAR # Экспортировать переменную для дочерних процессов export VAR 3. Системные переменные Идентификаторы процессов и аргументы функций. # Имя скрипта $0 # Позиционные параметры (аргументы 1-9) $1..$9 # Количество переданных аргументов $# # Все аргументы безопасно как отдельные слова $@ # Статус выхода последней команды (0 - успех, иное - ошибка) $? # PID текущего процесса shell $$ 4. Парсинг строк (без вызова awk/sed) Молниеносные встроенные манипуляции с путями и текстом. # Удалить самое короткое совпадение паттерна с начала ${VAR#pattern} # Удалить самое короткое совпадение с конца (удобно для расширений файлов) ${VAR%pattern} # Заменить все вхождения подстроки ${VAR//old/new} # Перевести все символы в нижний регистр ${VAR,,} 5. Условия и мощные проверки Используй `[[ ]]` вместо старого `[ ]` — это безопаснее и поддерживает регулярные выражения. # Проверить существование файла и вывести результат if [[ -f "file.txt" ]]; then echo "exists"; fi # Проверка по регулярному выражению =~ # Конструкция case (идеально для стартовых скриптов systemd) case "$1" in start) echo "Starting";; stop) echo "Stopping";; *) echo "Usage: $0 {start|stop}";; esac # Файл существует и является обычным -f file # Файл существует и является директорией -d file # Строка пустая -z string # Строка не пустая -n string # Строковое равенство и неравенство == != # Числовое равенство и неравенство -eq -ne 6. Массивы и словари Незаменимо для перебора IP-адресов, списков серверов и портов. # Объявить индексированный массив arr=(a b c) # Получить все элементы массива ${arr[@]} # Узнать количество элементов в массиве ${#arr[@]} # Объявить ассоциативный массив (словарь) declare -A map # Добавить значение по ключу map[key]="value" 7. Математика, Ввод/Вывод и Сигналы Форматирование вывода для дашбордов и правильная очистка мусора за скриптом. # Арифметика: сложение $((a + b)) # Арифметическое присваивание let "a += 5" # Прочитать строку в массив read -r -a items <<< "a b c" # Форматированный вывод (надежнее чем echo) printf "Name: %s, Age: %d\n" "$name" "$age" # Многострочный ввод (Here document) для генерации конфигов cat <<EOF Lines of text go here. Variables like $HOME are expanded. $ EOF # Завершить скрипт с кодом успеха exit 0 # Завершить скрипт с кодом ошибки exit 1 # Выполнить очистку (например, удалить лок-файл) при любом выходе trap ' rm -f /tmp/mylock' EXIT Теперь твой код готов к нагрузкам. Сохраняй шпаргалку, чтобы не плодить костыли, и применяй правильный синтаксис!
❗️❗️❗️ Нравится формат? Ставь 👍 👉 Рубрика: #шпаргалка@LinuxSkill ⭐️ Зеркало в MAX #Linux #Bash #DevOps #Sysadmin #ShellScripting #CLI