Loadkeys не удалось открыть файл ru Нет такого файла или каталога

Обновлено: 04.07.2024

В этом сеансе мы рассмотрели наиболее распространенные каталоги в файловом дереве Linux. Это также показывает, что в Unix все является файлом.

Стандарт иерархии файловой системы

Многие дистрибутивы Linux частично следуют стандарту иерархии файловой системы. FHS (стандарт иерархии файловой системы) может помочь в будущем сделать большее количество деревьев файловой системы Unix/Linux лучше совместимым. Из FHS известно, что стандарт иерархии файловой системы был разработан для использования разработчиками дистрибутивов Unix, разработчиками пакетов и разработчиками системы. Однако в первую очередь он предназначен для использования в качестве справочного материала, а не руководства по управлению файловой системой Unix или иерархией каталогов.

человек сюда

Есть некоторые различия в файловых системах между дистрибутивами Linux. Чтобы получить справку по вашей машине, введите man hier, чтобы найти информацию об иерархии файловой системы. В этом руководстве объясняется структура каталогов на вашем компьютере.

корневой каталог /

Все системы Linux имеют структуру каталогов, которая начинается с корневого каталога (домашнего каталога корневого каталога). Корневой каталог обозначается косой чертой, например: /. Все, что существует в вашей системе Linux, можно найти в этом корневом каталоге. Давайте кратко рассмотрим содержимое корневого каталога.

бинарные каталоги

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

/бин

Каталог /bin содержит стандартные системные утилиты. Согласно FHS, каталог /bin должен содержать /bin/cat и /bin/date (среди прочего).
Следующая информация показывает общие команды Unix/Linux, такие как cat, cp, cpio, date, dd, echo, grep и т. д.

другие каталоги /bin

Вы можете найти подкаталог /bin во многих других каталогах. Пользователь с именем serena может размещать свои программы в /home/serena/bin.
Некоторые приложения, часто при установке непосредственно из исходного кода, помещают себя в /opt. Установка сервера samba может использовать /opt/samba/bin для хранения своих двоичных файлов.

/sbin

T/sbin содержит двоичные файлы для настройки операционной системы. Многие из системных двоичных файлов требуют привилегий root для выполнения определенных задач.
Ниже скриншот, содержащий двоичные файлы системы для изменения IP-адреса, разбиения диска и создания файловой системы ext4.

/библиотека

Двоичные файлы, находящиеся в /bin и /sbin, часто используют общие библиотеки, расположенные в /lib. Ниже приведен снимок экрана с частичным содержимым /lib.

/библиотека/модули

Обычно ядро ​​Linux загружает модули ядра из /lib/modules/$kernel-version/. Этот каталог подробно обсуждается в главе о ядре Linux.

/lib32 и /lib64

В настоящее время мы находимся в процессе перехода между 32-разрядными и 64-разрядными системами. Поэтому вы можете столкнуться с каталогами с именами /lib32 и /lib64, которые уточняют размер регистра, используемого во время компиляции библиотек. 64-разрядный компьютер может иметь некоторые 32-разрядные двоичные файлы и библиотеки для совместимости с устаревшими приложениями. На этом снимке экрана используется файловая утилита, чтобы продемонстрировать разницу.

Формат ELF (Executable and Linkable Format) используется почти во всех Unix-подобных операционных системах, начиная с System V.

/опт

Пункт /opt предназначен для хранения дополнительного программного обеспечения. Во многих случаях это программное обеспечение вне репозитория дистрибутива. Во многих системах вы можете найти пустой каталог /opt.

Большой пакет может установить все свои файлы в подкаталоги /bin, /lib, /etc внутри /opt/$packagename/. Если, например, пакет называется wp, то он устанавливается в /opt/wp, двоичные файлы помещаются в /opt/wp/bin, а справочные страницы — в /opt/wp/man.

каталоги конфигурации

/загрузка

Каталог /boot содержит все файлы, необходимые для загрузки компьютера. Эти файлы не меняются очень часто. В системах Linux вы обычно найдете здесь каталог /boot/grub. /boot/grub содержит /boot/grub/grub.cfg (в более старых системах все еще может быть /boot/grub/grub.conf), определяющий загрузочное меню, отображаемое перед запуском ядра.

/и т. д.

Все административные файлы и файлы конфигурации должны находиться в /etc. Часто имя файла конфигурации совпадает с именем приложения, демона или протокола с добавлением .conf в качестве расширения.

В /etc можно найти гораздо больше.

/etc/init.d/

