The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

NXServer и FreeNX на FreeBSD. Решение некоторых проблем в работе (freenx x11 x freebsd)


<< Предыдущая ИНДЕКС Правка src / Печать Следующая >>
Ключевые слова: freenx, x11, x, freebsd,  (найти похожие документы)
From: Chigikov Vladimir (Skif Swarogich) <skif@owe.com.uaskif.@ua.fm> Newsgroups: email Date: Mon, 14 Mar 2007 14:31:37 +0000 (UTC) Subject: NXServer и FreeNX на FreeBSD. Решение некоторых проблем в работе Предыстория. ------------ Так уж сложилось, что в течении n-го количества времени мне приходиться писать и переписывать один из своих проэктов. В очередной раз переделывая оный, мной была заменена СУБД и изменена полностью структура самой БД. Так как основные моменты работы программы перекладывались на триггеры и функции самой СУБД, я долгое время экспериментировал с возможными функциями, и восстановлениям данных после сбоя. Когда наигрался и получил необходимые результаты, пришла пора писать уже сами необходимые триггера и прочие приблуды. И тут встала проблема. А именно - все распечатки по структуре БД остались на работе, электронная версия в формате KWord, вытянуть можно, да вот как прочитать? Так уж сложилось, что по профессиональным нуждам верная FreeBSD на домашнем компе была заменена на Windows. Дилемма. Ноутбук со всеми данными на работе. Ехать туда в праздники как-то желания не было. Но был вечер. Свободный. И продукт компании NoMachine (http://www.nomachine.com) в составе портов FreeBSD. И пришлось мне сделать cd /usr/ports/net/nxserver Инсталляция Сам процесс установки сервера, никаких особых сюрпризов не приподнес cd /usr/ports/net/nxserver make all install clean && rehash несколько расстроило только сообщение вида: ******************************************************************************* This port provides only the NX core binaries and libraries as were released by NoMachine as source code. To make them work and be used as an NX server, you will need to: * either install FreeNX (net/freenx) additionally, * or install the commercial NoMachine server product (currently not available in native FreeBSD form) ******************************************************************************* Что гласило, что мне, нерадивому поставить придется еще и FreeNX, отдельно. А то вдруг коммерческую версию захочу. Захотел. Только посмотреть. Что и всем рекомендую. Особенно изучить две странички: 1. http://www.nomachine.com/features.php 2. http://www.nomachine.com/store.php Привожу сие, что бы понять просто так всего и задаром не бывает. Хотя вещица уже тогда начала мне нравиться. Что ж, денег много у меня не было, да и посмотреть всегда полезно, прежде чем выбивать на что либо деньги у начальства посему воспользоваться решил тем, чем есть, а именно FreeNX. Если все же вы заглянули на страничку http://www.nomachine.com/features.php , то увидели, что возможны на таком варианте, только два одновременных подключения для двух пользователей. Немного, но для моего ноутбука и этого было с головой. Тем боле, что все, что мне требовалось - это рабочий стол для меня одного и KOffice. cd /usr/ports/net/freenx make all install clean && rehash Проблем с портом тоже не возникло. Стоит обратить внимание на то, что в http://www.nomachine.com/documentation/node/install.php отсутствует как минимум FreeBSD, на которой чудно поживает детище NoMachine. Но, что не маловажно, это низкие требования к продукту, что в случае моего ноутбука так же немаловажно было: http://www.nomachine.com/select-package.php?os=linux&id=1 Hardware - 400 MHz processor - 128 MB RAM - 32 MB free disk space on your hard drive - Network connection (either a LAN, or Internet link: dial-up (minimum 33.6 Kbps modem), broadband, cable, DSL, etc.) Как видите не густо. Глянув в dmesg, я еще раз убедился, что ресурсов мне хватит. С запасом. Огромным. dmesg [root@ackinak.mob] /usr/ports/net/freenx/: dmesg Copyright (c) 1992-2007 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD is a registered trademark of The FreeBSD Foundation. FreeBSD 6.2-RELEASE-p2 #0: Sat Mar 10 01:00:33 EET 2007 root@ackinak.mob:/usr/src/sys/i386/compile/SKIF Timecounter "i8254" frequency 1193182 Hz quality 0 CPU: Intel(R) Pentium(R) 4 Mobile CPU 1.60GHz (1595.30-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0xf24 Stepping = 4 Features=0x3febf9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS ,HTT,TM> real memory = 536748032 (511 MB) avail memory = 511647744 (487 MB) kbd1 at kbdmux0 ath_hal: 0.9.17.2 (AR5210, AR5211, AR5212, RF5111, RF5112, RF2413, RF5413) acpi0: <DELL CPi R > on motherboard Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000 acpi_timer0: <24-bit timer at 3.579545MHz> port 0x808-0x80b on acpi0 cpu0: <ACPI CPU> on acpi0 ......... Что ж. Дело сделано, пора и в бой. Настройка. Манов не оказалось. То бишь, пишешь: [root@ackinak.mob] /usr/ports/net/freenx/:man nxserver No manual entry for nxserver [root@ackinak.mob] /usr/ports/net/freenx/:man freenx No manual entry for freenx [root@ackinak.mob] /usr/ports/net/freenx/: И становиться как-то тоскливо. Изучение [root@ackinak.mob] /usr/ports/net/freenx/:less /var/db/pkg/nxserver-1.4.0/+CONTENTS [root@ackinak.mob] /usr/ports/net/freenx/:less /var/db/pkg/freenx-0.4.4_2/+CONTENTS подтвердило грустные мысли, что манов нет и придется либо методом научного тыка либо изучая структуру вражеского сайта. Впрочем поход в /usr/X11R6/NX/bin чуть-чуть порадовал: [root@ackinak.mob] /usr/ports/net/freenx/:cd /usr/X11R6/NX/bin/ [root@ackinak.mob] /usr/X11R6/NX/bin/:./nxserver --help NXSERVER - Version 1.4.0-44 OS (GPL) Usage: nxserver <option> --adduser <user>: Add a new user --passwd <user>: Change password of <user> --deluser <user>: Remove a user from nx --listuser: List enabled users --start: Start the nx server --stop: Stop the nx server --status: Show status of nx server --restart: Restart the nx server and terminate all running sessions --list [ user | sessionid ]: List running sessions of user or sessionid --history [ user | sessionid | clear ]: Show history [ of user | sessionid ] or clear the history --terminate <user | :display | sessionid>: Terminate the session pointed to by sessionid or display, or all sessions of the specified user. Use * for all sessions. --suspend <user | :display | sessionid>: Suspend the session pointed to by sessionid or display, or all sessions of the specified user. Use * for all sessions. --cleanup: Terminates all running sessions. Useful after power-outage. --broadcast <message>: Send a message to all users --send <user | :display | sessionid> <message>: Send a message to the specified user or sessionid [root@ackinak.mob] /usr/X11R6/NX/bin/: Ух ты, как все просто! И действительно, достаточно было сделать: [root@ackinak.mob] /usr/X11R6/NX/bin/:./nxserver --start NX> 100 NXSERVER - Version 1.4.0-44 OS (GPL) NX> 122 Service started NX> 999 Bye [root@ackinak.mob] /usr/X11R6/NX/bin/: Казалось бы гора с плеч. Ан нет. Подключиться не удалось Конфига не оказалось. То есть node.conf.sample был. А вот о node.conf никто не подумал, да делов то: [root@ackinak.mob] /usr/X11R6/NX/bin/:cd /usr/X11R6/NX/etc/nxserver/ [root@ackinak.mob] /usr/X11R6/NX/etc/nxserver/:cp node.conf.sample node.conf Но и тут нас ждал облом: [root@ackinak.mob] /usr/X11R6/NX/etc/nxserver/:nxloadconfig --check Warning: Invalid value "CUPS_ETC=/etc/cups/" Users will not be able to enable printing. Warning: Invalid value "DEFAULT_X_SESSION=/etc/X11/xdm/Xsession" Users might not be able to request a default X session. Warning: Invalid value "COMMAND_START_GNOME=gnome-session" Users will not be able to request a Gnome session. Warning: Invalid value "COMMAND_START_CDE=cdwm" Users will not be able to request a CDE session. Error: Invalid value "COMMAND_SMBMOUNT=smbmount" Error: Invalid value "COMMAND_SMBUMOUNT=smbumount" Warning: Invalid value "COMMAND_CUPSD=/usr/sbin/cupsd" Users will not be able to enable printing. Errors occured during config check. Please correct the configuration file. [root@ackinak.mob] /usr/X11R6/NX/etc/nxserver/: Как видите необходимо внести правки. Какие именно указано. Думаю, проблем не возникнет с указанием нужных конфигов для CUPSD и X-ов. Остановлюсь на COMMAND_START_GNOME и COMMAND_START_CDE, а так же smbmount. Так как FreeNX разрабатывался и для Solaris, где CDE присутствует, а во FreeBSD такой нет, а на моем ноуте и в помине нет не только CDE, но и Gnome, то их значения я сменил на startkde, о чем ни грамму не жалею. Несколько сложнее было с smbmount. Долгое время, минут 15, у меня рука не поднималась там написать, что-то другое, с точкой вспоминая старые добрые времена, когда этим самым smbmount активно приходилось пользоваться, да вот на моей фряхе ее сейчас днем с огнем не сыщешь, хотя samba и есть: [root@ackinak.mob] /usr/X11R6/NX/etc/nxserver/:lf /var/db/pkg/| grep samba samba-3.0.24,1/ [root@ackinak.mob] /usr/X11R6/NX/etc/nxserver/: Потосковав, сменил smbmount на mount_smbfs и ни грамму не пожалел. Пока. Хотя стоит оговориться, что smbmount отнюдь не лишний, кто не поленится и изучит стартовые скрипты - увидит, там он всплывает не один раз. [root@ackinak.mob] /usr/X11R6/NX/bin/:./nxloadconfig --check [root@ackinak.mob] /usr/X11R6/NX/bin/: Вот теперь порядок. Желающие могут еще поправить конфиг, я например на первых порах включил уровень для логов равный 7. Кстати, обратите внимание, что я отталкиваюсь от /usr/X11R6/NX/bin/, пишу :./nxloadconfig , ./nxserver и т.д. Ответ прост - этого пути нет в переменной $PATH, посему добавьте его туда. Не радуйтесь, это не все. Проблему будут. И мы будем их решать. Но сначала ставим клиент. Установка клиента. Детальная инструкция с ходом установки находиться здесь - http://www.nomachine.com/documents/client/install.html#2 Впрочем, процесс установки абсолютно прост и не требует заоблачных знаний, сиди себе и кликай на кнопки Next да Install Установка соединения, тоже сложности не вызывает: http://www.nomachine.com/screenshot/windows-client-install.php Мною были проделаны сходные операции: Как видите никаких различий Здесь, я выбрал KDE, так как только она и стоит у меня на FreeBSD. Разрешение 800x600 - что бы видеть все в окне. Указываю, что хочу еще раз глянуть настройки Убедившись, что верно сохраняю их ввожу имя пользователя и пароль и жму ок. вот здесь нас и поджидает первый облом: Server not installed or NX access disabled. Здесь нужно остановиться немного на том, как работает FreeNX. Работает он до банального просто - через ssh. Ничего нового. Все старо как мир(пример с уже рабочего сервера): [skif@ackinak.mob] /usr/X11R6/NX/bin/:ps auxwww | grep nx skif 1413 3,1 2,1 13428 10596 ?? S 2:01 0:01,42 /usr/X11R6/NX//bin/nxagent -persistent -name NX - skif@ackinak.mob:1005 - Ackinak-mob (GPL Edition) -option /usr/home/skif/.nx/C-ackinak.mob-1005-CA3AC5B0CD718CBC117C5D2507379C24/options -kbtype pc102/en_US -geometry fullscreen -bs :1005 skif 1400 2,8 1,7 12540 8888 ?? S 2:01 0:01,42 /usr/X11R6/NX//bin/nxagent -persistent -name NX - skif@ackinak.mob:1005 - Ackinak-mob (GPL Edition) -option /usr/home/skif/.nx/C-ackinak.mob-1005-CA3AC5B0CD718CBC117C5D2507379C24/options -kbtype pc102/en_US -geometry fullscreen -bs :1005 root 1125 0,0 0,6 6252 3284 ?? Is 2:01 0:00,05 sshd: nx [priv] (sshd) nx 1127 0,0 0,6 6252 3320 ?? I 2:01 0:00,01 sshd: nx@notty (sshd) nx 1128 0,0 0,4 3376 2196 ?? Is 2:01 0:00,13 /usr/local/bin/bash /usr/X11R6/NX/bin/nxserver -c /usr/X11R6/NX//bin/nxserver nx 1261 0,0 0,4 3376 2176 ?? I 2:01 0:00,00 /usr/local/bin/bash /usr/X11R6/NX/bin/nxserver -c /usr/X11R6/NX//bin/nxserver nx 1262 0,0 0,1 1248 472 ?? I 2:01 0:00,00 sleep 60 nx 1263 0,0 0,4 3376 2176 ?? I 2:01 0:00,00 /usr/local/bin/bash /usr/X11R6/NX/bin/nxserver -c /usr/X11R6/NX//bin/nxserver nx 1264 0,0 0,4 3376 2176 ?? I 2:01 0:00,01 /usr/local/bin/bash /usr/X11R6/NX/bin/nxserver -c /usr/X11R6/NX//bin/nxserver nx 1266 0,0 0,6 3372 2836 ?? I 2:01 0:00,04 [ssh] nx 1267 0,0 0,1 1268 600 ?? I 2:01 0:00,00 tee -a /var/log/nxserver.log skif 1271 0,0 0,4 3844 2132 ?? Is 2:01 0:00,03 tcsh -c /usr/X11R6/NX//bin/nxnode --startsession skif 1272 0,0 0,4 3308 2204 ?? I 2:01 0:00,08 /usr/local/bin/bash /usr/X11R6/NX//bin/nxnode --startsession skif 1393 0,0 0,4 3328 2224 ?? I 2:01 0:00,00 /usr/local/bin/bash /usr/X11R6/NX//bin/nxnode --startsession skif 1395 0,0 0,1 1280 736 ?? S 2:01 0:00,01 tail -n1 -f /usr/home/skif/.nx/C-ackinak.mob-1005-CA3AC5B0CD718CBC117C5D2507379C24/session skif 1396 0,0 0,4 3336 2232 ?? S 2:01 0:00,45 /usr/local/bin/bash /usr/X11R6/NX//bin/nxnode --startsession skif 1397 0,0 0,4 3328 2224 ?? I 2:01 0:00,00 /usr/local/bin/bash /usr/X11R6/NX//bin/nxnode --startsession skif 1398 0,0 0,4 3312 2208 ?? I 2:01 0:00,01 /usr/local/bin/bash /usr/X11R6/NX//bin/nxnode --startsession skif 1420 0,0 0,8 6600 4104 ?? IN 2:01 0:00,00 /usr/X11R6/NX//bin/nxagent -persistent -name NX - skif@ackinak.mob:1005 - Ackinak-mob (GPL Edition) -option /usr/home/skif/.nx/C-ackinak.mob-1005-CA3AC5B0CD718CBC117C5D2507379C24/options -kbtype pc102/en_US -geometry fullscreen -bs :1005 [skif@ackinak.mob] /usr/X11R6/NX/bin/: Обратили внимание? Присутствует пользователь nx. Смотрим, есть ли он в /etc/passwd. У меня не оказалось, увы. Трагедии в этом нет: [root@ackinak.mob] /usr/X11R6/NX/bin/:./nxsetup --help nxsetup - Setup the FreeNX server. Syntax: nxsetup --help nxsetup --install [--setup-nomachine-key] [--uid <nummber>] [--clean [--purge]] nxsetup --uninstall [--purge] --help Displays this help message --install Install nessesary files and add the nx user --setup-nomachine-key Allow login with the key shipped with the NoMachine client. This is not as secure, but it simplifies the configuration of clients. Use this option at your own risk. --ssh2 Additionally create commercial pubkey-support, beware own _commercial_ ssh2-key is not supported!. --uid <number> The nx user will be given the uid <number>. --gid <number> The nx user will be given the gid <number>. --clean Performs an uninstall prior to the installation --uninstall Remove log and session files, as well as the nx user --purge Uninstall will remove extra configuration files and ssh keys as well. Note that node.conf will always be saved. [root@ackinak.mob] /usr/X11R6/NX/bin/: Все что нам нужно пустить nxsetup с ключем -install [root@ackinak.mob] /usr/X11R6/NX/bin/:./nxsetup -install И в итоге: [root@ackinak.mob] /usr/X11R6/NX/bin/:less /etc/passwd | grep nx nx:*:1002:1002:User &:/home/nx/:/usr/X11R6/NX/bin/nxserver [root@ackinak.mob] /usr/X11R6/NX/bin/: То что нам и нужно. Да вот только картинка не измениться. Причина в ключах для ssh: NX> 203 NXSSH running with pid: 4324 NX> 285 Enabling check on switch command NX> 285 Enabling skip of SSH config files NX> 285 Setting the preferred NX options NX> 200 Connected to address: 10.0.38.239 on port: 22 NX> 202 Authenticating user: nx NX> 208 Using auth method: publickey NX> 204 Authentication failed. Если вы собираетесь строить надежный закрытый сервер, колдуйте с nxkeygen: [root@ackinak.mob] /usr/X11R6/NX/bin/:./nxkeygen Backing up existing server key to /home/nx//.ssh/server.id_dsa.pub.key.20070311-021451 Backing up existing client key to /home/nx//.ssh/client.id_dsa.key.20070311-021451 Unique key generated; your users must install /home/nx//.ssh/client.id_dsa.key on their computers. То бишь, сей файл нужно на клиентскую машину положить. Если не можете, не умеете, нет времени или еще какая причина, тоже есть выход: [root@ackinak.mob] /usr/X11R6/NX/bin/:nxsetup --install --clean --purge --setup-nomachine-key Removing user nx ...done Removing session database ...done Removing logfile ...done Removing nx home directory ...done Removing configuration files ...done Setting up /usr/X11R6/NX/etc/nxserver/ ...done Generating public/private dsa key pair. Your identification has been saved in /usr/X11R6/NX/etc/nxserver//users.id_dsa. Your public key has been saved in /usr/X11R6/NX/etc/nxserver//users.id_dsa.pub. The key fingerprint is: fe:90:8b:28:0f:86:63:ce:20:a7:eb:8f:c5:e3:a8:1d root@ackinak.mob Setting up /var/lib/nxserver/ ...done Setting up /var/log/nxserver.log ...done Setting up user nx ...done Setting up known_hosts and authorized_keys2 ...Setting up permissions ...done Ok, nxserver is ready. PAM authentication enabled: All users will be able to login with their normal passwords. PAM authentication will be done through SSH. Please ensure that SSHD on localhost accepts password authentication. You can change this behaviour in the /usr/X11R6/NX/etc/nxserver//node.conf file. Have Fun! [root@ackinak.mob] /usr/X11R6/NX/bin/: Как видите, nxsetup спасет мир. Снова соединяемся видим Вот оно! Добились! Как бы не так. Расслабляться нельзя, подлянки ждут на каждом шагу. Окошко висит долго-долго. Вот тут и приплыли. Смотрим лог(жмем Detail) NX> 203 NXSSH running with pid: 3608 NX> 285 Enabling check on switch command NX> 285 Enabling skip of SSH config files NX> 285 Setting the preferred NX options NX> 200 Connected to address: 10.0.38.239 on port: 22 NX> 202 Authenticating user: nx NX> 208 Using auth method: publickey HELLO NXSERVER - Version 1.4.0-44 OS (GPL) NX> 105 hello NXCLIENT - Version 1.4.0 NX> 134 Accepted protocol: 1.4.0 NX> 105 SET SHELL_MODE SHELL NX> 105 SET AUTH_MODE PASSWORD NX> 105 login NX> 101 User: skif NX> 102 Password: NX> 103 Welcome to: ackinak.mob user: skif NX> 105 listsession --user="skif" --status="suspended,running" --geometry="1024x768x32+render" --type="unix-kde" NX> 127 Sessions list of user 'skif' for reconnect: Display Type Session ID Options Depth Screen Status Session Name ------- ---------------- -------------------------------- -------- ----- -------------- ----------- ------------------------------ NX> 148 Server capacity: not reached for user: skif NX> 105 startsession --link="adsl" --backingstore="1" --nodelay="1" --cache="8M" --images="32M" --media="0" --session="freebsd-mob" --type="unix-kde" --cookie="******" --geometry="fullscreen" --kbtype="pc102/en_US" --screeninfo="800x600x32+render" NX> 1000 NXNODE - Version 1.4.0-44 OS (GPL) NX> 700 Session id: ackinak.mob-1006-1866F583237FC76D73E78134D9F623A8 NX> 705 Session display: 1006 NX> 703 Session type: unix-kde NX> 701 Proxy cookie: 756e512d34720b3f49a5fa3060ff5527 NX> 702 Proxy IP: 10.0.43.242 NX> 706 Agent cookie: 12ada74861e074b4da3f801b0b62079b NX> 704 Session cache: unix-kde NX> 707 SSL tunneling: 0 NX> 105 /usr/X11R6/NX//bin/nxserver: line 880: 3224 Terminated: 15 ( sleep $AGENT_STARTUP_TIMEOUT; exit 1 ) NX> 504 Session startup failed. NX> 1004 Error: nxagent failed to start with: Unrecognized option: 1 NX> 1001 Bye. Killed by signal 15. Не весело. Строка 880 ничего ценного не содержит. После долгих гаданий и взываний к nxnode выяснилось, что для старта нужен бинарник nxagent, а вот тут и нарисовалось кое-что интересное и новенькое: [root@ackinak.mob] /usr/X11R6/NX/bin/:nxagent --help /libexec/ld-elf.so.1: Shared object "libXcompext.so.1" not found, required by "nxagent" [root@ackinak.mob] /usr/X11R6/NX/bin/: Опаньки! Библиотеки-то нет: [root@ackinak.mob] /usr/X11R6/NX/bin/:ldconfig -r | grep libXcompext [root@ackinak.mob] /usr/X11R6/NX/bin/: Точно нет. Надо прописать [root@ackinak.mob] /usr/X11R6/NX/:ldconfig -R /usr/X11R6/NX/lib/ [root@ackinak.mob] /usr/X11R6/NX/:ldconfig -r | grep libXcompext 769:-lXcompext.1 => /usr/X11R6/NX/lib//libXcompext.so.1 [root@ackinak.mob] /usr/X11R6/NX/: Ну вот, совсем другой разговор. Для подстраховки LD_LIBRARY_PATH=/usr/X11R6/NX/lib прописываю у себя и /etc/ld.so.conf [root@ackinak.mob] /usr/X11R6/NX/:less /home/skif/.cshrc | grep LD_LIBRARY_PATH setenv LD_LIBRARY_PATH /usr/X11R6/NX/lib [root@ackinak.mob] /usr/X11R6/NX/: [root@ackinak.mob] /usr/X11R6/NX/:less /etc/ld.so.conf /usr/X11R6/NX/lib [root@ackinak.mob] /usr/X11R6/NX/: Проверяем работу nxagent: [root@ackinak.mob] /usr/X11R6/NX/bin/:nxagent --help Unrecognized option: --help use: X [:<display>] [option] -a # mouse acceleration (pixels) -ac disable access control restrictions -audit int set audit trail level -auth file select authorization file bc enable bug compatibility ...... Вывод достаточно большой и приводить его, как по мне нужды нет. Кому интересно, пусть сам глянет. Работает, ну и бог с ним. Наше дело маленькое - соединиться с сервером. Пробуем и опять ничего. Та же ошибка, тот же лог. Танцы с бубном да и только. Выход один - изучать nxnode. Да только что? Все хорошо. Казалось бы пора лог глянуть. Да вот только там ничего нового, тоже что и у клиента. Ради интереса можете глянуть. Спросите, а где же тот самый, расширенный 7-го уровня? Хороший вопрос. А он не там. Совсем не там. Где? Да у вас в папке пользователя на сервере: [root@ackinak.mob] /usr/home/skif/:lf /usr/home/skif/.nx/ F-C-ackinak.mob-1007-3DA6862AADE632DDD6CC9FA26616DC7A/ [root@ackinak.mob] /usr/home/skif/: Видите папку(папки) такого вида? Здесь! [root@ackinak.mob] /usr/home/skif/:cd /usr/home/skif/.nx/F-C-ackinak.mob-1007-3DA6862AADE632DDD6CC9FA26616DC7A/ [root@ackinak.mob] /usr/home/skif/.nx/F-C-ackinak.mob-1007-3DA6862AADE632DDD6CC9FA26616DC7A/:lf authority options pids/ scripts/ session [root@ackinak.mob] /usr/home/skif/.nx/F-C-ackinak.mob-1007-3DA6862AADE632DDD6CC9FA26616DC7A/: Точнее в файлике session: [root@ackinak.mob] /usr/home/skif/.nx/F-C-ackinak.mob-1007-3DA6862AADE632DDD6CC9FA26616DC7A/:less session Warning: Option -bs without arguments disables backing-store. Warning: Use -bs [forced|when_requested|never] to set required mode. Unrecognized option: 1 use: X [:<display>] [option] -a # mouse acceleration (pixels) -ac disable access control restrictions -audit int set audit trail level -auth file select authorization file bc enable bug compatibility -br create root window with black background +bs enable any backing store support -bs disable any backing store support ....... Полностью лог приводить нет нужды - мы и так схватили ошибку за хвост! Вот она : "Warning: Option -bs without arguments disables backing-store." Что в ней такого? Именно это и вызывает "Unrecognized option: 1", только одна запись в этом логе имеет такую же ошибку, что и в логе клиента. Мучать долго не буду: [root@ackinak.mob] /usr/home/skif/.nx/F-C-ackinak.mob-1007-3DA6862AADE632DDD6CC9FA26616DC7A/:cd /usr/X11R6/NX/bin/ [root@ackinak.mob] /usr/X11R6/NX/bin/: [root@ackinak.mob] /usr/X11R6/NX/bin/:ee nxnode Ищем -bs(подсказка, строка 39): node_start_agent() { # close input and output file descriptors exec 0<&- exec 1>&- exec 2>&- export DISPLAY="nx/nx,options=$USER_FAKE_HOME/.nx/C-$sess_id/options:$display" export XAUTHORITY="$USER_FAKE_HOME/.nx/C-$sess_id/authority" export HOME="$USER_FAKE_HOME" # backwards compatibility K="" [ -n "$keyboard" ] && K="-keyboard $keyboard" [ -n "$kbtype" ] && K="-kbtype $kbtype" B="" [ -n "$backingstore" ] && B="-bs $backingstore" Не знаю, пока, что такое $backingstore - нет желания разбираться, но именно он корень зла. Убираем его, приводя строку к виду: node_start_agent() { # close input and output file descriptors exec 0<&- exec 1>&- exec 2>&- export DISPLAY="nx/nx,options=$USER_FAKE_HOME/.nx/C-$sess_id/options:$display" export XAUTHORITY="$USER_FAKE_HOME/.nx/C-$sess_id/authority" export HOME="$USER_FAKE_HOME" # backwards compatibility K="" [ -n "$keyboard" ] && K="-keyboard $keyboard" [ -n "$kbtype" ] && K="-kbtype $kbtype" B="" [ -n "$backingstore" ] && B="-bs" Все, наша работа закончена: Итоговый скриншот: http://www.opennet.ru/soft/freenx_freebsd_10.png Подводим итоги: На все это было потрачено порядка 3-4 часов включая: компилирование исходного кода, отвлечение на девушку сидящую рядом и готовку чего-нить перекусить. Конечно танцы с бубном не самое лучше время препровождения, но что есть, то есть. Я к исходу этого времени получил доступ к своему ноутбуку и KOffice, а остальные, думается мысли по поводу, что не Citrix единым жив человек. Конечно, многие могут возразить - проще было настроить VNC. Проще. Не спорю. Но я возлагаю, и не без оснований, большие надежды на NXServer и FreeNX в частности. Это очень хорошая альтернатива Citrix + Solaris/HP-UX. Конечно есть куча вопросов и претензий у меня к FreeNX, но прошло всего несколько часов с момента его установки, что бы взвешено бросаться обвинениями в адрес продукта, но одно могу сказать твердо - работать с FreeNX гораздо комфортнее, чем с VNC. Уровень комфорта сопоставим с Citrix и MS TS. К сожалению, данная статья не рассматривает вопрос работы клиентов *nix-like ОС. Но мое мнение, что особых проблем в работе возникнуть недолжно. Источники: 1. Сайт компании NoMachine http://www.nomachine.com . Все основные ссылки перечислены по ходу статьи. 2. Собственно стартовые скрипты продукта, подсмотренные при помощи утилиты less и редактора ee. 3. man ldconfig Чижиков Владимир (Skif Swarogich)

<< Предыдущая ИНДЕКС Правка src / Печать Следующая >>

Обсуждение [ Линейный режим | Показать все | RSS ]
  • 1.1, LM (??), 20:33, 14/03/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    За статью конечно спасибо. Но можно глупый вопрос? Чем не устроил XDMCP / VNC / или бональный X forwarding?
     
     
  • 2.3, Skif (ok), 00:04, 15/03/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Ну в принципе за меня ответили. это раз.
    Второе, vnc мне в принципе тоже не нравиться. Неудобен. RAdmin по сравнению с ним манна небесная.
    По поводу пускания приложений из винды X-вых, коннект к сессиям и т.д. - тоже не любитель всего этого. Сначала поковыряйся на сервере, настрой, потом поковыряйся на клиенте, тоже настрой. Следует не забывать, что клиент - Windows. Ну гемморно это. Когда прижимало, в те редкие моменты, когда у меня стоял Windows на машине - делал, но приятным время припровождением не назовешь. Это третье.
    Четвертое. Так как активно не люблю винду, хотя за нее получаю больше всего денег, то люблю "внедрять" решения альтернативные виндузятным. Есть у меня ряд критичных сервисов, которые глюкаво в определенных условиях работают под виндой, но есть аналоги под *nix, причем визуально похожие. Так как пользуется этим в основном руководство, понятное дело, глюкавость не приветствуется.
    Ранее извратами занимался, сейчас - достаточно просто и напрямую можно реализовать, через фряху. При этом в настройке может участвовать человек с уровнем подготовки ниже среднего. Думаю проинсталить клиента, да положить ярлык на стол сможет любой мальчишка из службы саппорта.
    Посему ставил сие еще из эксперимента - вдруг чего полезного выйдет - vnc настроить никогда ж не поздно.
    Вышло. Теперь отрабатываю модели работы.
     

  • 1.2, Linus Torvalds (?), 22:35, 14/03/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    3) А как сделать "б_О_нальный X forwarding" на виндовую машину? (я знаю, но это - ж@%а :-)

    2) После того как попробуешь NX*, VNC будешь просто молча сносить ... хотя возможно это слишком мое, персональное, всегда его не любил.

    1) Про XDMCP ничего не скажу, не пришлось как то ...

     
     
  • 2.12, Andrew Kolchoogin (?), 14:46, 15/03/2007 [^] [^^] [^^^] [ответить]  
  • +/
    > 3) А как сделать "б_О_нальный X forwarding" на виндовую машину? (я знаю, но это - ж@%а :-)
    Э-э-э? Аффтар никогда не видел PuTTY? Галочку поставить в настройках соединения -- это жопа?
     

  • 1.4, FreeTiger (?), 00:27, 15/03/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    спасибо уважаемый
     
  • 1.5, eplumber (??), 06:53, 15/03/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Огромное спасибо автору!
    У самого руки растут немного криво, поэтому помучил freenx пару дней и начал строить сервер терминалов на линухе, с помощью 2xterminalserver http://www.2x.com
    Теперь всетаки сделаю его на любимой фряхе!
    Еще раз спасибо!
     
     
  • 2.6, Gleb (?), 09:38, 15/03/2007 [^] [^^] [^^^] [ответить]  
  • +/
    собственно, всё здоворово, спасибо автору... всё хочу попробовать покрутить NX, да всё времени не хватает.

    но для задачи -- получить доступ из удалённой винды к KOffice, несколько странные трудозатраты. ssh (putty) -C -X и XMing в качестве виндового икс-сервера, и вуаля. Пять минут на настройку, вместе с установкой

     

  • 1.7, Shura (??), 10:05, 15/03/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    все же слово "проект" пишется через Е.
     
     
  • 2.8, Skif (??), 12:50, 15/03/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Извините? что не все исключения помню, при написании буквы "э" после гласных. Издержки, так сказать, новой украинской системы образования, где в ВУЗах русский язык вообще не изучается. Что помнил со школькной скамьи, то и написал.
     

  • 1.9, mig (??), 13:48, 15/03/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Хорошая статья, c приколами, чем хорош NX? -статья в "системном администраторе" (NX в 10 раз более шустрый чем VNC)
    На сусе NX уже встроеный. Только с лицензиями не понятно-два входа и все-за остальное плати, мы где или как? Господа-срочно нужно лекарство выдумать от такого безобразия!
     
  • 1.10, mig (??), 13:50, 15/03/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Кстати в мире стоит машинка тестовая с NX,
    вот адрес
    testdrive.nomachine.com
    заходите -тестируйте-даже интернет через них работает
     
  • 1.11, Andrew Kolchoogin (?), 14:45, 15/03/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    В принципе, если _подготовить_ почву, то есть, настроить XDMCP, настроить LBX, тогда да, X -query IP.ADDRESS.of.Notebook с Винды быстрее. И работать будет хорошо. :)
    Но если хочется потрахаться с FreeNX -- путь автора, несомненно, правильнее. :)
     
     
  • 2.13, Vovans (?), 12:59, 16/03/2007 [^] [^^] [^^^] [ответить]  
  • +/
    н-да... Для Линуха скачал вчера с x2.com сервер и клиент, минут за 10 разобрался, хотя никогда раньше не поднимал терм сервер на Линухе. Так-то.
     
     
  • 3.14, Vovans (?), 13:19, 16/03/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Кстати, проверил сервер на x2 -- три подключения и всё Ок, т.е. 3 > 2 =))
     

  • 1.15, FSA (ok), 15:32, 16/03/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Блиблиотеку прописал, но вылез следующий глюк:
    [fsa@fsawork /usr/X11R6/NX/bin]$ ./nxagent                 [17:28][16:03:2007]
    /libexec/ld-elf.so.1: /usr/X11R6/NX/lib/libXcompext.so.1: Undefined symbol "_NXEnableCleanGet"
     
     
  • 2.16, Skif (ok), 01:23, 17/03/2007 [^] [^^] [^^^] [ответить]  
  • +/
    >Блиблиотеку прописал, но вылез следующий глюк:
    >[fsa@fsawork /usr/X11R6/NX/bin]$ ./nxagent          
    >       [17:28][16:03:2007]
    >/libexec/ld-elf.so.1: /usr/X11R6/NX/lib/libXcompext.so.1: Undefined symbol "_NXEnableCleanGet"


    ldconfig -r | grep -r libXcompext
    скорее всего отсутствует

    сделайте
    ldconfig -R /usr/X11R6/NX/lib/

    echo "/usr/X11R6/NX/lib/" >> /etc/ld.so.conf
    echo "/usr/X11R6/NX/lib/" >> /etc/ld-elf.so.conf

    После этого сделайте
    /usr/X11R6/NX/bin/nxagent
    И все заработает. :) У меня тоже такая ошибка была

     
     
  • 3.21, Pilot (??), 16:50, 22/03/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Однако нет.
    /usr/X11R6/NX/bin/nxagent
    /libexec/ld-elf.so.1: /usr/X11R6/NX/lib//libXcompext.so.1: Undefined symbol "_NXEnableCleanGet"
    Может еще что подправить ? :( {FreeBSD 6.2-RELEASE-p3}
     
     
  • 4.22, Skif (ok), 13:04, 23/03/2007 [^] [^^] [^^^] [ответить]  
  • +/
    >Однако нет.
    >/usr/X11R6/NX/bin/nxagent
    >/libexec/ld-elf.so.1: /usr/X11R6/NX/lib//libXcompext.so.1: Undefined symbol "_NXEnableCleanGet"
    >Может еще что подправить ? :( {FreeBSD 6.2-RELEASE-p3}


    ldconfig -r | grep '/var/run/ld-elf.so.hints'
    ldconfig -r | grep 'search directories:'
    покажите

     
     
  • 5.30, Vova (?), 18:24, 28/05/2007 [^] [^^] [^^^] [ответить]  
  • +/
    >ldconfig -r | grep '/var/run/ld-elf.so.hints'
    >ldconfig -r | grep 'search directories:'
    >покажите

    Ошибка такая-же, вот что говорит в ответ:

    Free% ldconfig -r | grep '/var/run/ld-elf.so.hints'
    /var/run/ld-elf.so.hints:
    Free% ldconfig -r | grep 'search directories:'
            search directories: /lib:/usr/lib:/usr/lib/compat:/usr/X11R6/lib:/usr/local/lib:/usr/local/lib/mysql:/usr/local/lib/kde3:/usr/X11R6/NX/lib/

     
  • 4.24, eplumber (??), 13:43, 02/04/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Привет! меня такой-же тупнячок настиг. вставить /usr/X11R6/NX/lib перед /usr/X11R6/lib я не смог, и просто скопировал libX11* из /usr/X11R6/NX/lib в /usr/X11R6/lib
     
     
  • 5.25, Skif (ok), 16:41, 03/04/2007 [^] [^^] [^^^] [ответить]  
  • +/
    >Привет! меня такой-же тупнячок настиг. вставить /usr/X11R6/NX/lib перед /usr/X11R6/lib я не смог,
    >и просто скопировал libX11* из /usr/X11R6/NX/lib в /usr/X11R6/lib


    С этим надо быть по аккуратнее - если вам потребуется работать с иксами локально на машине - можете получить опеределенный гемор с приложениями.

     

  • 1.17, eplumber (??), 09:30, 17/03/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Мне еще понадобился последний совет со странички http://openfacts.berlios.de/index-en.phtml?title=FreeNX_FAQ/Problem_Solving
     
  • 1.18, vaas (?), 20:03, 17/03/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    а по трафику кто может чего привести?
    для XDMCP,VNC и NX соответственно

    одно помню раньше пробовал в винды на KDE через XDMCP сожрало около 20 метров только на открытие сессии.
    В общем RDP тут и быстрее всех и гибче и нам *nix-ах пока расти и расти до них ;)

     
     
  • 2.19, Skif (ok), 12:18, 18/03/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Ну тогда стоит Citrix просить вспомнить вновь о unix-like системах. Ибо их продукт для спарковской соляры, hp-ux-а да aix был в миру. А что-что , но Citrix уж получше rdp будет. ica гораздо боле функционален. Главный его недостаток - надстройка над MS TS.
     
  • 2.20, eplumber (??), 07:43, 20/03/2007 [^] [^^] [^^^] [ответить]  
  • +/
    Померить пока нечем, но прикидки на глаз, по счетчикам netstat, дают примерно 400 кб на открытие сессии с fvwm2 ну и примерно 40 - 60 кб/сек в работе. Это при оптимизации LAN
     

  • 1.23, CRAZY (?), 01:39, 25/03/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    народ буквально умоляю кто разобрался с НХ напишите мне в асю ICQ#: 287440   просто умоляю ...
     
  • 1.26, dread (??), 17:18, 09/04/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Народ а кто подскажет, как конектиться к существующей сессии kde например, а не запускать новую, те возможно ли использовать freenx как radmin ?
     
     
  • 2.27, Skif (ok), 20:30, 09/04/2007 [^] [^^] [^^^] [ответить]  
  • +/
    >Народ а кто подскажет, как конектиться к существующей сессии kde например, а
    >не запускать новую, те возможно ли использовать freenx как radmin ?
    >


    нет. FreeNX работает на основе SSH и каждый раз из под пользоывателя nx создает новую сессию. Все что вам остается из под созданной сессии попробовать подцепить screen уже имеющейся. Но у меня на FreeNX это не получалось.

     

  • 1.29, danil (??), 08:22, 13/05/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    как radmin можно: необходимо чтобы модуль vnc.so был у тебя в иксах (ну или просто по другому запущен)
    а в NXclient'е в параметре Desktop вместо юникс надо выбрать VNC и нажать рядом кнопку сеттингс и заполнить остальные параметры

    P.S. правда у меня не freeNX а nxserver-freeedition, gentoo собирал с флагами rdesktop и vnc

    если мониторить надо другую машину в сети с виндой  то аналогично выбрать RDP и параметры - все работает на ура
    дополнительные параметры для vnc и rdp можно прописать в конфиге server.cfg

     
     
  • 2.31, sam (??), 10:27, 03/06/2007 [^] [^^] [^^^] [ответить]  
  • +/
    >Надо прописать
    >
    >        [root@ackinak.mob] /usr/X11R6/NX/:ldconfig -R /usr/X11R6/NX/lib/
    >        [root@ackinak.mob] /usr/X11R6/NX/:ldconfig -r | grep libXcompext
    >                769:-lXcompext.1 => /usr/X11R6/NX/lib//libXcompext.so.1
    >        [root@ackinak.mob] /usr/X11R6/NX/:

    Эту часть решил, вставив в Makefile после ONLY_FOR_ARCHS= I386 строчку:
    USE_LDCONFIG= /usr/X11R6/NX/lib

     

  • 1.32, nx (?), 16:22, 15/06/2007 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Подскажите пожалуйста, ставлю из портов freenx (FreeBSD6.2, порты обновлены сегодня)

    make clean
    make install

    заканчивается

    install  -s -o root -g wheel -m 555 /usr/ports/net/nxserver/work/nx-X11/programs/Xserver/nxagent /usr/local/NX/bin
    install: /usr/ports/net/nxserver/work/nx-X11/programs/Xserver/nxagent: No such file or directory
    *** Error code 71

    Stop in /usr/ports/net/nxserver.
    *** Error code 1

    Stop in /usr/ports/net/freenx.

     
     
  • 2.33, brag (ok), 23:03, 16/06/2007 [^] [^^] [^^^] [ответить]  
  • +/
    >В общем RDP тут и быстрее всех и гибче и нам *nix-ах пока расти и расти до них ;)
    Да, согласен 100%, хотя сам не перевариваю мелковягких
    Гибкость ипт, то все фигня,а вот, что даже по gprs можно управлять тачкой-это уже что-то. нам пока такого не дано.
    X-ы компресь-не компресь,а все равно жрет прилично и тормозит.пробовал всякие dxpc,фигня.. vnc самый приемлемый из всех,ххотя тоже отстой
     
  • 2.34, dizoriented (?), 21:11, 12/07/2007 [^] [^^] [^^^] [ответить]  
  • +/
    freenx с новым xorg'ом компилироваться пока не хочет. Ставь из репозитария package:

    # pkg_add -r freenx


    >Подскажите пожалуйста, ставлю из портов freenx (FreeBSD6.2, порты обновлены сегодня)
    >
    >make clean
    >make install
    >
    >заканчивается
    >
    >install  -s -o root -g wheel -m 555 /usr/ports/net/nxserver/work/nx-X11/programs/Xserver/nxagent /usr/local/NX/bin
    >install: /usr/ports/net/nxserver/work/nx-X11/programs/Xserver/nxagent: No such file or directory
    >*** Error code 71
    >
    >Stop in /usr/ports/net/nxserver.
    >*** Error code 1
    >
    >Stop in /usr/ports/net/freenx.


     

  • 1.35, Kuksha (??), 18:15, 01/11/2008 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Кто как а я вот не могу понять что нужно записать в
    #USER_X_STARTUP_SCRIPT=.Xclients
    #DEFAULT_X_SESSION=/etc/X11/xdm/Xsession
    Ставил из портов, как и в статье.
    (Установлено: FreeBSD 7.0 + X.Org X Server 1.4.2 + KDE 3.5.8)

    Люди! Подскажите! Очень прошу!

     
  • 1.36, Mtrace (?), 14:04, 08/07/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    К сожалению, на FreeBSD FreeNX нормально работать не будет, даже если в итоге и поставить тот старый порт, который, к слову уже давно не поддерживается. Если хотите нормально использовать FreeNX, то это возможно только в Linux.
     
     
  • 2.37, Denis (??), 14:00, 25/10/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Не будет работать? Незнаю как у вас, настроил все только что на 7ой версии, порты последние. Все прекрасно работает :)
     

  • 1.38, Denis (??), 18:25, 08/11/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    http://icpu.ru/?p=69 - мануал по FreeNX и KDE4
     
  • 1.39, zeone (?), 20:10, 04/01/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Подскажите чтот сделать у при попытке исправить багу с библиотеками показует такое
    zeone# ldconfig -R /usr/X11R6/NX/lib/
    ldconfig: /usr/X11R6/NX/lib/: ignoring world-writable directory
    можете подробнее описать  этот пункт и дать какуюту инфу что сделать чтооб после ребута оно само стартотовало
     
  • 1.40, zeone (?), 23:24, 04/01/2010 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    С предидущей проблемой разобралса но появилась новая при конекте доходит до получения информации сесии и выбивает вот лог
    NX> 707 SSL tunneling: 1
    /usr/local/NX/bin/nxserver: line 1190: 43001 Terminated: 15          sleep $AGENT_STARTUP_TIMEOUT
    NX> 105 NX> 596 Session startup failed.
    NX> 1004 Error: NX Agent exited with exit status 1.
    Can't open /usr/local/NX/var/db/running/sessionId{9B027469EE43431978F23868AAD96023}: No such file or directory.
    NX> 1006 Session status: closed
    mv: rename /usr/local/NX/var/db/running/sessionId{9B027469EE43431978F23868AAD96023} to /usr/local/NX/var/db/closed/sessionId{9B027469EE43431978F23868AAD96023}: No such file or directory
    NX> 1001 Bye.
    NX> 280 Exiting on signal: 15

    Просто этой директории у меня сначала небыло создал сам чмод кинул 777 подскажите

     
  • 1.41, tehnikpc (ok), 09:57, 02/07/2012 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    "несколько расстроило только сообщение вида"
    На много больше расстраивает сообщение:
    "nxserver-2.1.0_8 is only for i386, while you are running amd64.
    *** Error code 1"
     

    игнорирование участников | лог модерирования

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру