BashMaster
8.73K subscribers
928 photos
28 videos
9 files
945 links
Удобные консольные наработки на каждый день для разработчиков, девопсов и сисадминов.

Реклама: @Kone4noVasya

Канал на бирже: https://telega.in/c/bash_help
Download Telegram
⚙️ Шпаргалка по командам Linux

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1712🔥7
Forwarded from localhost
#собеседование #HR

Анекдот дня. Чел написал в резюме рецепт пельменей, оптимизировал его под алгоритмические фильтры и прошел собес на фронденд девелопера. Реакция HR'a, когда на собесе он глянул резюме, бесценна 😁

😎 localhost › IT-юмор
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥125
⚙️ ShellChatGPT

✔️Оболочка для ChatGPT, DALL-E, Whisper и TTS от OpenAI. Проект интегрируется с LocalAI, Ollama, Gemini, Mistral, Groq и другими сервисами.

➡️ Некоторые возможности ShellChatGPT:
💠завершение текста и чата;
💠модели зрения, рассуждения и аудио;
💠режим чата с входом и выходом голоса;
💠интерфейс текстового редактора;
💠поддержка рендеринга Markdown;
💠управление сессиями;
💠менеджер запросов на инструкции;
💠интеграция с различными поставщиками услуг;
💠завершение командной строки;
💠диалоговые окна выбора файлов;
💠персонализация цветовой схемы;
💠поддержка ввода stdin и текстовых файлов;
💠совместимость с Linux, FreeBSD, MacOS и Termux.

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥93👍3😐1
⚙️ BASH Shell: Как запустить последовательно несколько команд или все сразу

✔️Если вам нужно запустить несколько команд, то между ними ставится символ ";" называемый метасимвол (metacharacter). Синтаксис следующий: command1;command2;command3

▶️Команды, разделенные знаком ";" выполняются последовательно. Shell ждет следующей команды, и возвращение в приглашение командной строки происходит после исполнения последней команды: $ clear;date

➡️ Одновременное выполнение нескольких команд
▶️Для запуска нескольких команд за один раз, поставив амперсанд "&" в конце из команды. Для примера рассмотрим начало скрипта резервного копирования:
# /root/ftpbackup.sh &

▶️И ваш терминал свободен для дальнейшего пользования, вам не нужно ждать окончания исполнения скрипта /root/ftpbackup.sh.

➡️ Использование всего вместе
▶️У вас может быть тысячи файлов *.bak. Но вам нужно всего-навсего перечислить нужные категории, и поместить все в /tmp/list:
# for d in "/home/sales /home/dbs /data1"; do find $d -iname “*.bak” >> /tmp/list; done &


🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
👍103🔥3😐1
Forwarded from Admin Books
Командная_строка_Linux_и_автоматизация_рутинных_задач.pdf
14.6 MB
📖 Командная строка Linux и автоматизация рутинных задач

Год:
2020
Авторы: Денис Колисниченко

Рассматриваются основы работы в командной строке Linux, настройка системы с помощью текстовых интерфейсов, а также полезные команды, особенности файловой системы, eCryptfs, systemd, загрузчики GRUB/GRUB2 и ядро 3.0. Описаны интерактивные возможности оболочки zsh, примеры сценариев на bash и tcsh, управление пакетами в популярных дистрибутивах. Для продвинутых пользователей — глава о создании собственного дистрибутива и LiveCD.

#linux

🤩Admin Books
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥1
⚙️ Зарезервированные переменные Bash

✔️В командном интерпретаторе Bash есть зарезервированные переменные, которые имеют специальное назначение. Они начинаются с символа "$" и используются в скриптах для выполнения различных операций.

➡️ Некоторые зарезервированные переменные Bash и их значения:
💠$DIRSTACK — содержимое вершины стека каталогов;
💠$EDITOR — текстовый редактор по умолчанию;
💠$EUID — эффективный UID (если использовалась программа su для выполнения команд от другого пользователя, эта переменная содержит UID этого пользователя);
💠$UID — реальный идентификатор, который устанавливается только при логине;
💠$FUNCNAME — имя текущей функции в скрипте;
💠$GROUPS — массив групп, к которым принадлежит текущий пользователь;
💠$HOME — домашний каталог пользователя;
💠$HOSTNAMEhostname машины;
💠$HOSTTYPE — архитектура машины;
💠$LC_CTYPE — внутренняя переменная, которая определяет кодировку символов;
💠$OLDPWD — прежний рабочий каталог;
💠$OSTYPE — тип ОС;
💠$PATH — путь поиска программ;
💠$PPID — идентификатор родительского процесса;
💠$SECONDS — время работы скрипта (в сек.);
💠$# — общее количество параметров, переданных скрипту;
💠$* — все аргументы, передаваемые скрипту (выводятся в строку);
💠$@ — то же самое, но параметры выводятся в столбик;
💠$!PID последнего запущенного в фоне процесса;
💠$$PID самого скрипта;
💠$? — содержит код завершения последней команды.

➡️ Использование:
▶️Зарезервированные переменные используются для выполнения различных операций, например:
💠Переменная $0 — хранит имя скрипта или оболочки, которая выполняется в данный момент. Используется для получения имени скрипта, чтобы отобразить его в выходных данных или проверить, запущен ли скрипт.
💠Переменная $# — хранит количество аргументов командной строки, переданных скрипту. Используется для проверки количества аргументов перед их обработкой.
💠Переменные $* и $@ — хранят все аргументы командной строки, передаваемые скрипту, в виде одной строки и отдельных строк соответственно. Переменная $* разделяет аргументы первым символом переменной IFS, в то время как переменная $@ разделяет аргументы пробелами.
💠Переменная $! — хранит идентификатор процесса (PID) последнего выполнявшегося фонового процесса. Используется для проверки состояния фонового процесса или для его завершения при необходимости.
💠Переменная $IFS — хранит внутренний разделитель полей, который используется для разделения строки на поля. По умолчанию для переменной IFS заданы пробелы, табуляция и символы новой строки.

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
👍124🔥4
⚙️ IxeRam

✔️Высокопроизводительный терминальный сканер памяти и отладчик для Linux. Программа работает в среде терминала, подходит для удалённых сеансов и рабочих процессов SSH.

➡️ Некоторые возможности IxeRam:
💠Многопоточное сканирование памяти. Программа ищет в памяти процессов данные разных типов, включая целые числа, значения с плавающей точкой, строки и байтовые шаблоны.
💠Отслеживание изменений значений в реальном времени.
💠Дизассемблирование x86-64 кода.
💠Патчинг инструкций прямо в памяти процесса.
💠Поиск указателей и анализ графа вызовов.
💠Экспорт результатов в JSON или Ghidra-скрипты.
💠Прямой доступ к памяти через системные вызовы, что обеспечивает высокую скорость работы.

▶️IxeRam подходит разработчикам и специалистам по реверс-инжинирингу, которым нужен мощный инструмент анализа памяти без графического интерфейса.

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥42
⚙️ SadServers — тренажёр для практики администрирования Linux-серверов

✔️Симулятор сисадмина и DevOps, где вы подключаетесь к реальному виртуальному серверу по SSH и чините настоящие проблемы, а не решаете тесты.

➡️ Как это выглядит:
💠Выдают сломанный сервер с конкретной задачей;
💠Заходите по SSH и разбираетесь, что пошло не так;
💠Есть таймер, не успели — сервер отключается.

▶️Отличный способ прокачать практику и проверить себя в условиях, близких к реальным.

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

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍54
⚙️ Шпаргалка по SSH-туннелям через bastion-хост

✔️Если нужно безопасно достучаться до сервиса в приватной сети без public IP, SSH port forwarding через bastion — самый простой и надёжный вариант.

▶️ssh -L открывает локальный порт и прокидывает трафик через SSH-туннель на удалённый сервис, а bastion выступает точкой входа во внутреннюю сеть.

➡️ На схеме показано:
💠Как выглядит короткая и полная форма команды
💠Куда именно летит трафик
💠Как SSH-клиент связывается с внутренним веб-сервером через bastion

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
👍73
⚙️ termv

✔️Небольшой Bash-скрипт для просмотра IPTV прямо из терминала с выбором каналов через fzf. Позволяет выбрать поток из списка каналов и сразу воспроизвести его в mpv, используя базу каналов из проекта iptv-org.

➡️ Некоторые особенности утилиты:
💠Возможность открыть mpv в полном экране.
💠Возможность «поглощать» терминал во время воспроизведения (работает только под X11).
💠Автоматическое обновление списка каналов до последней версии.

▶️Для поддержки Windows существует версия termv-rs — переписанная версия termv на языке Rust.

➡️ Утилита termv имеет следующие опции:
💠-h, --help — распечатать текст помощи и выйти.
💠-v, --version — распечатать версию программы и выйти.
💠-u, --update — обновить список каналов до последней версии.

➡️ Также в утилите есть переменные среды, например:
💠TERMV_AUTO_UPDATE — автоматически обновлять список каналов до последней версии (по умолчанию — true).
💠TERMV_SWALLOW — всегда поглощать терминал во время воспроизведения (по умолчанию — false).
💠TERMV_FULL_SCREEN — всегда открывать mpv в полном экране (по умолчанию — false).
💠TERMV_DEFAULT_MPV_FLAGS — стандартные аргументы, которые передаются в mpv (по умолчанию — --no-resume-playback).

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥53
⚙️ Использование systemd-analyze для оптимизации загрузки системы

✔️При работе с Linux-серверами и даже десктопами, производительность системы во время загрузки часто остаётся упущенной. Но с помощью инструмента systemd-analyze можно не только анализировать время загрузки, но и выявлять узкие места, которые замедляют процесс.

➡️ Анализ времени загрузки
▶️Команда systemd-analyze позволяет увидеть, сколько времени уходит на загрузку всей системы и отдельных компонентов. Вывод покажет общую продолжительность загрузки, включая ядро и пользовательские службы.

➡️ Выявление «тяжелых» сервисов
▶️Для более детального анализа, чтобы понять, какие службы и процессы занимают больше всего времени, можно использовать команду systemd-analyze blame

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

➡️ Оптимизация
▶️Если вы хотите понять, какие службы непосредственно зависят друг от друга, и как они влияют на общую продолжительность загрузки, используйте команду systemd-analyze critical-chain

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

➡️ Это позволяет не только ускорить загрузку системы, но и выявить слабые места в её конфигурации, что полезно для администраторов, стремящихся повысить производительность серверов или десктопных машин.

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

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
6👍4🔥4
⚙️ c0admin

✔️ Специализированный AI-помощник для системных администраторов Linux, интегрированный прямо в командную строку.

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

➡️ Если вы забыли специфический флаг в iptables или не можете понять, почему «отвалился» Docker-контейнер, эта утилита даст точный совет на основе контекста вашей системы.

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍4😐2
⚙️ LabEx — интерактивный тренажёр по DevOps, Linux и кибербезопасности

✔️Полноценный русскоязычный тренажёр для практического обучения инфраструктуре, DevOps и смежным направлениям.

▶️Обучение строится через реальные лабораторные задания, которые запускаются прямо в браузере без локальной настройки.

➡️ Что внутри:
💠Деревья навыков по DevOps, Linux, Docker, Kubernetes, AWS и безопасности
💠Практические лабораторные работы с готовым рабочим окружением
💠Проектные задания для закрепления навыков
💠Запуск всех лаб прямо в браузере
💠AI-ассистент Labby для подсказок и базовой теории

➡️ Хороший вариант для системного освоения DevOps и инфраструктурных технологий на практике.

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

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
👍64🔥3
⚙️ Linux Commands: Notes for Professionals

✔️Бесплатная подборка практических команд Linux, составленная на основе документации Stack Overflow.

➡️ Помогает перейти от теории к рутинному администрированию. Благодаря чётким примерам команд, прагматичным рабочим процессам и целенаправленным упражнениям она станет практическим помощником в освоении управления пользователями Linux, инспекции системы и базового обслуживания веб‑стеков.

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

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥43
⚙️ drift

✔️Мы вам тут красивое нашли — терминальный скринсейвер, который активируется при бездействии пользователя и отображает различные визуальные эффекты, такие как созвездия, дождь и частицы.

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

➡️ Для выхода из режима скринсейвера достаточно нажать любую клавишу.

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍2
⚙️ trap — обработка ошибок в Bash скриптах

✔️Скрипт упал на середине и оставил временные файлы или висящие процессы? trap ловит сигналы и выполняет очистку перед завершением.

▶️Очистка при выходе
#!/bin/bash

TMPFILE=$(mktemp)

trap 'rm -f "$TMPFILE"; echo "Очистка выполнена"' EXIT

echo "данные" > "$TMPFILE"
# даже если скрипт упадёт — файл удалится

▶️Ловим Ctrl+C
#!/bin/bash

trap 'echo " Прервано"; exit 1' INT

echo "Нажми Ctrl+C..."
while true; do
sleep 1
done

▶️Ловим ошибки с номером строки
#!/bin/bash
set -e

trap 'echo "Ошибка в строке $LINENO: $BASH_COMMAND"' ERR

echo "Шаг 1: ок"
ls /несуществующий_путь # ← ошибка тут
echo "Шаг 2: не выполнится"

# Вывод: Ошибка в строке 6: ls /несуществующий_путь

💠$LINENO — номер строки где произошла ошибка
💠$BASH_COMMAND — команда которая вызвала ошибку

▶️Основные сигналы
EXIT  — любое завершение скрипта
INT — Ctrl+C
TERM — kill
ERR — ошибка (если set -e)


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

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍52
⚙️ Kopia

✔️Кроссплатформенный инструмент для резервного копирования данных с открытым исходным кодом, который поддерживает Windows, macOS и Linux. Он предназначен для создания зашифрованных, дедуплицированных моментальных снимков (снапшотов) выбранных файлов и каталогов, а не целых систем. Резервные копии можно сохранять в локальных, сетевых или облачных хранилищах.

➡️ Основные характеристики
💠Инкрементное резервное копирование. Kopia передаёт только изменённые данные, что сокращает потребности в хранилище и пропускной способности.
💠Дедупликация и сжатие. Эти функции помогают экономить место за счёт исключения дубликатов данных и их сжатия.
💠Шифрование. Kopia использует сквозное шифрование с управлением ключами пользователем. Все данные шифруются на клиенте до их передачи в хранилище.
💠Поддержка различных хранилищ. Kopia работает с локальными дисками, сетевыми хранилищами (NAS), а также облачными сервисами, такими как Amazon S3, Google Cloud Storage, Azure Blob, Backblaze B2, Google Drive, SFTP, WebDAV.
💠Управление через политики. Политики определяют, какие данные резервное копирование включает, как часто оно выполняется, сколько времени хранятся снапшоты, а также настройки сжатия и шифрования. Можно исключать определённые файлы или каталоги из резервного копирования.
💠Восстановление данных. Kopia предлагает три способа восстановления: монтирование снапшота как локального диска, полное восстановление всех файлов в указанное место и выборочное восстановление отдельных файлов.
💠Проверка целостности. В Kopia есть встроенные функции для проверки согласованности и валидности резервных копий.

▶️Также Kopia поддерживает опциональный серверный режим с API для централизованного управления резервным копированием нескольких машин.

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
👍42🔥2
⚙️ chartli

✔️CLI-утилита, которая превращает поток чисел в наглядные графики прямо в терминале.

▶️Поддерживает несколько типов визуализации: ASCII-линии, столбчатые диаграммы, тепловые карты, Braille-графики и даже SVG. Работает через пайпы и файлы, умеет отображать несколько рядов данных и настраивать размеры графиков под задачу.

➡️ Отлично подойдёт тем, кто анализирует логи или метрики и хочет быстро видеть тренды без перехода в графические интерфейсы.

🐙 Перейти на Github

🔨 bash_help
Please open Telegram to view this post
VIEW IN TELEGRAM
👍54🔥4
⚙️ Networking Toolbox

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

➡️ Особенности
💠Офлайн-режим. Все инструменты работают локально после развёртывания, не требуя подключения к интернету. Это особенно полезно в air-gapped средах, полевых условиях или при работе с критически важной инфраструктурой.
💠Самостоятельное размещение. Приложение можно развернуть через Docker, локально через Node.js или собрать в PWA для мобильных устройств.
💠Безопасность и приватность. Все вычисления происходят на стороне клиента — данные не передаются на внешние сервера.
💠Модульность архитектуры. Можно легко добавлять новые инструменты без переписывания основной кодовой базы.
💠Интуитивный интерфейс. Инструменты сгруппированы по категориям, есть поддержка горячих клавиш и адаптивный дизайн.
💠Кастомизация. При самостоятельном развёртывании доступны настройка брендинга, тем и поддержка нескольких языков.

➡️ Сценарии использования
💠Диагностика сетевых сбоев в условиях ограниченного или отсутствующего интернета.
💠Настройка и тестирование сетевого оборудования в лабораторных условиях и на реальной инфраструктуре.
💠Аудит сетевой безопасности, проверка уязвимостей и анализ защищённости периметра.
💠Обучение и подготовка к сертификационным экзаменам (Cisco, CompTIA и др.).
💠Разработка API — встроенные генераторы тестовых данных и валидаторы форматов.

▶️Networking Toolbox — универсальное решение для системных администраторов и сетевых специалистов, позволяющее решать широкий спектр задач без зависимости от интернет-соединения. Открытый исходный код даёт возможность адаптировать инструменты под конкретные нужды.

🐙 Перейти на Github

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