Какова цель .xsession
файла в домашней папке? Что нужно положить туда? Среды рабочего стола не используют этот файл, и для запуска X из tty есть .xinitrc
.
Если вы войдете в текстовый режим, затем запустите сеанс графического интерфейса с помощью xinit или сценария оболочки startx
, а затем xinit
выполните следующие действия:
/etc/X11/xinit/xserverrc
)./etc/X11
(как правило /etc/X11/xinit/xinitrc
), в зависимости от того, как он настроен.~/.xinitrc
, если он существует. Если он не существует, запустите клиент по умолчанию (традиционно xterm
).~/.xinitrc
прекратит работу, убейте X-сервер.Если войти в систему в графическом режиме на менеджера X отображения (XDM, GDM, KDM, WDM, LightDM, ...), традиционно, что выполняется после того, как вы войти в некоторые сценарии в /etc/X11
то ~/.xsession
.
~/.xsession
имеет роль ~/.profile
и в ~/.xinitrc
сочетании: он должен выполнять начальный запуск вашего сеанса (например, определять переменные среды), а затем запускать программы, специфичные для GUI (обычно, по крайней мере, оконный менеджер).
В настоящее время большинство менеджеров дисплеев X предоставляют вам возможность выбора сеанса. При выборе определенного сеанса запускается определенная среда рабочего стола, менеджер сеансов, менеджер окон. Затем выполняется только то, что DE / SM / WM и любые программы, которые он выбирает для запуска, основаны на любых конфигурационных файлах, которые он выбирает для чтения. Во многих средах предусмотрен «пользовательский сеанс», который читает традиционный ~/.xsession
.
.xsession
Файл читается только в том случае, если вы выбрали определенный тип сеанса. Я знаю, что для Gdm разработчики не хотят включать тот, который запускается.xsession
по умолчанию, и оставляют его для каждого дистрибутива, а многие дистрибутивы не беспокоятся или не осознают необходимость. Я не знаю, какова ситуация с KDM./etc/kde4/kdm/Xsession
который будет запускаться от имени пользователя сразу после входа в систему. Они лгут - файл (который присутствует между прочим) kdm никогда не трогал, я даже вообще его удалил, и это ничего не изменило..xsession
, как вы описали. Но если вместо «KDE» вы выберете «Пользовательский сеанс».xsession
, вместо KDE будет запущен . Я использую это, например, потому что я запускаю justxfce4-panel
и FVWM 2 как мой «рабочий стол»; если бы KDE был установлен в системе, которую я использовал, он был бы полностью проигнорирован.Запуск X-сессии может быть сложным в эти дни. Хорошее место для начала - сценарий,
/etc/X11/Xsession
чтобы увидеть, как все будет выполнено.В моих системах Debian / Ubuntu скрипт
/etc/X11/Xsession
устанавливает переменнуюUSERXSESSION=$HOME/.xsession
. Позже сценарий/etc/X11/Xsession.d/50x11-common_determine-startup
ищет этот сценарий и использует его в качестве основного сеанса, если это разрешено системной политикой/etc/X11/Xsession.options
, и если диспетчер отображения не запрашивал никаких других сеансов.источник
Я настоятельно рекомендую вам заглянуть в книгу «Руководство администратора системы X Window»: для X версии 11 . Глава 2 объясняет цель
.xsession
и весь процесс настройки для примера установки. Также это хороший освежитель для всей терминологии, связанной с X-Window (и я надеюсь, что вы не напуганы :)). Вы можете получить книгу отХотя он довольно устарел, вы можете найти много информации о базовых концепциях, которые не изменились до сегодняшнего дня и которые очень разборчивы. Более того, действительно забавно взглянуть на то, что было на высшем уровне в те дни.
источник
.xsession - это традиционный стартовый скрипт для среды X11. В настоящее время с менеджерами сессий, такими как kdm, это уже не так уж полезно, а в традиционной системе. Это то, что запускается после запуска X11 с startx.
источник