Автор: Рудюк С . А.
https://corp2.net
E-Mail: rs@corp2.net
Замена Windows Server на Linux Ubuntu – выгодное и полезное решение. Такое решение может получиться более стабильно работающим и главное, масштабируемым и более защищенным. Но, есть в решениях Linux всегда ложка дегтя. Прежде всего, это работа с аппаратурой. Ряд аппаратных средств работает только с Windows. И даже гордятся этим, выставляя на своем корпусе лейбочку мелко-софтовской компании…
Так же, возникает вопрос настройки звука для XRDP в Linux Ubuntu. По умолчанию, звук в XRDP отключен и чтоб его настроить, нужно провести ряд действий. Данная статья рассказывает, как это сделать.
Итак, устанавливаем необходимые нам пакеты:
sudo apt-get build-dep xserver-xorg-core
apt-get install autoconf libtool pkg-config
apt-get install libssl-dev libpam0g-dev libjpeg-dev libx11-dev libxfixes-dev flex bison libxml2-dev intltool xsltproc xutils-dev python-libxml2 xutils libpulse-dev
Устанавливаем Git, чтоб иметь возможность брать исходные коды прямо из репозитариев:
apt-get install git
Клонируем проект XRDP в текущую папку:
git clone git://github.com/FreeRDP/xrdp.git
Можно так же просто закачать zip-архив по адресу: https://github.com/FreeRDP/xrdp
Компилируем XRDP:
./bootstrap
./configure --enable-jpeg --enable-simplesound
С некоторых пор, разработчик убрал опцию –enable-simplesound, поэтому, не пугайтесь, если у вас выдастся сообщение о отсутствующей опции. Сейчас она не особо нужна, т.к. автоматически определяется подключен звук или нет.
make
make install
Компилируем X11RDP.
Для этого, заходим в каталог xorg/X11R7.6 и вводим команду:
./buildx.sh /opt/X11rdp
Создаем ссылку:
ln -s /opt/X11rdp/bin/X11rdp /usr/local/bin/X11rdp
Добавляем в загрузку:
cp /etc/xrdp/xrdp.sh /etc/init.d/
update-rc.d xrdp.sh defaults
Копируем ключ rsa для шифрации:
sudo cp ../xrdp/rsakeys.ini /etc/xrdp
Устанавливаем пакеты, необходимые для переадресации звука:
sudo apt-get install libjson0-dev libsndfile1-dev libspeex-dev libspeexdsp-dev
Закачиваем исходные коды пакета pulseaudio из http://freedesktop.org/software/pulseaudio/releases/:
tar -zxvf pulseaudio-3.0.tar.gz
Входим в каталог и выполняем:
./configure
Если возникли проблемы при компиляции, то возможно вы закачали не тот пакет pulseaudio.
Переходим в каталог xrdp/sesman/chansrv/pulse.
Вам необходимо прокомпилировать библиотеку для передачи звука по XRDP.
Отредактируйте переменную PULSE_DIR на путь к исходным кодам pulseaudio.
После этого, выполните:
make
Скопируем библиотеку в pulse (пути могут отличаться в зависимости от версии pulseaudio):
sudo cp module-xrdp-sink.so /usr/lib/pulse-3.0/modules/
Теперь, необходимо подредактировать ряд конфигурационных файлов.
Редактируем (или добавляем) файл /etc/asound.conf:
pcm.pulse { type pulse } ctl.pulse { type pulse } pcm.!default { type pulse } ctl.!default { type pulse }
Редактируем файл /etc/pulse/default.pa:
.nofail .fail load-module module-augment-properties load-module module-xrdp-sink load-module module-native-protocol-unix
Перезагружаемся. После этого, если все правильно настроено у Вас должен передаваться звук по RDP.
P.S. Если у Вас возникло желание сменить дорогие решения на Windows на эффективные и хорошо масштабируемые решения на Linux, звоните к автору данной статьи 067 901-63-22 Рудюк Сергей Анатольевич. Или пишите на: rs@corp2.net
Автор: Рудюк С . А. https://corp2.net
Leave a Reply