Виртуальные консоли

Итак, как известно, Linux - многопользовательская и многозадачная система. Что касается X, тут всё, вроде бы, ясно: задач выполняешь столько, сколько душа пожелает. При заходе в систему через, например, KDM несколько пользователей могут быть залогинены одновременно. А что же, когда иксы загружаются через startx? Как в консоли обстоит дело с этим аспектами?

  • Обычно по умолчанию в Linux 6 виртуальных консолей (vc), каждая из которых готова к работе. Для того чтобы перейти в другую консоль под номером n, надо нажать Ctrl+Alt+Fn. Если нужно из иксов посмотреть на вывод в консоли, то можно нажать Ctrl+Alt+Fn, где n - номер нужной консоли. Каждая виртуальная консоль поддерживает как одинаковые логины, так и разные.
  • Добавить виртуальные консоли можно в Archlinux в /etc/inittab (синтаксис понятен).
  • Иксы идут в “отдельных” консолях. То есть, если у вас 6 консолей прописано в /etc/inittab, то иксы будут с 7 vc. Далее я буду отталкиваться от того, что у вас именно 6 vc.
  • Вернуться в иксы можно нажатием Ctrl+Alt+F7. Убить иксы можно с помощью Ctrl+Alt+Backspace.
  • Для того чтобы запустить программу в фоновом режиме (удобно, например, для xscreensaver), надо поставить & после её вызова:
    xscreensaver &
  • При старте иксов по умолчанию (runlevel 5) консоль, ими занимаемая - 7.
  • Для того чтобы запустить иксы при уже запущенных, можно ввести
    startx — :1, где 1 - номер дисплея. При этом вторые иксы будут расположены на 8 консоли, третьи - на девятой, и т. д.

Итак, видно, что консоль обладает не только многозадачностью, но и многопользовательский режим поддерживается на ура.

Отмечу, что при запуске нескольких x-серверов у меня не работает dri в последних дисплеях. С этим я надеюсь скоро разобраться.

11 коммент. to “Виртуальные консоли”

  1. Roman Lagunov Says:

    @Igor:

    Для того чтобы запустить иксы при уже запущенных, можно ввести
    startx — :1, где 1 - номер дисплея. При этом вторые иксы будут расположены на 8 консоли, третьи - на девятой, и т. д.

    Я обычно для запуска вторых иксов использую xinit.

    Мне так удобнее, потому что startx читает .xsession, а xinit - .xinitrc. Можно иметь два разных файла с разными настройками.

  2. Igor Says:

    Хм, в Xorg 7.1 startx читает именно .xinitrc, а в комментариях к .xsession написано, что он вызывается при запуске KDM, XDM, GDM.

  3. Roman Lagunov Says:

    @Igor:

    Хм, в Xorg 7.1 startx читает именно .xinitrc, а в комментариях к .xsession написано, что он вызывается при запуске KDM, XDM, GDM.

    Точно, тут я ошибся. Действительно, startx читает .xinitrc, так же как xinit.
    .xsession читается xdm.

    Как бы то ни было, у меня все равно два разных конфига - один основной, .xsession, и второй для xinit - .xinitrc, который я использую время от времени, когда возникает потребность запустить вторые иксы.

    И обычно я запускаю вторые иксы с другим wm.

  4. Igor Says:

    Просто вторые иксы я запускаю от второго юзера :)
    А startx является скриптом, а не бинарником, поэтому его можно настроить на всё, что угодно по идее.
    А вы запускаете первые иксы через XDM?

  5. Roman Lagunov Says:

    @Igor:

    Просто вторые иксы я запускаю от второго юзера :)

    Я обычно тоже.

    А вы запускаете первые иксы через XDM?

    Да, сразу при загрузке.

  6. Igor Says:

    Так у второго юзера и настройки же свои будут в его .xinitrc, нет?
    А я вот через startx (xinit), поэтому про .xsession ничего не знал :)

  7. Roman Lagunov Says:

    @Igor:

    Так у второго юзера и настройки же свои будут в его .xinitrc, нет?

    Вообще-то да. Просто мой второй юзер понятие не имеет вообще про эти настройки. Так что .xinitrc я ему положил :)

    А в моем .xinitrc вот что прописано:

    xterm &
    exec twm

    А я вот через startx (xinit), поэтому про .xsession ничего не знал :)

    Я когда только начал пользоваться linux тоже так и делал. А потом, со временем все меньше стал работать в консоли, и в конце-концов поставил xdm, и наступило мне сщастье :)

  8. Ivan A-R Says:

    Автор, прям мои мысли читает. Я как раз задумался, а как бы мне несколько иксов завести на одной машине. ;-)

  9. Igor Says:

    Я просто как-то сдуру затеял обновление системы в иксах, поэтому их нельзя было убить. А захотелось мне запустить ещё и KDE параллельно с Fluxbox, оттого и заглянул в man startx

  10. LXj Says:

    При использовании опенсорсных дров DRI работает только в одних иксах. В прочем, при использовании fglrx вторые иксы вообще не запустятся. Зато у драйверов нвидии вроде никаких ограничений нет (это был краткий пересказ моей заметки)

  11. Igor Says:

    fglrx я уже убрал, всё равно времени на игры нет. Интересно, есть ли какой-нибудь хак? Неудобно это. Надо будет поискать..

Ответить