BashMaster
8.23K subscribers
679 photos
14 videos
1 file
702 links
Удобные консольные наработки на каждый день для разработчиков, девопсов и сисадминов.

Реклама: @Kone4noVasya

Канал на бирже: https://telega.in/c/bash_help
Download Telegram
✔️ Научим писать плейбуки и модули ✔️

Один пропущенный шаг — и конфигурация ломается. Члены команды выполняют задачи по-своему, документация не помогает. Добавление новых серверов — это боль и часы работы.

Как этого избежать? Мы научим вас работать с Ansible, чтобы вы смогли:

Настроить автоматизацию: один playbook — и ваши сервера настраиваются в считаные минуты.

Упростить командную работу: код определяет инфраструктуру, каждый шаг прозрачен и воспроизводим.

Масштабировать в одно касание: развёртывание сотен серверов — больше не головная боль.

Экономить время: больше времени на стратегические задачи, меньше — на рутину.

Освоить лучшие практики на курсе «Ansible: Infrastructure as Code» –
по ссылке.
Старт 20 января.

erid: 2W5zFJNU7Xv
⚙️ HestiaCP — бесплатная панель управления сервером с открытым исходным кодом

✔️Она позволяет легко настраивать и управлять веб-сайтами, почтой, базами данных и другими сервисами на сервере. Панель имеет удобный интерфейс и русскую локализацию.

