Рубрика «Блог компании RUVDS.com» - 105

Одним из лучших качеств Linux и похожих на неё операционных систем является возможность их глубокой настройки. Если вам что-то не нравится — высоки шансы того, что вы легко сможете это изменить, подправив какой-нибудь файл. Например, рассмотрим bash — командную оболочку, по любым меркам, весьма популярную. Если вам нужно поменять приглашение командной строки — это вполне осуществимо. Если нужно, чтобы клавиша Tab позволяла бы автоматически дополнять имена файлов без учёта регистра — это тоже не проблема. Обычно подобные настройки выполняются в одном из так называемых «файлов профиля», вроде .bashrc, находящихся в домашней директории пользователя.

Кунг-фу стиля Linux: синхронизация настроек - 1

Если некто работает за единственным компьютером, то никаких проблем с настройками у него не возникает. Он вносит в файл .bashrc, и в другие подобные файлы, необходимые изменения, настраивает систему под себя, и работает в той среде, которая ведёт себя так, как ему того хочется. Проблемы появляются тогда, когда кому-то приходится пользоваться несколькими компьютерами. Возможно, речь идёт о веб-сервере, о настольном компьютере, о машине, играющей роль файрвола, и о нескольких десятках Raspberry Pi. Как настроить все эти системы одинаково? И как, после того, как они все одинаково настроены, поддерживать настройки в актуальном состоянии?
Читать полностью »

Однажды на Instructables я увидел проект, который лёг в основу моей идеи, о реализации которой я хочу сегодня рассказать. Автор этого проекта, пользователь с ником Ananords, создал проигрыватель с RFID-управлением, рассчитанный на детей и на людей, которые по каким-то причинам не могут пользоваться обычными MP3-плеерами. Тот проект назывался Juuke. Ananords создал его для бабушки своей возлюбленной. Это — устройство, которое отлично подойдёт людям с синдромом Альцгеймера или с деменцией. Эта особенность проекта меня зацепила, так как нечто подобное случилось с моей бабушкой, болезнь забрала её у нас, и я знал о том, что проигрыватель, о котором пойдёт речь, ей бы понравился.

Олдскульный кассетный магнитофон и новые «кассеты» - 1

Всё работает следующим образом: имеется проигрыватель с двумя кнопками. Одна позволяет включить музыку или поставить воспроизведение на паузу, а вторая позволяет перемешать композиции. Кроме того, можно выбрать RFID-карту и поднести её к читающему устройству, что позволяет включить конкретную композицию. Это, по своей сути, воспроизводит процесс прослушивания музыки в давние времена, когда для включения нужной записи надо было вставлять в проигрыватель обычный CD или обычную кассету. Но тут старый подход дополнен новыми технологиями, что позволяет облегчить прослушивание музыки людьми с определёнными ограничениями.
Читать полностью »

Страх и ужас SS7 - 1

В одной из недавних статей нашего блога: “Безопасные телефоны, градация прослушек, и методы защиты”, было обсуждение общих принципов атак на сотовые телефоны. Теперь поговорим одном из конкретных векторов, а именно — взломе на основе уязвимости в протоколе: SS7. Так ли страшен черт, как его малюют?Читать полностью »

Операционная система OpenWrt обычно используется как прошивка для роутеров. Типичное применение заключается в том, чтобы установить и забыть. Но если вдруг вам чего-то не хватит, то придётся разбираться в устройстве дистрибутива.

Устройство пакетной системы OpenWrt - 1

OpenWrt использует opkg в качестве пакетного менеджера, точнее, собственный форк. Дебианщикам он во многом покажется знакомым: похожие команды, похожий формат репозитория и пакетов.

Мне захотелось запатчить LUCI (этого в статье не будет), но адекватного быстрого введения я не нашёл, пришлось самостоятельно собирать отрывки сведений из разрозненной документации, статей и примеров, поглядывая в код и на результаты работы. Бонусом собрал примитивный (но бесполезный на практике) пакет, которого ещё нет в репозитории. Собранным ликбезом делюсь ниже.Читать полностью »

Новая игра: сможете понять, что девушка врет? А если она на детекторе лжи? - 1

Сегодня мы подключили датчики полиграфа к шести девушкам, обучающимся в театральном вузе. Их задача — говорить неправду в некоторых ситуациях. Ваша задача — задавать вопросы и смотреть на телеметрию датчиков. А потом принимать решение, врёт испытуемая или нет.

Вы будете видеть саму девушку в режиме реального времени и все ее показатели: дыхание, сердцебиение, проводимость кожи, давление и потоотделение.

Новая игра: сможете понять, что девушка врет? А если она на детекторе лжи? - 2

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

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

Начнём с того, что ваш основной датчик — КГР, кожно-гальваническая реакция. Без всего остального можно обойтись, но именно КГР будет давать вам больше всего информации. Измерение сопротивления кожи регистрируется очень быстро, и стрессовая либо гиперстрессовая реакция на КГР видна ещё при задавании вопроса. Остальные датчики нужны в первую очередь для контроля, что испытуемый не пробует обмануть полиграф. Читать полностью »

Nextcloud: отказоустойчивый деплой для средних компаний - 1

Есть очень крутой комбайн для совместного ведения проектов, LDAP-авторизацией, синхронизацией файлов с версионированием и чем-то вроде корпоративного мессенджера с видеоконференциями, которые прикрутили в последних версиях. Да, я про Nextcloud. С одной стороны, я сторонник Unix-way и четкого дробления приложений по отдельным функциям. С другой — этот продукт более чем устойчив, работает много лет в нескольких проектах без особых проблем и дополнительные свистелки особо не мешают ему работать. Если очень хочется, то туда можно прикрутить практически любую дичь. Коммьюнити живое и вполне допиливает различные плагины, которые доступны как отдельные приложения.

Сегодня мы будем его разворачивать. Я не буду давать полной пошаговой инструкции, но постараюсь упомянуть про ключевые моменты архитектуры, на которые стоит обратить внимание. В частности, разберем балансировку нагрузки, репликацию БД и регламентное обслуживание без прерывания сервиса.
Деплоить будем в отказоустойчивом варианте для небольшой компании в 150-1000 пользователей, но для домашних пользователей тоже пригодится.Читать полностью »

Со временем Linux (точнее — операционная система, которую обычно называют «Linux», представляющая собой ядро Linux и GNU-инструменты) стала гораздо сложнее, чем Unix — ОС, стоящая у истоков Linux. Это, конечно, неизбежно. Но это означает, что тем, кто пользуется Linux уже давно, нужно было постепенно расширять свои знания и навыки, осваивая новые возможности. А вот на тех, кто начинает работу в Linux в наши дни, сваливается необходимость освоить систему, так сказать, за один присест. Эту ситуацию хорошо иллюстрирует пример того, как в Linux обычно осуществляется сборка программ. Практически во всех проектах используется make — утилита, которая, запуская процессы компиляции кода, пытается делать только то, что нужно. Это было особенно важно в те времена, когда компьютеру с процессором, работающим на частоте в 100 МГц, и с медленным жёстким диском, нужно было потратить целый день на то, чтобы собрать какой-нибудь серьёзный проект. Программа make, судя по всему, устроена очень просто. Но сегодня у того, кто почитает типичный файл Makefile, может закружиться голова. А во многих проектах используются дополнительные абстракции, которые ещё сильнее всё запутывают.

Кунг-фу стиля Linux: великая сила make - 1

В этом материале я хочу продемонстрировать вам то, насколько простым может быть файл Makefile. Если вы способны создать простой Makefile, это значит, что вы сможете найти гораздо больше способов применения утилиты make, чем может показаться на первый взгляд. Примеры, которые я будут тут показывать, основаны на языке C, но дело тут не в самом языке, а в его распространённости и широкой известности. С помощью make можно, средствами командной строки Linux, собрать практически всё что угодно.
Читать полностью »

Существует множество руководств, в которых рассматриваются общие вопросы работы с CSS Grid, с механизмом, позволяющим создавать сеточные макеты. Я и сам немало об этом писал. Но я обратил внимание на то, что у многих разработчиков возникают сложности с использованием CSS-функции minmax(). Пожалуй, дело тут в том, что большинство существующих публикаций на эту тему либо не вдаются в детали, либо не включают в себя достаточного количества пояснений и примеров из реального мира. А minmax() — это очень мощная и полезная функция. Именно по этой причине я и решил написать данную статью. Это — нечто вроде «полного руководства по minmax()», задача которого — дать читателям то, чего не дают им другие публикации на эту тему.

Подробности об использовании CSS-функции minmax() в Grid-макетах - 1

Здесь мы в подробностях обсудим возможности функции minmax() в применении к сеточным макетам, поговорим о том, как, когда и почему ей стоит пользоваться. Тот, кто проработает эту статью, сможет полноценно и со знанием дела применять эту функцию в своих проектах.
Читать полностью »

Реставрация легендарной 37-летней IBM Model F - 1

Мне захотелось поделиться своим опытом возвращения механической клавиатуре IBM Model F XT 1983 года ее былого шика. Я от и до расскажу вам весь процесс, включая описание шагов, ошибок и дополнительного оборудования, которое мне потребовалось для подключения этого раритета к современному ПК. Данная статья посвящается моему отцу, который познакомил меня с миром компьютеров.
Читать полностью »

Недавно на нашем ютуб-канале выступил Андрей Письменный, главный редактор Xakep.ru.

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

В этом выступлении он поделится с вами опытом и приемами, которые пригодятся в работе с текстом о технологиях.

Делимся записью эфира и расшифровкой.Читать полностью »


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