- Startx linux ������� �� �������
- EXAMPLE
- что делает команда startx?
- что делает команда startx?
- 4 ответа
- Старт Иксов долговатый?
- Xorg работает только две минуты
- Аналог startx или xinit для wayland
- На IntelAtomе при запуске иксов прекращают работать любые усб-устройства ввода
- Как запустить второй X-сервер с KDE?
- Ubuntu KDE, после установки xserver-xorg-core нужно прописывать startx вручную
- Debian. Как правильно запускать менеджер окон?
- Не запускается startx в Recalbox 6.1.1 (PC x64)
- Скрипт входа в систему.
- ALD server блокирует запуск ОС?
- Archlinux ARM Banana PI M3, startx не стартует, нет драйвера.
- Символы Unicode: о чём должен знать каждый разработчик
- Введение в кодировку
- Краткая история кодировки
- Проблемы с ASCII
- Что такое кодовые страницы ASCII?
- Безумие какое-то.
- Так появился Unicode
- Unicode Transform Protocol (UTF)
- Что такое UTF-8 и как она работает?
- Напоследок про UTF
- Это всё?
- Заключение
Startx linux ������� �� �������
Скрипт startx есть не более чем оболочка к команде xinit , предназначенная для создания более удобного пользовательского интерфейса для запуска единичной сессии X Window System. Обычно этот скрипт запускается без аргументов.
Исключение из этого общего правила делается в случае, когда нужно при запуске скрипта задать (или выбрать) глубину цвета, отличающуюся от задаваемой по умолчанию. Поскольку это требует передачи аргумента серверу, опции должны предшествовать два тире `—‘ (смотри man-страницу по xinit(1) для более детального описания того, как передаются аргументы X-серверу). Для того, чтобы заставить сервер работать с глубиной цвета в 16 бит на точку, надо вызвать команду в следующем формате:
Чтобы определить, какие программы-клиенты должны запускаться, startx сначала ищет файл, который называется .xinitrc в домашнем каталоге пользователя. Если это файл не найден, используется файл xinitrc из библиотечного каталога программы xinit. Если клиентская программа задана в опциях командной строки, то файлы xinitrc не используются.
Для того, чтобы определить, какой X-сервер должен запускаться, startx ищет файл с именем .xserverrc в домашнем каталоге пользователя. Если таковой не найден, используется файл xserverrc из библиотечного каталога программы xinit. Если имя сервера задано в командной строке вызова программы, то используется указанный сервер, а файлы xserverrc не используются. Пользователям обычно нет нужды иметь собственный файл .xserverrc. Смотри man-страницу по xinit (1) для более детального описания формата аргументов командной строки.
Обычно .xinitrc является командным скриптом оболочки shell, который одновременно запускает несколько программ-клиентов в соответствии с потребностями (предпочтениями) пользователя. Если этот скрипт завершается, startx завершает и работу X-сервера и вообще сессию графической оболочки. Большая часть программ-клиентов, запускаемых из .xinitrc должна работать в фоновом режиме. Только последний из запускаемых клиентов должен работать на переднем плане: когда эта программа завершается, завершается и X-сессия. Пользователи часто выбирают менеджер сессий, менеджер окон или xterm в качестве такого «магического» клиента.
EXAMPLE
Ниже приводится пример скрипта .xinitrc , который запускает несколько приложений и оставляет менеджер окон в качестве «последнего» приложения. Если менеджер окон правильно настроен, выбор в нем пункта меню «Exit» будет приводить к завершению работы в X.
Источник
что делает команда startx?
Читая об Ubuntu, я нашел следующее утверждение .
Если диспетчер отображения не запускается по умолчанию на уровне запуска по умолчанию, вы можете запустить X другим способом, после входа в консоль текстового режима, запустив startx из командной строки.
Что значит быть уровнем запуска по умолчанию? И когда я попробовал это на своем терминале, я получил это:
Давным-давно (1), когда память компьютеров измерялась в килобайтах, а диски — в мегабайтах, постоянный запуск графического интерфейса считался вредным.
Большинство компьютеров Unix использовались для научных вычислений и моделирования в многопользовательских средах, и графический интерфейс, работающий на них, уменьшал бы доступную им память и мощность процессора.
Поэтому, когда вам нужен графический интерфейс, вы просто начинаете его с startx (2).
startx в основном запускает Xserver (графический «драйвер») и команду, которая запускается на нем, который обычно является оконным менеджером . По умолчанию выполняемые команды находятся в
/.xinitrc файле в вашем домашнем каталоге или в другом системном файле.
Считается, что современные системы с самого начала имеют графическую систему, работающую постоянно, поэтому никто, вероятно, не проверял работу startx целую вечность — это объясняет много странного поведения, которое вы можете иметь.
Если вы хотите поэкспериментировать и почувствовать старые добрые времена, лучше всего сделать следующее:
А) установить Xnest и fvwm . Xnest — это графический сервер внутри сервера, своего рода сервер, который открывается как окно в вашей обычной системе. Fvwm — очень простой оконный менеджер, который тогда был очень популярен. Вам также понадобятся старые растровые шрифты.
B) напишите этот файл где-нибудь, например, в вашем домашнем каталоге, и назовите его
C) Выполнить (обратите внимание: startx обычно запускается сначала командой клиента, затем двойным тире, а затем командой сервера. Как я уже говорил, большинство новых систем не имеют разумных значений по умолчанию для startx одного).
. и у вас есть экран рабочей станции 80-х годов:
(Вы можете получить меню, нажав на рабочий стол «Xnest»).
. и если вы чувствуете, что вам по-настоящему хочется приключений, вы можете запустить собственный сеанс на другой виртуальной консоли (прочитайте другие ответы), перейдя к одному из них с помощью Ctrl-Alt-F1, войдите в систему и
который обычно открывается по Ctrl-Alt-F8.
Обратите внимание : современные среды рабочего стола не предназначены для одновременной работы одного и того же пользователя на двух разных консолях. Так что не используйте gnome-shell или unity или современные вещи при выполнении этих экспериментов, или вы можете испортить вашу конфигурацию.
(1) Говоря о 1980-90 годах здесь.
(2) Например, у меня был ноутбук с 256 КБ ОЗУ. Это было мучительно медленно в (B & W!) Графическом интерфейсе, но быстро в консоли. Так что я сделал большую часть моей работы (редактирование C , LaTeX и подобные файлы) в консольном режиме, и переключается в графической среде только тогда , когда действительно необходимо.
Источник
что делает команда startx?
При чтении о Ubuntu я нашел следующее заявление .
Если диспетчер дисплея не запущен по умолчанию на уровне запуска по умолчанию, вы можете запустить X по-другому, после входа в систему консоль текстового режима, запустив startx из командной строки.
Что значит быть уровнем выполнения по умолчанию? И когда я попробовал это на своем терминале, я получил следующее:
4 ответа
startx запускает xsession или графический интерфейс, где вы видите экран входа в систему и что-то большее, чем просто консоль ascii (текстовый сеанс).
Вы получаете эту ошибку, поскольку xsession уже запущен, и вы пытаетесь выполнить команду изнутри xsession на tty7.
tty7 — это пользовательский интерфейс, который существует в ctrl + alt + f7 (по умолчанию xsession).
tty1 — это пользовательский интерфейс, который существует в ctrl + alt + alt .
tty2 — это пользовательский интерфейс, который существует на alt + alt + f7 . , , и т. д.
tty1 — tty6 — текстовые сеансы, и вы можете войти в систему с вашим именем пользователя и паролем на одном из этих экранов. После входа в систему вы можете запустить команду startx, и xsession начнется с tty7, если она еще не запущена, и tty8, если tty7 уже выполнил xsession.
run-level 0 Halt — выключает систему.
run-level 1 Однопользовательский режим — режим для административных задач.
Уровень 2 Графический многопользовательский с сетью — обычно запускает систему.
Уровень запуска 3-5 Не используется, но настроен так же, как уровень выполнения 2
Уровень запуска 6 Перезагрузка — Перезагружает system.
Источник
Старт Иксов долговатый?
Привет! Вот два видео как стартуют иксы на закрытых(nvidia legacy 340.108) и открытых нуво. И лог иксов. Это норма? Меня напрягает черный экран на перед появлением рабочего стола. В результате опытов с отключением дм, понял, что это так долго стартуют иксы.
Xorg log nvidia 340.108 DVI
Xorg log nvidia 340.108 HDMI
Xorg работает только две минуты
Иксы работают только 2 минуты. Затем сессия завершается и вываливается окно логина. Снова стартую сессию и снова только 2 минуты.
Чтобы исключить влияние автологина, dm и проч, стартанул иксы вручную. Т.е. залогинился в терминале и далее startx. Опять же иксы стартуют, сессия KDE запускается, но ровно через 2 минуты вываливается в терминал. Xorg в списке процессов нет.
Никаких ошибок нет. Что за хрень такая? Кто-то включил триал на 2 минуты?
Система PCLinuxOS, ядро 5.10, пробовал и со старыми ядрами. Дрова — нуво.
Аналог startx или xinit для wayland
Я тут поставил Archlinux в первый раз. В принципе с pacman и aur разобрался, хотя и неудобно, но там по умолчанию wayland вместо полноценных Иксов и как его запустить я не понимаю. Команды startx и xinit нету.
Запускать хочу без перехода на графический логин, просто как в Slackware, вначале залогиниться в обычной TTY, а потом ввести какую-нибудь команду для перехода в графический интерфейс уже сразу от нужного юзера.
Пакет wayland точно уже установлен. Может надо ещё что-то установить?
P.S. Проблема решена: надо было установить пакет weston , после этого командой weston оно и запускается, а уже там в уголке значок, который запускает weston-terminal .
После этого я посмотрел переменные окружения, увидел
На IntelAtomе при запуске иксов прекращают работать любые усб-устройства ввода
Собираю Gentoo на интелатом. Собрал Lumina-desktop и Fvwm-crystall. Но если любой из них пускать, то прекращают работать устройства ввода-клава и мышь. По ssh зайти, убить иксы-так обратно в консоли всё работает. Что делать не знаю.
Как запустить второй X-сервер с KDE?
Система Arch Linux с sddm и kde. Нужно запустить в tty2 второй X-сервер.
Команда startx в tty2 запускает иксы с открытыми xterm без kde (файла
/.xinitrc нет); если же прописать в .xinitrc строчку
или запускать иксы командой
то в tty2 появляется анимация загрузки kde, но доходит только до половины. В tty1 падает plasma (пропадает системная панель), приходится перезапускать комбинацией Ctrl-Alt-Backspace. Лог journalctl: https://pastebin.com/mu9uW0mi
Как корректно запустить второй X-сервер?
Ubuntu KDE, после установки xserver-xorg-core нужно прописывать startx вручную
Добрый всем. Искал как решить проблему с тачпадом, вычитал про xserver-xorg-input-synaptics. Но сначала машина просила поставить core. Поставил. Тачпад заработал, но теперь ноут просит авторизоваться в консоли и потом прописать startx, хотя до этого все делалось уже в граф.интерфейсе. После startx KDE грузится. Кто знает, как исправить? Заранее спасибо.
Debian. Как правильно запускать менеджер окон?
Чистый Дебиан 10 + i3wm.
Возникают проблемы в программах, запущенных автоматически при страте i3wm или через меню запуска i3wm.
Если запустить программу из терминала, то всё работает корректно.
Проблемы, в основном с обработкой нажатия клавиш. Ввод в полях ввода воспринимается нормально, и работают комбинации типа Alt/Ctrl+клавиша, но не работают команды, назначенные на одну клавишу или комбинацию с Shift.
Раскладка — кастомный XKB — вызывается также из автозапуска i3wm. DM — LightDM. Но ранее, также, запускал через startx — проблема сохраняется, но перестают подхватываться темы для qt.
Судя по всему, проблема упирается в корректность запуска окружения.
Делаю так: установил LightDM, прописал в
/.xinitrc строку:
exec i3
Что я делаю не так и как сделать это правильно?
UPD.:
В корне неверная постановка вопроса. Проблемы оказались с путями к запускаемым программам.
Переезжаю со своим вопросом в новую тему — с более корректной формулировкой.
Не запускается startx в Recalbox 6.1.1 (PC x64)
Скачал Recalbox 6.1.1-DragonBlaze с оф. сайта. Встала нормально, но после перезагрузки не запускается startx.
Если запускать startx в ручную, работает.
Компьютер ASUS MiniPC PN. Современный селерон со встроеной видюхой. Подключаю ЭЛТ монитор через VGA
Уже втрой день не могу найти решение, гугл не помог)
Скрипт входа в систему.
Доброе время суток всем читающим! Только недавно вступил в ряды пользователей Линукс.
Собственно задача выглядит таким образом — подскажите пожалуйста, как должен выглядеть скрипт, который после запуска системы будет сам вводить логин пользователя (пользователь один), далее запрашивать ручной ввод пароля и после правильного ввода — автоматически давать команду $starx на запуск иксов? И как организовать его исполнение до начала сессии? Что бы процесс выглядел таким образом: нажатие клавиши включения > ввод пароля и enter > начало работы. Хочу получить своего рода одноклеточный логин-менеджер на bash с одной функцией.
ALD server блокирует запуск ОС?
Astra Linux 1.5 Смоленск. Произведена настройка ALD сервера и клиента на разных виртуальных машинах, затем был настроен Apache. Проблема возникла на сервере: после перезагрузки не запускается графическая среда. Тоесть просто черный экран и надпись
1) Здесь нет прав на первую операцию, а ошибка с файлом xserverrc есть вне зависимости от того, следовать инструкции или оставлять как есть http://help.prognoz.com/8.0/ru/mergedProjects/UiWebSetup/03_setup_web/astra_l.
2) Совет с удалением .Xauthority боюсь пробовать (находилась инфа, что не всегда файл восстанавливается — кто-нибудь пробовал?), права с помощью chown на home выданы xauth: error in locking authority file .Xauthority
На сервере при настройке ALD менялись только файлы /etc/hostname, /etc/hosts, /etc/ald/ald.conf,/etc/ntp.conf, при настройке Apache использовался mod_wsgi (не знаю, насколько это полезная информация). Я пока еще полный чайник как в администрировании вообще, так и в Астре в частности, поэтому если нужна какая-то информация, то пишите. Очень нужна помощь.
Archlinux ARM Banana PI M3, startx не стартует, нет драйвера.
Источник
Символы Unicode: о чём должен знать каждый разработчик
Если вы пишете международное приложение, использующее несколько языков, то вам нужно кое-что знать о кодировке. Она отвечает за то, как текст отображается на экране. Я вкратце расскажу об истории кодировки и о её стандартизации, а затем мы поговорим о её использовании. Затронем немного и теорию информатики.
Введение в кодировку
Компьютеры понимают лишь двоичные числа — нули и единицы, это их язык. Больше ничего. Одно число называется байтом, каждый байт состоит из восьми битов. То есть восемь нулей и единиц составляют один байт. Внутри компьютеров всё сводится к двоичности — языки программирования, движений мыши, нажатия клавиш и все слова на экране. Но если статья, которую вы читаете, раньше была набором нулей и единиц, то как двоичные числа превратились в текст? Давайте разберёмся.
Краткая история кодировки
На заре своего развития интернет был исключительно англоязычным. Его авторам и пользователям не нужно было заботиться о символах других языков, и все нужды полностью покрывала кодировка American Standard Code for Information Interchange (ASCII).
ASCII — это таблица сопоставления бинарных обозначений знакам алфавита. Когда компьютер получает такую запись:
то с помощью ASCII он преобразует её во фразу «Hello world».
Один байт (восемь бит) был достаточно велик, чтобы вместить в себя любую англоязычную букву, как и управляющие символы, часть из которых использовалась телепринтерами, так что в те годы они были полезны (сегодня уже не особо). К управляющим символам относился, например 7 (0111 в двоичном представлении), который заставлял компьютер издавать сигнал; 8 (1000 в двоичном представлении) — выводил последний напечатанный символ; или 12 (1100 в двоичном представлении) — стирал весь написанный на видеотерминале текст.
В те времена компьютеры считали 8 бит за один байт (так было не всегда), так что проблем не возникало. Мы могли хранить все управляющие символы, все числа и англоязычные буквы, и даже ещё оставалось место, поскольку один байт может кодировать 255 символов, а для ASCII нужно только 127. То есть неиспользованными оставалось ещё 128 позиций в кодировке.
Вот как выглядит таблица ASCII. Двоичными числами кодируются все строчные и прописные буквы от A до Z и числа от 0 до 9. Первые 32 позиции отведены для непечатаемых управляющих символов.
Проблемы с ASCII
Позиции со 128 по 255 были пустыми. Общественность задумалась, чем их заполнить. Но у всех были разные идеи. Американский национальный институт стандартов (American National Standards Institute, ANSI) формулирует стандарты для разных отраслей. Там утвердили позиции ASCII с 0 по 127. Их никто не оспаривал. Проблема была с остальными позициями.
Вот чем были заполнены позиции 128-255 в первых компьютерах IBM:
Какие-то загогулины, фоновые иконки, математические операторы и символы с диакретическим знаком вроде é. Но разработчики других компьютерных архитектур не поддержали инициативу. Всем хотелось внедрить свою собственную кодировку во второй половине ASCII.
Все эти различные концовки назвали кодовыми страницами.
Что такое кодовые страницы ASCII?
Здесь собрана коллекция из более чем 465 разных кодовых страниц! Существовали разные страницы даже в рамках какого-то одного языка, например, для греческого и китайского. Как можно было стандартизировать этот бардак? Или хотя бы заставить его работать между разными языками? Или между разными кодовыми страницами для одного языка? В языках, отличающихся от английского? У китайцев больше 100 000 иероглифов. ASCII даже не может всех их вместить, даже если бы решили отдать все пустые позиции под китайские символы.
Эта проблема даже получила название Mojibake (бнопня, кракозябры). Так говорят про искажённый текст, который получается при использовании некорректной кодировки. В переводе с японского mojibake означает «преобразование символов».
Пример бнопни (кракозябров).
Безумие какое-то.
Именно! Не было ни единого шанса надёжно преобразовывать данные. Интернет — это лишь монструозное соединение компьютеров по всему миру. Представьте, что все страны решили использовать собственные стандарты. Например, греческие компьютеры принимают только греческий язык, а английские отправляют только английский. Это как кричать в пустой пещере, тебя никто не услышит.
ASCII уже не удовлетворял жизненным требованиям. Для всемирного интернета нужно было создать что-то другое, либо пришлось бы иметь дело с сотнями кодовых страниц.
��� Если только ������ вы не хотели ��� бы ��� читать подобные параграфы. �֎֏0590��׀ׁׂ׃ׅׄ׆ׇ
Так появился Unicode
Unicode расшифровывают как Universal Coded Character Set (UCS), и у него есть официальное обозначение ISO/IEC 10646. Но обычно все используют название Unicode.
Этот стандарт помог решить проблемы, возникавшие из-за кодировки и кодовых страниц. Он содержит множество кодовых пунктов (кодовых точек), присвоенных символам из языков и культур со всего мира. То есть Unicode — это набор символов. С его помощью можно сопоставить некую абстракцию с буквой, на которую мы хотим ссылаться. И так сделано для каждого символа, даже египетских иероглифов.
Кто-то проделал огромную работу, сопоставляя каждый символ во всех языках с уникальными кодами. Вот как это выглядит:
Префикс U+ говорит о том, что это стандарт Unicode, а число — это результат преобразования двоичных чисел. Стандарт использует шестнадцатеричную нотацию, которая является упрощённым представлением двоичных чисел. Здесь вы можете ввести в поле что угодно и посмотреть, как это будет преобразовано в Unicode. А здесь можно полюбоваться на все 143 859 кодовых пунктов.
Уточню на всякий случай: речь идёт о большом словаре кодовых пунктов, присвоенных всевозможным символам. Это очень большой набор символов, не более того.
Осталось добавить последний ингредиент.
Unicode Transform Protocol (UTF)
UTF — протокол кодирования кодовых пунктов в Unicode. Он прописан в стандарте и позволяет кодировать любой кодовый пункт. Однако существуют разные типы UTF. Они различаются количеством байтов, используемых для кодировки одного пункта. В UTF-8 используется один байт на пункт, в UTF-16 — два байта, в UTF-32 — четыре байта.
Но если у нас есть три разные кодировки, то как узнать, какая из них применяется в конкретном файле? Для этого используют маркер последовательности байтов (Byte Order Mark, BOM), который ещё называют сигнатурой кодировки (Encoding Signature). BOM — это двухбайтный маркер в начале файл, который говорит о том, какая именно кодировка тут применена.
В интернете чаще всего используют UTF-8, она также прописана как предпочтительная в стандарте HTML5, так что уделю ей больше всего внимания.
Этот график построен в 2012-м, UTF-8 становилась доминирующей кодировкой. И всё ещё ею является.
Что такое UTF-8 и как она работает?
UTF-8 кодирует с помощью одного байта каждый кодовый пункт Unicode с 0 по 127 (как в ASCII). То есть если вы писали программу с использованием ASCII, а ваши пользователи применяют UTF-8, они не заметят ничего необычного. Всё будет работать как задумано. Обратите внимание, как это важно. Нам нужно было сохранить обратную совместимость с ASCII в ходе массового внедрения UTF-8. И эта кодировка ничего не ломает.
Как следует из названия, кодовый пункт состоит из 8 битов (один байт). В Unicode есть символы, которые занимают несколько байтов (вплоть до 6). Это называют переменной длиной. В разных языках удельное количество байтов разное. В английском — 1, европейские языки (с латинским алфавитом), иврит и арабский представлены с помощью двух байтов на кодовый пункт. Для китайского, японского, корейского и других азиатских языков используют по три байта.
Если нужно, чтобы символ занимал больше одного байта, то применяется битовая комбинация, обозначающая переход — он говорит о том, что символ продолжается в нескольких следующих байтах.
И теперь мы, как по волшебству, пришли к соглашению, как закодировать шумерскую клинопись (Хабр её не отображает), а также значки emoji!
Подытожив сказанное: сначала читаем BOM, чтобы определить версию кодировки, затем преобразуем файл в кодовые пункты Unicode, а потом выводим на экран символы из набора Unicode.
Напоследок про UTF
Коды являются ключами. Если я отправлю ошибочную кодировку, вы не сможете ничего прочесть. Не забывайте об этом при отправке и получении данных. В наших повседневных инструментах это часто абстрагировано, но нам, программистам, важно понимать, что происходит под капотом.
Как нам задавать кодировку? Поскольку HTML пишется на английском, и почти все кодировки прекрасно работают с английским, мы можем указать кодировку в начале раздела .
Важно сделать это в самом начале , поскольку парсинг HTML может начаться заново, если в данный момент используется неправильная кодировка. Также узнать версию кодировки можно из заголовка Content-Type HTTP-запроса/ответа.
Если HTML-документ не содержит упоминания кодировки, спецификация HTML5 предлагает такое интересное решение, как BOM-сниффинг. С его помощью мы по маркеру порядка байтов (BOM) можем определить используемую кодировку.
Это всё?
Unicode ещё не завершён. Как и в случае с любым стандартом, мы что-то добавляем, убираем, предлагаем новое. Никакие спецификации нельзя назвать «завершёнными». Обычно в год бывает 1-2 релиза, найти их описание можно здесь.
Если вы дочитали до конца, то вы молодцы. Предлагаю сделать домашнюю работу. Посмотрите, как могут ломаться сайты при использовании неправильной кодировки. Я воспользовался этим расширением для Google Chrome, поменял кодировку и попытался открывать разные страницы. Информация была совершенно нечитаемой. Попробуйте сами, как выглядит бнопня. Это поможет понять, насколько важна кодировка.
Заключение
При написании этой статьи я узнал о Майкле Эверсоне. С 1993 года он предложил больше 200 изменений в Unicode, добавил в стандарт тысячи символов. По состоянию на 2003 год он считался самым продуктивным участником. Он один очень сильно повлиял на облик Unicode. Майкл — один из тех, кто сделал интернет таким, каким мы его сегодня знаем. Очень впечатляет.
Надеюсь, мне удалось показать вам, для чего нужны кодировки, какие проблемы они решают, и что происходит при их сбоях.
Источник