Bash Days | Linux | DevOps
Авторский блог от действующего девопса Самобытно про разработку, devops, linux, скрипты, сисадминство, техдирство и за айтишную жизу. Автор: Роман Шубин Реклама: @maxgrue MAX: https://max.ru/bashdays Курс: @tormozilla_bot Блог: https://bashdays.ru
显示更多📈 Telegram 频道 Bash Days | Linux | DevOps 的分析概览
频道 Bash Days | Linux | DevOps (@bashdays) 俄语 语言赛道中的 是活跃参与者。目前社区聚集了 23 641 名订阅者,在 技术与应用 类别中位列第 5 483,并在 俄罗斯 地区排名第 27 572 位。
📊 受众指标与增长动态
自 невідомо 创建以来,项目保持高速增长,吸引了 23 641 名订阅者。
根据 06 十月, 2026 的最新数据,频道保持稳定运转。过去 30 天订阅人数变化为 -66,过去 24 小时变化为 -5,整体触达仍然可观。
- 认证状态: 未认证
- 互动率 (ER): 平均受众互动率为 19.35%。内容发布后 24 小时内通常能获得 13.19% 的反应,占订阅者总量。
- 帖子覆盖: 每篇帖子平均可获得 4 573 次浏览,首日通常累积 3 119 次浏览。
- 互动与反馈: 受众积极参与,单帖平均反应数为 13。
- 主题关注点: 内容集中在 bashdays, linux, bash, docker, скрипт 等核心主题上。
📝 描述与内容策略
作者将该频道定位为表达主观观点的平台:
“Авторский блог от действующего девопса
Самобытно про разработку, devops, linux, скрипты, сисадминство, техдирство и за айтишную жизу.
Автор: Роман Шубин
Реклама: @maxgrue
MAX: https://max.ru/bashdays
Курс: @tormozilla_bot
Блог: https://bashdays.r...”
凭借高频更新(最新数据采集于 07 十月, 2026),频道始终保持新鲜度与高覆盖。分析显示受众积极互动,使其成为 技术与应用 类别中的关键影响点。
Первая часть тут: https://t.me/bashdays/1561Я уже упоминал программу par2. Она разрабатывалась очень давно, скорее всего во времена ленточных накопителей. И ее логика работы не совсем понятна современным пользователям. Блоки четности разбиваются на несколько файлов. Сделано это было по нескольким причинам: 1. par2 - старая программа, и там есть ограничение в 2 Гб на файл. 2. Раньше сети были медленными, скачать большой файл было проблемой, а для восстановления, как правило, весь файл не нужен. Разработчики предоставили возможность качать только те файлы, которые нужны для восстановления данных. С одной стороны это удобно, с другой ограничивает использование программы ручным режимом. Ну, при наличии большого желания, процесс тоже можно автоматизировать. Кстати, сейчас уже появилась новая версия программы. Par3 в которой уже нет таких ограничений на размеры файлов, но и самой программы пока нет в стандартных репозиториях, поэтому и распространение она пока не получила. На мой взгляд довольно удобным методом восстановления данных обладает rar. Разработчик добавил туда ключ -rr, который к архиву добавляет данные для восстановления. Причем сам файл функциональности не теряет. В далекие годы я и сам не раз пользовался этим архиватором, при переносе данных на дискетах. Он меня не раз спасал. Достаточно добавить 1% данных для восстановления, и это уже спасает от битового гниения (bit rot) и ошибок при передаче по сети. К сожалению rar архиватор платный, даже в мире Linux. (хотя unrar бесплатный). Поэтому в следующих частях создадим ему опенсорсную альтернативу с помощью двух простых bash скриптов.
man par2 man unrarПродолжение следует... 🛠 #devops — 💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog
▶️как перестроить сетевую архитектуру облака под 10 000 гипервизоров на зону доступности ▶️как добавить поддержку NVLink в облачную инфраструктуру ▶️как управлять InfiniBand и балансировать ИИ-кластер ▶️как перестроить DBaaS с помощью Kubernetes ▶️как создать собственную платформу наблюдаемостиА еще вас ждут практические воркшопы, где можно собрать решение под руководством экспертов. Где и когда: ▶️15 октября 2026 года ▶️Офлайн в Москве и онлайн Зарегистрироваться
При переходе к продакшен-нагрузкам важно заранее продумать отказоустойчивость, сценарии переключения между узлами и поведение кластера при плановых работах и сбоях.29 сентября эксперт Cloud․ru проведет вебинар о том, как обеспечить высокую доступность PostgreSQL в облаке. В программе:
▶️как устроен отказоустойчивый кластер в Evolution Managed PostgreSQL ▶️где проходит граница между высокой доступностью и аварийным восстановлением ▶️какую роль играет Multi-AZ-архитектура ▶️для каких задач используются реплики PostgreSQL ▶️как работают ручное и автоматическое переключение ▶️что важно учитывать при эксплуатации PostgreSQL в продакшенеБудет интересно всем, кто работает с PostgreSQL и отвечает за доступность баз данных и надежность инфраструктуры. Зарегистрироваться
Но зачем мне всё это? Я не стал выбирать жизнь, я выбрал кое-что другое. Почему? Да ни почему. Какие могут быть «почему», когда есть hero_in.^^^ цитата из книги Ирвина Уэлша (Trainspotting), специальные средства осуждаю, чисто для словца… Заграницу я не поехал, а сделал более очевидный шаг, забил в поисковик — купить иностранную симкарту с доставкой. И прихуел, как говорится — спрос, рождает предложения. Иностранными симками банчат прям на озоне, прикинув хрен к заднице я заказал себе KZ Activ (артикул не даю, сам легко найдешь), за 500-600 рублей, доставка 2 дня. Перед заказом я прекрасно понимал, что покупаю кота мешке. Негативные отзывы все же пишут криворукие обезьяны. Но кот в мешке оказался живым, единственный нюанс это нужен загранник, все регается на него. Да, регистрация займет 2 дня, после того как вставил симку в телефон, нужно выждать сутки и после первой реги еще сутки. Потом симка успешно заводится и работает в роуминге без абонентской платы. Красота, хули. После всех этих телодвижений можно регать нужные сервисы, смс приходят отовсюду и успешно проходят любые верификации. Теперь со мной часть KZ, ну ты понял, заебал! 🛠 #рабочиебудни — 💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog
Вот здесь https://t.me/bashdays/1402 уже немного касался этой проблемы, теперь немного расширим. Часть 1/4.Итак - архивы растут. Диски растут. А надежность при этом падает. Этож и ёжику резиновому понятно, что чем больше файл, тем больше вероятность получить дырочку в правом боку. Конечно, сейчас этим уже озаботились и понавыдумывали всяких правильных файловых систем типа btrfs и zfs. Но они любят новое железо, и особенно память. А как быть, если фирма маленькая, и для хранения бэкапов приходится использовать машины, выведенные из эксплуатации из-за морального устаревания? Они себе вполне могут справляться с задачами архивирования. Но как обеспечить надежность хранения на старом оборудовании? Не нужно ничего придумывать. Все уже
man par2 man smartctl wiki Код Рида — СоломонаПродолжение следует... 🛠 #devops — 💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog
С первой частью можешь ознакомиться здесьСкрипт писался с привлечением ИИ, но мной отлажен, и точно работает. Требует jq и curl. В отличие от телеграма, в максе заявлено, что бот может писать сообщения пользователю тольков течение суток, после последнего сообщения пользователя боту. Поэтому для нормальной работы оповещателя желательно создать группу, добавить туда бота, и от его имени писать. С определением номеров пользователей и групп разбирался по статье Романа. Там очень хорошо описано.
#!/bin/bash
# Скрипт отправляет текстовое сообщение пользователю или в чат
# $1 "user" для отправки пользователю, "chat" для отправки в чат
# $2 ID пользователя или чата, соответственно
# $3 "Текст сообщения в кавычках"
# $4 "Имя файла в кавычках"
# если файл есть, а текста нет - вместо текста ""
# v 20260812
declare -x PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
set -euo pipefail
exec 1>&2
declare BASE_URL="https://platform-api2.max.ru" # база API + нужны сert минцифры
declare BOT_TOKEN="AAAAAAAAAAAAAAAAAAA_BBBBBBBB_CCCCCCCCCCCCCCCC"
# === Параметры скрипта ===
case "$#" in
0|1|2)
clear
head -6 "$0"
exit 1 ;;
3)
declare FILE="" ;;
*)
declare FILE=$4
if [[ -f "$FILE" ]];then
clear
echo -e "Файл '$FILE' не найден"
exit 1
fi ;;
esac
if [[ -z "$3" && -z "$4" ]]; then
clear
echo -e "Ошибка. Нет текста или файла."
exit 1
fi
declare -l RECEPIENT=$1
declare ID=$2
declare TEXT=$3
case $RECEPIENT in
user | chat )
declare TO_URL="$BASE_URL/messages?${RECEPIENT}_id=$ID" ;;
*)
clear
echo -e "ошибка параметра 1" $RECEPIENT\\n
head -6 "$0"
exit 1 ;;
esac
#declare -p RECEPIENT ID TEXT FILE TO_URL
# === 1. Получить URL для загрузки файла ===
if [[ -n "$FILE" ]]; then
UPLOAD_META=$(curl -s -X POST \
"$BASE_URL/uploads?type=file" \
-H "Authorization: $BOT_TOKEN")
UPLOAD_URL=$(echo "$UPLOAD_META" | jq -r '.url')
if [[ -z "$UPLOAD_URL" || "$UPLOAD_URL" == "null" ]]; then
echo "Не удалось получить URL для загрузки"
echo "Ответ API: $UPLOAD_META"
exit 2
fi
# === 2. Загрузить файл ===
UPLOAD_RESULT=$(curl -s -X POST \
"$UPLOAD_URL" \
-F "data=@$FILE")
# Сохраняем результат загрузки в переменную для вложения
ATTACHMENT_PAYLOAD="$UPLOAD_RESULT"
fi
# === 3. Формируем JSON сообщения ===
# Если есть файл, добавляем attachment
if [[ -n "$FILE" ]]; then
MESSAGE_JSON=$(jq -n \
--arg text "$TEXT" \
--argjson attachment "$ATTACHMENT_PAYLOAD" \
'{
text: $text,
attachments: [
{
type: "file",
payload: $attachment
}
]
}')
else
MESSAGE_JSON=$(jq -n --arg text "$TEXT" '{text: $text}')
fi
sleep 3 # для антифлуда
# === 4. Отправляем сообщение ===
curl -s -X POST \
"$TO_URL" \
-H "Authorization: $BOT_TOKEN" \
-H "Content-Type: application/json" \
-d "$MESSAGE_JSON" | jq .
Сохраняем send_max.sh
chmod +x ./send_max.sh
/send_max.sh "chat" 123456 "text" "/path/to/file"
🛠 #devops
—
💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog1. У MAX под Linux не работал звук. Была проблема с прослушиванием аудио/видео и звонками. 2. MAX постоянно допиливают, поэтому меняются адреса для работы с API. 3. Регистрация бота — небольшой квест, но вполне решаемый. И всё это бесплатно.Большинство проблем решается с помощью поиска или ИИ. Скрипты брал оттуда же, но пришлось немного адаптировать для себя. Но за неделю разобрался. Всё заработало. Если кому-то понадобится рабочий shell-скрипт для отправки в сообщении текста, файла или текста + файла — пишите, приведу в следующем сообщении. Первый вопрос Пропустим: там много разных проблем может быть, но моя решилась после запуска в консоли:
/usr/share/max/bin/max-service/bin/max-service
Нужно было просто доставить библиотеки и создать пару линков.
Второй
Есть несколько адресов для общения с MAX по API:
- https://platform-api.max.ru
- https://platform-api2.max.ru
На данный момент работают оба, но рекомендуют второй. Но у него тоже своя фишка. Он не работает без сертификатов Минцифры.
Третий — регистрация бота
В отличие от Telegram зарегистрировать бота могут только ИП и юрлица.
Делается это всё при наличии квалифицированной электронной подписи. Юрлицо может зарегистрировать до 5 ботов, причём требуется указать их назначение. Каждый бот утверждается модератором. На это уходит до 24 часов, но у меня прошло быстро, часов за 6.
Ну, в общем, как-то так. С учётом того, что в ближайший месяц проблемы со связью будут нарастать, рекомендую подсуетиться заранее.
🛠 #devops
—
💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog