Обновить
256K+

Linux *

Пишем под *nix

418,37
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности
Формат публикации

Разработчик представил утилиту, добавляющую в Linux сообщение об активации из Windows

Время на прочтение1 мин
Охват и читатели12K

Энтузиаст опубликовал на GitHub утилиту, выводящую на рабочий стол Linux водяной знак о необходимости активировать систему. Подобное сообщение обычно выводится на машинах под управлением Windows.

Читать далее

Как работать с Makefile-проектами в среде CLion

Время на прочтение12 мин
Охват и читатели7.6K

За последние несколько лет мне пришлось столкнуться с множеством вопросов, которые были сформулированы примерно так: "мой проект не открывается в среде CLion". В свою очередь, это приводило к необходимости из раза в раз объяснять разным людям примерно одно и то же. Статья имеет целью сохранить тот опыт, который был накоплен в процессе анализа десятков разных проектов. Предполагается, что официальная документация вам уже известна и не вызывает вопросов.

Читать дальше →

NVIDIA открыла исходный код модулей ядра видеодрайверов для ядра Linux

Время на прочтение2 мин
Охват и читатели27K


По информации VideoCardz, NVIDIA открыла исходный код всех модулей ядра своих проприетарных видеодрайверов для ядра Linux. Компания опубликовала разработки на GitHub под лицензиями MIT и GPLv2.
Читать дальше →

Приложение Docker Desktop стало доступно для Linux

Время на прочтение1 мин
Охват и читатели13K


Компания Docker выпустила приложение Docker Desktop для Linux. Ранее фирменный графический интерфейс для создания, запуска и управления контейнерами был доступен только под Windows и macOS.
Читать дальше →

OpenVPN. Инструкция по применению

Время на прочтение9 мин
Охват и читатели102K

Виртуальные частные сети (VPN) давно вошли в повседневную жизнь. Множество технологий и реализаций сервиса приватных сетей (как для частного применения, так и для использования внутри периметра организаций), обеспечивающих определённый уровень безопасности, доступны для использования широкому кругу ИТ-специалистов.

Не смотря на обилие технологий, предлагаю остановиться на старом добром OpenVPN (в связке с EASY-RSA). Решение от Джеймса Йонана отличается гибкостью, функциональностью, надёжностью и непрерывностью разработки на протяжении приличного временного периода. Так сказать, мастодонт от мира VPN-решений.

Спойлер — ссылка на довольно функциональное решение (ничего особенного, чистый бэкэнд), написанное на bash некоторое время назад, ждёт вас в конце публикации (в виде github-репозитория под именем «openvpn_helper»), а здесь же уделю внимание общей структуре и некоторым аспектам использования набора скриптов и OpenVPN.

***

Список необходимых компонентов (используемая ОС — AlmaLinux 8):

1) OpenVPN 2.4.12;
2) EASY-RSA 3.0.8.

Читать далее

Мгновенные снепшоты postgres на tablespace и btrfs

Время на прочтение4 мин
Охват и читатели9.5K

Для работы бывает полезно иметь несколько копий одной реальной базы для экспериментов, фикстур или просто тестовых приложений. База растет и время копирования через разворачивание дампа или с помощью шаблона также возрастает до утомительных величин. Для решения этого кейса уже описаны варианты использования файловой системы с поддержкой CoW - Btrfs. В интернете находил  такие инструкции, они сводятся к тому, что делается снепшот всего сервера. И для работы второго "скопированного" нужно перегенерировать pid и сменить порт для предотвращения конфликтов. Этот способ довольно универсальный относительно конфигурации баз на сервере, но кажется имеет ограничение для неопределенного кол-ва параллельных снепшотов серверов.

В этой статье предлагаю свой вариант реализации снепшотов на одном экземпляре сервера postgres и одной базы, на произвольное кол-во копий.

Инструкция linux only, про поддержку CoW файловых систем на Windows не в курсе.

Читать далее

Как Linux заменит Windows в РФ

Время на прочтение5 мин
Охват и читатели79K

Нынешние реалии

С введением санкций возникли серьёзные трудности в развитии промышленности страны. Трудности возникшие в IT затрагивают самый широкий спектр технологий. Возьмём, казалось бы, самую простую сферу деятельности, ввод и обработку данных. В каждой больнице, в регистратуре, стоит ПК на котором запущена программа для первичного учёта пациентов. Операционист вводит необходимую информацию и даёт талон для посещения врача. На этом компьютере установлена ОС семейства Windows которую сейчас мы не можем сейчас купить. Другой случай. Программируемый логический контроллер который управляет, к примеру, котельной и запрограммированный в среде CodeSys работающей тоже под Windows. И таких примеров очень много.

Читать далее

Звук в DIY проектах

Время на прочтение4 мин
Охват и читатели6K

Если ваше хобби/DIY, как и моё, связано с компьютером, то на каком то этапе вам захочется использовать звук. Предлагаю поговорить о звуке и обменяться опытом. Конкретно говорить будем, про запись и воспроизведение звука на компьютере. Возьмем компьютер под управлением Linux, но и под Windows должно работать. Язык для программирования предпочитаю Python.

Читать далее если интересно

Пишем аудио-разведчик своими руками

Время на прочтение12 мин
Охват и читатели11K

Было бы здорово иногда иметь под рукой программку, которая в наше отсутствие умеет записывать звук со встроенного микрофона нашего ноутбука и передавать его по сети на другой наш комьютер. А тот, в свою очередь, этот звук умел бы воспроизводить в режиме реального времени. Давай попробуем самостоятельно написать такую программу, тем более что это, как оказывается, не так уж и сложно.

Что мы в итоге хотим получить и какой алгоритм работы реализовать:

1. Сервер, который запускается на той машине, пространство вокруг которой мы хотим прослушивать. Он тихо ждёт, пока к нему не подключится клиент. Затем он открывает устройство записи звука, настроенное по умолчанию в системе, и начинает передавать аудио поток на машину клиента. При отключении клиента от сервера, звуковое устройство закрывается, чтобы не тратить ресурсы зря.

2. Клиент, который подключается к серверу и начинает принимать аудио поток и воспроизводить его в режиме реального времени. Для того, чтобы клиент мог правильно (в нужном формате) открыть устройство воспроизведения звука, он получает нужную мета информацию от сервера в Hello сообщении.

Читать далее

Алиасы в bash для быстрого набора команд Git

Время на прочтение6 мин
Охват и читатели30K

Командный интерпретатор bash позволяет задавать произвольные алиасы для разных команд и выражений. Алиасы не являются командами сами по себе, но им, как и командам, можно передавать аргументы. Алиасы позволяют сделать вызов громоздких команд очень простым, с легко запоминающимися названиями.

Использовать Git я привык исключительно из консоли, но на ввод длинных команд с разными аргументами тратится значительное количество времени. Поэтому я ввёл практику использования алиасов. Для безопасных команд я использовал короткие алиасы, которые по сути стали горячими клавишами, а для функциональных — простые короткие слова из состава команд Git. Если команда опасная, то можно сделать её в два слова, написанных через дефис, для исключения случайного ввода. На самом деле, использование алиасов для работы с Git широко практикуется, я решил лишь преподнести отдельный вариант подборки алиасов, которые для меня оказались очень удобными.

Читать далее

DIY VSCode плагин для Clojure

Время на прочтение4 мин
Охват и читатели4.4K
image

На энном году работы с использованием Clojure/Clojurescript в качестве основных языков разработки, я наконец-то дошел до стадии, когда «больше терперть уже нельзя», и написал таки свой плагин для этой цели. Это явилось результатом многолетних поисков, лишений и страданий. Как говаривал Мичурин: мы не можем ждать милостей от природы, взять их у нее – наша задача. Интересующихся прошу под кат.

Читать дальше →

Прямое подключение крохотного OLED-дисплея по HDMI

Время на прочтение11 мин
Охват и читатели31K

Есть у меня склонность к реализации глупых и бессмысленных проектов. Перед вами один из них, который появился в результате беседы, закончившейся словами: «Слушай, а ведь технически возможно…», — не вопрос, давай сделаем.
Читать дальше →

Генерализованная изоляция адресного пространства

Время на прочтение10 мин
Охват и читатели2K

Обнаружение уязвимостей Meltdown и Spectre обратило всеобщее внимание на риски, связанные с совместным использованием общего адресного пространства. Даже не смотря на то, что есть специальные механизмы защиты, встроенные в железо, которые должны предотвращать доступ к конфиденциальным данным, очень часто эти уязвимости все равно удается использовать, чтобы эти данные вытащить. Поэтому вполне естественно, что первоначальные стратегии по снижению такого рода рисков включали в себя ограничение совместного использования адресных пространств, но это еще далеко не все, что здесь можно предпринять, и интерес к этой теме не угасает. И вот этот набор патчей, опубликованный Джунаидом Шахидом (Junaid Shahid) (содержащий работу Офира Вайса (Ofir Weisse) и вдохновленный более ранними патчами Александра Шартра (Alexandre Chartre)), как раз содержит то, что необходимо ядру для создания генерализованного механизма изоляции адресного пространства (address-space isolation — ASI).

Читать далее

Ближайшие события

Canonical прекращает работу по платным проектам и сервисам в России, пользователи Ubuntu никак блокироваться не будут

