Отфильтровано по категории Операционные системы Сбросить фильтр

Установка multimedia на CentOS 7

12.03.2018 01:39, admin - CentOS

Для установки мультимедийных приложений требуется установить поддержку репозитория nux-dextop. Предварительно должна быть обеспечена поддержка репозитория EPEL для обеспечения нужных зависимостей.

Выполняем следующую команду:

yum -y install http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm

После чего легко можем устанавливать нужные приложения, например:

yum install vlc smplayer ffmpeg HandBrake-{gui,cli}

Доступные пакеты можно посмотреть здесь: http://li.nux.ro/download/nux/dextop/el7/x86_64/

Для установки приложений от adobe дополнительно делаем:

yum -y install http://linuxdownload.adobe.com/adobe-release/adobe-release-x86_64-1.0-1.noarch.rpm

И затем устанавливаем нужное, например:

yum install flash-plugin

Установка дополнительных версий PHP

03.01.2018 11:07, admin - CentOS, Операционные системы

Стандартный репозиторий CentOS содержит до неприличия древнюю, покрытую пылью и мхом версию PHP. Исправим это недоразумение. Мы установим две различные версии PHP - 5.6 для старых проектов и 7.2 для новых. Аналогично можно добавить и большее количество версий, при необходимости. Кроме того, настроим ISPConfig 3.1 для использования различных версий с возможностью выбора нужной из них через панель управления.

Установка дополнительных версий PHP

Поддержка dbase для php

05.10.2017 21:32, admin - CentOS

Несмотря на то, что базы данных в формате dBase (dbf) редко применяются в настоящее время, иногда доступ средствами php к таким базам все же требуется. В стандартных сборках php нужный модуль отсутствует, поэтому нужно собрать его самостоятельно из исходных файлов, которые можно найти  в библиотеке PECL (PHP Extension Community Library): https://pecl.php.net/package/dbase. Описание функций, реализованных в данной библиотеке, доступно на официальном сайте: http://php.net/manual/ru/ref.dbase.php

Последовательность действий:

  • Для php 7 загружаем последнюю доступную версию (на данный момент это версия 7.0.0beta1):

    svn checkout http://svn.php.net/repository/pecl/dbase/trunk/
    cd ./trunk

    Для php 5 нужно указать конкретную версию модуля:

    wget https://pecl.php.net/get/dbase-5.1.1.tgz
    tar -xvf dbase-5.1.1.tgz
    cd dbase-5.1.1

  • phpize
  • ./configure
  • make
  • cp ./modules/dbase.so /usr/lib64/php/modules/dbase.so
  • echo 'extension=dbase.so' > /etc/php.d/dbase.ini
  • systemctl restart httpd
    systemctl restart php-fpm

Описанный метод можно применить для любого дистрибутива, нужно только, при необходимости, изменить каталоги для размещения dbase.so и dbase.ini. В некоторых дистрибутивах модуль подключается непосредственно в файле конфигурации php.ini.


Определение текущего планировщика задач CPU

03.10.2017 14:34, admin - Операционные системы, Archlinux

Прямого способа, насколько мне известно, не существует. Однако, можно применить косвенный метод, например, мы можем проверить, используется ли планировщик MuQSS:

dmesg | grep -i muqss

результат:

[    0.346716] MuQSS locality CPU 0 to 1: 2
[    0.346717] MuQSS locality CPU 0 to 2: 2
[    0.346717] MuQSS locality CPU 0 to 3: 2
[    0.346718] MuQSS locality CPU 1 to 2: 2
[    0.346718] MuQSS locality CPU 1 to 3: 2
[    0.346718] MuQSS locality CPU 2 to 3: 2
[    0.847248] MuQSS CPU scheduler v0.161 by Con Kolivas.

В данном случае мы видим, что данный планировщик действительно используется.

Также могут быть применены такие планировщики, как CFS (в стандартном ядре linux) и BFS.

Кроме того, можно посмотреть параметры из текущей конфигурации ядра:

zcat /proc/config.gz | grep -i muqss

результат:

CONFIG_SCHED_MUQSS=y

Описанные методы проверены для Arch Linux, но могут не работать при использовании других дистрибутивов.


Замена планировщика ввода/вывода для SSD

10.09.2017 20:18, admin - Операционные системы, Archlinux

Использование стандартного планировщика ввода/вывода (в большинстве случаев это cfq) для невращающихся дисков (SSD) не имеет смысла, принимая во внимание скорость обмена информацией с такими устройствами. Целесообразнее в таких случаях использовать максимально простой планировщик noop, вносящий минимальную задержку. Для этого возможно использовать  udev правило, чтобы позволить системе выбрать планировщик на основе технических данных оборудования.
Пример udev правила для SSD и других невращающихся устройств может выглядеть таким образом:

# set noop scheduler for non-rotating disks
ACTION=="add|change", KERNEL=="sd[a-z]", ATTR{queue/rotational}=="0", ATTR{queue/scheduler}="noop"

Помещаем данное правило в новый отдельный файл, например /etc/udev/rules.d/60-ssd-scheduler.rules).
Проверить какие диски будут использовать данное правило можно следующим образом:

for f in /sys/block/sd?/queue/rotational; do printf "$f "; cat $f; done

В результате получаем примерно следующее:

/sys/block/sda/queue/rotational 1
/sys/block/sdb/queue/rotational 0

Как видим, диск sdb определился как невращающийся, и это соответствует действительности.

Узнать текущий планировщик и возможные альтернативные варианты для каждого устройства можно так:

cat /sys/block/sdb/queue/scheduler

получаем:

[noop] deadline cfq bfq-sq

В квадратных скобках указан планировщик, используемый в данный момент.

Планировщик также может быть изменен во время работы системы. Команда выглядит так:

echo {SCHEDULER-NAME} > /sys/block/{DEVICE-NAME}/queue/scheduler

Например, для установки планировщика noop для диска sda, используйте:

echo noop > /sys/block/sda/queue/scheduler

Однако, действовать такая установка будет только до перезагрузки.