Во многих дистрибутивах Unix/Linux есть каталог /etc/init.d, содержащий сценарии для запуска и остановки демонов. Этот каталог может исчезнуть при переходе Linux на системы, которые заменяют старый способ запуска всех демонов init.

/etc/X11/

/etc/skel/

Скелетный каталог /etc/skel копируется в домашний каталог только что созданного пользователя. Обычно он содержит скрытые файлы, такие как скрипт .bashrc.

/etc/sysconfig/

Этот каталог, который не упоминается в FHS, содержит множество файлов конфигурации Red Hat Enterprise Linux. О некоторых из них мы поговорим подробнее. На снимке экрана ниже показан каталог /etc/sysconfig из RHELv4u4 со всем установленным.

Файл /etc/sysconfig/firstboot указывает агенту установки Red Hat не запускаться во время загрузки. Если вы хотите запустить агент установки Red Hat при следующей перезагрузке, просто удалите этот файл и запустите chkconfig --level 5 firstboot on. Агент установки Red Hat позволяет устанавливать последние обновления, создавать учетную запись пользователя, присоединяться к Red Hat Network и выполнять другие действия. Затем он снова создаст файл /etc/sysconfig/firstboot.

Файл /etc/sysconfig/harddisks содержит некоторые параметры для настройки жестких дисков. Файл объясняет сам себя.

Оборудование, обнаруженное kudzu, можно увидеть в файле /etc/sysconfig/hwconf. Kudzu — это программное обеспечение от Red Hat для автоматического обнаружения и настройки оборудования.

Тип клавиатуры и таблица раскладок задаются в файле /etc/sysconfig/keyboard. Дополнительную информацию о клавиатуре консоли см. на справочных страницах keymaps(5), dumpkeys(1), loadkeys(1) и в каталоге /lib/kbd/keymaps/.

Мы обсудим сетевые файлы в этом каталоге в главе о сети.

каталоги данных

/дом

Здесь хранятся домашние каталоги пользователей, пользователи могут хранить личные или проектные данные в /home. Обычная (но не обязательная для fhs) практика называть домашний каталог пользователей после имени пользователя в формате /home/$USERNAME. Например:

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

/корень

Во многих системах /root является расположением по умолчанию для личных данных и профиля пользователя root. Если его нет по умолчанию, то некоторые администраторы его создают.

/срв

В Sun Solaris (или Oracle Solaris) для этой цели используется /export.

/медиа

Каталог /media служит точкой подключения для съемных носителей, таких как компакт-диски, цифровые камеры и различные USB-устройства. Поскольку каталог /media является новым в мире Unix, вы вполне можете столкнуться с системами, работающими без этого каталога. В Solaris 9 его нет, в Solaris 10 он есть. Сегодня большинство дистрибутивов Linux монтируют все съемные носители в /media.

/мин

Каталог /mnt должен быть пустым и использоваться только для временных точек монтирования (согласно FHS).

Администраторы Unix и Linux создавали здесь множество каталогов, например /mnt/something/. Скорее всего, вы столкнетесь со многими системами, в которых создано и/или смонтировано более одного каталога внутри /mnt для использования в различных локальных и удаленных файловых системах.

/tmp

Приложения и пользователи должны использовать /tmp для хранения временных данных, когда это необходимо. Данные, хранящиеся в /tmp, могут использовать либо дисковое пространство, либо ОЗУ. Оба они управляются операционной системой. Никогда не используйте /tmp для хранения важных данных или данных, которые вы хотите заархивировать.

в каталогах памяти

/dev

Файлы устройств в /dev кажутся обычными файлами, но на самом деле не находятся на жестком диске. Каталог /dev заполняется файлами по мере того, как ядро ​​распознает оборудование.

обычные физические устройства

Обычное оборудование, такое как жесткие диски, представлено файлами устройств в /dev. Ниже скриншот файлов устройств SATA на ноутбуке, а затем подключенных дисков IDE на настольном компьютере. (Подробное значение этих устройств будет рассмотрено позже.)

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

/dev/tty и /dev/pts

Например, /dev/tty1 представляет терминал или консоль, подключенную к системе. (Не ломайте голову над точной терминологией «терминала» или «консоли», здесь мы имеем в виду интерфейс командной строки.) При вводе команд в терминале, который является частью графического интерфейса, такого как Gnome или KDE, затем ваш терминал будет представлен как /dev/pts/1 (1 может быть другим числом).

/dev/null

В Linux вы найдете другие специальные устройства, такие как /dev/null, которые можно считать черной дырой; у него неограниченное хранилище, но из него ничего нельзя извлечь. С технической точки зрения, все, что записано в /dev/null, будет удалено. /dev/null может быть полезен для удаления нежелательного вывода команд. /dev/null — не лучшее место для хранения резервных копий ;-).

