Обновить
256K+

Linux *

Пишем под *nix

346,07
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Колдовской NeoVIM. Часть третья. «Режимы сна, отдыха и Nvim’a»

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

Режим в жизни нужен для того, чтобы не растолстеть к тридцати годам и высыпаться.

Режимы в Nvim нужны для того, чтобы сломать жизнь неподготовленным чародеям, а выспаться вы сможете только тогда, когда полностью прочитаете всю документацию, сможете выйти из Nvim и, просветленный, навсегда отключите компьютер…

Читать далее

Колдовской NeoVIM. Часть вторая. “Конфиг Всевластья”

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

Никто не любит конфиги (я уж точно). Они скучные и нединамичные.

Но со своим конфигом Nvim’а я ношусь, как Голлум с кольцом Всевластья. Моя прелесссссть. Я боюсь потерять свой конфиг, боюсь, что с ним что-то случится. Другие хотят забрать тебя, моя прелессссть. Саша тебя им не отдаст, нет-нет...

Если кто-то отнимет мой конфиг - я буду гнаться за ним до Роковой Горы и даже прыгну в жерло вулкана.

В этой статье я расскажу, как создать такой Конфиг Всевластья и как завоевать Гондор.

Читать далее

Сказ о M1 GPU

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

Привет всем, в эфире Асахи Лина!✨

marcan попросил меня написать статью о M1 GPU, и вот она готова ~! Это был долгий проект, растянувшийся на несколько месяцев, и было о чём поведать, так что, надеюсь, вам понравится!

Читать далее

Колдовской NeoVIM. Часть первая. «Neovim VS Ваша IDE, или долой мышей!»

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

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

Фишкой колдовского редактора является то, что вы общаетесь с ним не через аналоговое управление (двигаем мышкой, вводим текст), а через команды и макросы. Зачем заморачиваться и пользоваться текстовым редактором через код?

Потому что это чертовски быстро!

Читать далее

Сага о том, как я клеил ROS и Docker

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

Это в общем-то первая статья на хабре, пробная и экспериментальная. Цель статьи изложить процесс создания темплейта под разработку для ROS (Robot Operating System) внутри контейнера и сделать это в шутливой манере.

Дальше бога нет

Как самому за один вечер собрать минимальную ОС Linux из исходного кода

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели151K
image

В современном мире нас окружает огромное количество электронных устройств различной степени сложности. Если устройство более или менее сложное, например, телевизор, маршрутизатор, смартфон, то с большой долей вероятности оно работает под управлением операционной системы Linuх, и эта мысль не даёт мне покоя.

Ещё больше не даёт покоя мне тот факт, что все ядра операционной системы Linux, которые работают на различных устройствах и серверах, собраны из исходного кода, находящегося в репозитории на сайте kernel.org.

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

Мне всегда хотелось собрать операционную систему Linux самому из исходного кода, но процесс этот всегда казался сложным и запутанным, да и многого я не понимал. Но всё-таки в определённый момент времени я накопил достаточное количество знаний, чтобы осуществить свою мечту. В этой статье я хочу рассказать вам, как собрать минимальную Linux из исходного кода и запустить её у себя на компьютере.
Читать дальше →

Простыми словами об ARMBIAN

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

По сути это процесс сборки Linux с описанием некоторых проблем с которыми можно столкнуться при использовании ARMBIAN. Ну и самое главное, из-за чего это понадобилось, это возможность каскадного монтирования файловой системы. Правда используется не AUFS, а Overlay2 поскольку в последних версиях Linux Kernell он уже встроен и не придется накладывать патч.

Читать далее

Разбираемся с Docker: как создаются образы

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

От любого инструмента, который внедряем в проект, мы ждём стабильной работы. Docker не исключение. Чтобы иметь возможность оперативно выявлять потенциальные проблемы и избегать сбоев, необходимо понимать внутренние особенности технологии. Эта статья — сборник заметок, которые помогут разобраться, как создаются образы контейнеров. 

Читать далее

Возможности реализации 2ФА в ОС Linux

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

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

Почитаю дальше

Система автоматизации тестирования и доставки обновлений в РЕД ОС

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

Здравствуй Хабр, меня зовут Сергей, я работаю в компании РЕД СОФТ в отделе разработки операционной системы РЕД ОС. Сегодня расскажу про автоматизацию процессов тестирования дистрибутива РЕД ОС. Для автоматизации таких задач мы создали систему Tooster. О том, какие задачи она помогает нам решать и как упрощает жизнь тестировщику, читайте в статье. 

Для начала рассмотрим, какие этапы проходит дистрибутив перед тем, как попасть к пользователю.

Читать далее

Профайлер Бедного Человека: первое знакомство и (приятные) последствия

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


Если вам приходилось оптимизировать работу программ, то вы могли слышать о Профайлере Бедного Человека. Этой идее даже посвящён целый сайт. ПБЧ собирает статистику времени выполнения отдельных функций программы, «подглядывая» в процесс её исполнения с помощью дебаггера. Концепт ПБЧ хорошо прижился у нас в движке баннерной крутилки — не буду в 100 500-й раз напоминать, что у Яндекса всё высоконагруженное, ресурсоёмкое и нуждающееся в профилировании. Статья будет полезна тем, кто пилит инфраструктуру, адаптирует какой-нибудь общеизвестный профайлер под себя или просто хочет больше знать про свои программы. Как мы пришли к необходимости в ПБЧ и что именно сделали? Сейчас постараюсь рассказать, местами буду закапывать глубоко в технологии (если переусердствую, пишите в комментариях). А начну со стандартного инструмента статистического профилирования в Linux — perf.
Читать дальше →

