BashMaster
الذهاب إلى القناة على Telegram
Удобные консольные наработки на каждый день для разработчиков, девопсов и сисадминов. Реклама: @Kone4noVasya Канал на бирже: https://telega.in/c/bash_help
إظهار المزيد8 730
المشتركون
-224 ساعات
+27 أيام
+21030 أيام
أرشيف المشاركات
8 731
⚙️ Каталог /bin
✔️В каталоге
/bin находятся бинарные или исполняемые файлы. Программы пишутся в исходном коде, который представляет собой текст, читаемый человеком. Затем исходный код компилируется в машинный двоичный код. Они называются двоичными, потому что машинный код представляет собой серию нулей и единиц. Важно знать, что команды, программы и приложения, которые вы можете использовать, иногда находятся в каталоге /bin.
/bin содержит оболочки типа bash и часто используемые команды, такие как cp, mv, rm, cat, ls, grep, tar, kill, echo, ps, gzip, ping, su и vi, которые используются как системным администратором, так и непривилегированными пользователями. Он содержит необходимые двоичные файлы (в отличие от каталога /usr/bin), в том числе для загрузки. Он также может содержать команды, которые косвенно используются скриптами.
Список всех программ в /bin можно посмотреть с помощью команды ls, которая обычно используется для просмотра содержимого каталогов : ls /bin
➡️ Следующие команды или символические ссылки на них должны находиться в /bin:
cat — Утилита для конкатенации файлов в стандартный вывод
chgrp — Утилита для изменения группы, которой принадлежит файл или директория
chmod — Утилита для изменения прав доступа к файлам
chown —Утилита для изменения владельца и группы файлов
cp — Утилита для копирования файлов и каталогов
date — Утилита для вывода или установки системных данных и времени
dd — Утилита для преобразования и копирования файла
df — Утилита для создания отчета об использовании дискового пространства файловой системы
dmesg — Утилита для вывода буфера сообщений ядра в стандартный поток вывода (по умолчанию на экран)
echo — Утилита для отображения строки текста
false — Утилита, единственное действие которой — возвратить ненулевое значение (обычно 1)
hostname — Утилита для отображения или установки имени хоста системы
kill — Утилита отправляет сигнал процессу(-ам), указанному с помощью каждого из операндов идентификатор_процесса
ln — Утилита командной строки для создания ссылок между файлами
login — Утилита, которая позволяет пользователям войти в систему
ls — Утилита для просмотра содержимого каталога
mkdir — Утилита для создания каталогов
mknod — Утилита создаёт запись в файловой системе (обычный файл, файл устройства или именованный канал)
more — Утилита для постраничного просмотра текста
mount — Утилита для монтирования файловой системы
mv — Утилита для перемещения/переименования файлов
ps — Утилита для сообщения о состоянии процесса
pwd — Утилита выводит полный путь от корневого каталога к текущему рабочему каталогу
rm — Утилита для удаления файлов или каталогов
rmdir — Утилита для удаления пустых каталогов
sed — Утилита Sed работает с текстовыми файлами
sh — Это интерпретатор командного языка, который выполняет команды, прочитанные из строки командной строки, стандартный ввод или указанный файл
stty — Утилита для изменения и печати настроек терминальной строки
su — Утилита для изменения идентификатора пользователя
sync — Утилита Unix, предназначенная для обновления файловых систем и для синхронизации данных на диске с данными в памяти
true — Утилита, единственное действие которой — возвратить значение 0
umount — Утилита для размонтирования файловых систем
uname — Утилита для вывода информации о системе
🔨 bash_help8 731
⚠️ Как создать собственный тип данных с помощью PostgreSQL?
Расскажем на открытом уроке «Пользовательские типы данных в PostgreSQL» в рамках практического курса «PostgreSQL для администраторов баз данных и разработчиков» от OTUS
🔹На открытом уроке рассмотрим как можно создать пользовательский тип и как с ним работать.
🔹Разберем несколько примеров детально "до винтика"
🦾 PostgreSQL — навык, открывающий двери в более интересные и перспективные проекты. Тестируйте занятие на бесплатном уроке и начните обучение уже 30 июля.
👉 Регистрация и подробности
https://otus.pw/KVCL/?erid=LjN8KRVSz
8 731
⚙️ Подборка часто используемых инструментов удаленного подключения
▶️ Xshell — это очень мощное программное обеспечение для эмуляции защищенного терминала, которое поддерживает SSH1, SSH2 и протокол TELNET платформы Windows. Xshell можно использовать в интерфейсе Windows для доступа к удаленным серверам на различных системах, тем самым лучше достигая цели терминала удаленного управления.
▶️ SecureCRT — это мощное программное обеспечение для эмуляции защищенного терминала, которое может помочь пользователям более безопасно подключаться к удаленным серверам, а также может быть использовано для реализации функций удаленного управления сервером и передачи файлов. SecureCRT поддерживает протоколы SSH1, SSH2, Telnet, Rlogin, Serial и SSL/TLS, которые могут быть использованы для подключения к различным удаленным терминалам, что позволяет удовлетворить различные потребности пользователей.
▶️ WinSCP — это графический клиент SFTP с открытым исходным кодом, который использует SSH в среде Windows. Он также поддерживает протокол SCP. Его основная функция — безопасное копирование и передача файлов между локальным и удаленным компьютерами.
▶️ Putty — это легкий клиент SSH и Telnet, который может помочь пользователям подключиться к удаленным серверам, а также поддерживает протокол шифрования аутентификации SSH-2, что может сделать доступ пользователей к сети более безопасным. Putty также поддерживает протокол SSH на платформе Windows, что позволяет пользователям лучше контролировать удаленные серверы.
▶️ MobaXterm предоставляет комплексные возможности, почти все важные удаленные сетевые инструменты (такие как SSH, X11, RDP, VNC, FTP, MOSH и т.д.), а также команды Unix на рабочем столе Windows (bash, ls, cat, sed, grep, awk, rsync и т.д.), и автоматически открывает режим sftp после входа в систему.
▶️ Tabby — это современный инструмент терминального подключения, с открытым исходным кодом и кроссплатформенный, поддерживающий системы Windows, MacOS и Linux. Tabby имеет более 20k+ Star на Github, что говорит о том, что это очень популярный терминальный инструмент!
🖼️ Ссылка на источник
🔨 bash_help
8 731
Курс по Kubernetes для разработчиков. Видеокурс по Docker в подарок ⤵️
❓ Ваша компания решила мигрировать сервисы на Kubernetes?
❓ Большая часть интересных вам вакансий требует навыков в K8s?
❓ Вы не врубаетесь, где границы ответственности девопсов и разработчиков в работе с кубами?
Разбираемся с этим на курсе Слёрма «Kubernetes для разработчиков» 😎
Старт потока — 22 июля.
ПРОГРАММА КУРСА
Вас ждут:
✅ 7 недель обучения
✅ 112 часов практики + 26 часов теории
✅ Общий чат со студентами, экспертами и куратором
✅ Стенды для отработки практических навыков
✅ Сдача сертификации
✅ Итоговый проект
Эксперты — действующие devops-инженеры:
➡️ Марсель Ибраев, Senior System Engineer G42 Cloud
➡️ Павел Селиванов, архитектор Yandex Cloud
🎁 При оплате обучения до 22 июля — видеокурс по основам Docker в подарок🎁
🔗 ПРОЙТИ ПЕРВЫЕ ТРИ УРОКА БЕСПЛАТНО
8 731
⚙️ Как запускать команды внутри контейнера Docker?
✔️ Контейнер Docker – это изолированная среда, которая обычно содержит одно приложение со всеми необходимыми зависимостями.
Зачастую нам необходимо запустить некоторые команды внутри контейнера. Есть несколько способов, которыми мы можем выполнить команду внутри контейнера и получить требуемый результат.
➡️ Использование интерактивного шелла
Мы можем напрямую обращаться к оболочке контейнера и выполнять наши команды, как в обычном терминале Linux. Чтобы получить интерактивную оболочку остановленного (не в рабочем состоянии) контейнера, вы можете использовать:
$ docker run -it ubuntu bashМы попали прямо в новый контейнер Ubuntu, где мы можем запускать наши команды. Если контейнер уже запущен, вы можете использовать команду exec, как показано ниже. Узнаем идентификатор контейнера.
$ docker psЗатем зайдем в контейнер с идентификатором, например, c2d969adde7a
$ docker exec -it c2d969adde7a bash
root@c2d969adde7a:/#
В приведенном выше выводе вы можете заметить, что мы запустили сеанс bash контейнера nginx, который находился в рабочем состоянии.
Здесь мы можем выполнить любую поддерживаемую команду и получить результат.
Обратите внимание: в вашем контейнере может не быть bash, и если это так, вы можете использовать sh.
docker exec -it c2d969adde7a sh
➡️ Прямой вывод
Зачастую нам просто нужен вывод одной или двух команд и не требуется полноценный интерактивный сеанс для нашей задачи.
Вы можете запустить требуемую команду внутри контейнера и получить ее вывод напрямую, не открывая новый сеанс оболочки, используя команду exec без флага -it.
Cинтаксис будет таким:
$ docker exec <container-id or name> <command>➡️ Использование Dockerfile Это не совсем тот способ, которым вы можете запускать команды внутри контейнера, хотя он может быть полезен в ситуациях разработки или для начальной отладки развертывания и т.д. Мы можем использовать команду RUN внутри Dockerfile. Вот наш пример Dockerfile:
FROM nginx:latest
RUN nginx -V
Данный метод просто извлекает последний образ nginx из реджестри, а затем запускает команду nginx -V, чтобы отобразить версию Nginx при создании образа.
🖼️ Дочитать статью
🔨 bash_help8 731
Курс "Профессия Пентестер" стартует 22 июля!
- Научитесь атаковать сети, WEB-сайты, операционные системы и локальные устройства и проводить внутренний и внешний пентест
- Участвуйте в BugBounty программах или постройте карьеру в сфере информационной безопасности
Полный цикл обучения:
- от освоения Kali Linux и администрирования, до написания эксплойтов и шелл-кода, обхода антивирусных решений
- от сетевой разведки до эксплуатации уязвимостей, повышения привилегий и закрепления в сети
Хотите стать пентестером? Присоединяйтесь к нам – защищайте мир от угроз, находя уязвимости и предотвращая кибератаки!
Пишите нам @Codeby_Academy или
Узнайте подробнее о курсе
8 731
⚙️ Как отправлять и обрабатывать графические уведомления на bash
✔️Сегодня будет разбор интересной задачи: как рисовать красивые графические уведомления и взаимодействовать с ними из скриптов bash.
➡️ Демонстрация будет осуществляться не на абстрактных примерах, а на вполне реальной задаче — необходимо уведомить пользователя о скором истечении пароля и дать возможность его сменить. Ситуация не надуманная — компьютер в домене, sssd даёт возможность авторизоваться/аутентифицироваться пользователю, но вот демонстрировать ему информацию о необходимости смены пароля не может — не его уровень. Вроде как gdm готов этим заняться, только весьма специфически — при удачном логине быстро проскакивает малозаметная строчка с информацией о последнем входе и количестве дней до смены. Раньше, когда все пользователи Linux в большинстве своём были сисадминами/гиками, это никого особо не напрягало. А вот сейчас, из-за активного импортозамещения, появилось большое количество «начинающих» пользователей Linux и, как следствие, достаточно глупые заявки — учётка заблочилась, потому что кто-то не поменял пароль вовремя.
✔️Архитектура проекта
Мы люди серьёзные — сначала думаем, а потом делаем (или не делаем). Набросаем нечто вроде ТЗ: Уведомление должно быть ненавязчивым, а также всё должно быть красиво и удобно!
В качестве среды исполнения будет bash, coreutils — в общем всё, что есть в фундаментальных трудах предков, с учётом современных реалий.
➡️ Скрипт будет исполняться при старте графической сессии пользователя и производить следующие действия:
▶️Определять дату истечения пароля данного пользователя.
▶️В случае, если до истечения пароля осталось менее 7 дней, выводить уведомление пользователю с предложением изменить его.
▶️Если пользователь согласился изменить пароль — вызвать штатную утилиту изменения пароля.
▶️Если пользователь бездействует, уведомление исчезает.
Имеются удобные для нас факторы — т. к. скрипт выполняется в графической сессии пользователя, то выполняется он с его правами и установленной переменной
DISPLAY.
🖼️ Дочитать статью
🔨 bash_help8 731
Бесплатный однодневный интенсив по искусственному интеллекту!
За 1 день научим тебя писать нейронные сети. Напишешь 9 нейронок с нуля, без опыта программирования!
На интенсиве ты создашь:
- 3 нейронки из области компьютерного зрения
- 3 нейронки по распознаванию и обработке текста
- 3 нейронки по сегментации, временным рядам и аудио
Регистрируйся прямо сейчас, исследуй футуристичный мир нейросетей с нами!
Реклама. ООО "ТЕРРА ЭЙАЙ". ИНН 9728019395. erid: LjN8KQEYZ
8 731
⚙️ Advanced Bash-Scripting Guide
✔️Искусство программирования на языке сценариев командной оболочки.
➡️ Данное руководство не предполагает наличие у читателя познаний в области программирования на языке сценариев, однако, быстро восполняет этот недостаток, постепенно, шаг за шагом, раскрывая мудрость и красоту UNIX. Это руководство может рассматриваться как учебник, предназначенный для самостоятельного изучения или как справочник по программированию на shell.
▶️Руководство снабжено серией хорошо прокомментированных примеров, поскольку лучший путь к изучению языка сценариев — это написание сценариев.
🖼️ Перейти к руководству
🔨 bash_help
8 731
⚙️ Полезные команды GNU/Linux для разработчика. Часть 2
✔️Подборка ориентирована на тех, кто не хочет залезать глубоко в систему, но по работе вынужден иногда ходить на Linux-сервер. Речь пойдет о возможностях bash, работе с сетью и ssh.
➡️ Команды bash
По умолчанию в большинстве дистрибутивов Linux сейчас используется оболочка bash. У нее есть много интересных возможностей.
Не все знают, но у bash есть автодополнение - можно начать писать имя команды и если она есть где-то в переменной path, bash автоматически ее дополнит. Применить автодополнение можно клавишей TAB. Правила автодополнения на самом деле чуть более сложные и их можно редактировать самостоятельно. Для многих распространённых команд такие правила уже созданы и, скорее всего, уже установлены в вашем дистрибутиве.
▶️Очистить консоль от предыдущего хлама, который там накопился можно командой
clear
▶️Альтернативная команда позволяет также вернуть клиентскую часть терминала в первоначальный режим (если внезапно все сломалось) — reset
🖼️ Дочитать статью
🔨 bash_help8 731
🎲 Высокая доступность в Kubernetes: бесплатный вебинар
Привет! Мы — команда Слёрма, учебный центр для айти-специалистов middle+ и фанаты k8s.😎
11 июля в 18:00 мы приглашаем вас на вебинар «Высокая доступность в Kubernetes: пробы, реквесты/лимиты, HPA».
На встрече обсудим:
❓ Можно ли не делать рединесс пробы и лить трафик сразу на сервер?
❓ Что будет, если выставить неправильные пробы?
И еще много интересного!
Спикеры:
➡️ Кирилл Борисов, SRE Lead в MTS Digital
➡️ Всеволод Севостьянов, Staff engineer в Lokalise
➡️ Дмитрий Будаков, Системный инженер в интеграторе
Зарегистрироваться на вебинар можно с помощью нашего бота-помощника. Подключайтесь!
🔗 ХОЧУ НА ВЕБИНАР
erid: LjN8K5hwP
8 731
😱 👉 Важное событие для всех, кто хочет повысить производительность своих серверов!
🔆 Присоединяйтесь к открытому уроку «Оптимизация Nginx и Angie под высокие нагрузки»
На занятии вы:
- поймёте, какие параметры влияют на производительность;
- научитесь оптимизировать серверную часть;
- узнаете, как работать с клиентской производительностью.
🏆 Спикер Николай Лавлинский — технический директор в Метод Лаб, PhD Economic Science, опытный руководитель разработки и преподаватель.
👉 Регистрируйтесь для участия: https://otus.pw/xvNy/?erid=LjN8K9nP2
8 731
⚙️ Полезные команды GNU/Linux для разработчика. Часть 1
✔️В этой статье поговорим про команды GNU/Linux, которые удобно использовать разработчику для решения повседневных задач. Подборка ориентирована на тех, кто не хочет залезать глубоко в систему, но по работе вынужден иногда ходить на Linux-сервер. Здесь мы собрали то, чем пользуемся сами и к чему привыкли, однако почти все упомянутые задачи можно решить и другими способами.
Все команды мы разделили на две части. В первой поговорим про запросы общей информации о пользователях и системе, работу с файлами, процессами и текстом.
Просмотр информации о системе и пользователях
▶️Самая первая команда - информация о пользователе —
id <user>. Если ее набрать без параметров, вы получите информацию о том пользователе, под которым работаете в данный момент, а также список групп, в которых состоите. Иногда бывает полезно глянуть как раз список групп, чтобы понять, есть ли у вас права, например на исполнение команд Docker.
▶️Чтобы посмотреть разнообразную информацию о системе (о пользователях, времени ее работы и т.п.), есть три команды — who, uptime, w.
▶️Информацию о перезагрузке можно получить и с помощью другой команды, которая при вызове без параметров показывает последние входы в систему, включая reboot — last.
🖼️ Дочитать статью
🔨 bash_help8 731
2 полезных ресурса по информационной безопасности и этичному хакингу:
• Social Engineering — самый крупный ресурс в Telegram, посвященный информационной безопасности, социальной инженерии и поиску информации из открытых источников.
• infosec — редкая литература, курсы и уникальные мануалы для ИБ специалистов любого уровня и направления. Читайте, развивайтесь, практикуйте.
8 731
⚙️ REST API сервер на Bash с использованием сокетов и Apache
✔️Идея реализации сервера, где описание логики будет производиться на языке одного только Bash. Используя любой инструмент, который дает возможность сетевого взаимодействия между сервером и клиентом может послужить отправной точкой в решение поставленной задачи.
Из очевидных минусов, придется не только описать обработку входящих HTTP-запросов и соответствующих на них ответов, а так же придумать логику этой обработки, например, проверку авторотационных данных передаваемых в заголовке запроса.
➡️ В статье будут примеры, с помощью которых можно создать такой сервер используя сетевые сокеты netcat , socat и ncat, а также веб-сервера Apache с использованием встроенных модулей.
🖼️ Дочитать статью
🔨 bash_help
8 731
Приглашаем на большой эксклюзивный вебинар по виртуализации от команды Deckhouse! Вы узнаете всё об уникальных возможностях Deckhouse Virtualization Platform (DVP), какие задачи она решает и как может удовлетворить самые взыскательные требования современной ИТ-инфраструктуры.
📌 12 июля в 12:00, онлайн. Требуется регистрация.
Среди ключевых спикеров:
– Давид Мэгтон, технический директор и сооснователь компании «Флант»;
– Павел Тишков, технический директор Deckhouse Virtualization Platform.
На вебинаре обсудим:
🔹 ожидания клиентов от современной платформы виртуализации;
🔹 особенности DVP и сценарии использования;
🔹 сетевые политики, микросегментацию, балансировку трафика, наблюдаемость;
🔹 блочные хранилища: встроенные СХД, интеграция с внешними СХД;
🔹 производительность виртуальных машин на разных платформах, масштабирование, аппаратные и системные требования;
🔹 планы по развитию DVP и лицензирование.
Присоединяйтесь!
8 731
⚙️ Скрипт для автоматического создания резервной копии MySQL и ее хранения по FTP-соединению
✔️Этот простой bash-скрипт создаст резервную копию базы данных MySQL и сохранит ее на FTP-сервере.
Скрипт также удалит старые резервные копии с сервера, освободив место.
🐙 Перейти на Github
🔨 bash_help
8 731
3 полезных ресурса для сетевых и системных администраторов:
💻 NetworkAdmin — авторский блог про компьютерные технологии.
⚙️ EasyTools — бот №1 с набором утилит для решения повседневных задач.
🗣 AdminHelp — крупнейший форум для IT-специалистов в Telegram.
Подпишись, чтобы не потерять.
8 731
⚙️ Direnv
✔️Менеджер переменных среды для терминала, который поддерживает bash, zsh, tcsh и другие оболочки. Он позволяет иметь переменные среды, специфичные для каждого проекта.
➡️ Перед каждым приглашением проверяется наличие файла .envrc в текущем и родительском каталогах. Если файл существует, он загружается в подшаблон bash, и все экспортированные переменные затем захватываются Direnv и становятся доступными для оболочки.
➡️ Установка direnv:
sudo apt-get install direnv
Далее необходимо внести изменения для настройки нашей оболочки, для bash необходимо в конец файла ~/.bashrc добавить следующее и перезапустить консоль:
eval "$(direnv hook bash)"
🐙 Перейти на Github
🔨 bash_help8 731
Хотите быстро улучшить свой английский? Актуальная лексика, понятные разборы грамматики, квизы и другие полезные материалы на канале «Гапонова и её английский»:
🔹Планы на выходные: подборка бесплатных материалов, чтобы заняться английским уже сейчас
🔹Что посмотреть и послушать на youtube
🔹Что делать, если застрял на среднем уровне и не видишь результатов?
Ещё больше английского для жизни и работы на канале Лены Гапоновой — преподавателя английского и автора курсов Gaponova School.
✅Подписывайтесь на @gaponova
erid: LjN8KHpwz
متاح الآن! بحث تيليغرام 2025 — أهم رؤى العام 
