startx
запускає, xinit
який запускає X-сервер та сеанс клієнта. Клієнтський сеанс є, ~/.xinitrc
якщо він присутній, і в іншому випадку /etc/X11/xinit/xinitrc
(місце розташування може змінюватись в залежності від розподілу) Те, що робить цей сценарій, залежить від розподілу. В Debian ( в тому числі похідні , такі як Raspbian), /etc/X11/xinit/xinitrc
трас , /etc/X11/Xsession
який , в свою чергу запускає скрипти в /etc/X11/Xsession.d
. Сценарії Debian шукати для сеансу роботи користувача в інших файлах ( ~/.xsession
, ~/.xsessionrc
, ~/.Xsession
) , і , якщо настройки користувача не застосовується, пробіги x-session-manager
(падіння назад , x-window-manager
якщо немає [менеджер сеансів] не встановлено, падаючи назад , щоб x-terminal-emulator
в малоймовірному випадку , що ні віконний менеджер не є встановлено).
Якщо ви хочете контролювати те, що виконується, ви можете створити один із файлів користувача, ~/.xsession
або ~/.xinitrc
. Цей файл ~/.xsession
також використовується, якщо ви входите в диспетчер дисплеїв (тобто якщо ви вводите свій пароль у вікні GUI). Файл ~/.xinitrc
специфічний для xinit
та startx
. Використання ~/.xsession
проходить /etc/X11/Xsession
так, що він налаштовує такі речі, як методи введення, ресурси, агенти паролів тощо. Якщо ви користуєтеся .xinitrc
, вам доведеться робити все це вручну. Ще раз описую тут Debian, інші варіанти Unix можуть налаштувати речі по-іншому. Використання ~/.xinitrc
для визначення того, що виконується під час запуску startx
або xinit
є універсальним.
Чи використовуєте ви ~/.xinitrc
або ~/.xsession
, цей файл ( як правило , сценарій оболонки, але це не повинно бути , якщо ви дійсно хочете використовувати що - то інше) повинен підготувати всі , що потрібно бути готовим (наприклад , настройки клавіатури, ресурси, аплети , які не запускаються менеджером вікон тощо), а потім наприкінці запустіть програму, яка керує сеансом. Коли сценарій закінчується, сеанс припиняється. Як правило, ви використовуєте exec
в кінці сценарію, щоб замінити сценарій менеджером сеансу або менеджером вікон.
Імовірно, ваша система працює /usr/bin/startlxde
як загальносистемний менеджер сеансів за замовчуванням. На Debian та похідних інструментах ви можете перевірити доступних менеджерів сесій
update-alternatives --list x-session-manager
або отримати більш детальний опис із зазначенням того, з яких саме є поточний
update-alternatives --display x-session-manager
Якщо LXDE не була стандартною системою за замовчуванням, і ви хотіли зробити його за замовчуванням для свого облікового запису, ви можете використовувати такий ~/.xsession
файл:
#!/bin/sh
exec startlxde
У деяких варіантах Unix це може працювати лише для графічних логінів, а не для startx
, тому вам також потрібно створити ідентичний ~/.xinitrc
. (Або не тотожно: в ~/.xsession
, можливо, ви хочете робити інші речі, тому що це перший файл, який виконується в графічному сеансі; наприклад, ви можете поставити . ~/.profile
його вгорі, щоб встановити деякі змінні середовища.)
Якщо ви хочете спробувати інші середовища як разові, ви можете вказати іншу програму, яку слід запускати в самому командному рядку startx
. У startx
програмі є химерність: потрібно використовувати повний шлях до програми.
startx /usr/bin/startkde
startx
Команда також дозволяє вказати аргументи для передачі на сервер. Наприклад, якщо ви хочете запустити кілька сеансів GUI одночасно, ви можете кожен раз передавати інший номер відображення. Передати аргументи сервера після --
в командному рядку startx
.
startx /usr/bin/startkde -- :1
startx
починається сеанс Xfce4 за замовчуванням. Від мого користувача моєї дружини вхід на tty1 або tty2. Їїstartx
команда встановлена для запуску Cinnamon (вказано в~/.xsession
). Для другого сервера X мені не потрібно вказувати,$DISPLAY
як зазначено в останній частині вашої відповіді. Хоча це, безумовно, працює. Це автоматично робить його другим$DISPLAY
і т. Д. Установка чудова. Немає входу та виходу із графічного сеансу, лише комбінація клавіш для переключення профілів користувачів. Дякуємо за цю корисну відповідь!