Рубрика «linux» - 183

Столкнулся с проблемой прошивки на своем роутере. Никак не хотел работать стабильно. В итоге, перепробовав кучу разных прошивок, остановился на OpenWRT. Для желающих установить ее следуем сюда.

Итак, я отвлёкся. Мой провайдер предоставляет доступ к IPTV, поэтому изредка за работой я включаю себе что-нибудь из телепередач. Перейдя на данную прошивку заметил, что стандартной настройки UDP-HTTP в ней нет. Поэтому начал рыть рунет на предмет чего-нибудь, что поможет мне в данной ситуации. В результате набрел на статью Silver_Clash «Настройка IPTV в OpenWRT», однако по описанному методу у меня сделать ничего не получилось. Провозившись до 5 утра и найдя в комментариях заветные строки, я его запустил. Теперь хочу поделиться инструкцией с читателями.

Первым делом заходим на ваш роутер по ssh под root пользователем. Все настройки будем производить из консоли.
Читать полностью »

Этим материалом мы открываем цикл статей, посвященных технологии Shared DAS и ее использованию в ОС GNULinux.

В первой статье цикла описывается создание простейшего двух-узлового кластера высокой надежности и создание на его базе отказоустойчивой iSCSI-СХД с ZFS.

Настройка Linux кластера на Shared DAS и ZFS - 1
Читать полностью »

image
Среди разработчиков и обывателей бытует распространенное мнение, что сокращение количества запросов к жесткому диску и выполнение максимального количества операций в памяти ведет к ускорению работы ПО. Распространение такого явления как Big Data, сделало одним из наиболее популярных методов экономии времени для программистов выполнение операций исключительно в оперативной памяти. Однако, новые исследования оспаривают общепринятое мнение о том, что любые операции выполняются быстрее в оперативной памяти, чем при наличии обращений к жесткому диску во время работы.
Читать полностью »

Ранее я писал о двух известных сканерах безопасности общего плана rkhunter и CentOS
На “Хабре” так же есть описание организации работы сканера для вебхостинга — maldet. Теперь хотелось бы рассмотреть реализацию приложения для эвристического обнаружения уязвимостей, вирусов и ботнетов для ОС Linux — Antidoto.

Установка, настройка и использование сканера безопасности Antidoto - 1
Читать полностью »

Привздохнув, произнесла:
«Как же долго я спала!»

image Когда-то, впервые встретив Unix, я был очарован логической стройностью и завершенностью системы. Несколько лет после этого я яростно изучал устройство ядра и системные вызовы, читая все что удавалось достать. Понемногу мое увлечение сошло на нет, нашлись более насущные дела и вот, начиная с какого-то времени, я стал обнаруживать то одну то другую фичу про которые я раньше не знал. Процесс естественный, однако слишком часто такие казусы обьединяет одно — отсутствие авторитетного источника документации. Часто ответ находится в виде третьего сверху комментария на stackoverflow, часто приходится сводить вместе два-три источника чтобы получить ответ на именно тот вопрос который задавал. Я хочу привести здесь небольшую коллекцию таких плохо документированных особенностей. Ни одна из них не нова, некоторые даже очень не новы, но на каждую я убил в свое время несколько часов и часто до сих пор не знаю систематического описания.

Все примеры относятся к Linux, хотя многие из них справедливы для других *nix систем, я просто взял за основу самую активно развивающуюся ОС, к тому же ту, которая у меня перед глазами и где я могу быстро проверить предлагаемый код.

Обратите внимание, в заголовке я написал «плохо документированные» а не «малоизвестные», поэтому тех кто в курсе прошу выкладывать в комментариях ссылки на членораздельную документацию, я с удовольствием добавлю в конце список.
Читать полностью »

Мне нравится язык D. Давно слежу за его развитием. Для D есть несколько GUI библиотек и биндингов, но я решил изобрести свой велосипед.
Хочу рассказать о своём проекте DlangUI. Надеюсь, что он кому-нибудь будет полезен.

DlangUI — кросплатформенный GUI для D (Часть 1) - 1

На КДПВ скриншот DlangIDE — приложения, написанного на DlangUI.

Особенности:

  • Кроссплатформенность — поддерживаются Windows, Linux, Mac OSX; легкость портирования на другие платформы
  • Написан на D — легкорасширяемый
  • Использование Layouts для позиционирования элементов интерфейса
  • Масштабирование шрифтов и иконок в приложении в зависимости от разрешения экрана
  • Поддержка Unicode
  • Интернационализация — поддержка перевода UI на несколько языков
  • Аппаратное ускорение с помощью OpenGL (опционально)
  • Возможность отрисовки виджетов поверх OpenGL сцены (например, для UI в игре)
  • Небольшой размер исполняемого файла
  • Внешний вид интерфейса настраивается с помощью тем (две стандартные темы — светлая и темная)
  • Встраивание ресурсов в исполняемый файл
  • Открытый исходный код, под лицензией Boost License 1.0

Читать полностью »

В продолжение цикла статей об «Идеальном» кластере хочу поделиться моим опытом развертывания и настройки Multi-Master кластеров MySQL.

«Идеальный» кластер. Часть 3.1 Внедрение MySQL Multi-Master кластера - 1
Читать полностью »

Игра для изучения Vim - 1

Vim Adventures — самый простой способ освоить редактор Vim. Игра создана довольно давно, но от этого не теряет своей актуальности.
Читать полностью »

Стрелочные часы на CMake - 1

Когда я устроился на новую работу, пришлось в ускоренном темпе осваивать новые для меня технологии, которые используются в данной компании. Одной из таких технологий стала система сборки cmake, с которой мне раньше не приходилось сталкиваться.

Эта система имеет свой встроенный язык для написания сборочных скриптов. Этот самый язык меня и заинтересовал. Вскоре я выяснил, что в нем есть возможность вычисления математических выражений, запись и чтение из файлов, запуск внешних процессов и другие интересные возможности, что навело меня на мысль воспользоваться этим языком в качестве основного ЯП и написать на нем что-нибудь осязаемое. Речь пойдет о том, как я писал стрелочные часы на языке cmake 2.8.
Читать полностью »

Предыстория

Так сложилось, что уже пять лет мой раздел ntfs с операционной системой Windows располагается на рамдиске. Решено это не аппаратным, а чисто программным способом, доступным на любом ПК с достаточным количеством оперативной памяти: рамдиск создается средствами загрузчика grub4dos, а Windows распознаёт его при помощи драйвера firadisk.

Однако до недавнего времени мне не был известен способ, как реализовать подобное для Linux. Нет, безусловно, существует огромное количество линуксовых LiveCD, загружающихся в память при помощи опций ядра toram, copy2ram и т. д., однако это не совсем то. Во-первых, это сжатые файловые системы, обычно squashfs, поэтому любое чтение с них сопровождается накладными расходами на распаковку, что вредит производительности. Во-вторых, это достаточно сложная каскадная система монтирования (так как squashfs — рид-онли система, а для функционирования ОС нужна запись), а мне хотелось по возможности простого способа, которым можно «вот так взять и превратить» любой установленный на жесткий диск Linux в загружаемый целиком в RAM.

Ниже я опишу такой способ, который был с успехом опробован. Для опытов был взят самый заслуженный дистрибутив Linux — Debian.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js