понедельник, 9 февраля 2015 г.

Релиз ядра Linux 3.19 (установка/обновление)

После двух месяцев разработки Линус Торвальдс анонсировал релиз ядра Linux 3.19. Среди наиболее заметных улучшений: средства защиты от переполнения буфера на основе расширений Intel MPX, проверка целостности и быстрая замена дисков в Btrfs RAID 5/6, сжатие LZ4 в squashfs, возможность привязки BPF-программ к сетевым сокетам, протокол TIPC, системный вызов execveat(), драйвер "ipvlan" для связи контейнеров, драйвер "AMD KFD" для GPGPU-вычислений, поддержка архитектуры Altera Nios II.

В новую версию принято примерно 11500 исправлений от 1200 разработчиков, размер патча - 38 Мб (изменения затронули 10742 файлов, добавлено 487475 строк кода, удалено 350946 строк). Около 46% всех представленных в 3.19 изменений связаны с драйверами устройств, примерно 19% изменений имеют отношение к обновлению кода специфичного для аппаратных архитектур, 12% связано с сетевым стеком, 4% - файловыми системами и 4% c внутренними подсистемами ядра.

Из наиболее интересных новшеств можно отметить:

    Дисковая подсистема, ввод/вывод и файловые системы
        В Btrfs появилась возможность быстрой замены дисков в RAID 5/6 без предварительного добавления нового диска, переноса данных и вывода из массива старого диска, т.е. теперь при помощи утилиты btrfs-replace можно просто поменять на лету один диск на другой, как это делалось для накопителей, не состоящих в RAID. Для RAID 5/6 также добавлена функция проверки целостности данных ("Scrubbing", сверка контрольных сумм, сохранённых и вычисленных на основе фактических данных), которая ранее не могла быть применена к RAID разделам Btrfs;
        Существенно увеличена производительность модуля Device Mapper, обеспечивающего динамическое выделение места в хранилище (thin provisioning) и позволяющего создать несколько виртуальных дисковых разделов, суммарный размер которых превышает физический размер доступных накопителей, а физическое дисковое пространство выделяется по мере необходимости. Производительность возросла в основном благодаря поддержке агрегирования операций с идентичными блоками на стадии перед обращением к основному устройству;
        В файловой системе Ceph добавлена поддержка inline-размещения данных, что привело к увеличению производительности при работе с мелкими файлами. Также добавлена поддержка верификации сообщений по цифровой подписи для аутентификации обмена данными между клиентами и серверами Ceph;
        В F2FS, развиваемую компанией Samsung высокопроизводительную файловую систему для Flash-накопителей, добавлена опция "fastboot", которую можно использовать для сокращения числа проверок во время загрузки;
        В файловую систему squashfs добавлена поддержка сжатия данных с использованием алгоритма LZ4; 
    Виртуализация и безопасность
        Поддержка расширений MPX (Memory Protection Extensions), которые появятся в следующих поколениях микроархитектур процессоров Intel (Skylake и Goldmont) и дадут возможность организовать проверку указателей на соблюдение границ, связанных с ними областей памяти. Для использования данной возможности для каждой ссылки на память процессору необходимо сообщить сведения о допустимых границах области памяти, что требует дополнительной адаптации программного обеспечения, т.е. использование для сборки компилятора и runtime-библиотек, поддерживающих MPX. С практической стороны, MPX позволит выявлять ошибки при работе с памятью и блокировать совершение атак, основанных на переполнении буфера.
        Добавлен драйвер "ipvlan", позволяющий создавать виртуальные сетевые устройства для связи между изолированными контейнерами. Драйвер напоминает macvlan, но рассчитан на эффективную работу с сетевыми пространствами имён (network namespaces) и производит мультиплексирование трафика на более высоком уровне сетевого стека;
        Для архитектуры ARM64 реализован механизм seccomp, используемый для ограничения доступа приложений к системным вызовам;
        В связи с устранением возможного вектора атаки (CVE-2014-8989) изменена обработка системного вызова setgroups(), при его использовании в пространствах имён для непривилегированных пользователей (user namespaces), что может потенциально привести к нарушению нормальной работы некоторых приложений, выполняющих маппинг произвольных идентификаторов групп пользователей.
        Прекращена поддержка использования системы виртуализации KVM на серверах с архитектурой Itanium (ia64), так как данная возможность не использовалась на практике и оставалась без сопровождения;
        Добавлен интерфейс для доступа из пространства пользователя к функциям блочного шифрования AEAD;
        Подсистема virtio значительно доработана в плане обеспечения поддержки стандарта virtio 1.0; 
    Сетевая подсистема
        В клиент и сервер NFS добавлена поддержка опций ALLOCATE и DEALLOCATE, определённых в стандарте NFS 4.2 и позволяющих заранее зарезервировать место в хранилище для файла, до его фактической записи;
        В сетевой стек добавлена новая подсистема для задействования аппаратных механизмов ускорения коммутации и маршрутизации на поддерживающем данные возможности оборудовании;
        Добавлен netlink API для сетевого протокола TIPC (Transparent Inter-process Communication), предназначенного для организации межпроцессного взаимодействия в кластере. Протокол предоставляет средства для быстрого и надёжного взаимодействия приложений, независимо от того, на каких узлах в кластере они выполняются.
        В подсистеме InfiniBand обеспечена поддержка подкачки по необходимости (on-demand paging), что позволяет создавать и размещать области RDMA через обработчик обращений к невыделенным страницам памяти (page faults), т.е. расходовать память тогда, когда она действительно используется; 
    Память и системные сервисы
        В системный вызов getsockopt() добавлена новая опция SO_INCOMING_CPU, при помощи которой можно определить CPU, используемый для обработки указанного сокета. Используя данную опцию приложение может распределить связанную с сокетами работу по нескольким процессорам, увеличив общую пропускную способность;
        Возможность привязки расширенных BPF-программ к сетевым сокетам. В настоящее время функциональность ограничена сбором статистики, но в будущем ожидается добавление возможностей по установке фильтров;
        Добавлен системный вызов execveat(), который позволяет запустить исполняемый файл из открытого файлового дескриптора или определить исполняемый файл при передаче файлового дескриптора директории;
        Из экспериментального staging-дерева в основной состав ядра перемещён механизм межпроцессного взаимодействия Binder, предложенный разработчиками платформы Android;
        Поддержка оверлеев Device Tree, призванных упростить получение информации о вспомогательном оборудовании на стадии загрузки системы;
        В подсистему ftrace добавлена возможность использования в фильтрах выражений с логической операцией НЕ ("!");
        Добавлен новый внутренний API, позволяющий унифицировать доступ драйверов к параметрам оборудования через ACPI или Вevice Tree, скрывая особенности работы через данные интерфейсы;
        Продолжена работа над устранением проблемы 2038 года, вызванной переполнением 32-разрядного типа time_t. Внутренние функции ядра do_settimeofday(), timekeeping_inject_sleeptime() и mktime() заменены на варианты, в которых используется 64-разрядный тип time64_t или timespec64. 
    Аппаратные архитектуры
        Поддержка микропроцессорной архитектуры с программным ядром Altera Nios II (soft-процессор), конкурирующей с архитектурой MicroBlaze; 
    Оборудование
        Добавлен драйвер "AMD KFD", предоставляющий новый интерфейс для использования вычислительных возможностей графических процессоров в приложениях, не связанных с графикой (GPGPU). Взаимодействие с драйвером на пользовательском уровне осуществляется через библиотеку HSA (Heterogenous System Architecture), которая позволяет использовать OpenCL для организации гибридных вычислений и наладить совместную работу CPU, GPU и иных процессоров, в которых подходящее вычислительное устройство выбирается в прозрачном режиме в зависимости от задачи. В HSA CPU и GPU имеют доступ к единым областям памяти, что упрощает организацию работы гибридных приложений;
        В компоненты прямого рендеринга (DRM) добавлена поддержка атомарного переключения видеорежимов, позволяющая разом, в рамках одной атомарной операции, изменить несколько параметров графического режима. Вызов ioctl() для обращения к данной функциональности из пространства пользователя ожидается в ветке ядра 3.20;
        В DRM-драйвер Nouveau добавлена частичная поддержка видеокарт NVIDIA GeForce 900 (GPU GM204), реализована возможность управления напряжением в Tegra K1;
        В DRM-драйвере Intel реализована начальная поддержка графической подсистемы процессоров нового поколения, построенных в соответствии с микроархитектурой Skylake. По умолчанию включен режим PPGTT (Per-Process Graphics Translation Tables), который может использоваться для изоляции доступа к GPU в гостевых системах;
        В DRM-драйвере Radeon улучшены средства управления скоростью вращения кулера для Radeon HD 7000 и более новых GPU;
        Поддержка GPU, используемых в SoC Freescale i.MX и Rockchip;
        Поддержка звуковых устройств на чипах Intel Baytrail;
        Поддержка контроллеров USB 3.0 от компании Broadcom;
        В Video4Linux добавлены драйверы для видеоустройств DVBSky S950 V3, тюнеров Montage M88RS6000, демодуляторов Panasonic MN88472 и MN88473, и ресиверов для пультов ДУ Amlogic Meson.
        Поддержка SoC Amlogic Meson8, Allwinner A80, Samsung Exynos4415, Freescale LS1021A, Alphascale ASM9260 и AMD Seattle;
        Поддержка SCSI-адаптеров Tekram DC390(T), Am53/79C974 и Western Digital WD7193/7197/7296. 

Установка ядра Linux Kernel 3.19

Установить ядро версии 3.19 командами ниже, можно ​​в следующих дистрибутивах Linux:

Ubuntu 15.04/14.10/14.04/12.04
Linux Mint 17/13
elementary OS 0.2/0.3

1. Откройте терминал, скопируйте и выполните одну из команд, согласно архитектуры вашей системы/компьютера, на свой страх и риск:

Для 32-bit (одной командой):

cd /tmp && wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.19-vivid/linux-headers-3.19.0-031900-generic_3.19.0-031900.201502091451_i386.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.19-vivid/linux-headers-3.19.0-031900_3.19.0-031900.201502091451_all.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.19-vivid/linux-image-3.19.0-031900-generic_3.19.0-031900.201502091451_i386.deb && sudo dpkg -i *.deb

Для 64-bit (одной командой):
  
cd /tmp && wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.19-vivid/linux-headers-3.19.0-031900-generic_3.19.0-031900.201502091451_amd64.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.19-vivid/linux-headers-3.19.0-031900_3.19.0-031900.201502091451_all.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.19-vivid/linux-image-3.19.0-031900-generic_3.19.0-031900.201502091451_amd64.deb  && sudo dpkg -i *.deb

 2. Обновите GRUB (GRUB надо обновлять в той системе Linux где он установлен, если у вас их более одной):

sudo update-grub

Примечание 1
. Если у вас установлен загрузчик BURG, то и его нужно обновить:

sudo update-burg

3. По окончании установки, закройте все приложения и перезагрузите компьютер следующей командой:

sudo reboot

После входа в систему, проверьте версию актуального ядра командой:

uname -r

Примечание 2
. Как вернуться к ранее установленному ядру, инструкция ЗДЕСЬ.

Если вы решили удалить ядро 3.19, выполните эту команду:

sudo apt-get purge linux-image-3.19-*

И вновь обновите GRUB командой:

sudo update-grub

Источники: https://www.kernel.org/ | http://www.opennet.ru/

пятница, 30 января 2015 г.

Релиз офисного пакета LibreOffice версии 4.4

Организация The Document Foundation после пяти месяцев разработки представила новый значительный выпуск офисного пакета LibreOffice - 4.4. Это девятый выпуск проекта после ответвления от кодовой базыOpenOffice.org.

Среди наиболее заметных изменений можно отметить возможность заверения PDF-документов цифровой подписью, реорганизация панелей инструментов, контекстных меню и диалогов, модернизация системы отслеживания изменений, шаблоны составных документов, улучшение поддержки импорта OOXML, Adobe Pagemaker, Visio и Abiword, возможность подсоединения к серверу SharePoint, задействование нового OpenGL-фреймворка в Impress, добавление новых шаблонов, включение в поставку свободных аналогов шрифтов Microsoft C-Fonts Calibri и Cambria, новый диалог выбора цвета, устранение ошибок, выявленных в результате проверки через систему Coverity Scan



О всех изменениях и улучшениях можно посмотреть в примечаниях к выпуску LibreOffice 4.4 на русском языке.

Установка LibreOffice 4.4 в Ubuntu 14.04/14.10

Примечание 1. В Ubuntu 15.04 LibreOffice версии 4.4 уже обновлён по умолчанию. 

Примечание 2. Перед установкой новой версии, старую удалять не нужно

Откройте терминал, скопируйте и выполните следующие команды:

sudo add-apt-repository ppa:libreoffice/ppa
sudo apt-get update
sudo apt-get install libreoffice


Подробности журнала изменений: LibreOffice 4.4 

среда, 28 января 2015 г.

Выделение текста внутри ссылок в браузерах

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

Выглядит это примерно так:



Текст ссылки при горизонтальном перемещении мышки выделяется как простой текст, а при вертикальном — перетаскивается.
Чтобы добавить такую возможность в Google Chrome (Chromium)Firefox или Opera Blink, cуществует расширение под названием Select like a Boss, код которого, к слову, доступен под свободной лицензией.

Расширение для Chrome
Расширение для Opera Blink
Расширение для Firefox

Просто устанавливаем его наш в браузер и радуемся новому старому функционалу. 

Источник:  http://habrahabr.ru/post/249091/

YouTube перешёл по умолчанию на HTML5-проигрыватель видео

Компания Google сообщила о переходе видеохостинга YouTube на повсеместное отображение видео с использованием HTML5-проигрывателя, построенного с использованием тега "video". По умолчаниюHTML5-проигрыватель теперь задействован для браузеров Chrome, IE 11, Safari 8 и бета-выпусков Firefox. Одновременно объявлено о переводе в разряд устаревших методов встраивания YouTube-контента на страницы при помощи блоков object и Flash API. Для встраивания видео рекомендуется использовать только iframe API.

HTML5-плеер был представлен пять лет назад, в качестве альтернативы проигрывателю, основанному на технологии Flash. В то время HTML5-проиргыватель не мог конкурировать с кодом Flash, так как он не мог обеспечить некоторые важные функции, такие как адаптивное изменение битрейта в зависимости от качества канала связи. За пять лет технологии HTML5получили достаточное развитие и поддержку, чтобы отодвинуть Flash на второй план. Более того, поддержка HTML5позволила обеспечить показ контента на устройствах для которых недоступен Flash, таких как умные телевизоры и мобильные системы.

Из последних достижений в развитии спецификаций HTML5, которые помогли разработать полноценную замену для Flash-плеера, отмечаются:

  1.     API Media Source Extensions, предоставляющий средства для локальной генерации мультимедийных потоков из JavaScript-приложений. Media Source Extensions даёт возможность динамически формировать контент для тегов video и audio, определять свои модели буферизации и состыковки данных, что позволяет реализовывать такие системы, как подстановка рекламы, live-вещание со сдвигом во времени, адаптивное изменение битрейта и разрешения. Применение Media Source Extensions в HTML5-плеере позволило на 50% сократить буферизацию в обычных условиях и до 80% для сетей с непостоянным уровнем качества.
  2.     Видеокодек VP9, разработанный в качестве конкурента стандарта сжатия видео H.265/HEVC (High Efficiency Video Coding). В YouTube уже ведётся работа по перекодированию видео в формат VP9, использование которого позволяет на 35% сократить размер битового потока при сохранении идентичного качества, а также на 15-80% сократить время ожидания начала воспроизведения.
  3.     API Encrypted Media Extensions, реализующий элементы поддержки DRM (Digital Rights Management) для организации защиты от копирования видеоконтента, встраиваемого в web-страницы через HTML5-тег video.
  4.     API WebRTC, предоставляющий средства для аудио- и видео-коммуникаций в режиме реального времени. Технология используется для организации потокового вещания через YouTube.
  5.     API Fullscreen, используемый для организации просмотра видео в полноэкранном режиме. 
Источник:  http://www.opennet.ru/

Установить/обновить ядро Linux Kernel 3.18.4 (Stable) в Ubuntu и производные

Linux Kernel 3.18.4 является четвёртым корректировочным выпуском ядра версии 3.18. Список изменений в ядре 3.18.4 можно посмотреть ЗДЕСЬ.
Вы можете скачать соответствующие deb пакеты ОТСЮДА и установить их в Центре приложений Ubuntu. Или просто следуйте приведенным ниже инструкциям, которые помогут вам установить новое ядро несколькими командами в терминале.

Установить ядро версии 3.18.4 командами ниже, можно ​​в следующих дистрибутивах Linux:


Ubuntu 15.04/14.10/14.04/12.04
Linux Mint 17/13
elementary OS 0.2/0.3

Установка ядра Linux Kernel 3.18.4 в терминале

1. Откройте терминал, скопируйте и выполните одну из команд, согласно архитектуры вашей системы/компьютера, на свой страх и риск:

Для 32-bit (одной командой):

cd /tmp && wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.18.4-vivid/linux-headers-3.18.4-031804-generic_3.18.4-031804.201501271243_i386.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.18.4-vivid/linux-headers-3.18.4-031804_3.18.4-031804.201501271243_all.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.18.4-vivid/linux-image-3.18.4-031804-generic_3.18.4-031804.201501271243_i386.deb && sudo dpkg -i *.deb

Для 64-bit (одной командой):
  
cd /tmp && wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.18.4-vivid/linux-headers-3.18.4-031804-generic_3.18.4-031804.201501271243_amd64.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.18.4-vivid/linux-headers-3.18.4-031804_3.18.4-031804.201501271243_all.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.18.4-vivid/linux-image-3.18.4-031804-generic_3.18.4-031804.201501271243_amd64.deb && sudo dpkg -i *.deb

 2. Обновите GRUB (GRUB надо обновлять в той системе Linux где он установлен, если у вас их более одной):

sudo update-grub

Примечание 1
. Если у вас установлен загрузчик BURG, то и его нужно обновить:

sudo update-burg

3. По окончании установки, закройте все приложения и перезагрузите компьютер следующей командой:

sudo reboot

После входа в систему, проверьте версию актуального ядра командой:

uname -r

Примечание 2
. Как вернуться к ранее установленному ядру, инструкция ЗДЕСЬ.

Если вы решили удалить ядро 3.18.4, выполните эту команду:

sudo apt-get purge linux-image-3.18.4-*

И вновь обновите GRUB командой:

sudo update-grub

Источник: https://www.kernel.org/