Краткое содержание прошлой серии:
вводная: Все действия производятся на следующих сборках от etersoft для archlinux - rx@etersoft-3.4.0 и nx-3.3.0 на сервере ; nxclient-3.3.0 и nx-3.3.0 на клиенте (использование nx-3.3.0 связанно с тем что на версии nx-3.4.0 не работает jpeg сжание - баг сборки с libjpeg-turbo). Кроме того на клиенте используется opennx собственной сборки из svn с наложением необходимых для linux-клиента патчами из opennx , - подробнее как что собиралось для арча в rx@etersoft под archlinux
процесс:первоначально был необоснованно оклеветан opennx клиент (оный был много раз пересобран - что пошло только на пользу), как в последствии выяснилось дело было не в бабине клиенте , а явно в сервере - на что указали многочисленные полевые испытания:
oldbay писал(а): ↑21.11.2010 01:54провел ряд бесчеловечных экспериментов над разными клиентами (разными версиями opennx и nxclient аля nomahine) = результат вышел один и тот же суспенд не поднимается, с теми же симптомами что ранее давал opennx. То что я считал полнятием сессии нативным клиентом на поверку оказвлось повторной загрузкой сессии - и я сего теперь явно не могу повторить (да и не хочу). вывод оказался вполне очевидным - какой то проблемм с самими сервером.
после выяснения причин - пошла очередь попыток решения:
после моих стенаний - многоуважаемый аксакал nxкурошения dimbor предположил наличие в моих конфигах неправильной настройки параметра ENABLE_SLAVE_MODE= в 01-auth.conf
dimbor писал(а): ↑21.11.2010 02:19Увидел в логах слово "slave" и удивился. Неужели у кого-то такая хрень работает? У меня за эти долгие годы не получилось. Там вообще фантастика случается, особенно с рутлесом и шарами.
Посему ENABLE_SLAVE_MODE="0" без разговоров - наноиновацию выключить от греха, т.е.
А потом можно поглядеть и логи с деревьями процессов кустистыми, если останется надобность.
конфиг был исправлен ,но больному suspendу косторка не помогла, придется делать клизму
В дальнейшем всякие описания действий по оживления сессии из комы буду производить в данной ветке форума...
на сегодня экспериментально проверена другая функции близкая по сути к оживлению суспенда:
shadowрежим - здесь нареканий нет, все подключается и работает - клиент и сервер ведут себя смирно, в логах матюков не замечено
кроме того пробовал забирать уже открытую в терминале сессию другим терминалом , воровство вполне сходит с рук - на старом терминале сессия гаснет , на новом поднимается
в логах сервера nxserver.log
Код: Выделить всё
NX> 1000 NXNODE - Version 3.2.0-74-SVN OS (GPL, using backend: 3.3.0)
server_nxnode_echo: NX> 1000 NXNODE - Version 3.2.0-74-SVN OS (GPL, using backend: 3.3.0)
NX> 1009 Session status: suspending
session_status D5CCC2BC2A2A5C5C6CC9F2E65C4D2174 Suspending
server_nxnode_echo: NX> 1009 Session status: suspending
NX> 700 Session id: myhost-2000-D5CCC2BC2A2A5C5C6CC9F2E65C4D2174
NX> 705 Session display: 2000
NX> 703 Session type: unix-application
NX> 701 Proxy cookie: 287eb20117fea93ae137150bbd2dcc93
NX> 702 Proxy IP: 127.0.0.1
NX> 706 Agent cookie: 287eb20117fea93ae137150bbd2dcc93
NX> 704 Session cache: unix-application
NX> 707 SSL tunneling: 1
server_nxnode_echo: NX> 700 Session id: myhost-2000-D5CCC2BC2A2A5C5C6CC9F2E65C4D2174
server_nxnode_echo: NX> 705 Session display: 2000
server_nxnode_echo: NX> 703 Session type: unix-application
server_nxnode_echo: NX> 701 Proxy cookie: 287eb20117fea93ae137150bbd2dcc93
server_nxnode_echo: NX> 702 Proxy IP: 127.0.0.1
server_nxnode_echo: NX> 706 Agent cookie: 287eb20117fea93ae137150bbd2dcc93
server_nxnode_echo: NX> 704 Session cache: unix-application
server_nxnode_echo: NX> 707 SSL tunneling: 1
NX> 1005 Session status: suspended
NX> 1005 Session status: suspended
server_nxnode_echo: NX> 1005 Session status: suspended
session_suspend D5CCC2BC2A2A5C5C6CC9F2E65C4D2174
server_nxnode_echo: NX> 1005 Session status: suspended
NX> 1009 Session status: resuming
server_nxnode_echo: NX> 1009 Session status: resuming
NX> 710 Session status: running
NX> 1002 Commit
NX> 1006 Session status: running
server_nxnode_echo: NX> 710 Session status: running
server_nxnode_echo: NX> 1002 Commit
server_nxnode_echo: NX> 1006 Session status: running
NX> 105 NX> 1009 Session status: resuming
server_nxnode_echo: NX> 1009 Session status: resuming
NX> 710 Session status: running
NX> 1002 Commit
NX> 1006 Session status: running
server_nxnode_echo: NX> 710 Session status: running
server_nxnode_echo: NX> 1002 Commit
session_status D5CCC2BC2A2A5C5C6CC9F2E65C4D2174 Running
server_nxnode_echo: NX> 1006 Session status: running
bye
Bye
NX> 999 Bye
NX> 718 Session restore succeded
NX> 718 Session restore succeded
server_nxnode_echo: NX> 718 Session restore succeded
server_nxnode_echo: NX> 718 Session restore succeded
NX> 1001 Bye.
server_nxnode_echo: NX> 1001 Bye.
вроде - говорит что сессия suspend?
причем nxserver --list, говорит вроде о том же:
Код: Выделить всё
NX> 100 NXSERVER - Version 3.2.0-74-SVN OS (GPL, using backend: 3.3.0)
NX> 127 Sessions list:
Server Display Username Remote IP Session ID
------ ------- --------------- --------------- --------------------------------
127.0.0.1 2000 admin - D5CCC2BC2A2A5C5C6CC9F2E65C4D2174
NX> 999 Bye
но какой тут суспенд - если сессия в этот момент открыта и работает на другом терминале .... непонятно
если же действительно упасть в суспенд и попробовать потом подняться , то слышны следующие матюки:
от клиента:
~/.nx/temp/pid процесса/runlog
Код: Выделить всё
06:00:47: env: NX_HOME='/home/nxclient'
06:00:47: env: NX_ROOT='/home/nxclient/.nx'
06:00:47: env: NX_SYSTEM='/usr'
06:00:47: env: NX_CLIENT='/usr/bin/opennx'
06:00:47: env: NX_VERSION='3.3.0'
06:00:47: env: XAUTHORITY='/home/nxclient/.Xauthority'
06:00:47: env: NX_TEMP='/tmp'
06:00:47: Starting /usr/bin/nxssh -nx -x -2 -p 22 -o 'RhostsAuthentication no' -o 'PasswordAuthentication no' -o 'RSAAuthentication no' -o 'RhostsRSAAuthentication no' -o 'PubkeyAuthentication yes' -i /usr/share/keys/server.id_dsa.key -B -E nx@192.168.0.101
06:00:57: receiving session list ..
06:00:57: received end of session list
06:00:57: RESUME
06:01:01: Session options='nx/nx,cookie=,shmem=1,shpix=1,font=1,encryption=224,session=session,client=linux,id
=:'
~/.nx/temp/pid процесса/sshlog
Код: Выделить всё
06:00:47: NX> 203 NXSSH running with pid: 5162
06:00:47: NX> 285 Enabling check on switch command
06:00:47: NX> 285 Enabling skip of SSH config files
06:00:47: NX> 285 Setting the preferred NX options
06:00:47: NX> 200 Connected to address: 192.168.0.101 on port: 22
06:00:47: NX> 202 Authenticating user: nx
06:00:47: NX> 208 Using auth method: publickey
06:00:48: HELLO NXSERVER - Version 3.2.0-74-SVN OS (GPL, using backend: 3.3.0)
06:00:49: NX> 105
06:00:49: hello NXCLIENT - Version 3.2.0-74-SVN
06:00:49: NX> 134 Accepted protocol: 3.2.0-74-SVN
06:00:50: NX> 105
06:00:50: SET SHELL_MODE SHELL
06:00:51: NX> 105
06:00:51: SET AUTH_MODE PASSWORD
06:00:52: NX> 105
06:00:52: login
06:00:53: NX> 101 User:
06:00:53: admin
06:00:54: NX> 102 Password:
06:00:54:
06:00:56: NX> 103 Welcome to: myhost user: admin
06:00:57: NX> 105
06:00:57: listsession --user="admin" --status="suspended,running" --type="unix-application" --geometry="800x600x24+render"
06:00:57: NX> 127 Sessions list of user 'admin' for reconnect:
06:00:57:
06:00:57: Display Type Session ID Options Depth Screen Status Session Name
06:00:57: ------- ---------------- -------------------------------- -------- ----- -------------- ----------- ------------------------------
06:00:57: 2000 unix-application 09FEDE45FFF48173401652E3C2EB8FC0 -RD--PSA 24 800x600 Suspended freenx
06:00:57:
06:00:57:
06:00:57: NX> 148 Server capacity: not reached for user: admin
06:00:58: NX> 105
06:00:58: restoresession --cache="8M" --images="32M" --link="adsl" --screeninfo="800x600x24+render" --keyboard="evdev/us" --backingstore="1" --encryption="1" --composite="1" --shmem="1" --shpix="1" --streaming="1" --samba="0" --cups="0" --nodelay="1" --defer="0" --client="linux" --media="0" --strict="0" --aux="1" --session="freenx" --type="unix-application" --id="09FEDE45FFF48173401652E3C2EB8FC0"
06:00:58:
06:00:59: NX> 1000 NXNODE - Version 3.2.0-74-SVN OS (GPL, using backend: 3.3.0)
06:01:01: NX> 710 Session status: running
06:01:01: NX> 1002 Commit
06:01:01: /usr/bin/nxserver: line 1584: 11711 Terminated sleep $AGENT_STARTUP_TIMEOUT
06:01:01: NX> 1006 Session status: running
06:01:01: NX> 700 Session id: myhost-2000-09FEDE45FFF48173401652E3C2EB8FC0
06:01:01: NX> 705 Session display: 2000
06:01:01: NX> 703 Session type: unix-application
06:01:01: NX> 105 bye
06:01:01: NX> 701 Proxy cookie: f91d314844cbc1d0aa7fc33cee30c62f
06:01:01: Bye
06:01:01: NX> 999 Bye
06:01:01: NX> 702 Proxy IP: 127.0.0.1
06:01:01: NX> 285 Identified internal connection
06:01:01: NX> 285 Using default mode encrypted
06:01:01: NX> 285 Identified options: nx,options=/home/nxclient/.nx/S-/options:
06:01:01: Loop: PANIC! Can't identify NX port in string ':'.
06:01:01: Error: Can't identify NX port in string ':'.
06:01:01: Error: Parsing of NX transport options failed.
06:01:01: NX> 290 Failed to create the internal connection
от сервера /var/log/nxserver.log
Код: Выделить всё
-- NX SERVER START: - ORIG_COMMAND=
HELLO NXSERVER - Version 3.2.0-74-SVN OS (GPL, using backend: 3.3.0)
NX> 105 hello NXCLIENT - Version 3.2.0-74-SVN
NX> 134 Accepted protocol: 3.2.0-74-SVN
NX> 105 SET SHELL_MODE SHELL
NX> 105 SET AUTH_MODE PASSWORD
NX> 105 login
NX> 101 User: admin
NX> 102 Password:
Info: Auth method: ssh
NX> 103 Welcome to: myhost user: admin
NX> 105 listsession --user="admin" --status="suspended,running" --type="unix-application" --geometry="800x600x24+render"
NX> 127 Sessions list of user 'admin' for reconnect:
Display Type Session ID Options Depth Screen Status Session Name
------- ---------------- -------------------------------- -------- ----- -------------- ----------- ------------------------------
2000 unix-application 09FEDE45FFF48173401652E3C2EB8FC0 -RD--PSA 24 800x600 Suspended freenx
NX> 148 Server capacity: not reached for user: admin
NX> 105 restoresession --cache="8M" --images="32M" --link="adsl" --screeninfo="800x600x24+render" --keyboard="evdev/us" --backingstore="1" --encryption="1" --composite="1" --shmem="1" --shpix="1" --streaming="1" --samba="0" --cups="0" --nodelay="1" --defer="0" --client="linux" --media="0" --strict="0" --aux="1" --session="freenx" --type="unix-application" --id="09FEDE45FFF48173401652E3C2EB8FC0"
admin@127.0.0.1's password:
NX> 1000 NXNODE - Version 3.2.0-74-SVN OS (GPL, using backend: 3.3.0)
server_nxnode_echo: NX> 1000 NXNODE - Version 3.2.0-74-SVN OS (GPL, using backend: 3.3.0)
NX> 1009 Session status: resuming
server_nxnode_echo: NX> 1009 Session status: resuming
NX> 710 Session status: running
NX> 1002 Commit
NX> 1006 Session status: running
server_nxnode_echo: NX> 710 Session status: running
NX> 710 Session status: running
NX> 1002 Commit
NX> 1006 Session status: running
server_nxnode_echo: NX> 710 Session status: running
server_nxnode_echo: NX> 1002 Commit
session_status 09FEDE45FFF48173401652E3C2EB8FC0 Running
server_nxnode_echo: NX> 1002 Commit
server_nxnode_echo: NX> 1006 Session status: running
NX> 105 server_nxnode_echo: NX> 1006 Session status: running
NX> 700 Session id: myhost-2000-09FEDE45FFF48173401652E3C2EB8FC0
NX> 705 Session display: 2000
NX> 703 Session type: unix-application
NX> 701 Proxy cookie: f91d314844cbc1d0aa7fc33cee30c62f
NX> 702 Proxy IP: 127.0.0.1
NX> 706 Agent cookie: f91d314844cbc1d0aa7fc33cee30c62f
NX> 704 Session cache: unix-application
NX> 707 SSL tunneling: 1
server_nxnode_echo: NX> 700 Session id: myhost-2000-09FEDE45FFF48173401652E3C2EB8FC0
server_nxnode_echo: NX> 705 Session display: 2000
server_nxnode_echo: NX> 703 Session type: unix-application
server_nxnode_echo: NX> 701 Proxy cookie: f91d314844cbc1d0aa7fc33cee30c62f
server_nxnode_echo: NX> 702 Proxy IP: 127.0.0.1
bye
Bye
NX> 999 Bye
server_nxnode_echo: NX> 706 Agent cookie: f91d314844cbc1d0aa7fc33cee30c62f
server_nxnode_echo: NX> 704 Session cache: unix-application
server_nxnode_echo: NX> 707 SSL tunneling: 1
NX> 1009 Session status: suspending
session_status 09FEDE45FFF48173401652E3C2EB8FC0 Suspending
NX> 596 Error: Session restore failed. Reason was: Session: Display failure detected at 'Sun Nov 21 05:58:23 2010'.
server_nxnode_echo: NX> 596 Error: Session restore failed. Reason was: Session: Display failure detected at 'Sun Nov 21 05:58:23 2010'.
NX> 1005 Session status: suspended
server_nxnode_echo: NX> 1009 Session status: suspending
session_suspend 09FEDE45FFF48173401652E3C2EB8FC0
NX> 1001 Bye.
server_nxnode_echo: NX> 1001 Bye.
server_nxnode_echo: NX> 1005 Session status: suspended
ну и как описывалось ранее - просыпания сессии не происходит
В общем експериментирую дальше - может что и прояснится
п.с: Несколько раз от стечения невероятных обстоятельств сессия всеж поднималась, но было это так редко - что я так и не смог зафиксировать условий данного подъема, и по растыкству затер логи.... возможно сие еще повторится - тогда уж точно не уйдет зверь неуловимый