➡️ Некоторые возможности HestiaCP:
▶️добавление пользователей панели с определённым набором прав
▶️добавление доменов и управление DNS-записями
▶️поддержка SSL-сертификатов от Let`s Encrypt
▶️создание почтовых ящиков
▶️управление базами данных
▶️работа с файлами во встроенном файловом менеджере
▶️создание CRON-задач
▶️резервное копирование данных
▶️ежемесячная статистика панели

➡️ Чтобы запустить установку HestiaCP с помощью Bash, нужно выполнить команду:
bash hst-install.sh. 

▶️Во время процесса на экране будут появляться подсказки, нужно подтвердить установку и выбрать пакеты программного обеспечения.

▶️Пример команды для автоматической установки:
bash hst-install.sh -f -y no -e email@domain.tld -p p4ssw0rd -s hostname.domain.tld

▶️Для просмотра списка доступных опций можно запустить команду:
 bash hst-install.sh -h

▶️Установщик нужно запускать от имени пользователя root, прямо из терминала или удалённо, через SSH

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
👎🏼 Все время просиживать за работой, общаться только с коллегами и начальником

👍🏼 Посещать IT-мероприятия, перенимать опыт гигантов индустрии, попасть в комьюнити лучших спецов

Все твои коллеги уже давно подписались на канал IT-мероприятия России и получают самые актуальные анонсы онлайн и оффлайн событий.

— Форумы и конференции
— Митапы и вебинары
— Хакатоны и олимпиады

Присоединяйся и выбирай, что тебе интересно - в канале https://t.me/iteventsrus собраны только лучшие мероприятия для тех, кто хочет быть лучшим из лучших.

IT мероприятия России / ITMeeting / IT events
⚙️ Управление Linux-сервером — самая ценная инвестиция

✔️ В эпоху облаков настройка Linux-сервера своими руками кажется неким вымирающим искусством. Для непосвящённого человека даже bash-скрипты выглядят как заклинания, а коллеги проникаются уважением к сисадмину, как древние индейцы к своему шаману…

▶️Сейчас это «древнее искусство» вновь стало актуальным. История идёт по кругу — всё старое возвращается в новом виде. Запуск сервера на своём хостинге стал хорошей альтернативой облакам. Этому есть ряд причин, которые мы не будем подробно разбирать, только повторим вкратце: безопасность, свобода, контроль над своими данными, экономия финансов.

➡️ Содержание статьи:
▶️Старое или новое. Контроль или зависимость
▶️Сисадмины превратились в девопсов
▶️Потеря компетенций
▶️Базовые знания

🖼️ Дочитать статью на Habr'e

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
Освой сети и командную строку с лучшими обучающими каналами

🤩 Network Admin - обучающий канал по сетевым технологиям

🤩 Network Admin | Guides - канал, где рассказывают полезную информацию про Windows/Linux

📱 BashTex - обучение работе с командной строкой
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ Перенос дампа таблицы с одного mysql сервера на другой

✔️Возникла небольшая прикладная задача. Нужно было периодически с одного mysql сервера перекидывать дамп одной таблицы из базы на другой сервер в такую же базу. Решений этой задачи может быть много. Я взял и решил в лоб набором простых команд на bash. Делюсь с вами итоговым скриптом. Даже если он вам не нужен в рамках этой задачи, то можете взять какие-то моменты для использования в другой.
#!/bin/bash

# Дамп базы с заменой общего комплексного параметра --opt, где используется ключ --lock-tables на набор отдельных ключей, где вместо lock-tables используется --single-transaction
/usr/bin/mysqldump --add-drop-database --add-locks --create-options --disable-keys --extended-insert --single-transaction --quick --set-charset --routines --events --triggers --comments --quote-names --order-by-primary --hex-blob --databases database01 -u'userdb' -p'password' > /mnt/backup/sql/"$(date +%Y-%m-%d)"-database01.sql

# Из общего дампа вырезаю дамп только данных таблицы table01. Общий дамп тоже оставляю, потому что он нужен для других задач
/usr/bin/cat /mnt/backup/sql/"$(date +%Y-%m-%d)"-database01.sql | /usr/bin/awk '/LOCK TABLES `table01`/,/UNLOCK TABLES/' > /mnt/backup/sql/"$(date +%Y-%m-%d)"-table01.sql

# Сжимаю оба дампа
/usr/bin/gzip /mnt/backup/sql/"$(date +%Y-%m-%d)"-database01.sql
/usr/bin/gzip /mnt/backup/sql/"$(date +%Y-%m-%d)"-table01.sql

# Копирую дамп таблицы на второй сервер, аутентификация по ключам
/usr/bin/scp /mnt/backup/sql/"$(date +%Y-%m-%d)"-table01.sql.gz sshuser@10.20.30.45:/tmp

# Выполняю на втором сервере ряд заданий в рамках ssh сессии: распаковываю дамп таблицы, очищаю таблицу на этом сервере, заливаю туда данные из дампа
/usr/bin/ssh sshuser@10.20.30.45 '/usr/bin/gunzip /tmp/"$(date +%Y-%m-%d)"-table01.sql.gz && /usr/bin/mysql -e "delete from database01.table01; use database01; source /tmp/"$(date +%Y-%m-%d)"-table01.sql;"'

# Удаляю дамп
/usr/bin/ssh sshuser@10.20.30.45 'rm /tmp/"$(date +%Y-%m-%d)"-table01.sql'

▶️Скрипт простой, можно легко подогнать под свои задачи.

▶️Отдельно отмечу для тех, кто не в курсе, что можно вот так запросто тут же после подключения по ssh выполнять какие-то команды в автоматическом режиме. Это удобно и часто пригождается.

🖼️ Ссылка на источник

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ Скрипт для очистки кэша оперативной памяти

✔️Скрипт проверяет объём кэша в оперативной памяти и при превышении в 1Gb предлагает запустить очистку.

#!/bin/bash
# Скрипт проверяет объём кэша в оперативной памяти и при превышении в 1Gb предлагает запустить очистку

cache=$(free -m | grep Mem | awk '{print $6}')

echo "Кэшированно $cacheМб"

if [ $cache -ge 1000 ]
then
echo "Кэш более одного гигабайта"
echo ""
read -p "Почистить кэш? Y/n: " ansver
case $ansver in
[y,Y])
echo "Для запуска скрипта очистки, введите пароль SUDO пользователя"
sudo echo "Было занято в кеше ОЗУ"
free -m
sync
echo 1 | sudo tee -a /proc/sys/vm/drop_caches
sync
echo 2 | sudo tee -a /proc/sys/vm/drop_caches
sync
echo 3 | sudo tee -a /proc/sys/vm/drop_caches
echo "Стало свободно в ОЗУ"
free -m;;
[n,N])
echo "Вы отказались от чистки кэша";;
esac
else
echo "Достаточно свободной памяти"
fi


🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ Inshellisense

✔️Инструмент, обеспечивающий автозаполнение оболочек в стиле IDE

▶️Он поддерживает более 600 инструментов командной строки. Его можно установить с помощью npm.

➡️ Поддерживает такие оболочки, как bash, zsh, fish, pwsh и powershell.

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ Как писать красивые и безопасные bash скрипты

✔️Добавить в начало скрипта:
set -euxo pipefail


➡️ Что всё это значит:
▶️set -e - прекращает выполнение скрипта если команда завершилась ошибкой, выводит в stderr строку с ошибкой. Обойти эту проверку можно добавив в пайплайн к команде true: mycommand | true.

▶️set -u - прекращает выполнение скрипта, если встретилась несуществующая переменная.

▶️set -x - выводит выполняемые команды в stdout перед выполненинем.

▶️set -o pipefail - прекращает выполнение скрипта, даже если одна из частей пайпа завершилась ошибкой. В этом случае bash-скрипт завершит выполнение, если mycommand вернёт ошибку, не смотря на true в конце пайплайна: mycommand | true.

🖼️ Ссылка на источник

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ ScanCannon — быстрая и эффективная разведка сетевых уязвимостей

✔️POSIX-совместимый скрипт на BASH, который помогает быстро исследовать большие сети, используя masscan для определения открытых портов, а затем nmap для получения подробной информации о системах и сервисах на этих портах.

➡️ Что умеет ScanCannon:
▶️Быстрое сканирование сети: массовое сканирование открытых портов с помощью masscan для покрытия больших сетей за короткое время.
▶️Глубокий анализ: использование nmap для получения подробной информации о системах и сервисах, работающих на открытых портах.
▶️POSIX-совместимость: работает на большинстве UNIX-подобных систем, включая Linux и macOS.
▶️Автоматизация: позволяет автоматизировать процесс сканирования и анализа для упрощения работы специалистов по безопасности.

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
Уже забыли, когда кодили что-то нестандартное?
Приглашаем тряхнуть стариной на бесплатном мини-курсе от Skillbox «Python для всех». Он состоит из практики чуть меньше чем полностью. За 4 дня мы создадим 4 проекта:

1️⃣ Бота для Telegram, который умеет переводить голос в текст
2️⃣ Бота для Telegram, который обрабатывает фотографии
3️⃣ Парсер, который извлекает данные с сайтов
4️⃣ Веб-сайт (с помощью фреймворка Flask)


В общем, прокачаете навыки, освежите память и наверняка узнаете что-то новое.
Регистрируйтесь: https://epic.st/WjPo7_?erid=2Vtzqw8YQ3D

🎁 А ещё подарки: персональная карьерная консультация, скидка 10 000 рублей на любой курс Skillbox и подборка полезных материалов.

Реклама. ЧОУ ДПО «Образовательные технологии «Скилбокс (Коробка навыков)», ИНН: 9704088880
⚙️ Reverse Shell Generator

✔️Удобный инструмент для автоматической генерации команд обратного шелла для различных языков программирования и окружений. Он значительно упрощает задачу, избавляя от необходимости писать команды вручную.

➡️ Что умеет?
▶️Генерирует команды для популярных языков: Python, Bash, Perl, PHP и других
▶️Поддерживает Windows, Linux и macOS.
▶️Позволяет задавать IP-адрес и порт для настройки соединения.
▶️Удобный CLI-интерфейс, который делает процесс максимально простым.

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ Делаем всё в терминале: от конвертации валют и до прогноза погоды

✔️Коллекция небольших bash-скриптов для поклонников работы в терминале. В набор входит конвертер валют и криптовалют, прогноз погоды, шифрование файлов и другие полезные инструменты.

▶️Все скрипты из набора Bash-Snippets были полностью протестированы на MacOS и Linux. Большинство этих скриптов было протестировано на Windows 10. Скрипты не работают с Cygwin или Mysys2.

➡️ Установка для MacOS через homebrew, для Linux через linuxbrew:

▶️Все скрипты:
brew install bash-snippets # installs all tools


▶️Отдельные скрипты:
brew install bash-snippets --without-all-tools --with-newton --with-weather


➡️ Установка через Git:

▶️Для начала необходимо клонировать репозиторий:
git clone https://github.com/alexanderepstein/Bash-Snippets


▶️Затем нужно перейти в клонированную директорию:
cd Bash-Snippets


▶️Запустить скрипт управляемой установки, это позволит выбрать какие скрипты устанавливать:
./install.sh


▶️Установить все скрипты:
./install.sh all


▶️Установить отдельный скрипт, указав его имя:
./install.sh stocks


➡️ Скрипты
▶️Youtube-Viewer
▶️Weather
▶️Meme
▶️Qrify
▶️Short
▶️Cheat
▶️Cloudup
▶️Crypt
▶️Cryptocurrency
▶️Currency
▶️Geo
▶️Lyrics
▶️Movies
▶️Newton
▶️Siteciphers
▶️Stocks
▶️Taste
▶️Todo
▶️Transfer

🖼️ Перейти на сайт

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡️Автоматизация процессов: освойте новые практики для DevOps и администраторов

Навык оптимизации рутинных задач скоро станет обязательным — он помогает сэкономить время и рабочие ресурсы.

❤️ В Слёрме собрали лучшие обучающие материалы, которые помогут вам быстро освоить CI/CD, IaC:

🔸CI/CD c Jenkins
🔸Gitlab CI/CD
🔸Cloud-инженер на примере AWS
🔸Terraform База
🔸Terraform Мега
🔸Ansible: Infrastructure as Code

Все программы актуальны в 2025 году, курсы ведут практикующие спикеры —  идеальный старт освоения новых инструментов автоматизации. 

Курсы подойдут: 
👉администраторам
👉инженерам
👉специалистам поддержки, мониторинга и ИБ. 

Посмотреть подборку и выбрать подходящий курс👉 здесь

#реклама
О рекламодателе
⚙️ Bash exporter

✔️Простой и минималистичный экспортер метрик Prometheus для скриптов на Bash, написанный на Go.

➡️ Некоторые параметры использования:
debug — уровень отладки лога
interval — интервал сбора метрик в секундах (по умолчанию 300)
labels — дополнительные метки (по умолчанию hostname, env)
path — путь к директории со скриптами Bash (по умолчанию /scripts)
prefix — префикс для метрик (по умолчанию bash)
web.listen-address — адрес, на котором выставлять метрики (по умолчанию :9300)

🐙 Перейти на Github

bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
Мечтаешь о той самой работе в Big Tech, но никогда не проектировал системы? Или работаешь на галере с нулевым подходом к проектированию и не знаешь, а как разбираться в архитектуре приложений?

Знаешь, ведь я был таким же, как ты. Читал книги, смотрел курсы, но на работе не было той почвы, которая давала бы рост. А на всех ресурсах одни и те же проблемы: устаревшие подходы, зачитывание терминов без примеров и самое главное — минимум практики.

Я решил с этим покончить. Больше никаких недо-курсов, которые “готовят к собесу за один месяц с нуля”. Это невозможно, если ты не обладаешь базой. Но все реально, если разобраться в компонентах, которые составляют эти системы.

Приходи на мой Открытый Урок, где за час мы посмотрим на эти самые компоненты. А еще я расскажу про процесс проектирования в Big Tech и что такое system design секция.

В конце лекции анонс продукта, который поможет тебе навсегда решить проблему с проектированием.

ЗАПИСАТЬСЯ

PS: недавно проходил собес в один российский Big Tech. Результат можешь увидеть на скрине
⚙️ Polybar

✔️Настраиваемая панель статуса для Linux и Unix-подобных операционных систем. Она предназначена для работы с различными оконными менеджерами и средами рабочего стола, предоставляя гибкий и многофункциональный инструмент для отображения информации о системе, статусе приложений и пользовательских модулей

➡️ Некоторые преимущества Polybar:
▶️высокая настраиваемость с широким спектром встроенных модулей
▶️поддержка нескольких мониторов и динамической конфигурации
▶️активное сообщество и обширная документация
▶️лёгкость и эффективное использование ресурсов.

▶️Конфигурационный файл Polybar находится в ~/.config/polybar/config.

➡️ Некоторые функции программы:
▶️отображение даты и времени
▶️раскладка клавиатуры и статус индикаторов; 4
▶️уровень подсветки
▶️управление громкостью
управление воспроизведением MPD и статус
▶️детали сетевого подключения
▶️пользовательское дерево меню
▶️индикатор нагрузки процессора.

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
Уйти в пентест? Стать devops-инженером или системным администратором? 
Только вам решать, куда расти, если вы знаете Linux.

Курс "Основы Linux" обучит вас тонкостям работы с ОС: от работы в командной строке до создания прикладных программ.

80% практики
сопровождение куратора
финальный проект для портфолио — курс завершает проектная работа
сертификат или удостоверение о повышении квалификации

Старт: 17 февраля. Оставьте заявку на сайте или напишите нашему менеджеру @Codeby_Academy

Присоединяйтесь и узнайте все о Linux и смежном ПО: от основ командной строки до развертывания Kubernetes! 
⚙️ Starship

✔️Инструмент для настройки приглашения командной строки, который легко накатывается поверх zsh, fish, bash и прочего.

➡️ Особенности:
▶️Быстрая. Очень быстрая.
▶️Настраиваемая. Можно настроить каждый элемент командной строки
▶️Универсальная. Работает с любой оболочкой и в любой операционной системе
▶️Умная. Сразу показывает соответствующую информацию
▶️Много функций. Поддерживает все любимые инструменты
▶️Лёгкая. Быстрая установка — начать использовать программу можно в считанные минуты

➡️ Для работы Starship в терминале должен быть установлен шрифт Nerd Font (например, FiraCode Nerd Font), иначе некоторые специальные символы не будут отображаться нормально в приглашении командной строки.

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ k1s — самая простая панель управления Kubernetes

✔️Минималистичная панель управления Kubernetes, показывающая текущее состояние ресурсов Kubernetes определённого типа в реальном времени. Инструмент состоит из сценария Bash примерно из 50 строк кода.

▶️Панель может отображать вид в реальном времени любого типа ресурсов в любом пространстве имён (или по всем пространствам имён). Для некоторых типов ресурсов выводится дополнительная информация, например текущее состояние для Pod и требуемое и фактическое количество реплик для Deployments.

➡️ k1s запускается прямо на локальной машине и использует обычную конфигурацию kubeconfig на машине. То есть по умолчанию подключается к тому же кластеру, к которому подключается kubectl.

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM