Useful Tools | Linux | GitOps | DevOps
5.8K subscribers
151 photos
1 video
7 files
677 links
Полезные бесплатные opensource инструменты на все случаи жизни, а иногда и советы.

Понравился проект из поста - поддержи автора звездой!

Автор: @dmitry_malinin
Web: https://gitgate.d3.ru

Сотрудничество: @maxgrue
Обсуждение: @gittalk
Download Telegram
s3fs - позволяет Linux, macOS и FreeBSD монтировать S3 бакет через FUSE

s3fs позволяет вам работать с файлами и каталогами в S3 бакете как с локальной файловой системой. s3fs сохраняет нативный формат объектов для файлов, позволяя использовать другие инструменты, такие как AWS CLI .

https://github.com/s3fs-fuse/s3fs-fuse

опубликовано в @gitgate

#fuse #s3 #aws
👍15🔥12
Dagu- мощная альтернатива Cron с веб-интерфейсом.

Он позволяет определять зависимости между командами в виде направленного ациклического графа (DAG) в декларативном формате YAML.

Dagu упрощает управление и выполнение сложных рабочих процессов. Он изначально поддерживает запуск контейнеров Docker, выполнение HTTP-запросов и выполнение команд через SSH.

Функции:

- Веб-интерфейс пользователя
- Интерфейс командной строки (CLI) с несколькими командами для запуска и управления группами DAG.
- Формат YAML для определения групп доступности баз данных с поддержкой различных функций, включая:
Выполнение пользовательских фрагментов кода
Параметры
Замена команды
Условная логика
Перенаправление stdout и stderr
Перехватчики жизненного цикла
Повторяющаяся задача
Автоматическая повторная попытка
- Исполнители для запуска разных типов задач:
Запуск произвольных контейнеров Docker
Выполнение HTTP-запросов
Отправка электронных писем
Запуск команды jq
Выполнение удаленных команд через SSH
- Уведомление по электронной почте
- Планирование с помощью выражений Cron
- Интерфейс REST API
- Базовая аутентификация по HTTPS

https://github.com/dagu-org/dagu

опубликовано в @gitgate

#cron #api #https #jq #ssh #docker #webui #yaml #cli
👍14🔥7
GeeseFS - высокопроизводительная файловая система S3Яндекс , Amazon ), соответствующая стандарту POSIX и написанная на языке Go

Обзор:

GeeseFS позволяет монтировать S3 бакет как файловую систему. Файловые системы FUSE на основе S3 обычно имеют проблемы с производительностью, особенно при работе с небольшими файлами и операциями с метаданными. GeeseFS пытается решить эти проблемы, используя агрессивный параллелизм и асинхронность.

https://github.com/yandex-cloud/geesefs

Подсказал: @gibzer

опубликовано в @gitgate

#s3 #fuse #yandex
👍15🔥7
Dito- усовершенствованный обратный прокси-сервер уровня 7, написанный на Go.

Он обеспечивает гибкую поддержку мидлваре, настраиваемую обработку сертификатов для внутренних соединений, динамическую перезагрузку конфигурации, а также распределенное кэширование и ограничение скорости с помощью Redis.


Функции:

- Обратный прокси-сервер уровня 7 для обработки HTTP-запросов
- Динамическая перезагрузка конфигурации (горячая перезагрузка)
- Поддержка промежуточного программного обеспечения (например, пример аутентификации, ограничения скорости, кэширования)
- Распределенное ограничение скорости с помощью Redis
- Распределенное кэширование с помощью Redis
- Управление пользовательскими сертификатами TLS для серверов (поддержка mTLS)
- Манипулирование заголовками (дополнительные заголовки, исключенные заголовки)
- Поддержка ведения журналов с подробными журналами запросов и ответов.

https://github.com/andrearaponi/dito

опубликовано в @gitgate

#go #reverseproxy #level7 #cli #redis
👍7🔥6
Lapce - быстрый и мощный редактор кода (IDE)

Написан на чистом Rust с пользовательским интерфейсом на Floem.

Он разработан с использованием Rope Science из Xi-Editor, который обеспечивает молниеносные вычисления и использует Wgpu для рендеринга..

https://github.com/lapce/lapce

Web: https://lapce.dev/
Документация: https://docs.lapce.dev/

опубликовано в @gitgate

#editor #rust #ide
🔥9👍7
Совет дня:

Посмотреть рабочую директорию по PID процесса

pwdx <PID>


опубликовано в @gitgate

#tips
👍27🔥14
qrframe - автоматический генератор QR-кода на основе кода

