Обновить
390.5

Linux *

Пишем под *nix

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

Red Hat будет поглощен IBM

Время на прочтение2 мин
Количество просмотров69K
image
Фото offerov.net

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

Red Hat Software, американская компания, выпускающая решения на основе свободной операционной системы Linux и другие программные продукты и услуги на основе открытого исходного кода, потеряет самостоятельность. Тут сразу по масштабности, эпичности и значимости сделки вспоминается похожая история из 2009 года о том, как "Oracle проглотила Sun". Та сделка имела весьма удручающие последствия. Интересно, чем все обернется на этот раз?
hdfan2: Сказка про Красную Шапочку на новый лад.
Компания IBM объявила о достижении соглашения о покупке компании Red Hat. Из пресс-релиза можно сделать вывод, что IBM приобрела Red Hat как поставщика «облачных решений» на базе открытых технологий и включает его в состав своего подразделения по «гибридному облаку» как самостоятельное подразделение. Это будет крупнейшее приобретение в истории IBM, отмечает Reuters.

Согласно сообщению, стороны достигли окончательного соглашения, предусматривающего покупку IBM всех эмитированных акций Red Hat по цене $190 за штуку, представляющих общую стоимость предприятия приблизительно в $34 миллиарда. На торгах в пятницу, 26 октября, на NYSE последняя сделка с акциями Red Hat была заключена по цене $117, а рыночная капитализация компании составила $20,53 миллиарда. Таким образом IBM приобретает Red Hat по цене на 60-процентов выше рыночной оценки. Для справки, капитализация IBM на данный момент составляет около 113.9 миллиарда долларов.
Читать дальше →

Портирование COM на Linux

Время на прочтение4 мин
Количество просмотров19K
Мне нравится технология COM. Но речь пойдет не о технологии, восхвалении или недостатках COM, а опыте переноса и реализации на Linux. Велосипед? Целесообразность?
Читать дальше →

Кровавая Лола на Omega 2 или душим питона на Хэллоуин

Время на прочтение3 мин
Количество просмотров5.4K
Никогда не понимал этот праздник. Но идея родилась. Сделать жуткую куклу, которая будет сверкать глазками и жуткие звуки издавать.

imageПод это все подвернулась классная детская голова (спасибо Антон) и конкурс от Onion с розыгрышем специальных китов, купить которые мне таки не позволяет совесть. Раз так, то мозги девочке Лоле я сделал на Omega 2, использовав свои наработки из прошлой статьи.

Всем кому интересно, как такое дело повторить, прошу под кат.
Читать дальше →

Борьба за ресурсы, часть 4: Замечательно выходит

Время на прочтение5 мин
Количество просмотров6.6K
Разберемся с регуляторами подсистемы хранения данных и посмотрим, что они позволяют делать в смысле блочного ввода-вывода.



Особенно интересно здесь то, что мы вступаем на территорию, где изменения настроек, которые вносятся уже после запуска системы, гораздо менее важны, чем решения, которые принимаются еще до ее развертывания.
Читать дальше: Замечательно выходит

Чем заняться процессору, когда нечего делать?

Время на прочтение5 мин
Количество просмотров19K
Разумно было бы предполагать, что для ядра довольно легко будет ничего не делать – но это не так. На конференции Kernel Recipes 2018 Рафаэль Высоцкий рассказал о том, чем занимаются процессоры, когда им нечего делать, как это обрабатывает ядро, какие у текущей стратегии есть проблемы, и как его недавняя работа над циклом бездействия улучшила ситуацию с энергопотреблением систем, которые ничего не делают.

Цикл бездействия, одна из подсистем ядра, которую поддерживает Высоцкий, управляет тем, что делает CPU, когда ему не нужно исполнять никаких процессов. Высоцкий очень точно дал все определения: CPU – это такая сущность, которая может принимать инструкции из памяти и выполнять их одновременно с другими сущностями в той же системе, занимающимися тем же самым. На простейшей однопроцессорной системе с одним ядром этим ядром является CPU. Если у процессора несколько ядер, то каждое из этих ядер – CPU. Если у каждого из ядер есть несколько интерфейсов для одновременного исполнения инструкций – Intel называет такую систему "гиперпоточностью" – тогда каждый из этих потоков будет CPU.
Читать дальше →

Можно ли закрыть обратно открытый исходный код?

Время на прочтение5 мин
Количество просмотров20K


Эта концепция кажется довольно простой для любого человека, некоторое время работавшего с открытым исходным кодом: проект, однажды выпущенный в виде открытого кода, остаётся открытым навсегда. Конечно, разработчик может решить, что будущие версии проекта будут закрытыми, и иногда такое случалось, но то, что уже выпущено на свободу, отозвать обратно не получится. У интернета нет кнопки «удалить»; опубликовав свой код, и дав миллионам людей потенциальную возможность скачать его, загнать джина обратно в бутылку не получится.

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

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

Нейросеть для разработчиков C++

Время на прочтение7 мин
Количество просмотров51K
Всем привет.

Написал библиотеку для обучения нейронной сети. Кому интересно, прошу.
Читать дальше →

Code of Conduct: почему разработчики ядра Linux угрожали удалить свой код — разбираемся в конфликте

Время на прочтение4 мин
Количество просмотров62K
В сентябре совет директоров Linux Foundation принял новый кодекс поведения для разработчиков ядра Linux — Code of Conduct (CoC). По задумке авторов, он должен был решить проблемы, связанные с дискриминацией, и улучшить эмоциональную обстановку среди разработчиков.

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

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

Microsoft присоединяется к Open Invention Network и «раздает» лицензии на 60 000 своих патентов

Время на прочтение3 мин
Количество просмотров11K
image
Иллюстрация zdnet.com

Microsoft присоединяется к Open Invention Network, предоставляя в общий пул около 60 000 патентов. Новость об этом была опубликована 10 октября 2018 года в блоге корпорации-монополиста на рынке десктопных операционных систем.

Open Invention Network, OIN — это организация (и сообщество владельцев патентов вокруг нее), которая владеет патентами на программное обеспечение вселенной GNU/Linux. Целью OIN является защита Linux и других свободных программных продуктов от патентных исков. Участники сообщества передают патенты в общий пул, позволяя бесплатное использование этих патентов всем участникам на основе royalty-free лицензии.

OIN насчитывает около 2500 участников, среди которых можно выделить такие крупные компании как IBM, SUSE, Red Hat, Google, Novell, Philips, Sony. Примечательным фактом оказалось то, что с 2014 года одним из лицензиатов патентного пула OIN является ReactOS Foundation. В свете новых событий можно сделать вывод, что вероятность патентных претензий со стороны Microsoft к проекту ReactOS стала крайне мала.


Борьба за ресурсы, часть 3: Памяти мало не бывает

Время на прочтение3 мин
Количество просмотров12K
Продолжаем изучать Control Groups (Cgroups) в Red Hat Enterprise Linux 7. Займемся памятью. Вы помните, что для распределения процессорного времени есть две регулировки: CPUShares для настройки относительных долей и CPUQuota для того, чтобы ограничивать пользователя, службу или виртуальную машину (ВМ) в абсолютных величинах (процентах) процессорного времени. Причем, обе эти регулировки можно использовать одновременно. Например, если для пользователя задана CPU-квота в 50 %, то его CPU-шара тоже будет приниматься во внимание до тех пор, пока он полностью не выберет свою квоту в 50 % процессорного времени.



Что касается оперативной памяти, то systemd предлагает только один способ регулировки, а именно…
Читать дальше: Памяти мало не бывает

Защищаем веб-сервер на Linux

Время на прочтение8 мин
Количество просмотров35K
Привет, Хабр!

У нас давно не выходило новых книг по Linux для начинающих — и вот мы беремся за перевод новинки именно такого плана. Книга "Linux in Action" Дэвида Клинтона вышла в издательстве Manning и рассказывает не только о внутреннем устройстве Linux, но и о наиболее распространенных проблемах, и о способах их устранения.


Автор опубликовал на сайте Hackernoon отрывок из 9-й главы, который мы и предлагаем вам оценить.
Читать дальше →

Что такое ZFS? И почему люди от неё без ума?

Время на прочтение4 мин
Количество просмотров144K
Сейчас мы обсудим ZFS, продвинутую файловою систему. Мы обсудим как она появилась, что из себя представляет, и почему так популярна в технических кругах и предприятиях.

Хотя я из США, я предпочитаю произносить ZedFS вместо ZeeFS, потому что это звучит круче. Вы же можете выбрать вариант произношения для себя.

Заметка: В этой статье вы увидите, что ZFS повторяется очень много раз. Когда я буду говорить об особенностях и установке, я имею в виду OpenZFS. Пути ZFS (разработанная Oracle) и OpenZFS разошлись, с того момента как Oracle закрыла проект OpenSolaris. (Подробнее дальше в статье.)
Читать дальше →

