FreeNX: различия между версиями

Материал из ALT Linux Wiki
Строка 34: Строка 34:
Затем вводим следующую строку для установки пакетов nx:
Затем вводим следующую строку для установки пакетов nx:
<code>
<code>
     apt-get install nx freenx
     apt-get install nx freenx-server
</code>
</code>
Система управления пакетами скачает и установит все необходимые программы.
Система управления пакетами скачает и установит все необходимые программы.
Строка 40: Строка 40:
После этого нам остается завершить установку командой
После этого нам остается завершить установку командой
<code>
<code>
     nxsetup --install --setup-nomachine-key
     service freenx-server setup
</code>
</code>
и проверить
<code>
    service freenx-server check
</code>
Если в терминале выведется нечто вроде
Если в терминале выведется нечто вроде
<code>
<code>
    —-> Testing your nxserver connection ...
----> Testing your nxserver configuration ...
    HELLO NXSERVER - Version 2.1.0-73-SVN OS (GPL, using backend: 3.2.0)
Warning: Invalid value "CUPS_ETC=/etc/cups/"
    NX> 105 quit
        Users will not be able to enable printing.
    Quit
Warning: Invalid value "COMMAND_START_CDE=cdwm"
    NX> 999 Bye
        Users will not be able to request a CDE session.
    <done
Warning: Invalid cupsd version of "/usr/sbin/cupsd". Need version 1.2.
    Ok, nxserver is ready.
        Users will not be able to enable printing. Ignore if you use cups > 1.2
    PAM authentication enabled:
 
    All users will be able to login with their normal passwords.
  Warnings occured during config check.
    PAM authentication will be done through SSH.
  To enable these features please correct the configuration file.
    Please ensure that SSHD on localhost accepts password authentication.
 
    You can change this behaviour in the /etc/nxserver/node.conf file.
<---- done
    Have Fun!
 
----> Testing your nxserver connection ...
HELLO NXSERVER - Version 3.2.0-74-SVN OS (GPL, using backend: 3.4.0)
<--- done
</code>
</code>
Значит всё прошло успешно. После этого к серверу можно будет подключаться с помощью клиента от NoMachine, используя те же учётные записи, что и для локального входа в систему.
Значит всё прошло успешно. После этого к серверу можно будет подключаться с помощью клиента от NoMachine, используя те же учётные записи, что и для локального входа в систему.

Версия от 12:29, 15 января 2010

Установка freenx сервера терминалов на ALT Linux Desktop. От «А» до «Я»

Цель данной статьи — описать типовой процесс создания сервера терминалов с учётом особенностей ОС ALT Linux Desktop. В данном посте изложен мой личный опыт, ни в коем случае не претендующий на академичность. Я просто хочу немного систематизировать те разрозненные куски информации на тему «FreeNX+ALT Linux», что имеются в глобальной сети.

Немного теории

Описание протокола NX

Описание протокола NX на www.gnome.org. Не пинайте за перевод. :)

Основной идеей протокола NX является дифференциальное сжатие данных X-сервера и уменьшение количества передаваемых данных с помощью прокси-сервера. Идея дифференциального сжатия изначально была реализована в протоколе DXPC (Дифференциальный Компрессор X-Протокола), в 1995 году. На основе этих разработок компания NoMachine создала свой коммерческий (но в основной массе открытый) продукт. Также существует полностью открытая и бесплатная реализация NX — FreeNX. Мы будем использовать именно FreeNX.

Установка FreeNX

Я не буду останавливаться на установке самого ALT Linux’а. Если нужно подробное руководство, то можно найти его, например, здесь . Итак, будем считать, что у вас на компьютере установлен ALT Linux Personal Desktop версии 4.0.* (у меня стоит 4.0.2). Компьютер также должен иметь выход в Интернет. Для начала запустим ssh-сервер, по каналу которого и происходит обмен данными между сервером и клиентами nx. Для этого в терминале набираем su, затем вводим пароль суперпользователя. Затем набираем

   service sshd start
   chkconfig sshd on

SSH — сервер сгенерирует ключевую пару и впредь будет автоматически запускаться при старте системы. Проверим, включён ли у вас официальный репозиторий. После этого вводим строку kwrite /etc/apt/sources.list. Откроется файл, в котором должны быть следующие строки:

   rpm ftp://ftp.altlinux.org/pub/distributions/ALTLinux/4.0/branch/ i586 classic
   rpm ftp://ftp.altlinux.org/pub/distributions/ALTLinux/4.0/branch/ noarch classic

Если этих строк нет, то добавьте их. Далее необходимо обновить ваш список пакетов. Сохраняемся и выходим из редактора, в консоли от имени суперпользователя набираем apt-get update. С официального сервера ALT Linux загрузится список всех содержащихся там пакетов. ПО для ALT Linux поставляется в виде *.rpm — пакетов. Сравнительно недавно у этих пакетов поменялся метод сжатия. Для поддержки нового LZMA метода сжатия нам необходимо обновиться. Для этого от имени суперпользователя набираем следующие строки:

   apt-get install ‘rpm>=4.0.4-alt93′
   apt-get --reinstall update

Затем вводим следующую строку для установки пакетов nx:

   apt-get install nx freenx-server

Система управления пакетами скачает и установит все необходимые программы.

После этого нам остается завершить установку командой

   service freenx-server setup

и проверить

   service freenx-server check

Если в терминале выведется нечто вроде


> Testing your nxserver configuration ...

Warning: Invalid value "CUPS_ETC=/etc/cups/"

        Users will not be able to enable printing.

Warning: Invalid value "COMMAND_START_CDE=cdwm"

        Users will not be able to request a CDE session.

Warning: Invalid cupsd version of "/usr/sbin/cupsd". Need version 1.2.

        Users will not be able to enable printing. Ignore if you use cups > 1.2
 Warnings occured during config check.
 To enable these features please correct the configuration file.

<---- done


> Testing your nxserver connection ...

HELLO NXSERVER - Version 3.2.0-74-SVN OS (GPL, using backend: 3.4.0) <--- done Значит всё прошло успешно. После этого к серверу можно будет подключаться с помощью клиента от NoMachine, используя те же учётные записи, что и для локального входа в систему.

Источники

Хинты

  • Полноэкранный режим (fullscreen mode): Ctrl-Alt-F

Проблемы

  • На ALT Desktop 4.0 команда lpadmin не понимает имя драйвера в виде

#lpadmin -p HPLaserJet -m foomatic-ppdfile:HP-LaserJet_9040-hpijs.ppd
lpadmin: Unable to copy PPD file!

Правильный вид

#lpadmin -p HPLaserJet -m foomatic:HP-LaserJet_9040-hpijs.ppd

Из-за этого на сервере драйвер для принтера не выставляется. Решается в скрипте /usr/bin/nxprint заменой команды у awk

с
printf("driver|%s%s|%s|%s|%s\n",$4,A,$6,$2,substr($3,2)) } '
на
printf("driver|%s%s|%s|%s|%s\n",$4,A,$6,"foomatic"substr($2,index($2,":")),substr($3,2)) } '

  • Если клиенты цепляются с ALT Desktop 4.0, то есть проблема с печатью, т.к. существует бага в dbus 1.0.2, из-за которой у процесса cupsd (на стороне клиента) не закрываются pipe'ы и со времен их кол-во переполняет верхний потолок кол-ва разрешенных открытых файлов [1]. Апгрейд у клиента пакетов libdbus и dbus из branch 4.0 решает проблему

Ссылки

Пакеты для ALT Linux (и других дистрибутивов) готовит компания Etersoft в рамках разработки продукта RX@Etersoft.