Возможности:

Кастомные данные:
- режим кодирования, версия, устойчивость к ошибкам, шаблон маски
- работает на fuqr, моей собственной библиотеке Rust

Настроить внешний вид:
- Выбирайте любой пресет, настраивайте или даже создавайте новый с нуля с помощью редактора кода.
- Определите произвольные параметры пользовательского интерфейса в коде
- Поддерживает SVG и PNG.
- Весь код выполняется непосредственно в браузере в веб-воркере без каких-либо ограничений.

https://github.com/zhengkyl/qrframe

опубликовано в @gitgate

#qr #generator
🔥13👍4
Совет дня:

Мелкий лайфхак, когда забыли что то сделать предварительно, но уже набрали команду в консоли

Сtrl-u стереть от курсора до начала строки

... сделать забытое ...

Сtrl-y вставить ранее стертое

опубликовано в @gitgate

#tips
👍45🔥15
Совет дня:

Если первым символом в командной строке добавить пробел, то команда не попадет в .bash_history


PS. регулируется переменной

HISTCONTROL=ignorespace

подсказал: @SyntheticMax

опубликовано в @gitgate

#tips
🔥29👍17
etckeeper - набор инструментов, позволяющих хранить /etc в репозиториях git, mercurial, bazaar или darcs.

Это позволяет вам использовать git для просмотра или отмены изменений, внесенных в /etc. Или даже любого другого каталога для резервного копирования или выборочных изменений конфигурации.

Он подключается к менеджерам пакетов, например apt, для автоматического подтверждения изменений, внесенных в /etc во время обновлений пакетов. Он отслеживает метаданные файлов, которые обычно не поддерживаются git, но это важно для /etc, например разрешения /etc/shadow. Он достаточно модульный и настраиваемый, но при этом простой в использовании, если вы понимаете основы работы с контролем версий.

etckeeper имеет специальную поддержку для обработки изменений в /etc, вызванных установкой и обновлением пакетов. Прежде чем apt установит пакеты, предварительно etckeeper проверит, что /etc не содержит незафиксированных изменений. После того, как apt установит пакеты, etckeeper добавит в репозиторий любые новые интересные файлы и зафиксирует изменения.

Вы также можете запустить фиксацию etckeeper вручную, чтобы зафиксировать изменения.

Существует также задание cron, которое будет использовать etckeeper для автоматического внесения любых изменений в /etc каждый день.

PS. при использовании сразу с несколькими узлами можно использовать механизм .gitignore чтобы, например, не затирались имена узлов или настройки сети

https://github.com/PKRoma/etckeeper

опубликовано в @gitgate

#backup #cvs #security #system #cli
🔥11👍6
YoptaScript - первый в мире скриптовый язык программирования для гопников и реальных пацанов, транслируемый в чистый JavaScript. YoptaScript позволит "чётким пацанам" быстро влиться в ряды программистов и процесс разработки.

Очень приветствуются добавления новых определений в словарь языка, а также поиск багов и расширение функционала!

https://github.com/samgozman/YoptaScript

опубликовано в @gitgate

#yopta #js #script #fun
🔥23👍4
Caps-Log - небольшой инструмент для ведения журналов на базе терминала.

Ежедневные записи сохраняются локально в виде файлов Markdown. Заголовки уровня 1 интерпретируются как «разделы», а неупорядоченные списки, начинающиеся с символа «*», интерпретируются как «теги». Названия этих разделов и тегов затем отображаются в двух меню. При выборе элемента в этих меню в календаре выделяются даты с упоминанием этого тега или заголовка. Эта функция обеспечивает визуальное представление о том, насколько (не)согласованы ваши привычки и действия.

Если выбрать дату или нажать Enter, когда дата выделена, этот файл журнала откроется в редакторе. В настоящее время Caps-Log использует переменную среды $EDITOR для запуска редактора, если она установлена. В противном случае эта функция отключена.

Кроме того, caps-log также имеет примитивную функцию «удаленного хранилища» в виде использования репозитория git с удаленным управлением для отправки и получения данных.

https://github.com/NikolaDucak/caps-log

опубликовано в @gitgate

#marcdown #calendar #terminal #journaling
🔥8👍2
Tewi - TUI клиент для демона Transmission BitTorrent.

Функции:

- подключитение к демону Transmission, используя свои учетные данные.
- просмотр списока торрентов
- в виде карт и компактный режимы просмотра
- отображение подробностей торрента: обзор, файлы, трекеры, пиры
- действия торрента: запуск/пауза, удаление/удаление, проверка, повторное объявление
- просмотр и переключение режима черепахи
- просмотр статистики сеанса передачи
- темная и светлая цветовые темы