/proc диалог с ядром

/proc — это еще один специальный каталог, который выглядит как обычные файлы, но не занимает места на диске. На самом деле это представление ядра или, лучше сказать, того, чем ядро ​​управляет, и средство для прямого взаимодействия с ним. /proc — файловая система proc.

При просмотре каталога /proc вы увидите много чисел (в любой Unix) и несколько интересных файлов (в Linux)

Давайте рассмотрим свойства файла внутри /proc. Глядя на дату и время, вы увидите текущую дату и время, показывающие, что файлы постоянно обновляются (просмотр ядра).

Большинство файлов в /proc имеют размер 0 байт, однако они содержат данные, иногда много данных. Вы можете убедиться в этом, выполнив команду cat для таких файлов, как /proc/cpuinfo, которые содержат информацию о ЦП.

Для интереса, вот /proc/cpuinfo на Sun Sunblade 1000.

Большинство файлов в /proc доступны только для чтения, для некоторых требуются привилегии суперпользователя, некоторые файлы доступны для записи, а многие файлы в /proc/sys доступны для записи. Давайте обсудим некоторые файлы в /proc.

/proc/прерывания

В архитектуре x86 /proc/interrupts отображает прерывания.

На машине с двумя процессорами файл выглядит так.

/proc/kcore

Физическая память представлена ​​в /proc/kcore. Не пытайтесь катить этот файл, вместо этого используйте отладчик. Размер /proc/kcore равен вашей физической памяти плюс четыре байта.

/sys Linux 2.6 с горячим подключением

В основном каталог /sys содержит информацию ядра об оборудовании.

/usr Системные ресурсы Unix

Хотя /usr произносится как пользователь, помните, что это означает системные ресурсы Unix. Иерархия /usr должна содержать общедоступные данные только для чтения. Некоторые люди предпочитают монтировать /usr только для чтения. Это можно сделать из собственного раздела или из общей папки NFS, доступной только для чтения.

/usr/bin

Каталог /usr/bin содержит множество команд.

/usr/include

Каталог /usr/include содержит включаемые файлы общего назначения для C.

/usr/библиотека

Каталог /usr/lib содержит библиотеки, которые не выполняются напрямую пользователями или сценариями.

/usr/местный

Каталог /usr/local может использоваться администратором для локальной установки программного обеспечения.

/usr/поделиться

Каталог /usr/share содержит данные, не зависящие от архитектуры. Как видите, это довольно большой каталог.

Этот каталог обычно содержит /usr/share/man для справочных страниц.

Кроме того, он содержит /usr/share/games для всех статических игровых данных (поэтому нет рекордов или журналов игр).

/usr/источник

Каталог /usr/src является рекомендуемым местом для исходных файлов ядра.

/var переменные данные

Файлы непредсказуемого размера, такие как файлы журналов, кеша и спула, должны располагаться в /var.

/var/журнал

Каталог /var/log служит центральной точкой для хранения всех файлов журналов.

/var/журнал/сообщения

Обычным первым файлом, который необходимо проверить при устранении неполадок в Red Hat (и производных версиях), является файл /var/log/messages. По умолчанию этот файл будет содержать информацию о том, что только что произошло с системой. В Debian и Ubuntu этот файл называется /var/log/syslog.

/var/кэш

Каталог /var/cache может содержать данные кеша для нескольких приложений.

/var/spool

Каталог /var/spool обычно содержит каталоги спула для почты и cron, но также служит родительским каталогом для других файлов спула (например, файлов спула печати).

/var/библиотека

Каталог /var/lib содержит информацию о состоянии приложения.

Например, Red Hat Enterprise Linux хранит файлы, относящиеся к rpm, в /var/lib/rpm/.

/вар/.

/var также содержит файлы идентификаторов процессов в /var/run (скоро они будут заменены на /run) и временные файлы, сохраняющиеся после перезагрузки, в /var/tmp, а также информацию о блокировках файлов в /var/lock. Далее в этом руководстве будут приведены дополнительные примеры использования /var.

Упражнение, практика и решение:

<р>1. Файл /bin/cat существует? Как насчет /bin/dd и /bin/echo. Какого типа эти файлы?

Код:

<р>2. Каков размер файла(ов) ядра Linux (vmlinu*) в /boot ?

Код:

<р>3. Создайте каталог ~/test. Затем введите следующие команды:

cd ~/test
dd if=/dev/zero of=zeroes.txt count=1 bs=100
od zeroes.txt

dd скопирует один раз (count=1) блок размером 100 байт (bs=100) из файла /dev/zero в ~/test/zeroes.txt. Можете ли вы описать функциональность /dev/zero ?

Код:

dd скопирует один раз (count=1) блок размером 100 байт (bs=100) из файла /dev/zero
в ~/test/zeroes.txt. Можете ли вы описать функциональность /dev/zero?
/dev/zero — это специальное устройство Linux. Его можно считать источником нулей. Вы не можете отправить
что-то в /dev/zero, но можете прочитать из него нули.

<р>4. Теперь введите следующую команду:

dd if=/dev/random of=random.txt count=1 bs=100 ; случайный.txt

dd скопирует один раз (count=1) блок размером 100 байт (bs=100) из файла /dev/random в ~/test/random.txt. Можете ли вы описать функциональность /dev/random ?

Код:

dd скопирует один раз (count=1) блок размером 100 байт (bs=100) из файла /dev/
random в ~/test/random.txt. Можете ли вы описать функциональность /dev/random?
/dev/random действует как генератор случайных чисел на вашем компьютере с Linux.

<р>5. Введите следующие две команды и просмотрите первый символ каждой строки вывода.

ls -l /dev/sd* /dev/hd*
ls -l /dev/tty* /dev/input/mou*

Первый ls показывает блочные (b) устройства, второй ls показывает символьные (c) устройства. Можете ли вы определить разницу между блочными и символьными устройствами?

Код:

Первый ls показывает блочные (b) устройства, второй ls показывает символьные (c) устройства.
Можете ли вы объяснить разницу между блочными и символьными устройствами?
Блочные устройства всегда записываются (или считываются) блоками. Для жестких дисков обычно используются блоки по 512
байт. Символьные устройства действуют как поток символов (или байтов). Мышь и
клавиатура являются типичными символьными устройствами.

<р>6. Используйте cat для отображения /etc/hosts и /etc/resolv.conf. Что вы думаете о назначении этих файлов?

Код:

<р>7. Есть ли файлы в /etc/skel/? Проверьте также наличие скрытых файлов.

Код:

<р>8. Показать /proc/cpuinfo. На какой архитектуре работает ваш Linux?

Код:

<р>9. Показать /proc/interrupts. Каков размер этого файла? Где хранится этот файл?

Код:

<р>10. Можете ли вы войти в каталог /root? Есть ли (скрытые) файлы?

Код:

<р>11. Присутствуют ли ifconfig, fdisk, parted, shutdown и grub-install в /sbin? Почему эти двоичные файлы находятся в /sbin, а не в /bin?

Код:

<р>12. Является ли /var/log файлом или каталогом? А как насчет /var/spool ?

Код:

<р>13. Откройте две командные строки (Ctrl-Shift-T в терминале gnome) или терминалы (Ctrl-Alt-F1, Ctrl-Alt-F2, . ) и введите who am i в обоих. Затем попробуйте повторить слово с одного терминала на другой.

Код:

<р>14. Прочитайте справочную страницу random и объясните разницу между /dev/random и /dev/urandom.

День-два я обновлял свою систему, когда во время обновления пропадало питание.
Теперь я получаю следующую ошибку:

Я думаю, что мне нужно сделать то, что упоминается в сбоях Pacman во время обновления.
Но прежде чем сделать это, я хочу проверить, правильно ли я поступаю, и, возможно, какие-либо предложения по более простому способу решения этой проблемы.

Существование более простого способа в основном зависит от суммы ущерба от аварии.

как пользователь root и опубликуйте вывод, пожалуйста.

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

(A работает в момент времени B) && (время C > время B ) ≠ (A работает в момент времени C)

Это результат предложенной вами команды.

редактировать: забыл sudo. :Ф

Скорее всего, будет достаточно следующего:

«UNIX проста и понятна», — Деннис Ритчи, «GNU — это не UNIX», — Ричард Столлман

Скорее всего, будет достаточно следующего:

Извините, но это не сработало.

Это действительно сработало, но есть не одна проблема. К сожалению, простое прикосновение к файлу «файлы» может быть не таким эффективным, и это может привести к тому, что ненужные файлы останутся. Конечно, их можно было бы очистить позже, выполнив поиск неотслеживаемых файлов. РЕДАКТИРОВАТЬ: хотя я полагаю, что это состояние, в котором вы находитесь, несмотря ни на что. Так что я бы попробовал:

«UNIX проста и понятна», — Деннис Ритчи, «GNU — это не UNIX», — Ричард Столлман

Это действительно сработало, но есть не одна проблема. К сожалению, простое прикосновение к файлу «файлы» может быть не таким эффективным, и это может привести к тому, что ненужные файлы останутся. Конечно, их можно было бы очистить позже, выполнив поиск неотслеживаемых файлов. РЕДАКТИРОВАТЬ: хотя я полагаю, что это состояние, в котором вы находитесь, несмотря ни на что. Так что я бы попробовал:

Хорошо! Теперь я получаю новый набор ошибок.
Журнал Looong, но он заканчивается следующими строками:

И в соответствии с сообщением «Не удалось зафиксировать транзакцию», мне, вероятно, следует запустить

это правильный выбор?

Верно. *Известно*, что пакет gcc поврежден из-за сбоя, поэтому сообщения «существует в файловой системе» связаны с тем, что метаданные пакета gcc не отслеживают необходимые файлы.

Общий подход к устранению этой проблемы заключается в том, чтобы сначала подделать оба файла метаданных в /var/lib/pacman/local/gcc-8.2.1+20181127-1/, а затем переустановить пакет, перезаписав предоставленные им файлы, полученные из прерванное обновление.

Другим подходом может быть установка gcc с помощью --dbonly, которая установит метаданные, но не файлы, а затем переустановит пакет, как только он решит, что все файлы теперь отслеживаются.

Правильно управлять репозиториями AUR – aurpublish (теперь это отдельный инструмент)

Это тоже не сработало.

Я думал, что это сработает, но это не сработало.

Поскольку литеральная строка "glob" не является подходящим шаблоном подстановки для всех файлов, которые вы хотите перезаписать.

Portal/IDB/icon-wiki-portal.jpg

Портал вики-клавиатуры Debian. Этот портал охватывает все аспекты настройки клавиатур в Debian.

Настройка клавиатуры

Чтобы настроить клавиатуру, необходимо установить keyboard-configuration. Также необходим пакет console-setup.

Настройки клавиатуры хранятся в файле /etc/default/keyboard. Он предоставляется пакетом keyboard-configuration, и другие пакеты используют эту информацию для настройки клавиатуры на консоли или в системе X Window.

Вы можете изменить настройки клавиатуры, используя:

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

Чтобы применить новые настройки, должно быть достаточно перезапуска службы keyboard-setup, в противном случае вы можете попробовать перезапустить систему ввода ядра через udev:

  • триггер udevadm --subsystem-match=input --action=change

или перезагрузите всю ОС.

Как установить раскладку клавиатуры в initramfs

Необходимо изменить соответствующий раздел /etc/initramfs-tools/initramfs.conf, чтобы во время загрузки была локализованная раскладка клавиатуры:

Как включить USB-клавиатуру в initramfs

Initramfs-tools должен включать модуль usbhid и его зависимости для поддержки USB-клавиатуры во время загрузки. Либо файл конфигурации /etc/initramfs-tools/conf.d/driver-policy должен включать большинство модулей, либо их нужно указать в другом файле:

Если приведенная выше конфигурация не включала большинство модулей, то необходимые модули необходимо указать в файле /etc/initramfs-tools/modules:

Как переключить раскладку клавиатуры в X11/графической среде рабочего стола или консоли ttyX

ГНОМ

Раскладку клавиатуры можно изменить в Настройки -> Регион и языки -> Источники ввода. Его также можно изменить через CLI с помощью dconf/gsettings, добавив ключи в /org/gnome/desktop/input-sources/sources.

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

Единственный способ сделать их видимыми — включить соответствующий параметр в gconf:

$ gsettings устанавливает org.gnome.desktop.input-sources show-all-sources true

KDE делает это через System_settings/Hardware/Input_devices/keyboard. Большинство людей, использующих два языка, просто выбирают правильную модель клавиатуры, а затем переходят на вкладку макета и выбирают английский (США, международный ?AltGr Unicode, альтернативный).

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

Общий/консольный

Чтобы активировать измененные настройки в /etc/default/keyboard без перезагрузки, запустите setupcon(1).

Общий / Терминал

Вы также можете переключать раскладку из терминала, например. г.:

$ setxkbmap от
$ setxkbmap от
$ setxkbmap от нас

Особый интерес для клавиатуры с американской раскладкой может представлять вариант altgr-intl (это обеспечивает простое сопоставление AltGr для многих умлаутов и специальных символов):

$ setxkbmap -rules evdev -model evdev -layout us -variant altgr-intl

$ setxkbmap -model pc105 -layout us -variant altgr-intl

Чтобы настроить простую клавишу для переключения между несколькими настроенными раскладками клавиатуры, см. Option XkbOptions в разделе InputClass где-то в коллекции файлов конфигурации xorg (см. [РЕШЕНО] Setxkbmap .xinitrc).

Устранение неполадок

Если изменения в /etc/default/keyboard не применяются после перезапуска, возможно, изменения переопределяются gsettings. Например, если XKBOPTIONS, установленные в /etc/default/keyboard, не работают, проверьте, используя:

gsettings получает org.gnome.desktop.input-sources xkb-options

и сбросить при необходимости:

gsettings сброс org.gnome.desktop.input-sources xkb-options

IBus также может иногда переопределять настройки из /etc/default/keyboard. Диалоговое окно настройки клавиатуры в GNOME 3 напрямую изменит конфигурацию IBus, но пользователи других сред X могут использовать команду ibus-setup для изменения настроек IBus. Чтобы заставить его использовать настройки из /etc/default/keyboard, запустите ibus-setup, перейдите на вкладку Дополнительно и установите флажок Использовать системную раскладку клавиатуры.

Раскладка клавиатуры преобразует скан-коды с клавиатуры в символы, отправляемые в приложение.Раскладки клавиатуры также могут выполнять более сложные преобразования с помощью так называемых мертвых клавиш, которые не выводят символы сами по себе, а изменяют вывод последующих клавиш. Соответствующая раскладка клавиатуры требуется для поддержки как клавиатур, отличных от QWERTY, так и клавиатур QWERTY для ввода символов, не входящих в набор ASCII.

Содержание

Текстовый режим

OpenRC

Раскладка клавиатуры по умолчанию устанавливается в файле /etc/conf.d/keymaps путем назначения соответствующей раскладки в качестве значения для keymap . Значения раскладки определены в /usr/share/keymaps, и большинство пользователей будут использовать значение из /usr/share/keymaps/i386/qwerty/. При желании установите значение для переменной extended_keymaps из соответствующего каталога включения, например /usr/share/keymaps/i386/include . Например, задайте extension_keymaps="euro2", чтобы получить евро и цент с сочетанием клавиш Alt-Gr на позициях, где на многих клавиатурах есть E и C.

Наконец добавьте /etc/init.d/keymaps на уровень выполнения загрузки.

Перезапустить раскладки для применения изменений

Если вам нужно, чтобы терминал отображал символы, отличные от ASCII, вы должны отредактировать /etc/conf.d/consolefont и изменить шрифт

И добавить на уровень запуска загрузки

Пользовательская раскладка

Чтобы создать пользовательскую раскладку, просмотрите предоставленные раскладки в /usr/share/keymaps:

Вот пример пользовательской раскладки, которая совпадает с раскладкой QWERTY в США, за исключением того, что косая черта и апостроф поменялись местами:

Чтобы найти коды клавиш, сопоставленные с клавишами, просмотрите выходные данные dumpkeys :

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

Просто нажмите клавишу, и отобразится ее код. Когда закончите, подождите несколько секунд, и showkey закроется.

системный

systemd использует файл /etc/vconsole.conf и включает в себя как шрифт терминала, так и настройки раскладки клавиатуры, но не имеет расширенных настроек, имеющихся в OpenRC. Допустимые значения должны соответствовать тому, что OpenRC поддерживает для соответствующей переменной.

Современные приложения X11 обычно используют x11-libs/libxklavier («klavier» в переводе с немецкого означает «клавиатура») и могут быть настроены с помощью setxkbmap . Кроме того, X11 поддерживает гораздо более широкий набор раскладок клавиатуры, чем для виртуальных терминалов. Следует иметь в виду, что правильная среда рабочего стола сама управляет раскладкой клавиатуры. Нет необходимости напрямую использовать вышеупомянутое приложение, но оно может пригодиться при работе со сломанным или отсутствующим управлением раскладкой клавиатуры.

KDE4 / Плазма

Откройте Системные настройки и перейдите к модулю «Устройства ввода».

Чтобы сделать дополнительные языки доступными в диспетчере входа SDDM, отредактируйте файл /usr/share/sddm/scripts/Xsetup и добавьте команду setxkbmap, за которой следует список языков, разделенных запятыми, которые вы хотели бы выбрать.

Например, чтобы включить немецкий язык по умолчанию и указать США в качестве раскладки клавиатуры, добавьте следующее:

Общая среда рабочего стола

Отредактируйте ~/.xprofile и вызовите оттуда setxkbmap или настройте клавиатуру в файле конфигурации Xorg (примеры см. ниже).

Примечание
Последние версии GNOME 3 больше не используют x11-libs/libxklavier, поэтому это может вообще не работать или может быть переопределено GNOME. Точно так же любая другая среда рабочего стола может переопределить конфигурацию x11-libs/libxklavier как часть инициализации или изменения макета.

Предупреждение
~/.xprofile — это нестандартный файл, который загружается только при входе в систему через диспетчер отображения, который его поддерживает (проверено только на GDM, KDM, LightDM, LXDM и SDDM). зависит от дистрибутива, хотя кажется, что все распространенные дистрибутивы поддерживают этот файл.

Универсальный X11

Использование setxkbmap

Эти изменения не являются постоянными и сохранятся только до тех пор, пока пользователь не перезапустит X11. Естественно, эту команду можно вызвать из сценария запуска, чтобы установить соответствующие параметры при каждом запуске X-сервера.

Чтобы запросить существующую конфигурацию:

Настройка раскладки клавиатуры:

Настройка раскладки клавиатуры, ее варианта и модели:

Настройка двух раскладок клавиатуры со светодиодной индикацией:

Рекомендуется прочитать руководство по xkeyboard-config для получения полного списка параметров конфигурации клавиатуры:

Поиск поддерживаемых макетов и вариантов или значений других свойств xkb в этом приложении невозможен, хотя большинство из них перечислены в файле /usr/share/X11/xkb/rules/base.lst. Получить наиболее полный список можно, только изучив другие файлы в /usr/share/X11/xkb/. Ради здравого смысла рекомендуется использовать подходящую среду рабочего стола с собственным управлением раскладкой клавиатуры.

Использование общесистемных макетов и ярлыков

Этот метод рекомендуется для конфигураций без среды рабочего стола, другими словами, только для X11 с оконным менеджером. Поскольку Gnome удалил возможность изменять раскладки клавиатуры в GDM с помощью gnome-control-center, GDM также полагается на этот метод в системах без systemd. Создайте 10-клавиатуру.conf и настройте его с соответствующими настройками клавиатуры. Вы можете создать каталог /etc/X11/xorg.conf.d, если он не существует.

В приведенном выше примере настраиваются раскладки клавиатуры для США и Бразилии с сочетанием клавиш «Shift влево» и «Shift вправо» для переключения между ними. На бразильскую раскладку указывает индикатор Scroll Lock на клавиатуре.

Примечание
При использовании кириллической раскладки и клавиатуре с клавишами «Windows®» может потребоваться добавить адаптивные «,winkeys» к параметру XkbVariant.

Дополнительные возможности настройки

Существует ряд доступных вариантов и параметров, которые можно использовать при настройке раскладок клавиатуры. Большинство из них можно найти в файле /usr/share/X11/xkb/rules/base.lst.

Например, раскладку для США с возможностью написания некоторых международных символов можно настроить с помощью варианта altgr-intl :

Затем правый Alt используется как модификатор для ввода международных символов.

Xorg предоставляет возможность вводить международные и различные символы символов по композиции, что означает нажатие клавиши ввода, за которой следует последовательность символов. Чтобы включить композицию, добавьте параметр compose::

Опция compose:sclk выше настраивает блокировку прокрутки в качестве клавиши создания. С этой настройкой:

  • Нажмите Scroll Lock, затем введите "oo", чтобы получить знак градуса "°".
  • Нажмите Scroll Lock, затем введите "oc", чтобы получить знак авторского права "©".
  • Нажмите Scroll Lock, затем введите ':)', чтобы получить улыбающееся лицо '☺'
  • Нажмите Scroll Lock, затем введите '^2', чтобы получить верхний индекс 2 ('²').
  • Нажмите Scroll Lock, затем введите "_2", чтобы получить индекс 2 ("₂").
  • Нажмите Scroll Lock, затем введите "di", чтобы получить знак диаметра "⌀"
<р>. и многое другое. В файле /usr/share/X11/locale/compose.dir перечислены все возможные источники композиций.

Улучшение раскладки клавиатуры X

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

Основы

Соответствующий пакет Gentoo — x11-misc/xkeyboard-config. Настроить клавиатуру под X сложнее, чем сделать то же самое для виртуальной консоли. Соответствующие файлы конфигурации можно найти в /usr/share/X11/xkb в следующих подкаталогах:

keycodes Эти файлы связывают коды клавиш с символическими именами — маловероятно, что кто-то захочет это изменить. геометрия Это физическая форма клавиатуры, используемая некоторым программным обеспечением для рисования ее схем - также маловероятно, что кто-то захочет это изменить. типы Файлы здесь создают "типы". Используемый в объявлении ключа тип указывает, какие комбинации клавиш Shift можно использовать с ключом. символы Эти файлы определяют фактические назначения клавиш. compat Файлы здесь определяют «действия» (например, переключение на виртуальный терминал), давая им имена, которые можно назначать клавишам. rules Эти файлы с такими параметрами, как тип клавиатуры и язык, активируют соответствующие спецификации в других каталогах.

Добавление назначений клавиш

Например, в этом разделе будет улучшена раскладка клавиатуры для британского английского, так что при вводе a, o или u с помощью AltGr будут генерироваться немецкие буквы умлаут ä, ö и ü. Это также должно поступать правильно для версий в верхнем регистре. Клавиши для повышения - A (), O () и U (). (Символ ß уже назначен AltGr + S .)

Названия букв с умлаутом в xkb - "adiaeresis" и так далее. Эти имена можно найти в файле /usr/include/X11/keysymdef.h , хотя для получения имен необходимо удалить ведущие «XK_».

Определите нужный файл в каталоге символов. Большинство этих файлов называются двухбуквенными кодами стран (например, gb для Великобритании), поэтому угадайте тот, который соответствует раскладке клавиатуры, выбранной в данный момент в X. В этом примере символы /gb расширены.

Используя приведенную выше информацию, создайте новые записи, скопировав существующую схему в symbols/gb . В этом примере эти записи должны быть добавлены в раздел под названием «основной». По его содержанию легко догадаться, что четыре элемента в скобках и квадратных скобках в записи для каждой клавиши предназначены для обычных (без других комбинаций клавиш), Shift , AltGr и Shift + AltGr соответственно:

После внесения дополнений раздел выглядит так:

Сохранив этот файл, перезапустите X Windows. Типичная среда рабочего стола, XFCE, повторно считывает вышеуказанные файлы конфигурации при каждом запуске. В случае возникновения ошибок сообщения об ошибках будут записываться в обычный stderr — если X Windows запускается из командной строки, stderr будет виртуальным терминалом, с которого он был запущен.

Добавление действий к функциональным клавишам

Например, добавьте действия «переключиться на виртуальный терминал n» (где n > 12) к функциональным клавишам F1–F12, когда выбраны все клавиши Ctrl , Alt и Shift . Тот же эффект должен иметь место при выборе AltGr и Fn.

Сначала найдите файл в каталоге символов, который обрабатывает существующие назначения для функциональных клавиш. Этот файл — icons/srvr_ctrl. Запись в этом файле для F1 , которую предполагается изменить, выглядит следующим образом:

В отношении этой записи следует отметить две вещи:

  • Тип "CTRL+ALT"; таким образом, он принимает стандартные четыре настройки клавиши Shift с Shift и AltGr , а также пятую настройку Ctrl + Alt . Поскольку целью является использование Ctrl + Alt + Shift , а подходящего существующего типа нет, необходимо создать новый.
  • "Действие" XF86_Switch_VT_1 — это просто определенный символ в системе xkb. Его семантика задается записью в файле в каталоге compat, а именно compat/xfree86. Нет символа XF86_Switch_VT_13 (или выше) — вместо этого украсть неиспользуемые существующие символы F13, F14, . F24.
Создание нового типа CTRL+ALT+SHIFT

Найдя «CTRL+ALT» в types/pc , достаточно легко скопировать его, переименовать копию в «CTRL+ALT+SHIFT» и расширить это, чтобы разрешить комбинацию клавиш-модификаторов Ctrl + Alt + Shift . Результат выглядит следующим образом:

Активация символов F13, . F24

Символ XF86_Switch_VT_1 быстро находится в compat/xfree86 . Скопировать его форму несложно, создав назначения для символов F13, . Ф24. Определение первого из этих символов, F13, в compat/xfree86 выглядит следующим образом:

Аналогичные определения для F14, . F24 также должен быть помещен в файл.

Изменение записей в символах для клавиш F1 , . F12

Теперь, когда новый тип CTRL+ALT+SHIFT и определения символов F13, . F24 определены, измените определения функциональных клавиш в symbols/srvr_ctrl . Один для F1 упоминается ниже, аналогичные определения также необходимо вставить для других функциональных клавиш:

После внесения этих изменений в types/pc , compat/xfree86 и symbol/srvr_ctrl и перезапуска X-сервера теперь возможно переключение с X напрямую на виртуальные терминалы 13 и выше — при условии, что они были настроены в / etc/inittab (или аналог systemd), конечно.

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