Настройка переключения клавиатуры centos

/proc/net/softnet_stat

Как мы видели в предыдущей главе, статистические счётчики инкрементируются при выходе из цикла net_rx_action, либо если осталась работа, которая могла быть выполнена, но мы упёрлись в ограничение бюджета или времени для SoftIRQ. Эта статистика отслеживается как часть структуры struct softnet_data, ассоциированной с CPU.

В Linux 3.13.0 можно выяснить, какие значения соответствуют каким полям в /proc/net/softnet_stat посредством чтения исходников ядра. Взято из net/core/net-procfs.c:

seq_printf(seq,
       "x x x x x x x x x x xn",
       sd->processed, sd->dropped, sd->time_squeeze, 0,
       0, 0, 0, 0, /* was fastroute */
       sd->cpu_collision, sd->received_rps, flow_limit_count);

Многие из этих счётчиков имеют странные имена и инкрементируются в неожиданных местах. Только изучив сетевой стек можно понять, когда и где инкрементируется каждый из них. Поскольку статистика squeeze_time встречалась в net_rx_action, мне кажется, есть смысла задокументировать сейчас этот файл.

Читаем /proc/net/softnet_stat, чтобы мониторить статистику обработки сетевых данных:

$ cat /proc/net/softnet_stat
6dcad223 00000000 00000001 00000000 00000000 00000000 00000000 00000000 00000000 00000000
6f0e1565 00000000 00000002 00000000 00000000 00000000 00000000 00000000 00000000 00000000
660774ec 00000000 00000003 00000000 00000000 00000000 00000000 00000000 00000000 00000000
61c99331 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
6794b1b3 00000000 00000005 00000000 00000000 00000000 00000000 00000000 00000000 00000000
6488cb92 00000000 00000001 00000000 00000000 00000000 00000000 00000000 00000000 00000000

Важные подробности относительно /proc/net/softnet_stat:

  • Каждая строка /proc/net/softnet_stat соответствует структуре struct softnet_data, по одной на каждый CPU.
  • Значения разделены одиночными пробелами и отображаются в шестнадцатеричной форме.
  • Первое значение, sd->processed, — это количество обработанных сетевых фреймов. Оно может превышать общее количество полученных фреймов, если вы используете связывание Ethernet (Ethernet bonding). Драйвер связывания может стать причиной повторной обработки данных, и тогда счётчик sd->processed для одного и того же пакета будет инкрементироваться больше одного раза.
  • Второе значение, sd->dropped, — это количество отброшенных сетевых фреймов по причине нехватки места в очереди обработки. Об этом поговорим ниже.
  • Третье значение, sd->time_squeeze, — это количество раз, когда цикл net_rx_action прерывался из-за истощения бюджета или достижения ограничения по времени, хотя работа ещё оставалась. Как объяснялось выше, помочь тут может увеличение budget.
  • Следующие пять значений всегда равны 0.
  • Девятое значение, sd->cpu_collision, — это количество коллизий, возникавших при попытках получения блокировки устройства в ходе передачи пакетов. Поскольку эта статья посвящена приёму пакетов, то мы эту статистику рассматривать не будем.
  • Десятое значение, sd->received_rps, — это количество раз, когда посредством межпроцессорного прерывания будили CPU для обработки пакетов.
  • Последнее значение, flow_limit_count, — это количество раз, когда было достигнуто ограничение потока (flow limit). Ограничение потока — это опциональная возможность управления принимаемыми пакетами (Receive Packet Steering), которую мы скоро рассмотрим.

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

Cockpit – упрощение типичных административных задач в ос linux через удобный веб-интерфейс

В этой статье я расскажу про возможности инструмента Cockpit. Cockpit создан с целью облегчения администрирования ОС Linux. Если говорить кратко, то он позволяет выполнять наиболее типичные задачи администратора Linux через приятный веб-интерфейс. Возможности Cockpit: установка и проверка обновление для системы и включение автообновления (процесс патчинга), управление пользователями (созданиеудалениесмена паролейблокировкавыдача прав суперпользователя), управление дисками (созданиередактирование lvm, созданиемонтирования файловых систем), настройка сети (team, bonding, ip managing и т. д.), управление systemd-юнитамитаймерами.

Настройка переключения клавиатуры centos

Интерес к Cockpit обусловлен выходом Centos 8, где Cockpit уже встроен в систему и требуется его лишь активировать командой «systemctl enable –now cockpit.socket». На других дистрибутивах потребуется ручная установка из пакетного репозитория. Рассматривать тут установку мы не будем, смотрите официальное руководство.

После установки нам необходимо в браузере перейти на 9090 порт сервера, на котором установлен Cockpit (т. е. ip-сервера:9090). Например, 192.168.1.56:9090

Вводим обычный логинпароль от локального аккаунта и ставим галочку «Reuse my password for privileged tasks», чтобы была возможность запускать некоторые команды от имени привилегированного пользователя (root). Естественно, ваш аккаунт должен обладать возможностью выполнять команды через sudo.

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

Настройка переключения клавиатуры centos

Интерфейс выглядит очень понятным и логичным, слева вы увидите навигационную панель:

Настройка переключения клавиатуры centos

Стартовый раздел называется «system», где вы можете увидеть информацию по утилизации ресурсов сервера (CPU, RAM, Network, Disks):

Настройка переключения клавиатуры centos

Чтобы посмотреть более подробную информацию, например, по дискам, просто нажмите на соответствующую надпись и вы попадёте сразу в другой раздел (storage):

Настройка переключения клавиатуры centos

Тут же можете создать lvm:

Настройка переключения клавиатуры centos

Выберите имя для vg-группы и диски, которые хотите использовать:

Настройка переключения клавиатуры centos

Задайте имя для lv и выберите размер:

Настройка переключения клавиатуры centos

И, наконец, создайте файловую систему:

Настройка переключения клавиатуры centos

Обратите внимание, что Cockpit сам пропишет нужную строку в fstab и смонтируем устройство. Также можно прописывать специфичные опции монтирования:

Настройка переключения клавиатуры centos

Вот это выглядит в системе:

Настройка переключения клавиатуры centos

Тут же можно расширятьсжимать файловые системы, добавлять новые устройства в vg-группу и т.д.

В разделе «Networking» можно не просто менять типичные сетевые настройки (ip, dns, маску, шлюз), но и создавать более сложные конфигурации, такие как bonding или teaming:

Настройка переключения клавиатуры centos

Вот так готовая конфигурация выглядит в системе:
Настройка переключения клавиатуры centos

Согласитесь, что настраивать через vinano было бы чуть дольше и сложнее. Особенно для новичков.

В «services» можно управлять systemd юнитами и таймерами: останавливать их, перезапускать, убирать из автозагрузки. Так же очень быстро создать свой таймер:

Настройка переключения клавиатуры centos

Настройка переключения клавиатуры centos

Единственное, что сделано плохо: не понятно, с какой периодичностью запускается таймер. Можно лишь посмотреть, когда он запускался в последний раз и когда запустится вновь.

В «Software updates», как не сложно догадаться, можно посмотреть все доступные обновления и установить их:

Настройка переключения клавиатуры centos

Система оповестит нас, если потребуется перезагрузка:

Настройка переключения клавиатуры centos

Тут же можно включить автоматическое обновление системы и кастомизировать время установки обновлений:

Настройка переключения клавиатуры centos

Так же в Cockpit можно управлять SeLinux, создавать sosreport (полезно при общении с вендорами при решении технических проблем):

Настройка переключения клавиатуры centos

Настройка переключения клавиатуры centos

Управление пользователями реализовано максимально просто и понятно:

Настройка переключения клавиатуры centos

Настройка переключения клавиатуры centos

Кстати, можно добавлять ssh-ключи.

И, наконец, можно читать системные логи и сортировать по важности:

Настройка переключения клавиатуры centos

Мы прошлись по всем основным разделам программы.

Вот такой краткий обзор возможностей. Использовать Cockpit или нет решать только вам. На мой взгляд, Cockpit может решить несколько проблем и удешевить обслуживание серверов.

Основные преимущества:

  • Порог вхождение в администрирование ОС Linux существенно снижается благодаря таким инструментам. Выполнять стандартные и базовые действия может практически любой человек. Администрирование можно частично делегировать разработчикам или аналитикам для удешевления производства и ускорения работы. Ведь теперь не надо набирать в консоли pvcreate, vgcreate, lvcreate, mkfs.xfs, создать точку монтирования, редактировать fstab и, наконец, набрать mount -a, достаточно кликнуть мышью пару раз
  • Можно разгрузить администраторов Linux и избавить их от рутины, чтобы они фокусировались на более сложных задачах
  • Можно уменьшить количество человеческих ошибок. Согласитесь, что через веб-интерфейс сделать ошибку сложнее, чем через консоль

Недостатки, обнаруженные мною:

Как мы видим, у утилиты очень хороший потенциал. Если расширить функционал, то выполнение многих задач может стать ещё быстрее и проще.

upd: также имеется возможность управлять множеством серверов с одного веб-интерфейса путём добавления нужных серверов в «Machines dashboard». Функционал, например, может быть полезен при массовом обновлении сразу нескольких серверов. Подробнее читайте в официальной документации.

Как отключить ipv6

В настоящее время активного использования протокола ipv6 в России нет и в обычной работе он чаще всего не нужен. Хотя нас уже много лет пугают, что свободных ip адресов уже практически не осталось, но на деле пока еще всем хватает. Так что с точки зрения практических соображений ipv6 в настоящее время на сервере не нужен и его можно отключить.

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

# netstat -tulnp

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2317/master
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1333/sshd
tcp6 0 0 ::1:25 :::* LISTEN 2317/master
tcp6 0 0 :::22 :::* LISTEN 1333/sshd
udp 0 0 0.0.0.0:49252 0.0.0.0:* 694/avahi-daemon: r
udp 0 0 0.0.0.0:123 0.0.0.0:* 715/chronyd
udp 0 0 0.0.0.0:5353 0.0.0.0:* 694/avahi-daemon: r
udp 0 0 127.0.0.1:323 0.0.0.0:* 715/chronyd
udp6 0 0 :::123 :::* 715/chronyd
udp6 0 0 ::1:323 :::* 715/chronyd

Все строки с ::: это ipv6 протокол. В моем случае это sshd, postfix и chronyd. Отключим им ipv6 и оставим только ipv4.

:/>  AAP Server Driver Download For Windows OS

Начнем с sshd. Открываем файл настроек /etc/ssh/sshd_config и находим строки:

#AddressFamily any
#ListenAddress 0.0.0.0

Раскомментируем их и изменим. Должно получиться вот так:

AddressFamily inet
ListenAddress 0.0.0.0

Теперь открываем файл настроек постфикс /etc/postfix/main.cf. Ищем там строку:

#inet_protocols = all

Меняем на:

inet_protocols = ipv4

Отключаем ipv6 в chronyd. Для этого создаем файл /etc/sysconfig/chronyd и добавляем строку:

OPTIONS=-4

Теперь отключаем ipv6 в CentOS. Открываем файл /etc/sysctl.conf и добавляем туда строки:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1

Редактируем файл /etc/sysconfig/network, добавляя туда:

NETWORKING_IPV6=no
IPV6INIT=no

Добавляем запрет на работу ipv6 в конфигурацию grub. Открываем конфиг /etc/default/grub и добавляем к параметру GRUB_CMDLINE_LINUX еще одно значение ipv6.disable=1. Должно получиться примерно так:

GRUB_CMDLINE_LINUX="rd.lvm.lv=cl_centos8/root rhgb quiet ipv6.disable=1"

После этого обновляем конфиг загрузчика.

# grub2-mkconfig -o /boot/grub2/grub.cfg

Перезагружаемся и проверяем результат:

# reboot
# ifconfig

