Сказ о том, как я с астрой боролась и ее локалями!
Мои жалкие попытки структурировать свои усердные пробы справиться с Астрой. Я ее люблю всей душой, честное слово, но любовь эта мне нравится иногда исключительно на расстоянии.
Хаб про UNIX-подобные операционные системы
Сказ о том, как я с астрой боролась и ее локалями!
Мои жалкие попытки структурировать свои усердные пробы справиться с Астрой. Я ее люблю всей душой, честное слово, но любовь эта мне нравится иногда исключительно на расстоянии.
Продолжаю разбирать эпические работы «International Obfuscated C Code Contest», в этот раз рассказ пойдет о победителе 2018 года.
Привет, Хабр! Недавно я сел смотреть «марафон лекций», а через пару часов понял: я понятия не имею, сколько ещё впереди. Час? Десять? А может, это вообще сериал длиной в жизнь? Вот так родился mdur
— утилита, которая считает, сколько часов, минут и секунд тебе предстоит потратить на медиафайлов (видео и аудио) в любой папке. Без преувеличений, без подсчетов вручную...
Сегодня я поделюсь своим опытом настройки NeoVim для разработки. Если вы уже немного знакомы с этим редактором и хотите сделать свою работу в нём эффективнее — эта статья для вас.
Может ли ядро Linux при всей своей гибкости обеспечивать гарантированное время отклика при работе с приложениями?
Ядро Linux является универсальным и приспособлено к работе как с крошечными встраиваемыми устройствами, так и с титаническими серверами… а также со всем спектром машин между этими крайностями! Но может ли такое поразительно адаптивное ядро обеспечить гарантированную скорость отклика для приложения, работающего на всех этих платформах? Если в вашем приложении допустимая задержка при отклике укладывается в 200 микросекунд — то уверенно отвечаем на этот вопрос «да»! (Кстати, для Linux такая планка совсем не высока, но, чтобы её держать, потребуется тщательно подбирать аппаратное обеспечение и, возможно, обратиться за консультацией к специалисту по системам Linux, работающим в режиме реального времени).
Итак, почему же в приложении, работающем под Linux, иногда могут возникать задержки свыше 200 микросекунд? Универсальность ядра Linux требует сбалансировать пропускную способность, время отклика и честность распределения процессорной мощности, чтобы соответствовать требованиям такой универсальности. Если по одному из этих аспектов предъявляются жёсткие требования, то необходимо тонко настраивать как само ядро, так и поведение приложения. В этом посте рассмотрим 10 основных пунктов, которые необходимо учитывать при разработке системы Linux, к которой предъявляются строгие требования по работе в режиме реального времени. По каждому пункту также упомяну, в каком аспекте легко засыпаться разработчику-новичку, только приступающему к программированию систем реального времени под Linux.
Пожалуй, все мы с вами любим диковинные гаджеты из 2000-х годов, когда производители всё ещё пытались удивить пользователя некой изюминкой. Таким необычным устройством был и предок современных планшетов — MID SmartQ V7, где за цену в 150$, производитель предлагал неплохое железо, приятный дисплей и целых три предустановленных операционных системы!
Что было «под капотом» у первых планшетов и что умел «дедушка» современного iPad с Android, Ubuntu и Windows CE «на борту» — читайте в сегодняшней подробной статье!
Когда я был еще джуном, старшие разработчики настоятельно советовали мне перейти на zsh. Я помню, что я так и не получил никакой аргументации, чем zsh лучше привычного bash, и какую конкретно пользу я получу от перехода.
Что ж, в этой статье я хочу ответить на эти вопросы тем, кто еще только задается этим вопросом, с небольшим уклоном к PHP разработке
Zsh это командная оболочка, то есть программа, которая получает от пользователя команду в текстовом виде и выполняет соответствующие исполняемые файлы, найденные по путям, указанным в переменной окружения PATH
.
Zsh является дефолтной оболочкой для macOS, на linux дефолт - bash. Zsh лучше, чем bash в основном благодаря своей очень обширной системе плагинов, модулей, различных тем и т. д.
Например, установив вот такой плагин.
Сегодня компьютером на x86-совместимом процессоре едва ли можно кого-то удивить с гиковской точки зрения. Другое дело — обучающий ноутбук для детей, который работает на интересном и необычном ARM-процессоре от небезызвестной компании VIA. И хотя для запуска произвольных программ его необязательно было хакать — всем гикам известно, надо было ставить Linux!
К чему приводит давняя детская мечта об обучающем ноутбуке, что скрывается внутри устройства за 500 рублей и как на всё это накатить Linux с дуалбутом в родную систему — читайте в сегодняшней подробной статье!
Часто при передаче продукта заказчику, в виде готовой программы или некоторого аппаратного продукта, необходимо также защитить интеллектуальную собственность в виде исходных текстов программ и скриптов.
Компилируемые языки хоть как-то защищаются, соответственно, с помощью компиляции, хотя и это не панацея. А вот что делать со скриптами, которые могут быть написаны на bash или pyton?
Как вариант решения такой проблемы, может быть, шифрование скриптов с аппаратной привязкой дешифратора к платформе, на которой этот скрипт исполняется. Звучит красиво, но надёжно ли? Насколько будет эффективен и взломостойкий этот метод?
У меня в одном проекте была проба пере такого решения. Заодно проверил, и вскрыл это шифрование.
Продолжаю рассказывать широкой аудитории о «гусарских забавах» компьютерной элиты — третий по счету Binary Golf Grand Prix.
На одном из проектов, в которых мы участвовали, отсутствовал корпоративный мессенджер. Поэтому было принято решение, что нужно получать уведомления о создании бэкапов GitLab в Telegram.
Что нужно для этого предпринять?
В первую очередь займемся ботом с минимальными возможностями. Для этого находим специальный бот BotFather, через который и будет происходить все управление, и нажимаем на кнопку “start” и видим следующее:
I can help you create and manage Telegram bots. If you're new to the Bot API, please see the manual.
You can control me by sending these commands:
/newbot - create a new bot
/mybots - edit your bots
Edit Bots
/setname - change a bot's name
/setdescription - change bot description
/setabouttext - change bot about info
/setuserpic - change bot profile photo
/setcommands - change the list of commands
/deletebot - delete a bot
Bot Settings
/token - generate authorization token
/revoke - revoke bot access token
/setinline - toggle inline mode
/setinlinegeo - toggle inline location requests
/setinlinefeedback - change inline feedback settings
/setjoingroups - can your bot be added to groups?
/setprivacy - toggle privacy mode in groups
Web Apps
/myapps - edit your web apps
/newapp - create a new web app
/listapps - get a list of your web apps
/editapp - edit a web app
/deleteapp - delete an existing web app
Games
/mygames - edit your games
/newgame - create a new game
/listgames - get a list of your games
/editgame - edit a game
/deletegame - delete an existing game
Для создания бота выбираем опцию /newbot - create a new bot
, указываем имя и username, который должен заканчиваться на bot.
Suricata — это мощный движок IDS/IPS и сетевого мониторинга с открытым исходным кодом. Он может анализировать сетевой трафик в режиме реального времени и генерирует структурированные события в формате eve.json.
Однако при работе с большим потоком событий становится ясно: просто фиксировать отдельные аномалии недостаточно.
Аналитикам нужно видеть взаимосвязи, агрегированные отклонения и комплексное поведение сети.
Приветствую всех, кто заглянул на огонек! Меня зовут Роман, и я занимаюсь исследованием безопасности Linux (и всякого другого, связанного с ним) в экспертном центре безопасности в Positive Technologies.
Мне периодически приходится сталкиваться с вопросами клиентов или коллег из смежных отделов по поводу оптимизации работы различных компонентов журналирования внутри Linux. Поэтому в какой-то момент возникла идея обрисовать как минимум для самого себя целостную картину их взаимодействия и влияния друг на друга. Результатом работы стала довольно компактная схема, которая помогает оперативнее и эффективнее отвечать на возникающие вопросы для решения проблем. В статье я постараюсь вкратце описать каждый ее блок. Не ручаюсь за то, что будут затронуты все тонкости, известные лишь узкому кругу специалистов. Но на большую часть вопросов я отвечу.
Иногда нужно запустить nvim
на старом сервере. Но тут сразу куча проблем: одно не поставить, другое не собрать, а если что-то обновить — можно развалить весь проект.
Этот подход удобен и для новых систем. Docker позволяет поднять nvim
с последним Python, nvim-treesitter
и своим конфигом прямо в контейнере, не засоряя основную ОС.
При этом можно редактировать локальные файлы на сервере так, как будто nvim
установлен на самой системе. В статье показано, как всё это запустить на CentOS 7.
А если заработало там — значит, на любом современном Linux тем более проблем не будет.
Много JavaScript‑фреймворков назад, в 2009 году, Джеффри Дин, будучи инженером в Google, представил знаменитые «числа, которые должен знать каждый программист».
Иногда удобно при отладке файловых систем в пространстве пользователя (fuse) создавать файловые системы в регулярном файле и монтировать их как обычные файловые системы, расположенные на блочных устройствах. Также данный подход бывает полезным и при редактирования образов разделов диска, полученных с помощью утилиты dd
.
Запуск OS X на QEMU — задача не из простых.
Всё дело в том, что Apple использует собственную прошивку (Apple EFI) и дополнительные драйвера, без которых система работать не хочет.
Однако этот гайд проведет вас через тернии ядра прямо к звездам OS X!
Вспомним основную идею ZT по защите админок - в админку можно попасть только предоставив сертификат, который лежит в защищенном хранилище на устройстве. Это означает, что поверхность атаки сильно снижается и составляет а) конечные устройства б) межмашинные взаимодействия (когда один сервис стучится в апи другого сервиса).
Получается, для того, чтобы злоумышленнику получить доступ к данным админки, проще всего взломать ноутбук сотрудника. Наша задача наоборот - это предотвратить.
Много лет был адептом GUI
и вот уже ворочу нос от этой смердятины. Всё постоянно давит, всё не нравится. Если открываю VS Code
или QtCreator
- 10 минут вспоминаю как этом пользоваться. Хочу поделиться с тобой своей историей...
Показываю на конкретном примере как выглядит идеальный «вкат в ИТ» — с почетом и уважением от старших коллег и карьерой, сразу же улетающей ракетой в космос.