Russian Fedora

cообщество русскоязычных участников
международного проекта Fedora

Content (90 страница со старыми записями)

Еще одно интервью с представителями Parallels

Это архивная статья

На известном русскоязычном сайте о Linux, OpenNET.ru, опубликовали еще одно интервью с представителями компании Parallels. Оно посвящено вкладу компании в открытые проекты, как связанные с виртуализацией и контейнерами, так сделанные в рамках хобби. Почитайте.

Статистика ядра Linux 3.18

На LWN опубликовали статистику по ядру 3.18.

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

Коммьюнити продолжает играть важную роль, что бы ни говорили о роли больших коммерческих компаний - группа лиц, скрывающихся под категориями (None), (Unknown), (Consultant), (Academia) написали пятую часть патчей, которые ответственны за четверть всех измененных строк. По опыту можно сказать, что когда за тобой нет крутого коммерческого плеча, то ты сто раз пересмотришь свой патч, прежде чем отослать. Поэтому там где редхатовцы смело дробят changeset на десятки патчей, зная, что его примут целиком, независимый разработчик робко, опасаясь затронуть лишнее, минимизирует изменение, стараясь обойтись как можно меньшим патчем.

/images/kernel-newbie.jpg

Новичок предлагает свой патч в рассылке ядра, где его уже поджидают известные хулиганы и матершинники во главе с Линусом Торвальдсом

Дифченки пропустили вперед Google, зато обогнали Oracle и кучу ebmedded-разработчиков. По количеству строк пока войти в Top не удается. Осторожничают, боятся внимания хулиганов и матершинников.

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

Советы по systemd

Это архивная статья

Анонсировать новости, что тот или иной дистрибутив переходит на systemd, уже неинтересно - понятно, что перейдут все. После перехода основных дистрибутивов, другие будут вынуждены принимать решение, и чем дольше будут колебаться и игнорировать реальность, тем хуже им будет. Некоторые новости про переход на systemd, однако, будут анонсированы. Вот, например, объявили, что якобы кто-то собрался делать Debian без systemd. Если они взлетят, что неочевидно, учитывая квалификацию, навыки организации и работоспособность systemd-хейтеров, то мы обязательно напишем новость об их переходе на systemd - это будет показательно.
В других дистрибутивах systemd уже вовсю используется, и уже появляются некоторые хорошие практики, которыми уже пора начать делиться. Наш коллега, Kevin Fenzi, решил начать делиться накопленными им приемчиками:
  • Чтобы сервис сразу же перезапускался после падений (для чего раньше использовали monit) нужно создать файл в директории /etc/systemd/systemd/myservice.conf.d/ с любым названием, но с расширением .conf, например RestartAlways.conf, и добавить в него следующие строки: [Service] Restart=always
  • Утилита systemd-delta позволит контролировать такие вот дополнения и изменения в файлах systemd (не изменяйте их в /usr/lib/systemd, а копируйте в /etc/systemd, а уж там изменяйте, например, с помощью скоро появящейся systemctl edit)
  • journalctl --list-boots - выведет список всех перезагрузок системы с их датами (и с номерами, которые можно использовать в следующем совете)
  • journalctl -b N - покажет журнал загрузки номер N (возьмите его из предыдущего совета). Например, -1 и -2 покажут две предыдущих загрузки.
  • systemctl status $PID - утилите можно передать просто Pid, и она покажет статус systemd-юнита, которому принадлежит Pid (спасибо Cgroups!)
  • systemctl suspend -i - игнорировать любые препятствия и ограничители (inhibitors) и остановить. Будьте осторожны, если вы находитесь в середине критичного процесса, например обновления пакетов.
  • systemd-inhibit --list - продемонстрирует все текущие ограничители (inhibitors), и кто их установил.
  • journalctl --disk-usage - сколько дискового пространства занято журналом. Изменить значения можно в /etc/systemd/journald.conf.

А какие у вас любимые трюки с systemd?

Новая статистика Coverity о LibreOffice

Это архивная статья

Не прошло и месяца с прошлой публикации статистики Coverity по кодовой базе LibreOffice, а уже есть новости. Участник проектов Fedora и LibreOffice, Caolán McNamara получил свежие данные - теперь в LibreOffice плотность ошибок упала до нуля.

На почти 6 миллионов строк кода приходится лишь 21 срабатывание сканнера Coverity, и Caolán уверен, что 11 срабатываний, это false positives.

В Apache OpenOffice никто исправлять дефекты не будет, само собой. К сожалению, до нас доходят странные слухи, что когда народу требуется "бесплатный офис" под виндоз, то выбирают именно его, а не LibreOffice.

На полшага ближе к systemd-платформе!

Это архивная статья

Отличные новости - в systemd включили возможность редактировать юниты! Пока по умолчанию запускается редактор, указанный в переменных SYSTEMD_EDITOR, EDITOR, VISUAL (проверяется в такой последовательности до первого значения), либо vim.
Если кто не в курсе, то идеи, что в systemd надо включить управление сетью, wpa_supplicant, минимальный shell, минимальный текстовый редактор (для работы с конфигами), монтирование, управление логинами, и пр. высказываются регулярно. Люди вокруг тут-же начинают шутить про emacs, а вот Lennart сразу-же задумывается и даже забывает про бокал пива в руке.

IAmA-сессия от Greg Kroah-Hartman

Это архивная статья

Известный гентушник и дистрохоппер Greg KH с первого декабря устраивает IAmA-сессию на Reddit.

Можно будет спросить почему он до сих пор не перешел на Fedora.

image0 На фото Greg KH с друзьями планируют какой следующий дистрибутив нужно перевести на systemd

Появилась видеозапись выступления Lennart Poettering на NLUUG Najaarsconferentie 2014

Это архивная статья

Оказалось, что видеозапись выступления Lennart Poettering на NLUUG Najaarsconferentie 2014 существует! Как подметил Alexander Patrakov, довольно пугающе то, что выступающий не знает записывают ли его или нет.

УПД голландцы не осилили выложить правильно видеозапись - вот прямая ссылка.

Политика в Fedora по отношению к корневым SSL-сертификатам со слабыми ключами

Это архивная статья

Ситуация с корневыми сертификатами для HTTPS настолько плоха, что даже непонятно, с чего начинать. Ну, например, посмотрите этот кусок из выступления Poul-Henning Kamp на FOSDEM 2014: Наши коллеги присутствовали на этом выступлении, и мы хорошо помним, как зал умолк, когда народ понял главный посыл этого фрагмента выступления phk.

В каждой системе, в каждом браузере по умолчанию присутствует список сертификатов, которыми подписываются другие сертификаты. Кем и когда создавался этот список неизвестно, и это не шутка! Среди корневых удостоверяющих сертификатов действительно есть выпущенные неизвестно кем, и добавленные неизвестно как (привет тем проектам, что не перешли на Git). Еще там есть сертификаты, выпущенные государственными организациями стран, известных гонениями на инакомыслящих (мы не имеем в виду США - после Сноудэна с ними все и так понятно). Можете посмотреть сами - наберите в адресной строке браузера about:preferences#advanced, и там выберите вкладку Certificates -> View Certificates -> Authorities и поизучайте содержимое. Что это за сертификаты, почему они тут, зачем нам им доверять - никто не скажет.

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

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

Недавно Mozilla начала удаление из своего набора корневых сертификатов, содержащих слабые ключи. Шаг очень правильный, тут никто не спорит. Но наши коллеги из Red Hat немного потестировали, и выяснили, что несмотря на совместимость с NSS, новый набор сертификатов вызывает проблемы у OpenSSL и некоторых версий GnuTLS. Сказалась изоляция разработчиков разных криптобиблиотек друг от друга. Поэтому мэйнтейнеру пакета ca-certificates пришлось пойти на неоднозначное решение - откатить изменения Mozilla, чтобы работали OpenSSL и GnuTLS, и добавить в пакет специальную утилиту для включения/отключения сертификатов со слабыми ключами.

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

Но есть и хорошие новости - в условиях совершенного бардака с криптобиблиотеками, всегда есть возможность разработчику проявить себя, в т.ч. и с пользой для бюджета. Мы поздавляем Paul Bakker с покупкой ARM Ltd. его проекта, PolarSSL!

Короткие новости

Jim Meyering выпустил grep версии 2.21. Обращаем внимание, что хотя Jim говорит, что это релиз, ускоряющий работу, версия у него нечетная. Это значит, что завтра Jim запросто может выпустить экстренный багфикс-релиз.

