Как открыть несколько X-сеансов одновременно

FreeBSD и прочие в роли десктопа.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
Monarh
ефрейтор
Сообщения: 66
Зарегистрирован: 2009-04-03 10:48:20

Как открыть несколько X-сеансов одновременно

Непрочитанное сообщение Monarh » 2009-04-03 16:26:00

Здравствуйте.
Подскажите пожалуйста как сделать несколько X-сеансов.
То есть, чтобы несколько пользователей могли одновременно работать в X'ах.
  • В файле /etc/ttys
    зарезервировал две(при необходимости можно и больше :smile: , если конечно это нужно ) виртуальные консоли под графические терминалы
    ttyv10 "/usr/local/bin/xdm -nodaemon" xterm off unsecure
    ttyv11 "/usr/local/bin/xdm -nodaemon" xterm off unsecure
Что и где ещё нужно сделать, чтобы в X'ах могли работать одновременно несколько пользователей.
Заранее большое спасибо.
_____________________________
С наилучшими пожеланиями,
Monarh

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/


Аватара пользователя
Monarh
ефрейтор
Сообщения: 66
Зарегистрирован: 2009-04-03 10:48:20

Re: Как открыть несколько X-сеансов одновременно

Непрочитанное сообщение Monarh » 2009-04-04 15:13:46

Гость писал(а):может добавить лишний Xserver в /usr/local/lib/X11/xdm/Xservers?
Посмотрел файл /usr/local/lib/X11/xdm/Xservers
его содержимое:
  • :0 local /usr/local/bin/X :0
я так понял это значит, что у меня определён только один X сервер.
по аналогии добавил
  • :1 local /usr/local/bin/X :1
Не помогло.
Правильно или нет ?
Что эта строчечка значит ?

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

При уже запущенном(startx'ом) X-сеансе от одного пользователя
и попытке запустить(startx'ом) X-сеанс от другого пользователя
вылазеет следующее:

Код: Выделить всё

xauth:  creating new authority file /home/Roman/.serverauth.75374
xauth: (argv):1:  bad display name "Roman.cn.ru:0" in "list" command
xauth: (stdin):1:  bad display name "Roman.cn.ru:0" in "add" command


Fatal server error:
Server is already active for display 0
        If this server is no longer running, remove /tmp/.X0-lock
        and start again.

Invalid MIT-MAGIC-COOKIE-1 keygiving up.
xinit:  Resource temporarily unavailable (errno 35):  unable to connect to X ser
ver
xinit:  No such process (errno 3):  Server error.
xauth: (argv):1:  bad display name "Roman.cn.ru:0" in "remove" command
Заранее большое спасибо.
_____________________________
С наилучшими пожеланиями,
Monarh



Аватара пользователя
Monarh
ефрейтор
Сообщения: 66
Зарегистрирован: 2009-04-03 10:48:20

Re: Как открыть несколько X-сеансов одновременно

Непрочитанное сообщение Monarh » 2009-04-05 6:41:34

Я просил ссылочку на русскую документацию :smile:
Но в принципе и это подошло.
Ознакомился, понял свою недоработку :smile:
Оказывается всё так просто, всего-то надо было по несколько символов добывать( -- :N ) после startx :smile:
Тобишь:
  • startx -- :0 -- Для первого X-сеанса( по умолчанию )
    startx -- :1 -- Для второго X-сеанса
    ...
Большое СПАСИБО !!!
_____________________________
С наилучшими пожеланиями,
Monarh

Гость
проходил мимо

Re: Как открыть несколько X-сеансов одновременно

Непрочитанное сообщение Гость » 2009-04-05 7:34:49

Monarh писал(а):
  • startx -- :0 -- Для первого X-сеанса( по умолчанию )
    startx -- :1 -- Для второго X-сеанса
    ...
ну а для того чтобы их запускал xdm надо редактировать /usr/local/lib/X11/xdm/Xservers



Monarh писал(а):
  • :0 local /usr/local/bin/X :0
я так понял это значит, что у меня определён только один X сервер.
да, один Xserver = один display. Вывод клиентских программ, напр. xterm, контролируется через переменную переменную окружения DISPLAY

Код: Выделить всё

$ env DISPLAY=:1 xterm
запустит xterm на втором дисплее
Monarh писал(а):по аналогии добавил
  • :1 local /usr/local/bin/X :1
Не помогло.
Правильно или нет ?
странно, у мя все прекрасно работает: xdm запускает еще один Xserver на соседнем VT, ttyv3, там где у мя в стоит в ttys(5) off и переключиться я на него могу по Ctrl+Alt+F4. Мой Xservers

Код: Выделить всё

:0 local /usr/local/bin/X -br -nolisten tcp -logo :0 
:1 local /usr/local/bin/X -br -nolisten tcp -logo :1 
и ttys (на всяк случай)

Код: Выделить всё

# Virtual terminals
ttyv0	"/usr/libexec/getty Pc"		xterm-xfree86	on  insecure
ttyv1	"/usr/libexec/getty Pc"		xterm-xfree86	on  insecure

# Graphical terminals
ttyv2	"/usr/local/bin/xdm -nodaemon"	xterm-xfree86		on insecure
ttyv3	"/usr/local/bin/xdm -nodaemon"	xterm-xfree86		off insecure
ttyv4	"/usr/local/bin/xdm -nodaemon"	xterm-xfree86		off insecure
Monarh писал(а):Что эта строчечка значит ?
Мне пересказывать всю секцию LOCAL SERVER SPECIFICATION из xdm
xdm(1) писал(а): Each specification consists of at least three parts: a display name, a
display class, a display type, and (for local servers) a command line
to start the server. A typical entry for local display number 0 would
be:
  • :0 Digital-QV local /usr/local/bin/X :0
The display types are:

local local display: xdm must run the server
foreign remote display: xdm opens an X connection to a running server
Monarh писал(а):Можно пожалуйста по-подробнее объяснить или дать ссылочку где про это можно почитать на русском.
xdm(1)
Monarh писал(а):При уже запущенном(startx'ом) X-сеансе от одного пользователя
и попытке запустить(startx'ом) X-сеанс от другого пользователя
вылазеет следующее:
startx и xdm вещи несовместимые, ибо оба будут пытаться запустить Xserver на нулевом дисплее по умолчанию
Monarh писал(а):

Код: Выделить всё

xauth:  creating new authority file /home/Roman/.serverauth.75374
xauth: (argv):1:  bad display name "Roman.cn.ru:0" in "list" command
xauth: (stdin):1:  bad display name "Roman.cn.ru:0" in "add" command
это безобидно. ЕМНИП, лечится добавлением своего хоста в /etc/hosts. Напр,

Код: Выделить всё

127.0.0.1 Roman.cn.ru
Monarh писал(а):

Код: Выделить всё

Fatal server error:
Server is already active for display 0
        If this server is no longer running, remove /tmp/.X0-lock
        and start again.
открой словарик и переведи "Server is already active for display 0"
Monarh писал(а):

Код: Выделить всё

Invalid MIT-MAGIC-COOKIE-1 keygiving up.
оно у тебя само по себе появляется или только когда пытаешься запустить несколько серверов на одном дисплее?

Аватара пользователя
Monarh
ефрейтор
Сообщения: 66
Зарегистрирован: 2009-04-03 10:48:20

Re: Как открыть несколько X-сеансов одновременно

Непрочитанное сообщение Monarh » 2009-04-09 13:19:21

Гость писал(а):может добавить лишний Xserver в /usr/local/lib/X11/xdm/Xservers?
Monarh писал(а): Посмотрел файл /usr/local/lib/X11/xdm/Xservers
его содержимое:
  • :0 local /usr/local/bin/X :0
я так понял это значит, что у меня определён только один X сервер.
по аналогии добавил
  • :1 local /usr/local/bin/X :1
Не помогло.
Правильно или нет ?
Что эта строчечка значит ?
Я тогда пытался разобраться с запуском X-сеанса startx'ом.
И именно для запуска X-сеанса startx'ом не помогло, поскольку надо было указывать

Код: Выделить всё

startx -- :1
а я пытался просто дать команду при уже запущенном X-сеансе.
То есть первый startx запускал X-сеанс без проблем,
а второй startx выдавал ошибки:

Код: Выделить всё

xauth:  creating new authority file /home/Roman/.serverauth.75374
xauth: (argv):1:  bad display name "Roman.cn.ru:0" in "list" command
xauth: (stdin):1:  bad display name "Roman.cn.ru:0" in "add" command


Fatal server error:
Server is already active for display 0
        If this server is no longer running, remove /tmp/.X0-lock
        and start again.

Invalid MIT-MAGIC-COOKIE-1 keygiving up.
xinit:  Resource temporarily unavailable (errno 35):  unable to connect to X ser
ver
xinit:  No such process (errno 3):  Server error.
xauth: (argv):1:  bad display name "Roman.cn.ru:0" in "remove" command
И я прекрасно понимал, что дело именно в том, что он пытается снова открыть X-сеанс на дисплее 0,
при том, что он уже занят, и вывел эти ошибки именно в надежде, что мне подскажут как именно эту проблему решить,
а не для того, чтобы мне расшифровывали каждую строчку.
Monarh писал(а):

Код: Выделить всё

Invalid MIT-MAGIC-COOKIE-1 keygiving up.
Гость писал(а):оно у тебя само по себе появляется или только когда пытаешься запустить несколько серверов на одном дисплее?
Именно когда пытался запустить несколько серверов на одном дисплее.

В общем со startx'ом я разобрался, надо же было начать с самого простого, чтобы хотя бы заработало,
то есть, чтобы запустились несколько X-сеансов.

Теперь как раз-таки и интересно автоматизировать этот процесс, то есть разобраться с xdm или его аналогами.
Гость писал(а):ну а для того чтобы их запускал xdm надо редактировать /usr/local/lib/X11/xdm/Xservers
Подредактировал.
Запустились два X-сеанса, но войти я в них не смог !!!
У меня пароли содержат русские символы и толи xdm не может, по крайней мере по-умолчанию, переключаться на рус, толи я не умею.
В общем и в консоли и в Иксах у меня переключение по CapsLock'у, но пробовал разные не получилось переключиться.
Как эту проблему решить ?
Да и видок у него мрачновастенький, можно ли его как-то разукрасить :smile:

Заранее большое спасибо.
_____________________________
С наилучшими пожеланиями,
Monarh

Гость
проходил мимо

Re: Как открыть несколько X-сеансов одновременно

Непрочитанное сообщение Гость » 2009-04-09 16:42:02

Monarh писал(а):У меня пароли содержат русские символы и толи xdm не может, по крайней мере по-умолчанию, переключаться на рус, толи я не умею.
А что пишет? Login incorrect? Ввести руские символы в поле Name можешь? Если нет, то попробуй вот этот хак кинуть в x11/xdm/files/patch-locale-hack

Код: Выделить всё

--- greeter/Login.c.orig	2008-05-21 22:08:45.000000000 +0400
+++ greeter/Login.c
@@ -70,6 +70,7 @@
 # include <X11/DECkeysym.h>
 # include <X11/Xfuncs.h>
 
+# include <locale.h>
 # include <stdio.h>
 # include <ctype.h>
 # include <time.h>
@@ -1353,6 +1354,8 @@
     XIM         xim = (XIM) NULL;
     char *p;
 
+    (void) setlocale(LC_CTYPE, "en_US.UTF-8");
+
     ctx->login.xic = (XIC) NULL;
 
     if ((p = XSetLocaleModifiers("@im=none")) != NULL && *p)
, где en_US.UTF-8 - локаль, при коей были набраны русские символы внутри пароля. А вот для отображения русского текста, скорее всего понадобиться лезть глубже в дебри xdm.
Monarh писал(а):Да и видок у него мрачновастенький, можно ли его как-то разукрасить :smile:
Не знаю, я не особо заморачивался
Изображение
(пожатый скрин: 1600x1200 -> 800x600)

Добавил в Xsetup_0 (0 - номер дисплея)

Код: Выделить всё

display -window root /d/pic/wallpaper_0.jpg
и поудалял лишнее из Xresources, заодно поставив сглаживаемые шрифты (DejaVu Serif/Sans).

Аватара пользователя
Monarh
ефрейтор
Сообщения: 66
Зарегистрирован: 2009-04-03 10:48:20

Re: Как открыть несколько X-сеансов одновременно

Непрочитанное сообщение Monarh » 2009-04-11 21:27:09

Гость писал(а):
Monarh писал(а):У меня пароли содержат русские символы и толи xdm не может, по крайней мере по-умолчанию, переключаться на рус, толи я не умею.
А что пишет? Login incorrect?
Да, пишет "Login incorrect".
Гость писал(а):Ввести руские символы в поле Name можешь?
Немогу, xdm делает вид, что вообще у него нету других раскладок, кроме англ.
Гость писал(а):Если нет, то попробуй вот этот хак кинуть в x11/xdm/files/patch-locale-hack
Кинул.
Гость писал(а): где en_US.UTF-8 - локаль, при коей были набраны русские символы внутри пароля.
не совсем понял, консольная локаль(тобишь KOI8-R) чтоли ?

Вроде xdm стал изображать, что переключается на рус, но символы не вводятся.
В поле Name на англ вводишь - символы отображаются, а переключаешься
на рус - курсор замирает на месте и как-будто он их(вводимые символы) в null кидает :smile:
переключаешься на англ и снова нормально символы отображаются.
Въобщем залогиниться так и не могу.

Картинка встала, по красивее стало, спасибо.
Но вот приглашение для ввода пароля почти пол экрана занимает, да и цвета серого.
Как это можно подкорректировать.
_____________________________
С наилучшими пожеланиями,
Monarh

Гость
проходил мимо

Re: Как открыть несколько X-сеансов одновременно

Непрочитанное сообщение Гость » 2009-04-11 23:53:19

Monarh писал(а):Кинул.
...
В поле Name на англ вводишь - символы отображаются, а переключаешься
на рус - курсор замирает на месте и как-будто он их(вводимые символы) в null кидает :smile:
А после кидания в папку files/ перекомпиляцию делал? ;)
Monarh писал(а):
Гость писал(а): где en_US.UTF-8 - локаль, при коей были набраны русские символы внутри пароля.
не совсем понял, консольная локаль(тобишь KOI8-R) чтоли ?
Попробуй в разных кодировках набрать свой пароль с солью из /etc/master.passwd пока не совпадет. Где соль определена во втором поле, напр. в $1$blah$13BzmeU.MWj0qXmz3PzaH1 blah - соль.

Код: Выделить всё

$ echo оченьсложныйпароль | iconv -t koi8-r | openssl passwd -1 -stdin -salt blah
$1$blah$13BzmeU.MWj0qXmz3PzaH1
если там koi8-r, то используй ru_RU.KOI8-R; если utf-8, то подойдет любая, напр. ja_JP.UTF-8.

Anyway, если укажешь неправильную кодировку, то у тя "приглашение" просто не примет пароль ибо байтики-то в символах не совпадают с теми, что в хеше. Однако ввод символов (скорее крякозябр) должен работать.
Monarh писал(а):Но вот приглашение для ввода пароля почти пол экрана занимает, да и цвета серого.
Как это можно подкорректировать.
оформления меняется в файлике Xresources, ресурсы начинаются с xlogin, а их подробное описание есть в xdm(1)
xdm(1) писал(а): xlogin.Login.width, xlogin.Login.height, xlogin.Login.x, xlogin.Login.y
The geometry of the Login widget is normally computed automati-
cally. If you wish to position it elsewhere, specify each of
these resources.

xlogin.Login.foreground
The color used to display the input typed by the user.
xlogin.Login.face
The face used to display the input typed by the user when built
with Xft support. The default is ``Serif-18''.
символические эквиваленты цветов в rgb можно посмотреть через x11/xcolorsel (понадобится также x11/rgb), напр.
input: 142, 229, 238 - CadetBlue2
Т.е. в качестве цвета можно указать либо CadetBlue2, либо rgb:8e/e5/ee, либо #8ee5ee.

Синтаксис точно такой же как и в ~/.Xresources и ~/.Xdefaults. Ничем не сложнее смены цвета для xterm'а.

Аватара пользователя
Monarh
ефрейтор
Сообщения: 66
Зарегистрирован: 2009-04-03 10:48:20

Re: Как открыть несколько X-сеансов одновременно

Непрочитанное сообщение Monarh » 2009-04-24 15:33:34

Гость писал(а):А после кидания в папку files/ перекомпиляцию делал?
Нет, а чего перекомпилировать надо ?
Гость писал(а):Попробуй в разных кодировках набрать свой пароль с солью из /etc/master.passwd пока не совпадет. Где соль определена во втором поле
У меня в /etc/master.passwd второе поле - пароль, то есть $1$пароль ...
Или имелось в виду второе поле результате отработки команды

Код: Выделить всё

$ echo мой_пароль | iconv -t koi8-r | openssl passwd -1 -stdin -salt blah
В этой команде использовал разные(koi8-r, utf-8, cp866, cp1251) кодировки вместо blah и пробовал разные кодировки вместо koi8-r, ничего с паролем в /etc/master.passwd не совпало.
Или я что-то не так понял и соответственно не так делал ?
Гость писал(а):оформления меняется в файлике Xresources, ресурсы начинаются с xlogin, а их подробное описание есть в xdm(1)
Оформление подкорректировал, спасибо.
Единственное - не понял можно ли убрать заголовок( строчка типа "Welcome to ..." или оно же по умолчанию "X Window System" ), который над чертой,
а то слишком много места занимает.

И когда работал над оформлением и вводил русские имена вместо Login, ... они отображались крокозяблами, таким образом можно понять какая кодировка у xdm по-умолчанию, но я не знаю, что это за кодировка. отображаются вместо слова "Логин" - пять крокозябл:
первая - латинская ай малая 'i', только вместо точки сверху штрих( ` ).
вторая - латинская ай большая 'I' с двумя точками сверху, как у буквы ё.
третья - латинская ц большая 'C' ,большая с каким-то крюком снизу.
четвёртая - латинская и большая 'E' с обратным штришком( ' ) сверху.
пятая - латинская ай большая 'I' с крышечкой сверху.
Может кто подскажет, что это за кодировка и как её изменить и на какую, чтобы нормально отображались русские буковки :)
_____________________________
С наилучшими пожеланиями,
Monarh

Аватара пользователя
Monarh
ефрейтор
Сообщения: 66
Зарегистрирован: 2009-04-03 10:48:20

Re: Как открыть несколько X-сеансов одновременно

Непрочитанное сообщение Monarh » 2009-05-01 16:42:07

Может кто подскажет как сделать, чтобы xdm понимал пароль содержащий русские буковки ?

Заранее всем большое спасибо.
_____________________________
С наилучшими пожеланиями,
Monarh

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35427
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Как открыть несколько X-сеансов одновременно

Непрочитанное сообщение Alex Keda » 2009-05-05 17:11:59

не использовать их
Убей их всех! Бог потом рассортирует...

Аватара пользователя
Monarh
ефрейтор
Сообщения: 66
Зарегистрирован: 2009-04-03 10:48:20

Re: Как открыть несколько X-сеансов одновременно

Непрочитанное сообщение Monarh » 2009-05-06 18:19:23

А правильно, а чтобы совсем не заморачиваться и совсем пароли убрать, включая рута :ROFL:
Может кто дельный советик даст ???
_____________________________
С наилучшими пожеланиями,
Monarh

Аватара пользователя
manefesto
Группенфюррер
Сообщения: 6934
Зарегистрирован: 2007-07-20 8:27:30
Откуда: Пермь
Контактная информация:

Re: Как открыть несколько X-сеансов одновременно

Непрочитанное сообщение manefesto » 2009-05-07 7:45:41

пароли на русском языке лучше не делать.
я такой яростный шо аж пиздеЦ
Изображение

Аватара пользователя
arachnid
ефрейтор
Сообщения: 63
Зарегистрирован: 2008-07-24 10:00:06
Контактная информация:

Re: Как открыть несколько X-сеансов одновременно

Непрочитанное сообщение arachnid » 2009-05-07 11:19:46

это так же умеет gdm (без плясок с бубном)

Аватара пользователя
Monarh
ефрейтор
Сообщения: 66
Зарегистрирован: 2009-04-03 10:48:20

Re: Как открыть несколько X-сеансов одновременно

Непрочитанное сообщение Monarh » 2009-05-07 11:59:44

manefesto писал(а):пароли на русском языке лучше не делать.
Мне больше нравится когда всё вперемежку, создаётся впечатление, что твоя система более защищённая :smile:
Потому считаю, что лучше потратить побольше времени, но разобраться Что, К чему, Зачем и Как,
настроить всё по уму и радоваться своим победам :smile:
Чем просто сказать, что лучше не использовать русские буковки в паролях и забить на всё,
а в качестве пароля использовать "123" :smile:
arachnid писал(а):это так же умеет gdm (без плясок с бубном)
Что так же умеет ?

И уж коли вопрос зашёл о других dm,
то может кто подскажет какие dm( gdm, kdm, ... может ещё какие есть ) чем отличаются, чем лучше, почему предпочтительнее, ...

Заранее всем большое спасибо.
_____________________________
С наилучшими пожеланиями,
Monarh

Аватара пользователя
arachnid
ефрейтор
Сообщения: 63
Зарегистрирован: 2008-07-24 10:00:06
Контактная информация:

Re: Как открыть несколько X-сеансов одновременно

Непрочитанное сообщение arachnid » 2009-05-07 12:55:35

открывать несколько сеансов одновременно (вернее, будет запускать столь Х-сеансов, сколько необходимо)

не надо путать логин манагеры и сами десктоп-окружения(ну или оконные менеджеры)

а вот выбор из существующих de или wm - ваопще холивар :)

Аватара пользователя
Monarh
ефрейтор
Сообщения: 66
Зарегистрирован: 2009-04-03 10:48:20

Re: Как открыть несколько X-сеансов одновременно

Непрочитанное сообщение Monarh » 2009-05-07 15:34:18

arachnid писал(а): не надо путать логин манагеры и сами десктоп-окружения(ну или оконные менеджеры)
а вот выбор из существующих de или wm - ваопще холивар :)
Я имел в виду именно логин манагеры назвал dm просто по оставшимся неизменным буквам {x,g,k}dm.
А в качесве оконного манагера( window manager, тобишь wm ) - использую FluxBox !!!

Перефразирую свой вопрос, дабы не возникало путаницы:
какие логин манагеры ( xdm, gdm, kdm, ... может ещё какие есть ) чем отличаются, чем лучше, почему предпочтительнее, ...
_____________________________
С наилучшими пожеланиями,
Monarh

Аватара пользователя
arachnid
ефрейтор
Сообщения: 63
Зарегистрирован: 2008-07-24 10:00:06
Контактная информация:

Re: Как открыть несколько X-сеансов одновременно

Непрочитанное сообщение arachnid » 2009-05-08 16:08:13

а фиг его знает - могу сказать, что умеет gdm - выбор локали, оконного менеждера, умеет показывать пользователей