Делаем резервное копирование сайта с помощью git и Makefile

Время на прочтение7 мин
Количество просмотров7.4K

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


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


Автор пользуется стеком django/uwsgi/nginx, виртуальным выделенным сервером под управлением GNU/Linux, но содержание статьи почти не зависит от конкретных технологий.

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

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

Резервное копирование большого количества разнородных web-проектов

Время на прочтение12 мин
Количество просмотров14K

Казалось бы, тема избитая – про резервное копирование сказано и написано многое, поэтому нечего изобретать велосипед, просто бери и делай. Тем не менее, каждый раз, когда перед системным администратором web-проекта встает задача настроить бэкапы, для многих она повисает в воздухе большим вопросительным знаком. Как правильно собрать бэкап данных? Где хранить резервные копии? Как обеспечить необходимый уровень ретроспективы хранения копий? Как унифицировать процесс резервного копирования для целого зоопарка различного ПО?


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

Как STACKLEAK улучшает безопасность ядра Linux

Время на прочтение7 мин
Количество просмотров9.7K
STACKLEAK — это функция безопасности ядра Linux, изначально разработанная создателями Grsecurity/PaX. Я решил довести STACKLEAK до официального ванильного ядра (Linux kernel mainline). В этой статье будет рассказано о внутреннем устройстве, свойствах данной функции безопасности и ее очень долгом непростом пути в mainline.



Борьба за ресурсы, часть 2: Играемся с настройками Cgroups

Время на прочтение5 мин
Количество просмотров25K
Мы начали изучать Control Groups (Cgroups) в Red Hat Enterprise Linux 7 – механизм уровня ядра, позволяющий управлять использованием системных ресурсов, кратко рассмотрели теоретические основы и теперь переходим к практике управления ресурсами CPU, памяти и ввода-вывода.


Однако, прежде чем что-то менять, всегда полезно узнать, как все устроено сейчас.
Читать дальше: Играемся с настройками Cgroups

Моё разочарование в софте

Время на прочтение11 мин
Количество просмотров394K

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


Я занимаюсь программированием уже 15 лет. Но в последнее время при разработке не принято думать об эффективности, простоте и совершенстве: вплоть до того, что мне становится грустно за свою карьеру и за IT-отрасль в целом.

Для примера, современные автомобили работают, скажем, на 98% от того, что физически позволяет нынешняя конструкция двигателя. Современная архитектура использует точно рассчитанное количество материала, чтобы выполнять свою функцию и оставаться в безопасности в данных условиях. Все самолёты сошлись к оптимальному размеру/форме/нагрузке и в основном выглядят одинаково.

Только в программном обеспечении считается нормальным, если программа работает на уровне 1% или даже 0,01% от возможной производительности. Ни у кого вроде нет возражений.

Подключение OpenSSL в Mono

Время на прочтение31 мин
Количество просмотров2.7K

В предыдущей статье был описан процесс интеграции ГОСТовых сертификатов КриптоПро с mono. В этой же подробно остановимся на подключении RSA сертификатов.


Мы продолжали переносить одну из наших серверных систем написанных на C# в Linux, и очередь дошла до части связанной с RSA. Если в прошлый раз сложности в подключении легко объяснялись наличием взаимодействия двух, исходно не связанных друг с другом систем, то при подключении «обычных» RSA сертификатов от mono явно никто не ожидал подвоха.


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

Изучаем процессы в Linux

Время на прочтение7 мин
Количество просмотров181K

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

Данная статья в большей мере рассчитана на новичков в системном программировании и тех, кто просто хочет узнать немного больше о том, как работают процессы в Linux.
Читать дальше →

Подключение КриптоПро в Mono

Время на прочтение29 мин
Количество просмотров9.7K

В связи с переходом на Linux возникла необходимость переноса одной из наших серверных систем написанной на C# в Mono. Система работает с усиленными ЭЦП, поэтому одной из поставленных перед нами задач была проверка работоспособности ГОСТовых сертификатов от КриптоПро в mono. Сам КриптоПро уже довольно давно реализовал CSP под Linux, но первая же попытка использования показала, что нативные классы криптографии Mono (аналогичные тем, что есть в базовом .Net — X509Store, X509Certificate2 и проч.) не только не работают с ГОСТовыми ключами, они даже не видят их в своих хранилищах. В силу этого работу с криптографией пришлось подключать напрямую через библиотеки КриптоПро.


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

Вклад авторов