eno16777728: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.159.129 netmask 255.255.255.0 broadcast 192.168.159.255
ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet)
RX packets 2301 bytes 243024 (237.3 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 2138 bytes 1327955 (1.2 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
loop txqueuelen 0 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

Нигде нет упоминания про inet6 и адреса формата ipv6. Значит все в порядке, мы отключили ipv6 в CentOS. Теперь проверим список открытых портов:

# netstat -tulnp

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 2291/master
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1322/sshd
udp 0 0 0.0.0.0:123 0.0.0.0:* 2453/chronyd
udp 0 0 0.0.0.0:5353 0.0.0.0:* 697/avahi-daemon: r
udp 0 0 127.0.0.1:323 0.0.0.0:* 2453/chronyd
udp 0 0 0.0.0.0:57259 0.0.0.0:* 697/avahi-daemon: r

Все порты ipv4. Все в порядке, наша задача выполнена.

Маршрутизация

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

netstat – команда позволяющая отслеживать сетевые подключения сервера

# netstat -r
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.146.0 * 255.255.255.0 U 0 0 0 eth0
default 192.168.146.2 0.0.0.0 UG 0 0 0 eth0

В выводе мы увидим список сетей и как до
них добраться. То есть какой шлюз использовать для достижения пункта
назначения. Помните, когда мы настраивали сетевой интерфейс eth0 мы
указали директиву GATEWAY в ifcfg-eth0 ? Этот gateway был помечен как
default, то есть шлюз по умолчанию.

Весь трафик в сети, которые явно не
описаны в таблице маршрутизации, отправляются через шлюз по умолчанию. В
нашем случае default gateway —192.168.146.2

Вывод команды “netstat -r” нам говорит следующее:

Первая строка. Чтобы попасть в подсеть 192.168.146.0 нам не нужен никакой шлюз (*), поскольку мы и так находимся в этой сети

Вторая строка — это default, то есть
маршрут по умолчанию. Весь трафик предназначенный по все остальные сети
будет уходить через этот шлюз.

Genmask — это сетевая маска, благодаря маске можно отделить сетевую часть адреса от адреса хоста

Flags: U — это UP, то есть маршрут поднят и функционирует сейчас

Flags: UG — UP, Gateway. Маршрут поднят и использует gateway в своей работе

MSS – Maximum Segment Size, определяет максимальный размер пакета для этого маршрута.

Window – размер окна. Максимальный размер пакета, который система готова принять.

irtt — initial round trip time, задает
значение которое используется при установке соединения. Round trip time –
представляет из себя отрезок времени, если в течение которого от
удаленного хоста не пришло подтверждение о получение пакета, пакет будет
выслан снова.

Iface – показывает к какому интерфейсу относится маршрут

Прописываем маршруты

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

Приведу пример. У нас два сетевых
интерфейса eth0 и eth1. Через eth0 мы получаем доступ во внешние сети и
по умолчанию весь трафик направляется через него. Через eth1 мы получаем
доступ ко внутренней сети 192.168.147.0/24 но что еще важнее, в этой
сети есть сервер 192.168.147.

Так выглядит таблица маршрутизации в нашем случае

# netstat -r
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.147.0 * 255.255.255.0 U 0 0 0 eth1
192.168.146.0 * 255.255.255.0 U 0 0 0 eth0
192.168.148.0 192.168.147.1 255.255.255.0 UG 0 0 0 eth1
192.168.146.2 0.0.0.0 UG 0 0 0 eth0 default

То есть в подсеть 192.168.148.0/24
(внутренняя подсеть) мы попадаем через eth1 -> 192.168.147.1, сервер
выполняющий роль шлюза в эту подсеть. Все остальное идет через default
шлюз. Все очень просто. Ну и собственно как привести настройки к этому.

Шлюз по умолчанию

# cat /etc/sysconfig/network
...
GATEWAY=192.168.146.2
...
eth0
# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
HWADDR=00:0C:29:43:5B:3D
IPADDR=192.168.146.130
NETMASK=255.255.255.0
BROADCAST=192.168.146.255
ONBOOT=yes
eth1
# cat /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
ONBOOT=yes
HWADDR=00:0c:29:43:5b:47
IPADDR=192.168.147.2
NETMASK=255.255.255.0

И самое главное, файл в котором мы прописываем статический маршрут для eth1.

# cat /etc/sysconfig/network-scripts/route-eth1
192.168.148.0/24 via 192.168.147.1

Для того чтобы прописать маршруты для
какого либо интерфейса, необходимо создать файл route-<название
интерфейса> в каталоге /etc/sysconfig/network-scripts/ После того как
все готово к работе, мы перезагружаем сетевой сервис.

# service network restart

Теперь подведем итоги, что и как мы сделали.

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

Мы могли добавить маршрут в подсеть 192.168.148.0/24 командой route

# route add -net 192.168.148.0/24 gw 192.168.147.1

Но после перезагрузки сервера информация о
маршруте пропала бы. Чтобы такого не произошло используется специальный
механизм. А именно создание файла вида route-<имя интерфейса> в
/etc/sysconfig/network-scripts В него мы вносим список сетей и как до
них добраться. Каждая новая запись начинается с новой строки.

Настройка переключения клавиатуры centos



Здравствуйте, Аноним, Вы писали:

А>После перезагрузки переключение рус-лат заработало! Переключает по клавишам ctrl shift (и shift ctrl, т.е. не зависит от порядка нажатия клавиш и от «левизны»/»правизны» клавиш).

А>Не подскажете, что там в файле описания раскладки надо подправить, чтобы переключение осуществлялось как в винде — клавишами Alt Shift ибо уже сидит в подкорке?

Я буду неконструктивен, но рекомендую перезаложить в подкорку именно CapsНастройка переключения клавиатуры centos

Для винды это тоже легко делается.

Здравствуйте, Аноним, Вы писали:

А>Так в том-то и дело, что тема удобства и практичности не раскрыта. Не понял, чем Caps Lock удобнее Alt Shift.

Во-первых, тем, что она одна, а не две.
Во-вторых, среди всех вариантов переключения одной клавишей (я долго пользовался, например, правым Ctrl, вслед за keyrus и latrusuk) Caps отличается тем, что при правильной постановке рук для быстрого набора (слепой 10-пальцевый и аналоги) находится под мизинцем и нажимается без сдвига руки. Никакая комбинация в стиле Alt Shift, Ctrl Shift этим не отличается — при них позиция рук сбивается и надо репозиционироваться обратно.
Её расположение одинаково (слева от A) на почти всех современных клавиатурах, включая ноутбучные — это позволяет использовать одни и те же привычки без переучивания под местную специфику или замедления действий для опознания «а на чём это я сегодня вдруг работаю и почему оно такое кривое».

N>>Можно подумать, изначальный смысл комбинаций типа Ctrl Shift заключался в переключении раскладок. Почему твоя «твёрдая» позиция позволяет использовать эту комбинацию под совершенно нетипичную для неё роль, но запрещает то же для Caps?
А>Эта комбинация клавиш была свободна, то есть изначально не имела никакой функции. Как объект интерфейса она не существовала. В отличие от клавишы Caps Lock, изначально имевшей определенный смысл. Согласитесь, что «повесить» определенную функцию на клавишу, уже имеющую какую-то функцию (тем самым изменив поведение клавиши как объекта интерфейса) и «повесить» ее на свободную до той поры комбинацию клавиш — это «две большие разницы».

:/>  Файл не имеет цифровой подписи windows 10

Если бы эта основная функция была кому-то массово нужна — я бы согласился, но в данном случае речь идёт про клавишу, которая используется крайне редко, а о случаях её массового прямого использования ходят анекдоты. Кстати, если кому-то это применение таки нужно, для этого осталось Shift Caps.

N>>Ты какую-то странную фоменковщину несёшь, pardon my french. «В допотопных системах» с такими свойствами не было клавиши CapsLock в принципе. Она появилась на IBM PC или каком-то близком предшественнике.
А>Уж не хотите ли вы сказать, что русский текст на таких машинах набирали при нажатом шифте? Конечно нет, это бред. Клавиша с такой функцией была. Я еще застал в институте на кафедре допотопную СМ4 под RSX 11M, набирал текст в редакторе TED и даже делал на ней какие-то лабы.

Она при этом не была CapsLock. На клавиатурах PDP-11 на единственном быстродоступном изображении есть CapsLock — тут соглашусь и беру прежнее утверждение обратно, за невозможностью доказать (хотя на тех, что я видел сам, такого не было — но доказать не могу).

В любом случае исторические причины, как для меня, уже второстепенны в данном вопросе. От того, что кому-то идея применить Caps пришла в голову как косвенно пришедшее наследство старых компьютеров с их КОИ-7Н2, сама идея не теряет своей ценности — а именно, описанных выше преимуществ (простота и удобство применения) и слабости моральных аргументов против.

N>>В общем, хочешь соблюдать высосанные из пальца твёрдые принципы — ok, я всё равно тебе не доктор. А хочешь удобства и практичности — убери эти принципы туда, где им самое место.

Так что только повторюсь.

Друзья, поставил я CentOS — без иксов, ибо пока не нужны. Русскую локаль установил при инсталляции, выбрав соотв. пункт меню инсталлятора. mc пишет по-русски, как и положено, а вот переключать раскладку в консоли не получается — перепробовал все возможные сочетания клавишь ctrl/alt/shift во всех возможных порядках — безрезультатно. Команда locale выдает что-то вроде

LANG=ru_RU.UTF-8
LC_XXXXX=»ru_RU.UTF-8″ (кроме LC_ALL)
LC_ALL=

Как пофиксить? На какую комбинацию клавишь вешается по умолчанию переключение раскладки?

Здравствуйте, Аноним, Вы писали:

А>Друзья, поставил я CentOS — без иксов, ибо пока не нужны. Русскую локаль установил при инсталляции, выбрав соотв. пункт меню инсталлятора. mc пишет по-русски, как и положено, а вот переключать раскладку в консоли не получается — перепробовал все возможные сочетания клавишь ctrl/alt/shift во всех возможных порядках — безрезультатно. Команда locale выдает что-то вроде

А>LANG=ru_RU.UTF-8
А>LC_XXXXX=»ru_RU.UTF-8″ (кроме LC_ALL)
А>LC_ALL=

А>Как пофиксить? На какую комбинацию клавишь вешается по умолчанию переключение раскладки?

Здравствуйте, Аноним, Вы писали:

А>Друзья, поставил я CentOS — без иксов, ибо пока не нужны. Русскую локаль установил при инсталляции, выбрав соотв. пункт меню инсталлятора. mc пишет по-русски, как и положено, а вот переключать раскладку в консоли не получается — перепробовал все возможные сочетания клавишь ctrl/alt/shift во всех возможных порядках — безрезультатно. Команда locale выдает что-то вроде

А>LANG=ru_RU.UTF-8
А>LC_XXXXX=»ru_RU.UTF-8″ (кроме LC_ALL)
А>LC_ALL=

А>Как пофиксить? На какую комбинацию клавишь вешается по умолчанию переключение раскладки?

CentOS 5.5 — правый Ctrl. Настройка переключения клавиатуры centos

Я понял, что ты про другое спрашивал, но вдруг.

Здравствуйте, Аноним, Вы писали:

А>Друзья, поставил я CentOS — без иксов, ибо пока не нужны. Русскую локаль установил при инсталляции, выбрав соотв. пункт меню инсталлятора. mc пишет по-русски, как и положено, а вот переключать раскладку в консоли не получается — перепробовал все возможные сочетания клавишь ctrl/alt/shift во всех возможных порядках — безрезультатно. Команда locale выдает что-то вроде

А>LANG=ru_RU.UTF-8
А>LC_XXXXX=»ru_RU.UTF-8″ (кроме LC_ALL)
А>LC_ALL=

А>Как пофиксить? На какую комбинацию клавишь вешается по умолчанию переключение раскладки?

В консоли это не от локали зависит.

Правый Alt и правый Ctrl могут помочь (как и другие странные сочетания — я CentOS настраиваю до запуска ssh, а русские буквы ввожу уже по ssh, так что не помню). Быть может, проще изменить, чем выяснить. У Вас русские буквы в консоли отображаются корректно? И отображение и ввод не-английских букв в Linux-консоли настраивает команда setfont. Ею можно выбрать разные раскладки — и как часть раскладки, разные способы переключения.

Здравствуйте, raskin, Вы писали:

R>Правый Alt и правый Ctrl могут помочь (как и другие странные сочетания — я CentOS настраиваю до запуска ssh, а русские буквы ввожу уже по ssh, так что не помню).
Увы, ничего не помогает.

R> Быть может, проще изменить, чем выяснить. У Вас русские буквы в консоли отображаются корректно? И отображение и ввод не-английских букв в Linux-консоли настраивает команда setfont. Ею можно выбрать разные раскладки — и как часть раскладки, разные способы переключения.
Русские буквы отображаются корректно (mc у меня поставился локализованный командой «yum install mc»). Подскажите, как изменить комбинацию лавишь по setfont — «man setfont» про это не говорит ни слова. Команда setfont, введенная без параметров, вполне предсказуемо приводит к «слёту» фонтов — русские буквы после нее отображаются знаками вопроса — до следующей перезагрузки.

PS. Неужели нет внятного мануала по настройке клавиатуры для CentOS/Red Hat, сопоставимого по качеству с аналогичными материалами для FreeBSD? Ведь линукс куда как более распространён.

Здравствуйте, alpha21264, Вы писали:

A>CentOS 5.5 — правый Ctrl. Настройка переключения клавиатуры centos

Не работает.

Настройка переключения клавиатуры centos

Не работает никакая комбинация управляющих клавиш и никакая отдельная клавиша. Файл /ets/sysconfig/keyboard содержит следующее:

Здравствуйте, Аноним, Вы писали:

А>

Ну так чего вы хотите — в вашей конфигурации не предусмотрено переключение клавиатурной раскладки. Загружаемые раскладки лежат в /lib/kbd/keymaps в одном из каталогов в зависимости от платформы и типа клавиатуры. У меня это /lib/kbd/keymaps/i386/qwerty, у вас скорее всего тоже. «Ваша» раскладка содержится в файле us-acentos.map.gz. Скопируйте себе в каталог, разархивируйте и посмотрите, есть ли там переключение раскладок (IMHO, нет):

Выберите в том же каталоге любую русскую (начинается с ru) utf-8 раскладку и пропишите ее в KEYTABLE (имя файла без .map.gz), не забудьте подправить LAYOUT. У вас должно получиться что-то вроде

Здравствуйте, andrey.v7v, спасибо за ответ!

Сделал, как вы сказали:

После перезагрузки переключение рус-лат заработало! Переключает по клавишам ctrl shift (и shift ctrl, т.е. не зависит от порядка нажатия клавиш и от «левизны»/»правизны» клавиш).

Не подскажете, что там в файле описания раскладки надо подправить, чтобы переключение осуществлялось как в винде — клавишами Alt Shift ибо уже сидит в подкорке?

Здравствуйте, Аноним, Вы писали:

А> 1
В репутацию, пожалуйста.
Шутка.

А>Не подскажете, что там в файле описания раскладки надо подправить, чтобы переключение осуществлялось как в винде — клавишами Alt Shift ибо уже сидит в подкорке?
Элементарно. В файле раскладки переключение раскладки обозначается кодом AltGr_Lock:

Поэтому вам будет необходимо сделать следующее:
1. Распаковать файл раскладки, который вы берете за основу:
# gunzip ru.map.gz

2. Сделать копию
# cp ru.map ru_v7v.map

3. Открыть файл ru_v7v.map в редакторе:
vi ru_v7v.map
Сразу в блоке комментариев, что в начале файла, пишите: какие правки кто, когда и по чьему совету Настройка переключения клавиатуры centos

вносил.

4. Найдите 8 указанных выше строчек, содержащих AltGr_Lock и поправьте их следующим образом:

4а. Если в строке фигурирует «control» (Т.е. строка отвечает за комбинацию Ctrl Shift именно в таком порядке), то просто меняете control на alt.

4б. Если в строке фигурирует «shift» (т.е. строка отвечает за комбинацию Shift Ctrl именно в таком порядке), то измените код клавиши:
29 (left-control) на 56 (left-alt) и 97 (right-control) на 100 (right-alt).

:/>  Как вызвать редактор кода VS из терминала / командной строки

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

5. Очень важный «штришок» — для «голой» клавиши 100 заменяете AltGr справа от знака равенства на Alt — иначе все будет работать не совсем правильно.

6. Сохраняете файл.

7. Пакуете файл:
# gzip ru_v7v.map

8. Прописываете в файл /ets/sysconfig/keyboard:
keyboard=ru_v7v.

9. Перегружаете систему и наслаждаетесь, что клавиатура переключается «как в винде».

Здравствуйте, Андрей В7в, Вы писали:

АВ>Элементарно. В файле раскладки переключение раскладки обозначается кодом AltGr_Lock:
.

Спасибо!
Буду пробовать.

Здравствуйте, netch80, Вы писали:

N>Я буду неконструктивен, но рекомендую перезаложить в подкорку именно Caps Настройка переключения клавиатуры centos

N>Для винды это тоже легко делается.

В чем глубокий философский смысл этого? Я твердый противник изменения смысла и поведения объектов интерфейса и клавиш в том числе. Изначальный смысл Caps Lock — переключение регистра букв и значит он будет у меня до скончания веков переключать регистр букв и ничего больше переключать не будет. То, что в допотопных системах, где в процессе «локализации» строчную латиницу заменили на прописную кириллицу, CAPS автоматически стал переключать раскладку РУС/ЛАТ — не более чем простое историческое недоразумение, которое в более современных системах поправили.

Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, netch80, Вы писали:

N>>Я буду неконструктивен, но рекомендую перезаложить в подкорку именно Caps Настройка переключения клавиатуры centos

N>>Для винды это тоже легко делается.

А>В чем глубокий философский смысл этого?

Глубокого философского — нет. Чисто практическое удобство.

А> Я твердый противник изменения смысла и поведения объектов интерфейса и клавиш в том числе. Изначальный смысл Caps Lock — переключение регистра букв и значит он будет у меня до скончания веков переключать регистр букв и ничего больше переключать не будет.

Можно подумать, изначальный смысл комбинаций типа Ctrl Shift заключался в переключении раскладок. Почему твоя «твёрдая» позиция позволяет использовать эту комбинацию под совершенно нетипичную для неё роль, но запрещает то же для Caps?

А> То, что в допотопных системах, где в процессе «локализации» строчную латиницу заменили на прописную кириллицу, CAPS автоматически стал переключать раскладку РУС/ЛАТ — не более чем простое историческое недоразумение, которое в более современных системах поправили.

Ты какую-то странную фоменковщину несёшь, pardon my french. «В допотопных системах» с такими свойствами не было клавиши CapsLock в принципе. Она появилась на IBM PC или каком-то близком предшественнике.

В общем, хочешь соблюдать высосанные из пальца твёрдые принципы — ok, я всё равно тебе не доктор. А хочешь удобства и практичности — убери эти принципы туда, где им самое место.

Здравствуйте, Аноним, Вы писали:

А>Не понял, чем Caps Lock удобнее Alt Shift.

Тем, что это одна клавиша, а не две. Ваш К.О.

Источник

Настройка сетевых интерфейсов в centos

Настройка сетевых интерфейсов в CentOS происходит правкой конфигурационных файлов. Файлы интерфейсов хранятся в директории /etc/sysconfig/network-scripts, каждый отвечает за свой интерфейс, таким образом сколько интерфейсов, столько и файлов. Во время установки создается дефолтный файл с именем – ifcfg-enp0s3.

Содержание файла ifcfg-enp0s3:

TYPE="Ethernet"
BOOTPROTO="dhcp"
DEFROUTE="yes"
PEERDNS="yes"
PEERROUTES="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_PEERDNS="yes"
IPV6_PEERROUTES="yes"
IPV6_FAILURE_FATAL="no"
NAME="enp0s3"
UUID="cac20b32-66a0-46bd-9b68-ec786f52d2f8"
DEVICE="enp0s3"
ONBOOT="yes"

Рассмотрим самые важные параметры и значения, чтобы понимать что к чему. Более подробно все параметры описаны в официальной документации Red Hat.

  • TYPE – задает тип сетевого адаптера, в данном случае “Ethernet”.
  • BOOTPROTO – способ назначения ip-адреса. Может иметь значения: dhcp — динамический ip-адрес, static или none — статический ip-адрес.
  • DEFROUTE – использовать интерфейс в качестве маршрута по умолчанию. Значения yes или no.
  • IPV4_FAILURE_FATAL – В случае отсутствия IPv4 протокола закрывать соединение, по умолчанию no.
  • NAME – имя интерфейса.
  • DEVICE – имя устройства.
  • UUID – идентификационный номер интерфейса.
  • ONBOOT – старт интерфейса при загрузке, значения yes или no.
  • IPV6INIT – включение поддержки IPv6 протокола, значения yes или no.
  • IPV6_AUTOCONF
    IPV6_DEFROUTE
    IPV6_PEERDNS
    IPV6_PEERROUTES
    IPV6_FAILURE_FATAL – дополнительные параметры для IPv6 протокола.

Подобная конфигурация означает получение динамического ip-адреса при каждом запуске. Для назначения статического адреса нужно изменить несколько параметров.

  • BOOTPROTO=none – изменяем на none, тем самым указывая что ip будет статическим.
  • IPADDR=192.168.1.6 – назначаем сам адрес.
  • NETMASK=255.255.255.0 – задаем маску подсети.
  • GATEWAY=192.168.1.1 – указываем адрес шлюза.
  • DNS1=192.168.1.1 – задаем адреса DNS серверов.

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

TYPE=Ethernet
BOOTPROTO=none
IPADDR=192.168.1.6 
NETMASK=255.255.255.0 
GATEWAY=192.168.1.1
DNS1=192.168.1.1
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=enp0s3
UUID=cac20b32-66a0-46bd-9b68-ec786f52d2f8
DEVICE=enp0s3
ONBOOT=yes

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

ifdown enp0s3 && ifup enp0s3

Сетевые настройки на сервере centos

Первый раз с сетевыми настройками сервера CentOS 7 или 8 мы сталкиваемся, когда производим установку. На экране первоначальной настройки есть отдельный пункт, касающийся настройки сетевых интерфейсов:

Зайдя в него мы видим список подключенных сетевых карт. Каждую из них можно включить соответствующим ползунком (пункт 1 на картинке). При активировании интерфейса он автоматически получает настройки по dhcp. Результат работы dhcp можно посмотреть тут же.

Открыв окно дополнительный настроек Ehernet, вы сможете изменить имя сетевого интерфейса, указать настройки IP (пункт 1 на картинке), выбрать ручные настройки (пункт 2 на картинке), назначить ip адрес (пункт 3 на картинке), установить dns сервер (пункт 4 на картинке) и сохранить сетевые настройки (пункт 5 на картинке):

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

Теперь рассмотрим другую ситуацию. Сервер, а соответственно и конфигурацию сети, производили не вы, а теперь вам надо ее посмотреть либо изменить. В вашем распоряжении консоль сервера, в ней и будем работать. Если у вас установка производилась с дистрибутива minimal, то при попытке посмотреть сетевые настройки с помощью команды ifconfig в консоли вы увидите следующее:

-bash: ifconfig: command not found

или в русской версии:

-bash: ifconfig команда не найдена

Для работы с ifconfig и прочими сетевыми утилитами необходимо установить пакет net-tools. Сделаем это:

# yum install net-tools

Теперь можно увидеть настройки сети:

# ifconfig

eno16777728: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.159.129 netmask 255.255.255.0 broadcast 192.168.159.255
inet6 fe80::20c:29ff:fe7d:593f prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet)
RX packets 319 bytes 36709 (35.8 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 256 bytes 148817 (145.3 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 6 bytes 624 (624.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 6 bytes 624 (624.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

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

# ip addr

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eno16777728: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:7d:59:3f brd ff:ff:ff:ff:ff:ff
inet 192.168.159.129/24 brd 192.168.159.255 scope global dynamic eno16777728
valid_lft 1709sec preferred_lft 1709sec
inet6 fe80::20c:29ff:fe7d:593f/64 scope link
valid_lft forever preferred_lft forever

Мы увидели конфигурацию сети, теперь давайте ее отредактируем. Допустим, нам нужно сменить ip адрес. Для этого идем в директорию /etc/sysconfig/network-scripts и открываем на редактирование файл ifcfg-eth0 или ifcfg-ens18. Название файла будет зависеть от имени сетевого интерфейса.

# yum install network-scripts

Файл ifcfg-eth0 имеет примерно следующее содержание:

По настройкам из этого файла мы получаем ip адрес по dhcp. Чтобы вручную прописать статический ip, приводим файл к следующему содержанию:

Мы изменили параметры:

BOOTPROTOс dhcp на none
DNS1указали dns сервер
IPADDR0настроили статический ip адрес
PREFIX0указали маску подсети
GATEWAY0настроили шлюз по-умолчанию

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

# systemctl restart network

Проверяем, применилась ли новая конфигурация сети:

# ifconfig

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.159.129 netmask 255.255.255.0 broadcast 192.168.159.255
inet6 fe80::20c:29ff:fe7d:593f prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:7d:59:3f txqueuelen 1000 (Ethernet)
RX packets 672 bytes 71841 (70.1 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 572 bytes 290861 (284.0 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

Все в порядке, новые настройки сетевого интерфейса установлены.

Оставьте комментарий