BashMaster
رفتن به کانال در Telegram
Удобные консольные наработки на каждый день для разработчиков, девопсов и сисадминов. Реклама: @Kone4noVasya Канал на бирже: https://telega.in/c/bash_help
نمایش بیشتر8 815
مشترکین
اطلاعاتی وجود ندارد24 ساعت
-167 روز
-3530 روز
آرشیو پست ها
8 815
⚙️ Maza ad blocking
✔️Локальный блокировщик рекламы, написанный на языке Bash.
➡️ Некоторые особенности программы:
💠Работает с любыми браузерами без необходимости устанавливать дополнительные расширения или программное обеспечение.
💠Позволяет обновлять список заблокированных DNS-доменов с помощью одной команды.
💠Поддерживает автоматическое обновление списка блокировок через задания
cron.
💠Поддерживает Dnsmasq для блокировки поддоменов с использованием подстановочных знаков.
▶️Совместимость: MacOS, Linux, BSD и подсистема Windows для Linux (WSL).
▶️Требования к установке: Bash 4.0 и выше, curl, для macOS — gnu-sed.
➡️ Некоторые команды для работы с программой:
💠запуск: sudo maza start
💠остановка: sudo maza stop
💠проверка статуса: sudo maza status
🐙 Перейти на Github
🔨 bash_help8 815
Самый лёгкий способ попасть в Kubernetes
Ребята из «Лаборатории Числитель» выкатили «Штурвал CE» — бесплатную и полнофункциональную community-версию платформы для управления кластерами K8s.
Просто взяли все технологии enterprise-версии и отдали всем, кому это нужно. Пользуйтесь, сколько хотите, даже в продуктиве, без урезаний по функциям и пробных периодов! :)
А вот тут чат с разрабами, пояснительная бригада всегда на связи, да еще и подарки раздает за активное участие в жизни комьюнити.
8 815
⚙️ fly-to-podman
✔️Небольшой BASH скрипт, который помогает вам мигрировать из Docker в Podman.
▶️Он переносит ваши контейнеры, образы и мапленные каталоги Docker в Podman, а также сохранит данные и конфигурации вашего контейнера (маунты, порты и т. д.).
➡️ Возможности:
💠миграция образов Docker в Podman (включая теги)
💠миграция мапленных каталогов (volumes) Docker в Podman (включая все данные)
💠миграция сетей Docker в Podman (включая имена, IP-адресе, шлюзы, IP-диапазоны и т. д.)
💠миграция контейнеров Docker в Podman (включая имена, идентификаторы и статусы, такие как политика перезапуска и т. д.)
💠сохранение данных и конфигурации контейнера (маунты, открытые порты и т. д.)
🐙 Перейти на Github
🔨 bash_help
8 815
Как выстроить карьерный трек в DevOps
...и не сойти при этом с ума 🤪
В теории вроде бы всё понятно, но как перенести её на свой собственный опыт?
На курсе «DevOps Upgrade» можно не только прокачать необходимые хард- и софт-скиллы, но и выстроить карьерную стратегию, составить качественное резюме и подготовить портфолио.
Как это сделать:
1️⃣ Перейти на страницу курса
2️⃣ В разделе оплаты выбрать тариф «Комфорт Карьера»
3️⃣ Выбрать способ оплаты и дождаться старта потока
4️⃣ Пройти видеокурс «Администрирование Linux», который идёт в подарок до 21 марта — чтобы на 100% быть готовым к обучению.
Что входит в тариф «Комфорт Карьера»:
🔸Видеоуроки и практика на виртуальных стендах
🔸Q&A-сессии и встречи с ментором
🔸Telegram-чат с ментором и спикерами курса
🔸3 индивидуальные встречи с ментором
🔸Помощь с резюме и портфолио
🔸Рекомендательное письмо
‼️ На тарифе «Комфорт Карьера» осталось 2 места, так что рекомендуем поторопиться. Старт потока — 31 марта.
Подробности — на сайте.
#реклама
О рекламодателе
8 815
⚙️ Wandersage
✔️Интерактивный блокнот для работы в терминале, разработанный с использованием Bash, Zellij и Gum.
➡️ Некоторые функции Wandersage:
▶️Автоматическая загрузка зависимостей для Linux и MacOS. Бинарники загружаются в локальную папку, не требуется установка или использование
sudo.
▶️Отображение двух терминалов рядом. Слева — блокнот, справа — интерактивный терминал.
▶️Глобальный терминал для ввода дополнительных команд. Поскольку интерактивный терминал очищается при загрузке каждого блокнота, есть глобальный терминал для использования.
▶️Подтверждение ввода команд или кода. Перед отправкой команд или кода в интерактивный терминал пользователь должен подтвердить это.
▶️Поддержка выполнения встроенного кода внутри блокнота с использованием Bash, JavaScript, TypeScript, Python и Perl.
▶️Поддержка функций терминала, таких как REPL, Docker и удалённые оболочки SSH.
🐙 Перейти на Github
🔨 bash_help8 815
⚙️ sig — интерактивный grep для работы с потоковыми данными
➡️ Некоторые возможности sig:
▶️Повторное выполнение команды. Если указать параметр
--cmd, то команда будет выполняться при первом запуске и при повторном. Это полезно, когда данные уже прошли, а пользователь настраивает критерии поиска.
▶️Архивный режим. В нём сохраняются последние N записей потоковых данных, и в любой момент можно выполнить поиск по этим записям на основе ключевых входных данных.
🐙 Перейти на Github
🔨 bash_help8 815
⚙️ Bash скрипт для поиска пустых файлов и каталогов
✔️Пустые файлы могут иногда загромождать каталоги, и их выявление может быть полезно для целей очистки или аудита.
▶️Откройте терминал и выполните следующую команду, чтобы создать файл с именем
empty_files.sh
▶️Добавьте в файл следующий код.
#!/bin/bash
# Get the directory from the first script argument
directory="$1"
# Check if the directory argument is provided
if [ -z "$directory" ]; then
echo "Usage: $0 <directory>"
exit 1
fi
# Check if the provided argument is a valid directory
if [ ! -d "$directory" ]; then
echo "Error: '$directory' is not a valid directory."
exit 1
fi
# Find and list all empty files in the directory
echo "Empty files in $directory:"
find "$directory" -type f -empty
➡️ Пояснение к скрипту:
💠Строка Shebang: #!/bin/bash указывает, что сценарий должен быть запущен с помощью оболочки bash.
💠Аргумент директории: directory=”$1″ фиксирует первый аргумент, переданный скрипту в качестве директории для поиска.
💠Проверка аргумента: if [ -z «$directory» ]; проверяет, пуст ли аргумент директории, и предлагает пользователю использовать его правильно, если это так.
💠Проверка валидности каталога: if [ ! -d «$directory» ]; проверяет, является ли указанный аргумент действительным каталогом.
💠Команда Find: find «$directory» -type f -empty ищет пустые файлы (-type f) в указанном каталоге (-empty).
▶️Сделайте скрипт исполняемым, изменив его права:
chmod +x empty_file.sh
▶️Чтобы запустить скрипт, используйте следующую команду в терминале. При запуске скрипта нам нужно указать каталог в качестве аргумента:
sudo ./empty_file.sh /var/log
▶️Система выведет все пустые файлы из каталога /var/log.
➡️ Этот скрипт проверяет достоверность входного каталога, использует мощную команду find для поиска пустых файлов и предоставляет удобный для пользователя вывод.
🖼️ Ссылка на источник
🔨 bash_help8 815
СОТЕЛ – дата-центр, облачные сервисы и IT-решения для вашего бизнеса со скидкой по промокоду!
IP-телефония📞
IT аутсорсинг 🖥️
Монтаж и обслуживание сетей🔧
СКУД, видеонаблюдение 🔌
Пожарная безопасность 🔥
Услуги дата-центра
Размещение серверов и аренда стоек 📡🔹 Облачные серверы со скидкой до 20% ☁️
🎁 Хотите скидку на услуги СОТЕЛ? Пройдите короткий опрос и получите промокод за минуту!
Жмите 👉 @sotel_poll_bot. Для запуска наберите /start.
#реклама
О рекламодателе
8 815
⚙️ Replit
✔️Предоставляет интерактивную платформу для написания скриптов Bash с коллаборативной средой.
➡️ Некоторые возможности платформы:
▶️Онлайн-компилятор и интерпретатор Bash. С его помощью можно писать, сотрудничать, компилировать, запускать, делиться и развёртывать код Bash прямо в браузере.
▶️Многопользовательская работа. Пользователи могут видеть курсоры, правки и результаты работы друг друга в режиме реального времени.
▶️Функция Ghostwriter. Ассистент на основе искусственного интеллекта помогает писать код быстрее. Он может автозаполнять код, предлагать улучшения, генерировать шаблонный код и даже писать целые функции за пользователя.
🖼️ Перейти на сайт
🔨 bash_help
8 815
Несколько источников
Чтобы докопаться до истины, надо читать разные источники информации. В обучении также: читаешь крутые каналы, чтобы получать актуальную и полезную инфу.
В копилку проверенных добавьте DevFM — канал от разработчиков и для разработчиков. Ребята пишут о том, с чем сами сталкиваются каждый день при разработке, проектировании систем и управлении командами. Читайте:
→ Зачем вообще нужен Docker. Бонусом поделились полезными гайдам по Docker, Compose, Kubernetes. И как контейнеры защитить
→ Как я использую папки в Телеграм для минимизации прерываний
→ Как ускорить принятие решений в команде
→ Как проводить багскрам
→ Что интересного в отчёте Developer Ecosystem Report 2024 от JetBrains
Ещё у них есть подкаст про роли в ИТ-проекте
Подписывайтесь на канал DevFM и повышайте свою цену на рынке.
8 815
⚙️ Сетевая безопасность Linux: Best practices и баш скрипты
✔️Важно обеспечить безопасность систем Linux при подключении к сети для защиты от потенциальных угроз и уязвимостей. Существуют различные best practices, которым можно следовать для повышения безопасности систем Linux при подключении к сети, в том числе использование надежных паролей, включение двухфакторной аутентификации, поддержание систем в актуальном состоянии, настройка и включение брандмауэра, а также регулярный мониторинг. журналы и активность системы.
➡️ Вот несколько примеров сценариев bash, которые можно использовать для автоматизации каждого из приведенных выше best practices
▶️Скрипт, который проверяет и применяет надежные пароли:
#!/bin/bash
# Check all users' passwords for strength
for user in $(cut -d: -f1 /etc/passwd); do
# Check the password for strength
if ! grep -qP '^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[!@#\$%\^&\*])(?=.{8,})' <(grep "^$user:" /etc/shadow); then
# If the password is not strong, force the user to change it
change -d 0 "$user"
fi
done
▶️Скрипт, который проверяет и устанавливает доступные обновления безопасности:
#!/bin/bash
# Update the package repository
apt update
# Install available security updates
apt upgrade -y --security
▶️Скрипт, который настраивает и включает файерволл:
#!/bin/bash
# Install the necessary packages
apt update
apt install -y ufw
# Allow SSH connections
ufw allow ssh
# Enable the firewall
ufw enable
🖼️ Дочитать статью на Habr'e
🔨 bash_help8 815
13 марта, 11:00
Как увеличить производительность облачных баз данных в 10 раз
Selectel проведет вебинар, для DBA- и DevOps-инженеров, системных администраторов и руководителей IT-проектов, где покажут, как одновременно в 10 раз увеличить производительность баз данных и сократить расходы на инфраструктуру до 47%.
На практических кейсах и расчетах:
— Расскажут про подбор железа и оптимизацию ОС для максимальной производительности облачных баз данных,
— Поделятся сравнением производительности баз данных на выделенном облачном сервере с аналогичными сервисами.
Мероприятие бесплатное. Посмотреть программу вебинара и зарегистрироваться можно по ссылке: https://slc.tl/lrn7o
Чтобы не пропустить вебинар и узнавать о митапах, воркшопах и бесплатных курсах Selectel, подписывайтесь на @selectel_events
Реклама. АО «Селектел», ИНН 7810962785, ERID: 2Vtzquyp3UA
8 815
Вирус получил доступ к системе — сможете его остановить?
Участвуйте в CTF-турнире и выигрывайте призы
С 17 по 21 марта Selectel проведет онлайн-соревнование по кибербезопасности. Участникам нужно искать и захватывать «флаги» — секретные строки на веб-страницах. Регистрируйтесь, чтобы принять участие в CTF-турнире и выиграть один из 15 призов. Победители получат мерч Selectel, печатный IT-комикс «Мультихакер» и не только.
Реклама. АО «Селектел», ИНН 7810962785, ERID: 2Vtzqvb3tPG
8 815
⚙️ Свой прокси. Волшебство разделения ресурсов в одном браузере
✔️Представьте себе ситуацию: вы хотите в одном браузере смотреть любимый сериал на зарубежном сайте, который требует прокси, и одновременно листать локальные новости, где прокси только мешает. Обычно это превращается в жонглирование настройками или даже окнами браузера — скучно и утомительно. Но что, если я скажу, что есть простой и изящный способ объединить эти миры? Сегодня я поделюсь с вами крутым Bash-скриптом для сервера на Ubuntu, который настроит прокси-сервер Squid так, чтобы вы могли легко разделять ресурсы с прокси и без него в одном браузере. Давайте разберёмся, как это работает, и почему это так увлекательно!
➡️ Зачем это нужно?
▶️Идея проста, но гениальна: прокси-сервер становится вашим личным швейцаром, который решает, какие запросы отправлять через туннель в другую страну, а какие оставить "дома". Например, вы настроили прокси для доступа к заблокированным сайтам или для маскировки IP, но не хотите, чтобы он затрагивал локальные ресурсы — скажем, ваш банковский сайт или форум соседнего города. Скрипт, о котором я расскажу, создаёт такую возможность через авторизацию и настройки Squid. Это как волшебная кнопка "вкл/выкл" для прокси прямо в вашем браузере!
▶️Скрипт устанавливает прокси-сервер Squid, настраивает авторизацию (чтобы никто лишний не подключился), маскирует ваш IP для анонимности и даже открывает нужный порт в брандмауэре. Вы просто запускаете его, вводите имя пользователя и пароль, а в конце получаете готовые данные для подключения. Никаких часов в терминале или гугления сложных команд — всё быстро и с энтузиазмом!
🖼️ Ссылка на скрипт
🔨 bash_help
8 815
Как попасть в команду СберТеха, если ты Middle DevOps?
Вячеслав Федосеев приглашает эйчаров и тимлидов из BigTech, чтобы разобраться, как они нанимают DevOps-инженеров:
✔️ Какими навыками и компетенциями обладает идеальный Middle DevOps?
✔️ Что важно знать и уметь, чтобы случился мэтч с первого собеседования?
✔️ На какие харды и софты смотрят, какие неочевидные знания могут стать плюсом для кандидата?
Ведущий — Вячеслав Федосеев, TeamLead DevOps в «Честном знаке», автор канала «DevOps Bootcamp с Федосеевым»
Будет полезно тем, кто начинает свой путь в качестве DevOps, думает о смене карьерного трека или уже работает по специальности, но хочет прокачать резюме и получить оффер мечты.
📍Встречаемся с гостями из СберТеха 10 марта в 17:00, подпишитесь на Telegram-канал Вячеслава, чтобы не пропустить начало вебинара и другие встречи проекта.
erid: 2W5zFJiq7x4
8 815
⚙️ Bash-cкрипт для просмотра
времени жизни (TTL) для записи DNS на Linux, Unix, macOS
✔️Этот скрипт написан на языке Bash, поэтому вам необходимо установить его. Кроме того, команда dig должна быть установлена в Linux, FreeBSD, macOS или Unix-подобных системах.
▶️Для поиска DNS TTL в Linux, macOS и Unix мы используем следующий синтаксис команды dig:
dig {TYPE} {DomainNameHere} {NS-AUTHNAME-SERVER-HERE}
➡️ Как посмотреть время жизни (TTL) для записи DNS / домена
▶️Создайте новый скрипт find-dns-ttl.sh следующим образом:
#!/bin/bash
# Usage:
# Shell script too see Time-To-Live (TTL) for a DNS record in human readable
# format.
#
# Tested on:
# Ubuntu/Debian/macOS with bash shell v5.x
#
# Note:
# dig must be installed on your system this to work.
#
# Syntax:
# /path/to/find-domain-ttl cyberciti.biz
# /path/to/find-domain-ttl google.com | more
# /path/to/find-domain-ttl cyberciti.biz | grep -i 'AAAA'
# ----------------------------------------------------------------------------
# Written by Vivek Gite <https://www.cyberciti.biz/>
# (c) 2021 Vivek Gite under GNU GPL v2.0+
# ----------------------------------------------------------------------------
# Last updated: 26/Jul/2024
# ----------------------------------------------------------------------------
set -eu -o pipefail
domain="${1:-NULL}"
# fail safe i.e. if no $1 passed to the script, die with an error
[ "$domain" == "NULL" ] && { echo "Usage: $0 domain-name"; exit 1; }
# make sure dig installed else die
if ! type -a dig &>/dev/null
then
echo "Error: $0 - dig command not found."
exit 2
fi
# repeat given char 90 times
repeat(){
for i in {1..90}; do echo -n "$1"; done
}
# get first ns for domain
# remove everything except domain.com
str="${domain%.*.*}"
domain="${domain/$str./}"
ns="$(dig +nocmd +noall +answer ns "${domain}" | head -1 | awk '{ print $5}')"
# now print ttl for a, aaaa, and mx
repeat '-'
echo -e "\nDomain\t\t\tTTL\tIN\tRecord\tAnswer"
repeat '-'
echo
for i in a aaaa mx
do
dig +nocmd +noall +answer +ttlunits "${i}" "${domain}" "@${ns}"
done
▶️Цикл bash for выполняет всю работу за вас:
for i in a aaaa mx
do
dig +nocmd +noall +answer +ttlunits "${i}" "${domain}" "@${ns}"
done
🖼️ Прочитать статью полностью
🔨 bash_help8 815
Управление кластерами в Kubernetes — мастхэв для DevOps-инженера
Если вы хотите расти и в цене, и как спец — важно уметь автоматизировать развёртывание приложений. Углубиться в эту тему этому можно с помощью базы знаний Яндекса.
Yandex Cloud открыл свободной доступ к материалам для инженеров. Из них вы узнаете всё об автоматизации работы с кластерами.
Из программы для DevOps-инженеров вы узнаете, как:
▪️Развёртывать кластеры;
▪️Настраивать сети;
▪️Автоматизировать работу;
▪️Контролировать доступ через RBAC;
▪️Устранять проблемы с кластером и приложениями;
▪️Работать с Yandex Managed Service for Kubernetes.
Программа не займёт много времени — она рассчитана на 24 часа освоения. При этом можно двигаться в свободном темпе, а материалы останутся с вами навсегда. В программе и теория, и практика — 60 заданий для самостоятельного выполнения.
Подробнее о базе знаний — по ссылке.
8 815
⚙️ DevDocs.io
✔️Веб-платформа, предназначенная для разработчиков программного обеспечения, предоставляющая документацию по различным языкам программирования, фреймворкам и инструментам командной строки.
▶️Страница, посвящённая Bash, содержит исчерпывающую справочную информацию по этому популярному интерпретатору командной строки, который широко используется в Unix-подобных операционных системах.
➡️ Особенности страницы DevDocs по Bash
💠 Удобный интерфейс: Документация представлена в виде интерактивного справочника, где легко находить нужные команды и опции. Структура документа позволяет быстро перемещаться между различными разделами, такими как синтаксис, встроенные команды, переменные окружения и специальные символы.
💠 Поисковая система: Встроенный поиск помогает мгновенно найти нужную команду или параметр, экономя время разработчика. Это особенно полезно при работе с большим количеством команд и опций.
💠 Описание синтаксиса: Подробное руководство по использованию базовых конструкций Bash, включая условные операторы, циклы, функции и обработку сигналов. Это делает страницу ценным ресурсом для начинающих пользователей, желающих освоить основы работы с командной строкой.
💠 Примеры использования: В каждом разделе приводятся практические примеры, иллюстрирующие применение различных команд и функций. Это помогает лучше понять, как работают те или иные элементы Bash.
💠 Совместимость с разными платформами: Информация актуальна для всех основных дистрибутивов Linux, macOS и других Unix-подобных систем, поддерживающих Bash.
💠 Обновляемость: Платформа регулярно обновляется, чтобы соответствовать последним изменениям в документации Bash. Это гарантирует, что пользователи получают самую свежую и точную информацию.
💠 Поддержка оффлайн-доступа: Возможность скачивания локальной копии документации для использования без подключения к Интернету.
💠 Интеграция с IDE: Некоторые интегрированные среды разработки поддерживают интеграцию с DevDocs, позволяя разработчикам получать доступ к документации прямо из редактора кода.
▶️ Эта страница является незаменимым инструментом для любого IT-специалиста, работающего с командной строкой Bash, будь то администратор серверов, разработчик программного обеспечения или энтузиаст, стремящийся углубить свои знания в области автоматизации задач и скриптов.
🖼️ Перейти на сайт
🔨 bash_help
8 815
Python — самый простой путь в IT! Проверено тысячами людей.
Думаете, почему язык Python так востребован? Он простой, интуитивно понятный и подходит для любого уровня подготовки. Если вы хоть раз задумывались о программировании, начните с бесплатного мини-курса по Python: https://epic.st/mAwkU5?erid=2VtzqvtuRTL
Сами «пощупаете», напишете сайт и пару Telegram-ботов, вот тогда и поговорим. Времени много не займёт: всего 4 занятия в записи — можно смотреть, когда удобно. После видео — практика и тесты.
А ещё подарки: подборка полезных материалов по Python-разработке, скидка 10 000 рублей на любой курс Skillbox и персональная карьерная консультация. Последняя очень кстати: не зайдёт Python — разберётесь с экспертом, что зайдёт, и получите тестовый доступ к профессии.
Переходите и регистрируйтесь 😉 https://epic.st/mAwkU5?erid=2VtzqvtuRTL
Реклама. ЧОУ ДПО «Образовательные технологии «Скилбокс (Коробка навыков)», ИНН: 9704088880
8 815
⚙️ OnlineGDB
✔️Предоставляет среду для написания скриптов Bash с функциями отладки и выполнения кода в удобном интерфейсе.
▶️Сервис позволяет писать, компилировать, запускать и отлаживать скрипты Bash онлайн. Для этого нужно написать код в редакторе и нажать кнопку «Выполнить».
➡️ Некоторые особенности OnlineGDB:
▶️не требуется предварительная настройка для кодирования или отладки;
▶️запуск и отладка одним нажатием кнопки;
▶️автоматическое сохранение исходного кода в браузере локально;
▶️удобный интерфейс.
🖼️ Перейти на сайт
🔨 bash_help