Время на прочтение1 мин
Охват и читатели29K


5 апреля 2022 года Canonical объявила о прекращении всех работ по платным проектам и сервисам в России. Компания не будет никаким образом ограничивать или блокировать российских пользователей Ubuntu.
Читать дальше →

Flutter for Desktop — новый подход к разработке приложений

Время на прочтение11 мин
Охват и читатели30K

Язык программирования Dart был изначально разработан как перспективная замена JavaScript в веб-приложениях (с поддержкой асинхронности, потоков, классической поддержки ООП и возможностью использования строгой типизации), но, к сожалению, в этом качестве он так и не достиг значительных успехов. Однако в дальнейшем компилятор Dart был доработан для других целевых платформ и наибольшего успеха достиг в сочетании с фреймворком Flutter как инструмент разработки высокопроизводительных мобильных приложений, создаваемых на основе реактивной модели. Но нужно отметить, что наряду с возможностями компиляции в целевые платформы Android и iOS (а также, разумеется, Web), Dart также может использоваться для создания приложений для операционных систем Windows, Linux и MacOS, что в сочетании с возможностями фреймворка Flutter и оптимизированных платформенных реализаций Flutter Engine и Embedder, представило новый путь к созданию нативных приложений с графическим интерфейсом. В этой статье мы рассмотрим возможности и особенности реализации desktop-приложений на Flutter и разберемся с механизмами интеграции внешних библиотек.

Читать далее

Релиз дистрибутива Deepin 20.5

Время на прочтение1 мин
Охват и читатели5.4K

Состоялся релиз дистрибутива Deepin 20.5, основанного на Debian 10. Также операционная система использует собственное окружение рабочего стола Deepin Desktop Environment и пакет пользовательских приложений, включающий в себя собственный медиаплеер, магазин приложений и почтовый клиент. В обновлении добавили авторизацию в системе с помощью технологии распознавания лица.

Читать далее

Пробрасывание LTO-1 стримера по iSCSI, проблемы и решения

Время на прочтение11 мин
Охват и читатели4K
imageПосле просмотра серии видеороликов «Данные на магнитной ленте» от Макс “Fagear” Крюков. Захотелось себе приобрести, что-нибудь из стримеров. Требование было чтобы оно ещё работало, стоило не как крыло самолета. И было вполне годно не только чтобы проиграться. Порывшись на барахолках, был найден стример HP LTO-1, со SCSI контроллером и кучей картриджей небольшой юзаности. Подключил к компу, погонял стандартной XPшной прогой для бэкапов. Всё работает всё хорошо. Но выяснилась одна проблема, слоты PCI на материнке расположены так, что две PCI карты туда нормально не воткнуть. А убирать X-Fi не хотелось, к тому же SCSI контроллер греется, и желательно бы его охлаждать, а это лишний шум который не нужен. Было принято решение поставить стример в другой комп(благо ненужных комплектующих хватает). Поставить Linux, и пробросить стример по iSCSI. А уже включать по мере необходимости, или вообще держать там, где шума не слышно. Опыт работы с iSCSI был, всё должно было заработать без сучка и без задоринки.
Ага щас...

Книга «Linux. Книга рецептов. 2-е изд.»

Время на прочтение9 мин
Охват и читатели25K
image Привет, Хаброжители! Книга рецептов обучит начинающих пользователей и администраторов Linux управлять системой, используя как графические инструменты, так и командную строку. Независимо от того, используете ли вы Linux во встроенных или настольных системах, серверах, облачных или виртуальных средах, фундаментальные приемы одни. Цель книги — помочь вам быстро приступить к работе на простых и наглядных примерах. Карла Шредер приводит рецепты с объяснениями для конкретных ситуаций, а также ссылки для дополнительного изучения.

Карла Шрёдер (Carla Schroder) впервые села за компьютер в середине 1990-х годов. За годы, прошедшие с той поры, она работала системным и сетевым администратором в смешанных сетях Linux/Microsoft/Apple, журналистом и техническим писателем. Карла написала более 1000 руководств по Linux для различных изданий и в настоящее время пишет и поддерживает руководства для компании, производящей программное обеспечение для Linux корпоративного уровня. Она является автором книг Linux Cookbook (O’Reilly), Linux Networking Cookbook (O’Reilly) и The Book of Audacity (No Starch Press).
Читать дальше →

Запуск графических приложений в Docker

Время на прочтение6 мин
Охват и читатели20K

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

Читать далее

Вышла новая версия Wine 7.5

Время на прочтение1 мин
Охват и читатели9.8K

Вышла новая версия открытой реализации программного интерфейса Windows Win32 API для ОС Linux Wine 7.5. В нее внесли 360 изменений и исправили 28 ошибок. 

Читать далее