https://github.com/anlar/tewi

#tui #torrent #transmission
👍9🔥6
Rescuezilla - простое в использовании приложение для клонирования и создания образов дисков, полностью совместимое с Clonezilla - отраслевым стандартом, которому доверяют десятки миллионов человек.

Да, Rescuezilla - это графический интерфейс пользователя Clonezilla, который вы, возможно, искали. Но Rescuezilla - это больше, чем просто графический интерфейс Clonezilla!

Создание образа диска - это процесс создания резервной копии жесткого диска вашего компьютера, которая управляется как файлы, хранящиеся на внешнем жестком диске, а «клонирование диска» - это процесс создания прямой копии без необходимости использования третьего диска для временного хранения.

Для многих людей альтернативные инструменты с открытым исходным кодом, такие как Clonezilla, пугают и сложны в использовании, поэтому Rescuezilla предоставляет простую в использовании графическую среду, такую ​​​​как ведущие коммерческие инструменты, Acronis True Image и Macrium Reflect.

Rescuezilla можно загрузить на любом ПК или Mac с USB-накопителя, и она была тщательно разработана для полной совместимости с Clonezilla. Это означает, что Rescuezilla может восстанавливать резервные копии, созданные Clonezilla, а резервные копии, созданные Rescuezilla, можно восстановить с помощью Clonezilla!

https://github.com/rescuezilla/rescuezilla

опубликовано в @gitgate

#clone #disk #clonezilla #gui #usb #recovery #backup
👍10🔥4
nchat- чат клиент на базе терминала для Linux и macOS с поддержкой Telegram и WhatsApp.

Возможности:

- настраиваемые цветовые схемы и привязки клавиш.
- переход к непрочитанному чату
- кэш истории сообщений с поддержкой экспорта текста
- уведомления о прочтении сообщения
- получение/отправка сообщений в формате markdown
- ответит/удаление/редактирование/пересылка/отправление сообщения
- список диалогов для выбора чатов, контактов, смайлов, файлов
- статус пользователя (онлайн, отсутствует, печатает)
- Переключение между текстовыми смайлами и графические изображения
- просмотр/сохранение медиафайлов (документов, фотографий, видео)
- отправка и отображение реакций

https://github.com/d99kris/nchat

опубликовано в @gitgate

#tui #whatsapp #telegram
👍12🔥4
Совет дня:

Как передать пароль для SSH сесси в командной строке :

sudo apt-get install sshpass


После чего с помощью утилитки можно передавать пароль напрямую.

ВНИМАНИЕ: Делать так стоит только в крайнем случае, потому что небезопасно и пароль останеться в истории команд в явном виде !!!

sshpass -p your_password ssh user@hostname


опубликовано в @gitgate

#tips
👍6🔥4
Еще совет к совету дня:

Записываем пароль в файл echo 'yoursecretpass' > gpgpassfile
Затем шифруем его gpg -c gpgpassfile
Ну и используем так потом:

SSHPASS=$(gpg -d -q gpgpassfile.gpg) sshpass -e ssh -tt username@address command

или

SSHPASS=$(gpg -d -q gpgpassfile.gpg) sshpass -e ssh username@address


Подсказал: Max Zotov - @sf1nk5

опубликовано в @gitgate

PS. кстати еще и файлик с yousecretpass можно curl-ить из приватной репы или vault :)

#tips
🔥13👍8
Vi-Mongo - интуитивно понятное TUI приложение для терминала, написанное на Go и предназначенное для оптимизации и упрощения управления базами данных MongoDB.

Подчеркивая простоту использования без ущерба для функциональности, Vi Mongo предлагает удобный интерфейс командной строки как для администраторов баз данных, так и для разработчиков.

https://github.com/kopecmaciej/vi-mongo

опубликовано в @gitgate

#tui #mongo #mongodb
👍4🔥4
Совет дня:

Как включить отображение миллисекунд в rsyslog ?

в файле настроек сервиса /etc/rsyslog.conf

замените

rsyslog

$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat


на

rsyslog

$template CustomFormat,"%timegenerated:1:10:date-rfc3339% %timegenerated:12:24:date-rfc3339% %syslogtag%%msg%\n"
$ActionFileDefaultTemplate CustomFormat


и перезапустите сервис rsyslog. В результате таймстамп примет такой вид:

2024-10-10 18:28:49.5397

опубликовано в @gitgate

#tips
👍13🔥6