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 740 名订阅者,在 技术与应用 类别中位列第 5 547,并在 俄罗斯 地区排名第 27 924 位。
📊 受众指标与增长动态
自 невідомо 创建以来,项目保持高速增长,吸引了 23 740 名订阅者。
根据 02 八月, 2026 的最新数据,频道保持稳定运转。过去 30 天订阅人数变化为 2,过去 24 小时变化为 3,整体触达仍然可观。
- 认证状态: 未认证
- 互动率 (ER): 平均受众互动率为 22.23%。内容发布后 24 小时内通常能获得 12.71% 的反应,占订阅者总量。
- 帖子覆盖: 每篇帖子平均可获得 5 276 次浏览,首日通常累积 3 016 次浏览。
- 互动与反馈: 受众积极参与,单帖平均反应数为 26。
- 主题关注点: 内容集中在 bashdays, linux, bash, docker, скрипт 等核心主题上。
📝 描述与内容策略
作者将该频道定位为表达主观观点的平台:
“Авторский блог от действующего девопса
Самобытно про разработку, devops, linux, скрипты, сисадминство, техдирство и за айтишную жизу.
Автор: Роман Шубин
Реклама: @maxgrue
MAX: https://max.ru/bashdays
Курс: @tormozilla_bot
Блог: https://bashdays.r...”
凭借高频更新(最新数据采集于 03 八月, 2026),频道始终保持新鲜度与高覆盖。分析显示受众积极互动,使其成为 技术与应用 类别中的关键影响点。
vi это стероидные штуки, со своими свистоперделками, обвесами и т.п. А vi давно уже в деприкейтед.
VIM = VI iMproved, то есть — «VI Улучшенный»
Прям готовое погоняло для викинга.Сейчас в современных дистрибутивах предустановлен именно
vim. Даже в CentOS 7 был предустановлен vim вместо vi (без симлинков).
Так что ничего тут такого нет. Отличия — в функциональности.
Банально открой какой-нибудь index.py в vi и потом в vim, сразу увидишь что в vi отсутствует подсветка синтаксиса + в vi если память не изменяет — не было визуального режима.
Но если будешь проверять, убедись что открывается именно vi, потому что в 99999% у тебя отроется vim.
Такие дела. Вечерком залетит пост попизже от Tagd про права.
Хорошей всем рабочий недели!
tags: #linux
—
🔔 @bashdays➡️ @gitgateидея в стадии разработки и применение в проде пока нежелательноㅤ Уровень статьи средне-сложный. Я не буду объяснять, как завести пользователя, как прописать ему оболочку, как настроить аутентификацию по ключам. Информации об этом валом. Сегодня мы рассмотрим как сделать «тупиковую машину». Под ней я понимаю машину, попасть на которую можно через интернет по ssh, но на самой этой машине интернета нет. Заинтриговал? Мозг немного взорвался? Короче, делаем ssh-прокси. ⁉️ Для чего это нужно? Это можно использовать для раздачи доступа сторонним пользователям для управления ресурсами внутри сети, для студентов, работающих на удалёнке. (студенты IT - самые агрессивные пользователи). Короче для минимизации рисков информационной безопасности. Скажу сразу, это не панацея. Инфу/файлы можно таскать через буффер обмена. Но много информации так не передашь. Поехали! Понадобится 2 машины: Бастионная (Jump-сервер, ssh-прокси) - машина, которая торчит открытым портом ssh в интернет. И Тупиковая - машина (возможно виртуалка), с открытым в локалку портом ssh, на которой будет работать пользователь. И у которой нет доступа в инет (закрыт на периметровом маршрутизаторе. Или не прописаны шлюзы. Основное условие у пользователя не должно быть root, а то сменит IP/MAC, пропишет шлюзы...). (допустим ее локальный ip
10.10.10.10).
С Бастионной машины должен быть доступ к Тупиковой по ssh, внутри локалки.
НА БАСТИОННОЙ МАШИНЕ. (аутентификация по ключам уже настроена, ssh защищена от быстрого перебора, для этой группы пользователей запрещен проброс портов)
1. Заводим пользователя, например, Tagd83j6 с паролем >=20 символов (не пригодится)
2. Добавляем публичный ключ Пользователя. (Он обычно с парольной фразой) в ~/.ssh/authorized_keys
3. Генерим ключ без пароля для доступа к Тупиковой машине. (лучше ed25519).
4. Домашней папке Tagd83j6 создаем файл типа shell10.sh (555 root:root)
#!/bin/bash
set -o errexit
set -o nounset
set -o pipefail
ssh $USER@10.10.10.10 2>/dev/null
sudo usermod -s /home/Tagd83j6/shell10.sh Tagd83j6
НА ТУПИКОВОЙ МАШИНЕ (аутентификация по ключам уже настроена)
1. Заводим пользователя Tagd83j6 с паролем >=20 символов (не пригодится)
2. добавляем публичный ключ(с Бастионной машины. п3) в ~/.ssh/authorized_keys
Все. Теперь, если на Бастионной машине от root набрать
su Tagd83j6
Сразу должны попасть на Тупиковую машину.
Собственно все.
Аутентификация пользователя производится на Бастионной машине!!!
При подключении к Бастионной машине нас сразу перебрасывает на Тупиковую. На ней есть локалка, но нет интернета.
Вопросы, критика, плюсики приветствуется.
tags: #networks #linux © by Tagd Tagd
—
🔔 @bashdays➡️ @gitgatess|grep ip - Видно, машина работает с 1с.
ping ip - машина не пингуется.
nmap -Pn ip - все порты < 1000 закрыты.
Ага, скорее всего windows 10 после обновления переключила сеть в "общедоступные".
arp ip - показывает mac
По mac определили, что это ASUS. Но может ноут, может комп или wi-fi роутер вредители воткнули в сеть.
sudo arping -I enp3s4 ip - машина пингуется.
Но как ее найти? Сетка не большая, меньше 100 ip, но не будешь же каждый комп и каждое устройство проверять...
Короче, на серваке 1с:
sudo iptables -I INPUT -s ip -j REJECT
Через 5 минут пользователь звонит, "у меня 1с не работает".
Проверил - точно. Ip не правильно задали. Восстановил, перевел сеть в режим "Частные".
А проблему нехватки лицензий так и не решили. Конец года, вся бухгалтерия пашет. Вот лицензий на всех и не хватает.
Народ, а вы сталкивались с появлением в сети незарегистрированных ip? Как решали проблему?
tags: #networks #рабочиебудни © by Tagd Tagd
—
🔔 @bashdays➡️ @gitgateМол у каждой уважающей себя компании должен быть кубер. Если у тебя нет куба, значит ты лох и компания твоя — гавно!Кубера у нас как ты понял не было. И мне предстояло его внедрять. О кубере естественно я знал словом — нихуя! Но задача есть, надо делать, ипотека сама себя не оплатит. Иду на ютуб, смотрю взахлеб все что попадается на эту тему, за сутки сложилось представление что это такое и как его готовить. Тогда еще было интересно познавать новое, сейчас такого уже нет. Старым добрым методом «тыка» всё поднял, написал пайплайны, собрал контейнеры, задеплоил. Базу кстати тоже в кубер перетащил, просили же всё туда перенести. Вся эта поделка была похожа на какой-то обдристанный шалаш подпертый рыхложопными костылями, но всё работало. Задачу в done, все довольны. Я молодец. Теперь я знаю кубер! А спустя сутки начались качели. Пользователи начали регулярно получать 500ки, иногда ПОД с базой ПОДъебывал и каким-то образом просто выпадал в осадок. Ну и еще вагон и тележка факапов. Фиксилось это естественно гуглежом. За неделю более менее все было отлажено, базу по итогу пришлось вытащить из этого комбайна и поселить на отдельном серваке. Опыт! Но раз в неделю стабильно что-то вылазило новое. Блядь… меня трясти уже начинало когда там что-то ломалось. А еще за каждый инцидент жестко ебали, как медведя. Одним словом — айти. Любят люди всё усложнять, ну работало оно раньше, нахуй было это трогать. Тем более тащить вордпресс в кубер. Чуть позже я увидел битрикс в кубе, это отдельный пиздец. 💬💬💬 Эт я к чему. Изучив базово технологию по ютубу, я добавил себе в резюме строчку — знания k8s, покидал отклики на ХХру и через пару дней получил оффер. А через 2 недели забыл про этот вордпресс как страшный сон. Как потом оказалось в новой компании кубер был, но его обслуживали другие дядьки, а в вакансии HRы просто так это написали. Попытались побольше технологий воткнуть видимо. Если видишь вакансию и какую-то неизвестную тебе технологию — не ссы, кидай отклик, во всем можно разобраться прям по ходу дела. Было бы желание. А возможно там этой технологии вообще нет. Тем более в новой компании тебя первое время хуй допустят до таких вещей, сначала будешь всё под присмотром делать. Хотя бывают случаи когда в компании один девопс. Приходишь такой и ты сам себе тимлид и команда в одно рыло. Потом два месяца пытаешься понять, как все устроено и не сломать, то что работает. А из документации .bash_history. А если на собесе что-то спросили, а ты не знаешь, так и скажи — я хуй знает, слышал, но не тыкал, разберусь короче, не проблема! Прозрачность в этих делах очень важна, соискатели очень любят когда ты с ними откровенен и тебе похуй. Сразу ходи с настроением — Не они тебе нужны, а ты им. Ну и про кубер. Не нужно его поднимать где только можно, он используется точечно, для проектов которые в нём нуждаются. А не потому что это — модно блядь! А хочешь его изучить, поставь себе под локальные проекты, задеплой туда своего кота, выстави жопой в интернет и ковыряй, правь баги и обслуживай. Чем больше ты его ковыряешь, тем больше он ковыряет тебя. Но это справедливо для всех технологий. Если нет желания — хуй ты чему научишься. Такие дела, мотай на ус и не ссы, всё у тебя получится! tags: #рабочиебудни — 🔔 @bashdays➡️ @gitgate
Сейчас занимаюсь задачей по миграции/синхронизации файлового сервера предприятия. Суть проблемы в следующем: Вся информация сейчас распределена по разным серверам, которые начинают выходить из строя. Используется Windows Server с DFS, права настроены через Active Directory. Новый файловый сервер нужно реализовать на базе РЕД ОС. На этапе планирования столкнулся с рядом вопросов — как лучше организовать процесс миграции, чтобы структура и права доступа остались удобными и управляемыми? Если у вас будут предложения или потребуется дополнительная информация, с радостью предоставлю! Заранее спасибо за помощь!tags: #рабочиебудни — 🔔 @bashdays➡️ @gitgate
rm /var/log/nginx/access.log
Мде блядь… это будет интересно!
ㅤ
Задаю следующий вопрос — Серёжа, а почему файл access.log пропал и больше не появляется? Nginx то в данный момент работает, запросы на него идут.
Где карта Билли? Нам нужна карта!
Внятного ответа не получил, что-то на уровне — он появится спустя сутки, когда logrotate отработает. Дада… будем сутки без логов сидеть. А если нет logrotate?
Короче, если хочешь зачистить файл, есть несколько безопасных способов.
Первый способ:
sudo > /var/log/nginx/access.log
Тут мы перезаписываем лог-файл с помощью оператора редиректа «>».
Это безопасно для процесса, который продолжает записывать в лог, поскольку процесс будет продолжать писать в тот же файл, а его дескриптор не изменится.
Ключевая фраза — дескриптор не изменится. А когда ты этот файл через rm ёбнул само собой дескриптор потерялся и nginx охуевает.
Второй способ:
sudo truncate -s 0 /var/log/nginx/access.log
-s 0 = обрезать файл до нулевого размера. В этом случае дескриптор также не будет потерян и nginx продолжит писать непотребности.
Третий способ:
Некоторые сервисы, например, apache или nginx, позволяют отправить сигнал процессу для того, чтобы он закрыл текущий лог-файл и открыл новый (сигнал USR1). В этом случае процесс продолжит работать, но логи будут записываться в новый файл.
sudo kill -USR1 <pid>
Где <pid> = PID процесса. После выполнения этой команды файл с логов превратится в access.log.1 и откроется новый access.log.
Четвертый вариант — тот самый logrotate, но его рассматривать не будем.
Я пользуюсь первым вариантом с символом перенаправления «>». Стильно, модно, молодежно!
Короче сначала думаем головой, а потом уже пользуемся тяжелой артиллерией вроде rm и т.п.
А какие способы обнуления знаешь ты? Про алкашку не пишите, этот способ знают все.
tags: #рабочиебудни #linux
—
🔔 @bashdays➡️ @gitgatesnap install chezmoi
Когда snap появился я как-то скептически к нему отнесся. Мол, чо за хуйня, есть же apt и еже подобные коробочные варианты. Больше наверное меня беспокоило что засрётся система какой-то неведомой шляпой.
ㅤ
Время шло и snap появился в коробке. Всё больше вкусных репок стало инсталиться именно через эту штуковину. Пришлось лезть в нору и знакомиться.
Короче snap это пакетный менеджер, кто бы мог подумать.
Фишка snap — пакеты работают на любом дистрибутиве Ubuntu, Fedora, Arch, Debian и др. без необходимости адаптации под конкретный дистрибутив.
То есть создается один пакет с софтиной и он подходит под все дистрибутивы. Красота!
Получается что-то вроде докер контейнера, который заработает на любой машине.
А еще такой софт запускается в песочнице. Тут безопасники сразу ставят плюсик.
А еще установленные пакеты автоматически обновляются в фоне и они всегда актуальны.
А еще snap пакет содержит все зависимости и библиотеки, которые требуются для запуска софтины.
То есть твой линукс не будет загажен файлами, библиотеками, доп-софтом и т.п. Всё это уже есть в рамках пакета. Никаких конфликтов, никаких танцев с бубном. Да, танцы порой случаются, но редко.
Ну ты понял… а когда применять apt, а когда snap?
➡️ snap хорошо подходит для:
— для приложений, которые часто обновляются (камень в гитлаб).
— упрощённого развёртывания на разных дистрибутивах.
— обеспечения безопасности через контейнеризацию.
➡️ apt предпочтительнее для:
— системных компонентов и пакетов, тесно интегрированных с операционной системой.
— софта, требующего максимальной производительности.
Вот и всё! Не такой snap и страшный. Вечерком еще покажу кое-что интересное (не письку).
tags: #linux
—
🔔 @bashdays➡️ @gitgate