Xinitrc где находится ubuntu

Обновлено: 04.07.2024

Xinit - специальная программа запуска Х-сервера и исходной программы-клиента (например, диспетчера окон). По умолчанию startx проверяет наличие файла .xinitrc в исходном каталоге пользователя и запускает с этим файлом программу xinit. Если файл .xinitrc пользователя обнаружить не удается, программа xinit запускается с системным файлом xinitrc (в Linux Red Hat 7.1 - /etc/Xll/xinit/xinitrc). Если и системный файл найти не удается. то после запуска Х-сервера xinit открывает только окно xterm.

Файл xinitrc (или . xinitrc) - это выполняемый сценарий оболочки. Подробнее оболочки описаны в гл. 16, а сейчас мы рассмотрим стандартный файл из версии Linux Red Hat 7.1 и его функции. Строки пронумерованы для удобства: в реальном файле они не нумеруются.

10: if [ -f "$sysresources" ] ; then

13: if[ -f "$userresources" ] ; then

17: if [ -f "$sysxlcbmap" ]; then

18: setxkbmap 'cat "$sysxkbmap"

22 : setxkbmap 'cat "$useirxktomap" '

25: if [ -z "$XKB_IN_USE" -a ! -L /etc/Xll/X ] ; then

26: if grep ' Л ехес.*/Xsun' /etc/Xll/X > /dev/null 2>&1 && [ -f /etc/Xll/XF86Config ]; then

35: if [ -z "$XKB_IN_USE" ] ; then 36: if [ -f "$sysmodmap" ] ; then

40: xmodmap "$usermodmap"

47: for i in /etc/Xll/xinit/xinitrc.d/* ; do

Приведем описание команд файла.

1. Строки 3—8. Указывается расположение файлов, которые понадобятся при выполнении сценария.

Файл ресурсов System X, заданный в строке 6 как sysresources, расположен в каталоге /etc/xil/xdm/xresources в Red Hat Linux 7.1. Если необходимо задать этот файл, как общепринятое умолчание для X Windows (см. ниже) измените строку 6 так, чтобы она отражала действительное положение файла.

2. Строки 10—12. Если существует глобальный файл Xresources, то он используется. Х-ресурсы рассмотрены в следующем параграфе.

3. Строки 13—-15. Если существует файл пользователя . Xresources в его исходном каталоге, то он используется путем объединения его параметров с текущими значениями.

4. Строки 17—20. Если существует глобальный файл сопоставления кодов, то он используется.

5. Строки 21—24. Если у пользователя есть файл сопоставления кодов, то он используется.

6. Строки 25—33. Эти строки не используются, поскольку сервер Sun X в вашей системе не используется.

7. Строки 34—43. Если имеют место конфликты между пользовательскими и системными файлами сопоставления кодов X Window, то задается файл определения клавиатуры.

8. Строки 47—51. Эти строки отрабатывают все сценарии, расположенные в каталоге /etc/X11/xinit/xinitrc.d/.

9. Строки 52—69. Запуск первых клиентов после запуска Х-сервера. Сценарий проверяет наличие у пользователя файла .Xclients. Обнаруженный файл запускается и запускает, в 1 свою очередь, указанные клиенты. Если файл .Xclients не обнаружен, выполняется поиск и запуск пюбального файла Xclients. Если и он не найден, то запускается некоторый стандартный набор программ, среди которых xclock, окно xterm, Web-браузер и, если имеется, диспетчер окон fVwm2 или twm.

/.xinitrc представляет собой шелл-скрипт передаваемый xinit посредством команды startx . Он используется для запуска Среды рабочего стола, Оконного менеджера и других программ запускаемых с X сервером (например запуска демонов, и установки переменных окружений. Программа xinit запускает Xorg сервер и работает в качестве программы первого клиента на системах не использующих Экранный менеджер.

Одной из основных функций

/.xinitrc является указание, какой клиент X Window System будет запущен каждому пользователю при вызове startx или xinit . Существует множество дополнительных настроек и команд, которые также могут быть добавлены в

/.xinitrc согласно вашей дальнейшей настройке системы.

Большинство DMs также используют подобный xprofile перед xinit.

Contents

Установка

Установите xorg-xinit , чтобы использовать xinit и startx.

Настройка

Если .xinitrc присутствует в домашнем каталоге пользователя, startx и xinit выполнят его. Иначе startx выполнит по умолчанию /etc/X11/xinit/xinitrc .

Примечание: Xinit имеет собственное поведение по умолчанию, вместо выполнения файла. Для подробностей,смотрите xinit(1) .

Это значение по умолчанию xinitrc запустит базовую среду с Twm, xorg-xclock и Xterm (при условии, что необходимые пакеты установлены). Поэтому, чтобы запустить другой оконный менеджер или окружение рабочего стола, сначала создайте копию по умолчанию xinitrc в вашем домашнем каталоге:

Это делается так (вместо создания с нуля) чтобы сохранить некоторое желаемое поведение по умолчанию в исходном файле, например, поиске скриптов из /etc/X11/xinit/xinitrc.d . Сценарии в этом каталоге без .sh расширения не считаются исходным кодом.

Добавьте нужные команды и удалите/закоментируйте противоречивые строки. Помните, строки, следующие после exec будут игнорироваться. Например, для запуска openbox:

Примечание: По крайней мере, убедитесь, что блок if в примере выше, присутствует в вашем файле .xinitrc для того чтобы подать скрипт /etc/X11/xinit/xinitrc.d/30-dbus.sh . Иначе сессия D-Bus не будет запущена.

Запуск

Долговыполняемые программы стартуют перед оконным менеджером, такие как заставки и обои приложения. Они должны либо сами выполняться параллельно, либо работать в фоновом режиме (добавьте знак & ). Иначе, сценарий остановится и будет ждать каждую программу, чтобы закончить перед запуском оконного менеджера. Обратите внимание, что некоторые программы не должны стартовать параллельно, во избежании потока ошибок, как в случае с xrdb. Подготовка exec заменит процесс скрипта с процессом оконного менеджера, так что Х не завершится, даже если этот процесс распараллелен в фоне.

Для запуска Xorg от имени обычного пользователя, выполните:

Выбранный вами оконный менеджер (или окружение рабочего стола) теперь запустится правильно.

Для выхода из X, запустите функцию выхода вашего оконного менеджера (при условии, что он есть). Если нет такой возможности, запустите:

Примечание: pkill убьет все запущенные экземпляры X. Для специального убивания оконного менеджера на текущем VT, используйте:

Программа xprop доступна в пакете xorg-xprop из Официальных репозиториев.

Автозапуск X при входе в систему

Примечание: Это решение запускает X на том же терминале использующимся для входа, который нужен чтобы поддержать сеанс регистрации.

Для Bash, добавьте следующее в нижнюю часть

/.bash_profile . Если файл не существует, скопируйте шаблон-версию с /etc/skel/.bash_profile . Для Zsh, добавьте в

Автоматический вход в виртуальной консоли

Этот метод можно объединить с автоматическим входом в виртуальной консоли. При этом вы должны установить правильные зависимости для выполнения автологина Systemd чтобы убедиться, что dbus запускается до чтения

Советы и рекомендации

Переопределение xinitrc из командной строки

Если у вас есть рабочий

/.xinitrc , но хотите попробовать другие WM/DE, вы можете запустить его используя startx с указанием пути к оконному менеджеру:

Если оконный менеджер принимает аргументы, они должны быть взяты в кавычки в качестве части первого параметра startx:

Обратите внимание что требуется полный путь. По желанию, вы можете также переопределить /etc/X11/xinit/xserverrc файл (который хранит значение по умолчанию X сервера) с пользовательскими опциями, путем добавления их после -- , например:

Создание выбора DE/WM (Окружения рабочего стола/Оконного менеджера)

Если вы часто переключаетесь между различными DEs/WMs, рекомендуется использовать Display manager или добавить код в .xinitrc . Следующий код, описанный в нескольких строчках, будет принимать аргумент и загружать желаемое окружение рабочего стола или менеджера окон.

В следующем примере

/.xinitrc показано как запустить конкретную DE/WM с аргументом:

Затем скопируйте файл /etc/X11/xinit/xserverrc в ваш домашний каталог:

После этого, вы можете легко запустить конкретный DE/WM передавая аргумент, например:

Запуск приложений без оконного менеджера

Можно запустить только определенные приложения без оконного менеджера. Хотя, это будет полезно только для одного приложения, запущенного в полноэкранном режиме. Например:

С помощью этого метода необходимо установить геометрию каждого окна приложения с помощью своих собственных файлов настроек, если вообще возможно.

Настройка X Windows:

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

Далее везде подразумевается, что система X Windows уже установлена и запускается коммандой startx (настройка X в мультипользовательской среде с использованием XDM возможно будет темой следующей статьи). Давайте теперь кратко опишем основные файлы, используемые при конфигурировании.

xinitrc
- представляет собой shell script передаваемый xinit посредством команды startx. В нем устанавливаются некоторые общие (глобальные) ресурсы, такие как настройки screen-savers, клавиатуры и др. Этот файл является основой для всего процесса запуска together.

Xclients
- файл в домашней директории пользователя. Используется для запуска клиентов, специфичных для данного пользователя, в отличие от xinitrc

Xresources
В данном файле содержатся определения программных настроек, переопределяющие заданные по умолчанию значения. Он обычно используется для определения размеров шрифтов, цветов и общего внешнего вида. Кроме этого, его можно использовать для достижения некоторых весьма впечатляющих графических эффектов.

Закончив краткое рассмотрение конфигурационных файлов, давайте окунемся в их более подробное описание..

.xinitrc

После выполнения команды startx, xinit, отвечающий за весь процесс запуска X, просматривает либо /etc/X11/xinit/xinitrc (глобальный), либо, если он существует,

/.xinitrc (локальный). Если ни один из файлов не найден, то выбор настроек осуществляется xinit (плохая идея). Файл xinitrc (у локального приоритет выше, чем у глобального) - это shell script, запускающий различных X-клиентов и в завершение процесса - указанный window manager (используя exec).

Простейший xinitrc может выглядеть примерно так: Этот файл не делает ничего, кроме запуска F(eeble) Virtual Window Manager 2 - никакие другие клиенты не запускаются. Не особо полезно, но может пригодиться, если есть желание быстро покопаться в настройках нового window manager. Будет интересней, если мы добавим несколько установок и запустим некоторые дополнительные программы, которые требуются при каждом запуске X..
Экранный снимок X сеанса с использованием данной конфигурации

С помощью этого файла мы исправляем (в большинстве случаев) проблему с backspace, устанавливаем numlock, избавляемся от муаровых "обоев" и запускаем парочку программ каждый раз при запуске X.

Несколько вещей, которые стоит запомнить. Локальный xinitrc в домашней директории пользователя всегда будет использоваться (если он существует), полностью игнорируя общесистемные установки. Также обратите внимание на ключ -g -- данная опция позволяет определять геометрию для многих программ, работающих под X. Формат данного ключа следующий:

Length x Width+ X coordinate+ Y coordinate

Нужно быть осторожным со следующим -- xterm (и большинство других терминалов) указывают длину и ширину в количестве символов, а большинство других программ используют для этой цели пикселы, так что, если не быть осторожным, можно получить очень маааленькие окна! И последнее -- следите за тем, чтобы в конце каждой комманды, кроме собственно window manager, стоял амперсанд (&),- в результате этого все программы запускаются в фоновом режиме (иначе следующая команда не будет выполняться, пока не закончится выполнение предыдущей, а ничего хорошего в этом нет). Поэтому ТОЛЬКО WINDOW MANAGER запускается в основном режиме и забирает с собой все процессы, запущенные через xinitrc, когда вы выходите из X

Теперь у нас есть достаточно функциональный скрипт, который может использоваться как глобально, так и локально - если нам необходимо настроить определенным образом клиенты для разных пользователей (например, мы можем написать разные xinitrc для разных отделов, так что инженерный отдел будет иметь отличающиеся установки от, скажем, бухгалтерского). Несмотря на то, что здесь есть несколько интересных возможностей, мы сильно "недоиспользовали" многие из функций xinitrc. Заметим, что это shell cript, и поэтому мы можем вызывать любые команды, которые используем обычно. Давайте теперь рассмотрим окончательный вариант xinitrc, использующий xmodmap и xrdb для объединения личных настроек с глобальным xinitrc, что снимает с нас обязанность трудиться над созданием xinitrc для каждого пользователя, которому нужны собственные настройки (замечание: специальное использование Xclients и Xresourecs обсуждается ниже):
Экранный снимок X сеанса с использованием данной конфигурации

В этом файле мы сначала загружаем все системные раксладки клавиатуры и настройки программ (определенные в .Xmodmap и .Xresources), и затем загружаем собственные настройки пользователей (расположенные в домашних директориях). Затем мы добавляем некоторые дополнительные установки, которые загружаются даже если их нет ни в системных, ни в пользовательских настройках (например, backspace и состояние numlock). После этого выполняется проверка на наличие .Xclients в домашней директории пользователя. Если файл найден, он выполняется, в противном случае запускаются глобальные настройки (заметьте, в отличие от defaults и resources выше, эти две строчки НЕ объединены). Нужно сказать, что если у пользователя не определены Xclients, их десктоп после запуска X будет выглядеть как оригинальный снимок в отличие от приведенного выше; таким образом, мы можем получить как единый глобальный десктоп, так и настроенные для конкретных пользователей окружения из одного и того же xinitrc. В заключение мы проверяем, если наш любимый window manager присутствует в системе, в противном случае пробуем запустить "старый добрый" fvwm2, а если нет и этого, то система будет пытаться загрузить twm в качестве последнего прибежища. Теперь у нас есть настройки, позволяющие широко варьировать индивидуальные предпочтения отдельных пользователей путем простого выбора между локальными и общесистемными настройками через изменение глобальных файлов - без необходимости модифицировать скрипт.

Давайте рассмотрим некоторые из файлов, упомянутых выше.

.Xclients

/.Xclients содержит настройки клиентов, специфичные для данного пользователя, которые запускаются в начале каждого X сеанса. Синтаксис файла совпадает с соответствующими выражениями в xinitrc. Ниже приведен пример файла

/.Xclients, загруженного через xinitrc, использованный в предыдущем снимке . Как видно из предыдущего "экранного снимка", Xclients могут использоваться для настройки собственного окружения при чтении централизованного xinitrc. Следует отметить, что из приведенного выше .xinitrc никакие клиенты не запускаются, если найден

/.Xclients. Я использую такой вариант настройки для того, чтобы каждый пользователь мог запускать свой window manager через Xclients. Если вы хотите, чтобы какие-либо системные клиенты запускались универсально, загружайте их перед исполнением пользовательских Xclients (если

/.Xclients содержит вызов window manager). Для тех из вас, кто заинтересовался конфигурацией моего десктопа, использованной в предыдущем примере, загляните на KDE's home page . Недавно вышла версия 3.0 Beta, содержащая много приятных GUI инструментов для настройки.

.Xresources

Ресурсы в X определяют программные настройки локально (

/.Xresources) или глобально (/usr/X11R6/lib/X11/xinit/.Xresources). X программы состоят из widgets. Widgets - это управляющие элементы, поэтому есть widgets для шрифтов, линеек прокрутки и настроек background. Почти любая часть X программы - это widget, и поэтому может быть сконфигурирована.

Widgets обычно устроены в виде иерархии, и поэтому внутри обрамляющей widget для меню может находиться несколько widgets для отдельных кнопок. Для того, чтобы полностью определить изменения для конкретной widget, нужно указать полный путь к индивидуальному компоненту. Путь представляет из себя имена widgets, представленные иерархично. Для примера ниже приводятся строчки из моего

/.Xdefaults, в котором приводятся к единому виду установки для терминалов. Заметьте, в данном файле разрешено использование wildcards, таким образом

*Foreground: cyan
*Background: black

определит стандартный внешний вид для всех программ, не имеющих явно указанных Xdefault установок (установок по умолчанию). Если вы похожи на меня и любите большую гибкость, чем та, которая достигается с помощью wild cards, и однако не помните всю иерархию widgets - попробуйте editres! Editres- это основанный на GUI инструмент для настройки, который позволяет генерировать весьма различные конфигурации без необходимости вручную писать .Xdefaults. Взгляните на экранный снимок editres в действии! К настоящему моменту вы должны начать осознавать, что .Xdefaults представляет отличные возможности для создания как окружений выдержанного стиля, так и оригинально настроенных клиентов. Взгляните, что Xdefaults сделали с неброским xcalc . Отличный "шаг-за-шагом" учебник по использованию editres можно найти на Isolation's X tips page.

Несколько более успешный (но все еще не самый правильный) способ выхода в графический режим состоит в том, что Вы даете команду xinit .

Программа xinit предназначена для запуска сервера системы X Window и хотя бы одной программы-клиента.

Если в командной строке не указано, какой именно X-сервер запускать, xinit ищет в домашнем каталоге пользователя файл .xserverrc , чтобы выполнить содержащийся в нем скрипт запуска сервера. Если такого файла нет, xinit по умолчанию выполняет следующий скрипт: то есть запускает программу с именем X на дисплее 0. При этом предполагается, что в одном из каталогов, перечисленных в путях поиска, найдется программа с именем X . Но, как Вы уже знаете, сервера обычно называются XF86_displaytype , где displaytype - это тип графического дисплея, для которого предназначен данный сервер. Администратор сайта, следовательно, должен установить ссылку на подходящий сервер или создать скрипт, который запускает xinit с вызовом соответствующего сервера. Используя скрипт .xserverrc , удостоверьтесь, что по команде "exec" в нем запускается существующий X-сервер: В противном случае загрузка будет происходить очень медленно и завершится немедленным выходом.

Если в командной строке запуска xinit не указана клиентская программа, которую надо запускать, программа xinit ищет в домашнем каталоге пользователя файл .xinitrc , чтобы выполнить его как скрипт, запускающий клиентские программы(у). Если такого файла не существует, xinit по умолчанию выполняет вместо этого скрипта команду: Если Вы после установки Red Hat Linux еще не создали свой файл .xinitrc , и просто запустите команду xinit из командной строки, Вы увидите почти пустой рабочий стол с единственным окном терминала. Поскольку менеджера окон нет, Вы ничего не можете сделать с этим окном (переместить, изменить размер и т.д.), но Вы можете в этом окне запустить другие программы, в том числе менеджер окон. Перейдите, например, в каталог /usr/X11R6/bin и дайте команду fvwm (этот оконный менеджер обычно по умолчанию установлен). После этого вид экрана существенно изменится, Вы сможете изменять окна (обычным способом, захватывая мышкой границу окна), а по щелчку левой кнопкой по пустому полю рабочего стола получите выход в меню.

Если остановиться на таком способе вызова графического интерфейса, то каждый раз при его запуске придется повторять одну и ту же последовательность команд (не считая других минусов этого метода). Естественно, что пользователю стоит воспользоваться возможностью создания скрипта .xinitrc для автоматизации этой рутинной работы.

Ниже приведен пример скрипта .xinitrc , который запускает часы, несколько терминалов и оставляет менеджер окон в качестве "последнего" клиента. Важно отметить, что программы, запускаемые из .xinitrc , должны запускаться в фоновом режиме, если только они не завершаются немедленно. Иначе эти программы будут препятствовать запуску других программ. Однако одна из запущенных программ (обычно менеджер окон или эмулятор терминала) должна выполняться не в фоновом режиме, а на переднем плане, чтобы работа скрипта не завершалась (завершением работы этой программы пользователь сообщает программе xinit , что закончил работу и что сама программа xinit должна завершиться). В приведенном примере, если менеджер окон правильно сконфигурирован, то для завершения работы в X-сессии достаточно выбрать пункт "Exit" в меню менеджера twm.

Аргументы, заданные в командной строке вызова xinit , позволяют обойти выполнение скриптов .xinitrc и .xserverrc . В командной строке может быть указана альтернативная программа-клиент и/или альтернативный сервер. Клиентская программа должна быть первым аргументом в командной строке вызова xinit . Для того, чтобы вызвать конкретный X-сервер, добавьте двойное тире (после указания программы-клиента и ее аргументов), после которого укажите имя нужного сервера.

Имена программы-сервера и программы-клиента должны начинаться со слэша (/) или точки (.). В противном случае они воспринимаются как аргументы, добавляемые в командную строку вызова соответствующей (предыдущей) программы. Таким образом можно добавлять аргументы (например, задавать цвета фона и текста), не вводя заново всю командную строку.

Если конкретное имя сервера не указано и следом за двойным тире идет двоеточие с последующей цифрой, xinit будет воспринимать это число как номер дисплея вместо предполагаемого по умолчанию нуля. Вообще все следующие за двойным тире аргументы добавляются к командной строке вызова сервера.

Вот несколько примеров командной строки вызова программы xinit .

"xinit"
Этой командой будет запущен сервер, на который указывает ссылка (линк) X , и выполнен пользовательский скрипт .xinitrc , если таковой существует, а иначе просто запущен xterm .
"xinit -- /usr/X11R6/bin/Xqdss :1"
Таким образом можно запустить какой-то конкретный сервер на альтернативном дисплее.
"xinit -geometry =80x65+10+10 -fn 8x13 -j -fg white -bg navy"
По этой команде будет запущен сервер, на который указывает ссылка X , и запускаемой по умолчанию команде xterm будут переданы аргументы, перечисленные в командной строке. Скрипт .xinitrc будет проигнорирован.
"xinit -e widgets -- .Xsun -l -c"
В этом случае для запуска сервера используется команда .Xsun -l -c , а запускаемому по умолчанию программе-клиенту xterm будет переданы аргументы -e widgets .
"xinit /usr/ucb/rsh fasthost cpupig -display ws:1 -- :1 -a 2 -t 5"
Эта команда запускает сервер X на дисплее с номером 1 с аргументами -a 2 -t 5 . Затем будет запущена оболочка shell на удаленном компьютере fasthost , в которой будет выполнена команда cpupig , вывод которой будет возвращен на дисплей локального компьютера.

Поскольку пользователю-новичку обычно не хватает квалификации для создания собственного варианта скрипта .xinitrc , администраторы сайтов могут помочь им в вызове графического интерфейса, создав общедоступный скрипт, выполняющий эту функцию. Такие скрипты обычно называются x11 , xstart , или startx и являются удобным способом создания простого интерфейса для пользователей-новичков. Вот пример простейшего скрипта такого вида: При инсталляции стандартной версии Red Hat Linux создается более сложный вариант скрипта startx , который расположен в каталоге /usr/X11/bin (Вы можете его просмотреть). Для него существует и man-страница, в которой говорится, что этот скрипт создается просто как образец для администраторов сайтов, предназначенный для создания собственных вариантов такого скрипта.

Если просмотреть стандартный вариант скрипта startx , мы увидим, что практически он сводится к выполнению всего-навсего 3-х команд: xauth add $display . $mcookie
xauth add `hostname -f`$display . $mcookie
xinit $clientargs -- $display $serverargs То есть, в конечном итоге, startx вызывает уже рассмотренную нами команду xinit , только предварительно формирует нужные значения аргументов командной строки для нее. Первый аргумент - имя файла xinitrc, причем если в домашнем каталоге пользователя есть файл .xinitrc, то берется он (с указанием пути), а если в домашнем каталоге нет такого файла, то берется общесистемный файл /etc/X11/xinit/xinitrc, то есть "clientargs" = "/etc/X11/xinit/xinitrc".
Аналогично формируется значение переменной serverargs: если существует N8файл .xserverrc в домашнем каталоге пользователя, то переменная serverargs будет указывать на него. Если такого файла нет, то serverargs укажет на /etc/X11/xinit/xserverrc. Переменной display присваивается значение :0. Далее в скрипте startx производится анализ аргументов, которые были заданы в командной строке при его вызове (эту часть мы пока не будем детально разбирать, поскольку для начала будем вызывать скрипт без параметров) и, наконец, в конец строки вызова xinit добавляется -auth $HOME/.Xauthority. Таким образом, сразу после установки системы (пока пользователь не создал файлов .xinitrc и .xserverrc в своем домашнем каталоге) будет вызываться в следующем виде:

7.5. Выбор и настройка менеджера окон

Если Вам удалось добиться, что X-ы работают, у Вас имеется масса возможностей для дальнейшей настройки. Конкретный набор этих возможностей зависит от того, какой менеджер окон Вы используете. Менеджеров окон существует много.

Настройка в большинстве случаев все сводится к редактированию одного или нескольких файлов в Вашем домашнем каталоге. В графической среде KDE все делается через меню, в других менеджерах приходится вручную редактировать конфигурационные файлы.

Очень важно иметь хороший файл .xinitrc. Вот пример:

usermodmap=$HOME/.Xmodmap
xmodmap $usermodmap

rxvt -cr green -ls -bg black -fg white -fn 7x14 \
-geometry 80x30+57+0 &

Хотя это и не обязательно, можно сделать этот файл исполняемым с помощью команды

chmod +x .xinitrc .

Этот вариант .xinitrc позволяет Вам выбрать менеджер окон, попробуйте, например:

Если администратор хочет создать одинаковое начальное окружение для всех пользователей, можно сделать так, чтобы по умолчанию для пользователя создавался скрипт .xinitrc , который ссылается на общий стартовый скрипт:

7.6. Графическая среда KDE

Каждый пользователь так или иначе формирует на своем персональном компьютере некоторую рабочую среду, которая для него наиболее удобна (точнее, которую он таковой считает, исходя из своих знаний). Можно формировать эту среду подобрав один из оконных менеджеров (который больше всего нравится) и затем подбирая отдельные программы для выполняемой работы.

Однако имеет смысл вначале просмотреть возможности одной из разработанных в последние годы интегрированных графических сред (для удобства введем сокращение ИГС). ИГС представляет собой уже подобранную и проверенную совокупность программ для работы в графическом режиме, включающую в себя и менеджер окон и набор других программ, обладающих единообразным интерфейсом. Пожалуй можно сказать, что именно единообразие интерфейса является ключевым моментом, определяющим преимущества использования ИГС вместо создания собственной среды.

Существует уже несколько графических сред, как свободно распространяемых, так и коммерческих. Из свободно распространяемых наибольшую известность приобрели KDE и GNOME. Мне лично больше нравится KDE. Возможно, это определяется тем обстоятельством, что именно эта среда была первой, с которой я начал работать, и притом вполне успешно. В то время как первая встреча с GNOME была несколько неудачной. Говорят, что в последнее время коллектив разработчиков GNOME сделал большой шаг вперед, но я пока остаюсь приверженцем KDE.

Одним из немаловажных достоинств KDE является достаточно подробная документация на русском языке. Она была включена в состав дистрибутивного диска Black Cat 5.2, с которого началось мое знакомство с Линукс. Эту документацию Вы можете найти на русской версии сайта KDE . Там есть руководство пользователя (краткий курс и обширный курс), переводы документации по отдельным компонентам KDE, ответы на часто задаваемые вопросы. Мне очень понравился краткий курс, который в очень сжатом виде знакомит Вас с возможностями этой среды. Учитывая, что мне вряд ли удастся создать более качественное описание, я не буду продолжать этот раздел, а просто рекомендую Вам заглянуть на упомянутый выше сайт.

При установке такой файл не создается, так что создайте его сами и запишите в него одно слово: KDE
(создать такой файл можно командой cat > /etc/sysconfig/desktop ).

После перезапуска графической оболочки Вы получите желаемый результат: будет запущена ГИС KDE . А уж о том, как настроить ее, читайте на упомянутом выше русской версии сайта KDE . Некоторые рекомендации (исходя из моего личного опыта) приводятся также в разделе "Создание удобной рабочей среды".

7.7. Использование менеджера дисплея (X Display Manager)

Систему X Window можно запускать автоматически при включении компьютера, используя программу, которая называется менеджером дисплея (X Display Manager - xdm ). В этом случае пользователь сразу видит привлекательную графическую среду и нет необходимости специально запускать графический интерфейс командой startx . При этом сохраняется возможность переключиться в текстовую консоль, набрав <Ctrl>-<Alt>-<F1>, а потом вернуться обратно в графическую среду, используя комбинацию <Alt>-<F7>.

Для того, чтобы запускать xdm при загрузке ОС, надо отредактировать файл /etc/inittab заменив в нем строку "id:3:initdefault:" на строку следующего вида:

Такое изменение заставляет Linux при запуске переходить на 5-ый уровень и по умолчанию запускать xdm . Запускаемый по умолчанию менеджер дисплея определяется тоже строкой в /etc/inittab , которая располагается обычно где-то в конце этого файла и имеет примерно такой вид:

Если Вы решили запускать xdm при старте и хотите использовать, например, глубину цвета 24 бита на пиксел вместо применяемой по умолчанию 8 bpp (и Ваша видеокарта и монитор поддерживают ее), Вы должны изменить файл /etc/X11/xdm/Xservers (в нем всего одна строка) следующим образом:

:0 local /usr/X11R6/bin/X -bpp 24

Если Вы установили KDE, то вместо xdm , вероятно, запускается kdm . У меня, например, строка в /etc/inittab , определяющая менеджер дисплея, имеет вид:

а /etc/X11/prefdm есть ссылка на /usr/bin/kdm.

Очень важное примечание: Имейте в виду, что команда respawn в только что приведенной строке означает, что при попытках перезапуска системы будет происходить перезапуск менеджера дисплея. В частности, нажатие "магической" комбинации [Ctrl-Alt-Del] будет повторно запускать систему в той же конфигурации. Поэтому если Вы после установки xdm будете как-то менять системные настройки и в результате ошибочных действий нарушите хрупкое равновесие системы X Window, Вы попадете в очень затруднительную ситуацию. У меня, например, после одного из опытов с редактированием файла /etc/X11/XF86Config экран после загрузки стал черным и дальше компьютер ни на что не реагировал, кроме [Ctrl-Alt-Del], а по этой комбинации происходила просто перезагрузка и выход в ту же ситуацию.

Если вы запустили систему в текстовом режиме или вовсе это сервер и на нём надо работать только через терминал, но на нём уже есть установлено графическое окружение, есть несколько способов его запустить.

В этой статье мы постараемся разобраться как запустить графическую оболочку Ubuntu из терминала несколькими способами.

Запуск графической оболочки Ubuntu

Сначала можно посмотреть текущий уровень запуска в systemd. Для этого выполните:

systemctl list-units --type target | egrep "eme|res|gra|mul" | head -1

sudo systemd isolate graphical.target

После этого уровень запуска будет изменён на графический и графическая оболочка запуститься автоматически. Если вам нужно запустить менеджер входа вручную выполните такую команду:

sudo systemctl start display-manager

Эта команда запустит менеджер входа в систему, после этого вы сможете ввести логин и пароль, а затем запуститься графическая оболочка.

С более простыми графическими оболочками, вроде Openbox, Fluxbox, i3wm и даже XFCE может сработать ещё один метод, очень популярный ранее. Это команда startx. Однако чтобы она сработала в файле

/.xinitrc надо прописать оболочку, которую вы хотите запустить. Например:

if [ -d /etc/X11/xinit/xinitrc.d ] ; then
for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
[ -x "$f" ] && . "$f"
done
unset f
fi
feh --bg-fill

/Загрузки/52453-sklon_holm_cerkvushka_sneg.jpg &
lxpanel &
exec openbox-session

Блок if загружает все конфигурационные файлы из каталога /etc/X11/xinit*, сторчка, начинающаяся с feh добавляет фон рабочего стола, следующая - нижнюю панель, а последняя запускает сам openbox. Теперь запуск графической оболочки Ubuntu из консоли выполняется командой:

Или если, на первом экране уже что-то запущено, можно использовать любой другой доступный, например, второй:


Обратите внимание, что оболочку можно запустить только из консоли TTY, из терминала в графическом окружении это не сработает. Как видите, всё просто. Ваша оболочка запуститься в том же терминале, в котором вы выполнили startx.

Нет похожих записей


Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна.

Читайте также: