GNU/Linux | Notes – Telegram
GNU/Linux | Notes
2.39K subscribers
111 photos
8 files
75 links
Open Source, Dotfiles, Debian/Ubuntu, Software, Linux, Scripts, Notes, Terminal, Shell, Gnu, Tools, Games, Fun, Free Software Movement.

Автор: Кирилл Рехов
Почта: krekhov.dev@gmail.com
Кто я: https://news.1rj.ru/str/krxnotes/246
GitHub: https://github.com/krekhovx
Download Telegram
KoruX

Я собрал собственный дистрибутив на базе Debian с помощью инструмента live-build и назвал его KoruX.

live-build — это набор скриптов и утилит для автоматизированной сборки Live‑образов Debian. Он позволяет запускать систему с USB или DVD без установки на диск и полностью настраивать образ: выбирать пакеты, менять конфигурации, добавлять свои файлы. При необходимости можно включить установщик и получить вариант, который ставит систему на жёсткий диск.

Понимаю, что вряд ли кто‑то кроме меня будет этим пользоваться. Но если вам интересна разработка дистрибутивов на базе Debian, посмотрите структуру проекта — возможно, найдёте полезные идеи. Это скорее хобби‑проект (hobby-os), чем серьёзная операционная система.

KoruX задуман как минималистичная среда для разработчиков и мейнтейнеров — ничего лишнего, только необходимое — с элементом развлечения в виде классических игр. Ключевые особенности:

- Соблюдены рекомендации ФСТЭК (без формальной сертификации)

- Набор пакетов для разработки

- Режим Live и установленной системы

- Тематический загрузчик GRUB2 (тема, фон, шрифт)

- Графический установщик Calamares с настройками KoruX

- Скрипты тестирования и настройки системы, специфичные для KoruX

- Преднастроенное минималистичное окружение рабочего стола Xfce с LightDM

- Преднастроенное пользовательское окружение (skel, темы, шрифты, скрипты)

- Минимальные настройки по умолчанию с упором на безопасность (hardened) для Firefox, OpenSSL, PAM, sshd, sudoers, GRUB и sysctl (ASLR)

- Предустановленные движки и установщики для классических игр (Diablo 1–2, Heroes 3, Quake 1–3); игровые данные можно установить с помощью простых скриптов

> GitHub
> Wiki
> ChangeLog
> ISO (amd64)

Вот еще хороший, базовый скелет Debian с подробной документацией: https://github.com/nodiscc/debian-live-config

Документация для live-build: https://live-team.pages.debian.net/live-manual/html/live-manual/index.en.html

#debian #build #opensource #info
🔥19👍12🤣54❤‍🔥31
linkchecker

Хотите убедиться, что на вашем сайте или в документации нет битых ссылок? LinkChecker — это удобная утилита, которая поможет автоматически проверить все ссылки на странице или в целом каталоге.

* Проверяет внутренние и внешние ссылки
* Поддерживает рекурсивный обход каталогов
* Работает с HTML, XHTML, CSS и другими форматами
* Выводит отчёт о битых и перенаправленных ссылках

Установка:
$ apt-get install -y linkchecker


Проверка всех ссылок в каталоге:
$ linkchecker dir/


Проверка внешних ссылок:
$ linkchecker --check-extern dir/


Если найдутся битые ссылки, LinkChecker покажет их список с кодом ошибки (например, 404).

#utils
👍10
Где обсудить Linux: полезные форумы

Хотите быстро задать вопрос по Linux, поделиться опытом или найти решение проблемы? Вот два проверенных ресурса, где можно сразу после регистрации создавать посты — без долгих ожиданий и ограничений:

linux.org — международный портал с форумом, новостями и подробной документацией. Отлично подходит для англоговорящих пользователей и тех, кто хочет быть в курсе последних тенденций.

linux.org.ru — крупнейший русскоязычный форум, где обсуждают всё: от установки дистрибутивов до тонкостей администрирования. Здесь всегда найдётся ответ на любой вопрос!

#misc
👍20🦄2💊1
Как вывести погоду в терминале

Это можно реализовать с помощью curl и сервиса wttr.in

Покажет погоду для текущей локации по IP (геолокация):
$ curl wttr.in


Конкретный город:
$ curl wttr.in/Saint-Petersburg


Еще пример:
$ curl wttr.in/Paris


Также можно передавать координаты.

#misc #terminal
28👍12🔥4🌚1🤝1
Меньше хаоса в репозитории: правила README и описания usage

Речь пойдёт про документацию. Да-да, то, что вы так не любите писать. Когда я прихожу в новую компанию, я каждый раз вижу одно и то же: первые месяцы испытательного срока я сижу и разбираюсь в их говёных скриптах/программах без README, без usage-описания, без комментариев, которые что-то делают, и мне надо сидеть и читать весь код целиком, чтобы понять, что оно делает. Нормально? Нет, это не нормально. Ради Христа, пишите в своих проектах README, CONTRIBUTING, ChangeLog, Wiki, usage-функции в ваших скриптах/программах, комментарии и т.д. Если вы не знаете, как они пишутся, посмотрите в open-source проектах популярные шаблоны. Это просто правила хорошего тона.

Для чего это делать?

- Быстрее адаптация: новички стартуют без созвонов.

- Меньше багрепортов "не работает": есть шаги и ожидания.

- Консистентность: единый источник правды по запуску, настройке, версиям.

Что должно быть в README:

- О чём проект: 1–2 строки миссии, чем не является.

- Быстрый старт: установка, минимальный пример запуска, ожидаемый результат.

- Конфигурация: переменные окружения, файлы настроек, приоритеты.

- Требования: версии языка/инструментов, системные зависимости.

- Сценарии запуска: типовые команды (test, build, lint, run).

- Структура репозитория: где код, где тесты, где скрипты.

- Устранение неполадок: частые ошибки и как исправить.

- Версионирование и релизы: где ChangeLog, как нумеруются версии.

- Вклад и правила: CONTRIBUTING, стиль кода, как писать MR/PR.

- Лицензия и контакты: права использования и как связаться.

Usage для скриптов и CLI — обязательно:

- Примеры. Минимум 2–3 конкретных примера: "как запустить локально", "как прогнать на файле/каталоге", "как выключить проверку X".

- Всегда реализуйте -h и --help с понятным usage(): что делает команда, какие аргументы и их значения по умолчанию.

- Ошибки и логи: печатайте понятные сообщения, указывайте, что делать дальше.

- Коды выхода: 0 — ок, ненулевые — с расшифровкой. Это важно для CI.

Документация — это не бюрократия, а ускоритель. Сегодня вы пишете --help и три примера, завтра экономите час себе и коллегам.

#misc #thoughts
11💯9
Внесите свой вклад: как вы можете помочь Debian

1. Разработка и поддержка пакетов – создавайте новые пакеты, улучшайте существующие, исправляйте ошибки, занимайтесь безопасностью.

2. Тестирование – проверяйте установочные образы, Secure Boot, U-Boot, сообщайте об ошибках.

3. Документация – пишите руководства, обновляйте вики, делитесь решениями.

4. Перевод и локализация – переводите сайты, документацию, программы на родной язык.

5. Поддержка пользователей – помогайте на форумах, в рассылках, IRC.

6. Организация мероприятий – участвуйте в DebConf, MiniDebConf, местных встречах.

7. Пожертвования – деньги, оборудование, хостинг, зеркала.

8. Продвижение – рассказывайте о Debian, делитесь скриншотами, участвуйте в популяризации.

Даже если вы не программист, ваш вклад важен!

Более подробно:
Ru: https://www.debian.org/intro/help.ru.html
En: https://www.debian.org/intro/help.en.html

#debian #opensource
15🤝10❤‍🔥1🐳1
LMMS (Linux MultiMedia Studio)

Бесплатная открытая DAW (цифровая аудиостудия) для Linux/Windows/macOS. Подходит для создания музыки "с нуля". С помощью LMMS можно писать биты и полноценные треки (EDM, hip‑hop, chiptune, synthwave и др.), делать аранжировки и демо, саундтреки и саунд‑дизайн — используя встроенные синтезаторы и сэмплер, пианино‑ролл и секвенсер, автоматизацию и эффекты, а также внешние плагины (LV2/VST3 через Carla) и MIDI‑контроллеры, с последующим экспортом в WAV/FLAC/OGG или MIDI.

Для чего используется:
- Легкая, понятная альтернатива тяжёлым DAW.
- Биты, электронная музыка, демо-аранжировки, обучение и быстрые наброски треков.

Лучше скачать LMMS с официального сайта, а не из репозитория, потому что там всегда актуальная версия с новыми функциями и поддержкой форматов (например, VST3/LV2), с исправленными багами и лучшей совместимостью с PipeWire/JACK. Официальные сборки (обычно AppImage или Flatpak) меньше зависят от библиотек системы, реже ломаются из‑за зависимостей и плагинов, а документация, пресеты и примеры на сайте соответствуют именно текущему релизу.

> Документация
> Скачать
> GitHub

#misc #software
7🔥5🌭2👍1
Flatpak

Это кросс‑дистрибутивный формат и система доставки приложений для Linux с песочницей (sandbox). Приложения ставятся вместе с нужными рантаймами, работают одинаково на разных дистрибутивах и изолируются от системы через порталы и разрешения.

Почему отдельно от apt/dnf/pacman: у них разные задачи. apt/dnf/pacman — менеджеры системных пакетов, завязанных на конкретный дистрибутив и его библиотеки. Flatpak — про пользовательские приложения: один пакет для всех дистрибутивов, меньше проблем с зависимостями, безопасная изоляция, можно ставить без root в домашний каталог, легко держать несколько версий. Центр каталогов — Flathub.

Плюсы:
- Кросс-дистрибутивность: один пакет для любых Linux-систем.
- Песочница и разрешения: лучше безопасность и контроль доступа.
- Меньше проблем с зависимостями: общие рантаймы, повторяемость.
- Свежие версии приложений, простой апдейт/откат.
- Установка без root, можно держать несколько версий.

Минусы:
- Больше места на диске (рантаймы + пакеты).
- Иногда нужна ручная настройка разрешений/порталов.
- Не всё ПО есть во Flathub; корпоративные репы встречаются реже.
- Интеграция с темами/иконками и системными сервисами может быть неполной.
- Запуск иногда медленнее, чем у нативных пакетов.

> Flathub

#misc #theory
👍211
AppImage файл

Это самодостаточный исполняемый файл приложения для Linux, включающий все нужные библиотеки. Не требует установки и прав суперпользователя: скачал, сделал исполняемым (chmod +x) и запустил.

Для чего нужен: чтобы запускать приложения на любом дистрибутиве без зависимости от его пакетов и версий библиотек, удобно носить на флешке/облаке, быстро пробовать новые версии. Часто используется разработчиками для простого распространения GUI‑программ. Нет встроенной песочницы и менеджера зависимостей; обновления и интеграция в меню обычно делаются сторонними инструментами (например, AppImageUpdate, AppImageLauncher) или вручную.

#misc #theory
20👍8
😁59💯14👍5🤣5
Фонд STF (Sovereign Tech Fund) представил новые открытые проекты, которым решено предоставить финансирование. Организация учреждена в Германии для стимулирования развития открытой цифровой инфраструктуры и экосистем с открытым исходным кодом. Фонд создан на средства, предоставленные Министерством экономики и защиты климата Германии, и курируется Федеральным агентством прорывных инноваций SPRIND (Federal Agency for Breakthrough Innovation). Отмечается, что инвестирование в открытое ПО способствует развитию инноваций в Германии и Европе, а также повышает конкурентоспособность, продуктивность и возможность продвижения инноваций в малых и средних предприятиях.

Новость: https://www.opennet.ru/opennews/art.shtml?num=64105

#opensource
🔥21
Зашифрованный архив

Понадобятся утилиты: tar и gpg

Создать зашифрованный архив:
$ tar -cvzf - dir/ | gpg -c -o archive.tgz.gpg


Расшифровать и распаковать:
$ gpg -d archive.tgz.gpg | tar -xvzf -


P.S. GPG запросит пароль (может кэшироваться gpg-agent).

#utils #security
👍102👻2
Debian прекращает поддержку архитектур armel и mips64el

Разработчики проекта Debian объявили об удалении портов для архитектур mips64el и armel (ARM EABI) из репозиториев unstable и experimental. В следующей ветке Debian 14 данные архитектуры поддерживаться не будут. Из плат, в которых использовалась архитектура armel, отмечаются Raspberry Pi 1, Raspberry Pi Zero и Raspberry Pi Zero W.

Новость: https://www.opennet.ru/opennews/art.shtml?num=64182

#debian
😢11😱5🔥21
В Debian намерены добавить Rust в число обязательных зависимостей к APT

Джулиан Андрес Клоде (Julian Andres Klode), основной сопровождающий проект APT, объявил о решении добавить код на языке Rust в пакетный менеджер APT, а также включить в число обязательных зависимостей компилятор Rust, стандартную библиотеку Rust и PGP-инструментарий от проекта Sequoia, написанный на Rust. Изменения намерены реализовать не раньше мая 2026 года, чтобы дать разработчикам портов Debian полгода на реализацию корректной работы инструментария Rust или сворачивание порта.

Новость: https://www.opennet.ru/opennews/art.shtml?num=64164

#debian
🥴22💊9😱52🤣2👍1
GitHub опубликовал отчёт с анализом статистики за 2025 год. Основные тенденции.

Новость: https://www.opennet.ru/opennews/art.shtml?num=64135

#misc
🤷‍♂2🍌2
Опубликовано официальное десктоп-приложение Яндекс Музыка для Linux

Новость: https://www.opennet.ru/opennews/art.shtml?num=64126

#misc
❤‍🔥13🔥6🤣5👎2🌚2
Perl

Perl — это интерпретируемый, открытый язык общего назначения (двойная лицензия Artistic/GPL), известный мощной обработкой текста и регулярными выражениями. Портируемый, с огромным репозиторием модулей CPAN.

Где и для чего его используют:
- Администрирование и DevOps: скрипты для автоматизации, бэкапов, мониторинга, cron-задачи.
- Обработка логов и данных: парсинг, фильтрация, отчеты, ETL-пайплайны.
- Системные утилиты: множество исторических инструментов дистрибутивов написаны на Perl.
- Веб (исторически): CGI/старые веб-приложения, поддержка унаследованных систем.
- Наука/биоинформатика: быстрый прототипинг анализа данных.
- Работа с БД: через модуль DBI и драйверы.

Плюсы:
- Очень сильные регулярные выражения и "текстомолотилка".
- Богатая экосистема модулей (CPAN).
- Кроссплатформенность и зрелость.

Минусы/реалии:
- Код часто труднее читать и поддерживать.
- Сообщество и популярность ниже, чем у Python; реже выбирают для новых проектов.

Итог: Perl остаётся полезным в Linux для быстрой автоматизации и обработки текстов, особенно в существующей инфраструктуре, хотя для новых проектов чаще выбирают Python.

#misc
👍14🤣3👎2🔥2🐳1
Ruby

Интерпретируемый, открытый язык с упором на простоту и удовольствие от кода. Имеет менеджеры версий (rbenv/rvm), пакетный менеджер RubyGems, интерактивную консоль IRB.

Где полезен:
- Веб-разработка: Ruby on Rails, Sinatra — быстрый старт, много готовых решений.
- DevOps/инфраструктура: Chef, Puppet, Vagrant, Homebrew (частично) — экосистема сильно связана с Ruby.
- Автоматизация и CLI: скрипты, парсинг, генераторы статических сайтов (Jekyll), утилиты.
- Тестирование: RSpec, Minitest — удобные фреймворки.

Плюсы:
- Очень читаемый, лаконичный синтаксис, мощная стандартная библиотека.
- Огромное число гемов (RubyGems), зрелый Rails-стек.
- Сильная метапрограммируемость.

Минусы/реалии:
- Производительность обычно ниже, чем у Go/Java.
- "Магия" Rails и метапрограммирование усложняют отладку в больших проектах.
- Требует управления версиями (rbenv/rvm) для избегания конфликтов.

Сложность:
- Входной порог низкий; писать просто.
- Глубокие Rails-проекты и метапрограммирование — средняя/выше средней сложность.

Итог: отличный выбор на Linux для веба (Rails), инструментов DevOps и быстрых CLI-скриптов; удобен и продуктивен, если не критична максимальная производительность.

#misc
19👎18🐳3🤣2
А вы Ruby сильно не любите :D
😈23🤷‍♂11👎4😁3👍2😢1💯1
Please open Telegram to view this post
VIEW IN TELEGRAM
13👎5🤔2
Fail2ban

Это маленькая утилита‑охранник, которая защищает сервер от перебора паролей и подозрительной активности. Она следит за логами (например, sshd) и, если видит слишком много неудачных попыток входа, временно блокирует IP через Firewall. Если у вас есть сервер, советую настроить эту утилиту, очень хорошо защищает от украинских скрипт-кидди (которые ничего не могут, кроме как позориться на весь мир), ну и в подобных случаях.

Зачем нужен для SSH:
- защищает от brute‑force
- снижает нагрузку от ботов
- не требует сложной настройки
- автоматически банит подозрительные IP

Установка:
$ apt-get install fail2ban


Запуск и автозагрузка:
$ systemctl enable fail2ban
$ systemctl start fail2ban


-> Базовая настройка

Не изменяй /etc/fail2ban/jail.conf — создавай локальный файл:
$ cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local


Минимальная настройка для SSH в /etc/fail2ban/jail.local:
[sshd]
enabled = true
filter = sshd
port = ssh
maxretry = 5
bantime = 600
logpath = /var/log/auth.log


bantime — на сколько секунд банить
maxretry — сколько попыток можно сделать

Применить настройки:
$ systemctl restart fail2ban


-> Проверки

Статус сервиса:
$ fail2ban-client status


Статус конкретной тюрьмы (ssh):
$ fail2ban-client status sshd


Разбанить IP:
$ fail2ban-client set sshd unbanip 1.2.3.4


Где полезен кроме SSH:
- защита nginx
- защита nextcloud
- защита vsftpd и postfix
- фильтрация подозрительных паттернов в логах

#security #utils
👍24137🤨4👎2🥴1🐳1💊1