Автономный LTE роутер своими руками | Часть 3 – Uboot & OpenWRT

Уровень сложностиСредний
Время на прочтение16 мин
Охват и читатели27K

Привет Хабр! Эта статья посвящена программной части собственного роутера, сегодня будем: допиливать OpenSource, терять месяц жизни впустую, разбираться с модемом, раскрывать секреты OpenWRT’варения для нового устройства и трогать I2C устройства за их регистры.

Готовьте свои напильники и ныряем под кат

Разворачиваем сеть на RHEL8-based хостах

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

Развертывание ИТ-инфраструктуры с нуля — задача интересная и трудозатратная. Особенно, когда речь не о постепенном развитии (как это часто случается при поступательно-линейном росте бизнеса и, соответственно, его потребностей), а о куда более сжатых сроках, например, при открытии филиала или обособленного подразделения (другой вариант — необходимость в короткие сроки развернуть инфраструктуру для тестирования), где важную роль играет организация сети.

Конечно, первоначальная установка и настройка — это всегда полевая работа: монтаж СКС, сетевого оборудования и серверов; конфигурирование DHCP и организация удалённого доступа; иногда — заведение VLAN-ов.

Читать далее

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

Как настроить python в Linux под свой проект?

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

Привет, Хабр! Меня зовут Дмитрий Алексеев, я Data Scientist и являюсь участником профессионального сообщества NTA. Сегодня расскажу как использовать python и Linux «в связке», и как это поможет облегчить вам жизнь.

Читать далее

6 устаревших команд Linux и инструменты, которые пришли им на замену

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

В разработке программного обеспечения все меняется с невероятной скоростью — в том числе инструменты, которые мы используем. Это происходит в результате совершенствования аппаратной части, инфраструктурных сред. Иногда старые инструменты плохо адаптируются к реалиям, поэтому они в конечном итоге исчезают, и на замену им приходят новые утилиты.

"Все новое — лучше, чем старое" — девиз, который не всегда применим для утилит в Linux. Но все же исключения есть.

В статье под катом разработчик Хосе Висенте Нуньес* рассказывает о нескольких устаревших инструментах, которые вы, возможно, все еще используете. А также о том, чем их можно заменить. Автор объясняет, почему вам следует переключиться на эти улучшенные альтернативы, которые обеспечивают ту же — а в некоторых случаях даже большую — функциональность. Список составлен в произвольном порядке.

*Обращаем ваше внимание, что позиция автора может не всегда совпадать с мнением МойОфис.

Читать далее

Сломать контроль ресурсов в контрольных группах Linux. Часть 2

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

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

Читать далее

Простой mp3-плеер с графическим интерфейсом на Go

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

Мы продолжаем рассматривать разные платформенные применения Go (ранее мы посмотрели как использовать Go для микроконтроллеров, веб-приложений, разработки API, создания мобильных приложений) и сегодня поговорим об использовании Go для создания приложений для настольных компьютеров на примере реализации несложного mp3-плеера с поддержкой графического интерфейса. Мы будем использовать связывание с GTK для реализации интерфейса, библиотеки декодирования mp3 и взаимодействия с аудиосистемой (для Windows, Linux и MacOS).

Читать далее

Перевод RabbitMQ «Hello World» для Golang

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

Это перевод официальной документации RabbitMQ.

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

Читать далее

Linux-порт Far Manager: что нового за 2022й?

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

Примерно раз в год я пишу длинный статус апдейт по проекту far2l — порту Far Manager под Linux, MacOS и BSD. Пожалуй, накопилось достаточно изменений для очередного выпуска.

Поддержка Unicode: составные символы и символы двойного размера

Оригинальный Far Manager для консоли Windows писался в парадигме «одна экранная ячейка — один символ». И даже когда Far переводили с однобайтных кодировок на Unicode (внутри у современного Far все строки в UTF16, в Linux версии — в UTF32), от этой парадигмы не отходили.

Однако Unicode устроен сложнее. Во-первых, существуют иероглифы, которые в одно знакоместо латинского символа помещаться категорически не желают. Для них придумали концепцию Full-Width знаков, которые в моноширинных шрифтах занимают не одно знакоместо, а два, логически являясь при этом одним символом. Во-вторых, существуют диакритические символы (это могут быть знаки ударения или, например, точки над ё), которые в Unicode кодируются отдельным символом, а отображаются над (или под) предыдущим.

В результате имена файлов, содержащие иероглифы или диакритику (или эмодзи, они тоже двойного размера) приводили к ошибкам рендеринга интерфейса.

Читать далее

Сломать контроль ресурсов в контрольных группах Linux. Часть 1

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

Контрольные группы или cgroups — основные строительные блоки, обеспечивающие контейнеризацию на уровне операционной системы. Подобно процессам они организованы иерархически, и дочерние группы наследуют атрибуты родительских. В этой статье мы покажем, что наследование контрольных групп не всегда гарантирует последовательный и справедливый учёт ресурсов. Опишем стратегии, позволяющие избежать контроля использования ресурсов, и разберём основные причины, почему контрольные группы не могут отслеживать потребляемые ресурсы. Дополнительно исследуем сценарии, как вредоносные контейнеры могут потреблять больше ресурсов, чем разрешено. 

Читать далее