Хотя многие наши коллеги имеют более десятка-полутора-двух лет опыта работы с Linux и Open Source, еще полно моментов, которые мы понимаем неполностью. Этого мы никогда не стеснялись, не стесняемся и не будем стесняться - учиться никогда не поздно, и всегда приятно и полезно. Вот тут приключилась интересная история, разборки с которой пролили свет на еще один темный уголок Unix-архитектуры. Мы, как и некоторые другие люди, не понимали, почему если процесс запущен не от суперпользователя, то он не может сбросить себе некоторые привилегии - например, группы.

Понятно, почему нельзя назначить себе группы, но отказаться-то почему нельзя? Сходу понять это не получается. Josh Triplett решил, что это ошибка, и прислал патч, исправляющий это поведение.

В обсуждении оказалось, что Josh, как и мы, просто был не в курсе типичного use case, популярного среди матерых Unix-админов, который проще показать, чем объяснять. Можно создать группу restricted_group_name и добавить туда пользователей. А затем выставить на каталог права доступа 705, а затем сменить владельца вот так - chmod root:restricted_group_name /path/to/restricted_dir. И теперь каталог /path/to/restricted_dir будет доступен всем, кроме тех, кто находится в группе restricted_group_name. А если они смогут сбрасывать группы, то смогут достучаться до содержимого каталога. Вот так.

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

Сдвинулось с мертвой точки портирование Go на неподдерживаемые Google платформы. Во-первых в GCC включают поддержку Go на s390x.

Во-вторых представили первый вариант фронтэнда Go для LLVM.

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

Дмитрий Монахов, попавший в КПЗ из-за своей политической позиции, [STRIKEOUT:откинулся и теперь авторитетный программист в Parallels] благополучно вернулся к работе. Мы уже видим его в деле, например, в обсуждении интересного патчсета от Theodore Tso - lazytime, замена relatime.

Немного истории - в Unix есть три типа таймстемпов у файлов и директорий, ctime (время изменения файла или его метаданных), mtime (время изменения файла) и самый бесполезный в быту, но самый ресурсоемкий - atime (время последнего доступа к файлу, например его чтения без изменения содержания). Если нам бывает часто интересно, когда последний раз изменено содержимое файла или его права доступа, то когда последний раз производилось чтение - не так важно (хотя многие почтовые клиенты всерьез работали именно так, учитывая atime). Некоторые с незапамятных времен добавляют в опции монтирования noatime, хотя, как говорят, сейчас достаточно добавить relatime, чтоб почти всегда это работало хорошо. Однако, Theodore поразмыслил, и решил, что можно улучшить еще, не нарушая замшелый стандарт POSIX, который требует работы именно atime, не noatime, relatime или чего еще.

Он предложил накапливать изменения atime в памяти, и сбрасывать на диск лишь когда кончается память, либо когда происходят какие-либо иные события, требующие обновления atime. Звучит неплохо, и говорят, что примерно так было уже давным давно реализовано в Solaris. К сожалению, Theodore реализовал функционал лишь для ext4. Наш коллега, инженер Red Hat, Dave Chinner, справедливо посчитал, что это не лучший архитектурный вариант, и предложил реализовать ее на уровне выше, на VFS, что автоматически (ну или почти автоматически) добавит эту функциональность во все файловые системы. Посмотрим, что из этого получится.

В интервью с кандидатами в Fedora Council им задавался вопрос - "в чем состоит успешность нашего проекта и как ее измерить?" Некоторые отметили, что не в количестве пользователей или участников, а в способности убеждать других в правоте выбранных нами архитектурных решений. Ну раз так, то у нас еще две победы. Во-1 инженер Google, Russell Hancox, разработал santa - с нашей точки зрения, это выглядит, как SELinux для Mac OS X, хотя почитав реализацию мы бы порекомендовали автору не мучаться, а портировать SELinux, как есть.

Конечно, лицензия не та, но что же остается делать остающим? А во-2 отстающие наконец-то сообразили, что отстают, и это очень здорово! В течении следующих десяти лет FreeBSD собирается переходить на launchd.

Для нас это не новость, разумеется. Срок, конечно, удивительный, но по-другому не получится - ни у одного из всех пяти разработчиков FreeBSD нет свободного времени. Им бы, конечно, не мучаться, а взять systemd, но верующие в BSD считают GPL несвободной, и поэтому копировать решение будут из проприетарной Mac OS X - таково понимание свободы у любителей Windows и Putty. В ленте Google+ у Lennart Poettering уже с удовольствием обсуждают новость.

Ну и напоследок грустная новость, никак не связанная с Fedora - в Google полностью отказываются от OpenID.

Еще один открытый стандарт медленно бредет на свалку истории.