CentOS 7: Установка и настройка
Содержание
Предисловие
Пара слов, почему же всё-таки CentOS, а не что-то иное. Вообще знакомство с Linux началось в 2000-м году с какой-то версии RedHat. Потом был BlackCat Linux (из-за его лучшей поддержки русского языка). Затем появился Gentoo и я считал его идеалом за то что за счёт USE-флагов устанавливалось только то что действительно нужно. Ну и за его оптимизацию, в то время более-менее нормально смотреть фильмы на компьютере с процессором AMD K6-2-300 можно было только под Gentoo. После Gentoo на работе была Ubuntu, но она как-то сразу не пошла. Вообще после Gentoo переходить на любой другой Linux сложно. Это как после OS X обратно на Windows садиться. В Gentoo и процесс загрузки, и многие другие вещи красивы с эстетической точки зрения, в Ubuntu же по дефолту в консоли только белый цвет на чёрном фоне.
Затем были курсы по RHEL и сертификат RHCSA. Я посчитал что глупо не пользоваться полученными знаниями – поэтому решил установить CentOS на паре серверов на работе под различные сервисы. В процессе так увлёкся что даже свой личный сервер перевёл с Gentoo на CentOS. Сначала был CentOS 5, затем CentOS 6, теперь вот уже CentOS 7.
С переходом на CentOS стало намного меньше времени уходить на обслуживание сервера, т.к. по времени выполнение команды:
$ yum -y update
выполняется в разы быстрее нежели выполнение команды
$ emerge sync && emerge -upvND world
Да и разных неожиданностей во время обновления системы стало меньше. Хотя, Gentoo я благодарен за полученный опыт.
Прежде чем устанавливать CentOS 7 предлагаю прочитать эту брошюру RHEL 7: Installation Guide. По ссылке её можно скачать целиком или в виде .pdf-файла, или в виде .epub-файла, кому как будет удобно. Это официальное руководство по установке RHEL 7 (при чём на русском языке). А т.к. RHEL практически то же самое что и CentOS – всё описанное в брошюре применимо и к CentOS.
Update от 01.01.2016
В связи с выходом новой версии установочных дисков CentOS 7.2.1511, данная статья потеряла актуальность. Вашему вниманию представляется новая версия https://blog.acmenet.ru/2016/01/01/centos-7-2-install/.
Загрузка образа CentOS
Для установки CentOS первым делом нужно скачать образ установочного диска в виде iso-файла. Для этого заходим в раздел Downloads на сайте CentOS – http://www.centos.org/download/, а там находим раздел «Minimal Install Images» и нажимаем на ссылку «Download the Minimal ISO» – http://isoredirect.centos.org/centos/7/isos/x86_64/. Дальше выбираем ближайшее к нам зеркало и скачиваем файл CentOS-7.0-1406-x86_64-NetInstall.iso
(в моём случае до сервисов Яндекса у меня 100Мбит, поэтому качаю с его зеркала).
Создание установочных носителей
Для установки CentOS в виртуальной машине – достаточно указать iso-образ в качестве диска для виртуального привода. Если установка будет производиться с CD-диска – запишите iso-образ на компакт-диск любой имеющейся в наличии программой. Так же можно, записать iso-образ на USB-диск и загрузиться для установки с неё. Сделать это в Linux можно следующей командой:
$ dd if=/%filepath%/image.iso of=/dev/%devname% bs=512k
Вместо %filepath%
нужно указать полный путь к iso-файлу, а вместо %devname%
нужно указать название устройства под которым Linux видит наш USB-диск. Имейте в виду что USB-диск в этот момент не должен быть примонтирован.
В Windows для записи iso-образа на USB-диск можно воспользовавшись программой Fedora LiveUSB Creator (https://fedorahosted.org/liveusb-creator/). Необходимо скачать и установить эту программу. Имейте в виду, для её работы запускать её нужно с правами администратора. После запуска выберите iso-образ для записи нажав на кнопку Browse, затем в пункте Target Device выберите USB-диск для записи и нажмите на кнопку «Create Live USB».
Подготовка виртуальной машины
В Parallels Desktop нажимаем на кнопку «Создать…» для создания новой виртуальной машины, затем в мастере Parallels выделяем пункт «Установить Windows или другую ОС с DVD или из образа» и нажимаем на кнопку «Продолжить». В новом окне мастера Parallels выбираем пункт «Образ» и перетягиваем наш iso-образ на окошко мастера. Мастер будет ругаться сообщением «Не удалось определить операционную систему», не будем обращать на это внимание и нажмём на кнопку «Продолжить». Мастер предложит выбрать операционную систему из списка, выберем в нём «CentOS Linux» в группе «Другие версии Linux» и нажмём на кнопку «OK». Выбираем имя виртуальной машины, выбираем расположение виртуальной машины, ставим галочку напротив пункта «Настроить параметры до начала установки» и нажимаем на кнопку «Продолжить». Расписывать все настройки Parallels для виртуальной машины смысла нет, отмечу только что лучше бы оперативной памяти указать не менее 1Гб, количество процессоров можно увеличить до максимума, а вот жёсткий диск можно и урезать до 16Гб (по умолчанию Parallels делает 64Гб). Для минимальной установки и настройки основных сетевых сервисов 16Гб вполне должно хватить. Так же обратите внимание на настройки сети виртуальной машины, для установки нам необходимо чтобы в виртуальной машине был доступен Интернет (можно вместо общей сети указать мостовую, тогда виртуальная машина будет в локальной сети). Я ещё во вкладке «Безопасность» в настройках виртуальной машины ставлю галочки напротив пунктов «Интеграция: Изолировать Linux от Mac» и «Time Machine: Отключить» (так как виртуальная машина тестовая). Теперь закрываем настройки и опять нажимаем на кнопку «Продолжить».
Загрузка установки CentOS
Загружаем компьютер (или виртуальную машину) с носителя, который мы подготовили (или напрямую из iso-образа). После загрузки появится меню, которое предлагает запустить процесс установки (пункт «Install CentOS 7» или выполнить диагностику носителя и потом запустить процесс установки (пункт «Test this media & Install CentOS 7»). Выбираем второй пункт и нажимаем «Enter».
После проверки носителя запустится установщик CentOS 7.
В первом окне установщика выбираем русский язык и нажимаем на кнопку «Продолжить».
Выбор часового пояса и установку времени с датой пока пропустим, всё равно до настройки сети NTP-клиент доступен не будет.
Начнём с настроек клавиатуры, для этого нажмём на кнопку «Клавиатура» и поменяем приоритет у раскладок, передвинув английскую раскладку наверх. Так же, нажав на кнопку «Параметры» можно поменять комбинацию для переключения раскладок (например на Ctrl+Shift). После чего нажмём на кнопку «Готово».
Для настройки сети нажимаем на кнопку «Сеть и имя узла» в группе настроек «Система». По умолчанию сеть отключена, для её включения необходимо нажать на переключатель, который находится в верхнем правом углу экрана. У меня сразу с DHCP-сервера подхватились все сетевые настройки и из DNS определилось имя хоста. Если эти данные автоматически не подхватились – их нужно ввести вручную нажав на кнопку «Настроить…».
Во вкладке «Общий» ставим галочку напротив пункта «Автоматически подключаться к этой сети, когда она доступна».
Во вкладке «Параметры IPv4» в пункте «Способ настройки» либо оставляем выбранным «Автоматически (DHCP)», если в локальной сети используется DHCP, либо меняем на «Вручную» и заполняем все оставшиеся поля.
Если у нас в сети не используется IPv6, тогда во вкладке «Параметры IPv6» в пункте «Способ настройки» выбираем «Игнорировать».
После сохранения сетевых настроек нажимаем на кнопку «Готово» в левом верхнем углу экрана. Теперь можно вернуться к пропущенному шагу и настроить часовой пояс и дату. Для этого нажимаем на кнопку «Дата и время» в блоке «Региональные настройки». Сначала выбираем регион и город, а затем в правом верхнем углу нажимаем на переключатель «Сетевое время». После этого время должно синхронизироваться с NTP-сервером. Можно нажать на кнопку «Готово» для возвращения в главное меню установщика.
Сейчас укажем репозитарий из которого будем устанавливать CentOS, для этого теперь нажимаем на кнопку «Источник установки» в блоке «Программное обеспечение». В поле источника установки указываем путь к основному репозиторию CentOS (в моём случае я указываю mirror.yandex.ru/centos/7/os/x86_64/
). В случае если доступ к Интернету у вас осуществляется через прокси – самое время это указать, нажав на кнопку «Настройки прокси…». Теперь нажимаем на кнопку «Готово».
Если адрес репозитория указан верно, то теперь под названием кнопки «Источник установки» появится адрес репозитория, а с иконки кнопки уберётся оранжевый треугольник. Если это произошло – нажимаем на кнопку «Выбор программ» в блоке «Программное обеспечение». Во время первоначальной установки я устанавливаю только минимальный набор программ, а все сервисы, которые будут работать на сервере устанавливаю и настраиваю позже. Так что оставляю выбранным пункт «Минимальная установка» и нажимаю на кнопку «Готово».
Осталось настроить расположение установки, для чего нажмём на кнопку «Место установки». Смотрим что галочкой выделен нужный нам жёсткий диск, отмечаем пункт «Я настрою разделы» в блоке «Разбиение» и нажимаем на кнопку «Готово».
У нас откроется мастер разметки жёсткого диска. Первым делом нажмём на кнопку «Нажмите здесь для их автоматического создания».
Теперь чуть подправим автоматическую разбивку.
Для этого сначала выделим корневой раздел «/» и изменим требуемый размер на 12ГБ. Тип устройства LVM и файловую систему xfs оставим без изменения, но вот название «Volume Group» изменим, для чего нажмём на кнопку «Изменить…». По умолчания установщик называет группу томов LVM как hostname_hostname, заменим это на vg_hostname и нажмём на кнопку «Сохранить» (вместо hostname подставьте название вашего хоста). Теперь поменяем имя раздела, вместо root напишем lv_root и нажмём на кнопку «Обновить настройки».
Для ровного числа заменим размер раздела /boot – вместо 500МБ укажем 512МБ. Тип устройства раздела /boot оставляем обычным, файловую систему так же оставляем xfs, после чего нажимаем на кнопку «Обновить настройки».
И напоследок изменим настройки раздела для swap. Имя раздела заменим с swap на lv_swap, а размер увеличим до 4ГБ, после чего нажимаем на кнопку «Обновить настройки». Так как диск для установки CentOS у меня всего 16ГБ, а мы уже сделали разделов на 16,5ГБ (512МБ+12ГБ+4ГБ) – установщик автоматически подправит раздел для swap до предельно допустимых 3,864ГБ.
Так как и корневой раздел, и раздел для swap у нас создаются в виде томов LVM, то расширить их в будущем не составит большого труда. Завершив разметку диска нажимаем на кнопку «Готово». Установщик нам покажет последовательность разметки диска, которую мы должны подтвердить нажав на кнопку «Принять изменения».
После того как всё подготовлено к установке CentOS – нажимаем на кнопку «Начать установку».
Первым делом установщик произведёт разбиение диска на разделы, как мы указали ранее. Затем разделы будут отформатированы и начнётся установка пакетов. В минимальной установке этих пакетов 298. После установки пакетов будет произведена их первоначальная настройка.
В то время пока пакеты устанавливаются и настраиваются – мы зададим пароль для пользователя root и создадим пользователя для повседневной работы (во время установки создание пользователя шаг не обязательный, его можно будет в любой момент создать позже).
Последним шагом перед перазагрузкой установщик настроит загрузчик операционной системы. После чего нужно будет нажать на кнопку «Перезагрузить», для того чтобы загрузился свежеустановленный CentOS.
Поздравляем! Установка CentOS завершена.
Прежде чем перейти к настройке CentOS 7 советую прочитать вот эту вот брошюру RHEL 7: System Administrators Guide. Это официальное руководство по настройке RHEL 7 (на русский язык эта брошюра пока что не переведена).
Первый запуск CentOS
После загрузки загрузчика появится меню выбора загрузки, в котором можно ничего не нажимать, по умолчанию запустится первый вариант «CentOS Linux, with Linux 3.10.0-123.el7.x86_64».
Загрузка по умолчанию достаточно молчаливая, не показывается ровным счётом ничего. А после загрузки нас ждёт стандартное приглашение ввода имени пользователя и пароля.
Дальше кому как удобно – можно либо подключаться через ssh, либо входить используя консоль.
После того как залогинились в CentOS первый раз – нужно выполнить ряд дополнительных настроек. Первым делом устанавливаем редактор nano, и делаем так, чтобы вся почта отправляемая пользователю root – форвардилась на ваш почтовый адрес.
$ yum -y install nano $ echo %email% >~/.forward $ chcon -u system_u ~/.forward
В CentOS 6 после этого необходимо было ещё восстанавливать заданный по умолчанию SELinux-контекст для файла .forward
командой:
$ restorecon -v /root/.forward
А в CentOS 7 файл создаётся сразу с нормальным контекстом.
Настраиваем локаль и русскую раскладку
$ localectl set-locale LANG="ru_RU.UTF-8" LC_NUMERIC="C" LC_TIME="POSIX" LC_MESSAGES="POSIX" $ localectl set-keymap us ru --no-convert $ localectl set-x11-keymap us,ru pc105 grp:ctrl_shift_toggle --no-convert $ localectl status System Locale: LANG=ru_RU.UTF-8 LC_NUMERIC=C LC_TIME=POSIX LC_MESSAGES=POSIX VC Keymap: us VC Toggle Keymap: ru X11 Layout: us,ru X11 Model: pc105 X11 Variant: grp:ctrl_shift_toggle $ sed -i --follow-symlinks 's/vconsole.font=[^ ]*/vconsole.font=latarcyrheb-sun16/g' \ /etc/sysconfig/grub $ sed -i --follow-symlinks 's/vconsole.keymap=[^ ]*/vconsole.keymap=ru/g' \ /etc/sysconfig/grub $ grub2-mkconfig --output=/boot/grub2/grub.cfg
Теперь после перезагрузки мы сможем в консоли переключать раскладку нажимая на Ctrl+Shift. Ну, а пока перезагружаться не будем – загрузим вручную нужную раскладку командой:
$ loadkeys /lib/kbd/keymaps/i386/qwerty/ru.map.gz
Отключение IPv6
Есть два варианта отключения IPv6 в CentOS 7, первый вариант жёсткий:
$ sed -i --follow-symlinks 's/^GRUB_CMDLINE_LINUX="/GRUB_CMDLINE_LINUX="ipv6.disable=1 /g' \ /etc/sysconfig/grub $ grub2-mkconfig --output=/boot/grub2/grub.cfg
он запрещает ядру грузить модули связанные с IPv6. Этот вариант плох тем, что если включен SELinux (а зачем ставить CentOS и отключать SELinux?!), то мы будем периодически получать ругань в логах типа:
type=AVC msg=audit(1410648780.359:195): avc: denied { module_request } for pid=727 comm="chronyd" kmod="net-pf-10" scontext=system_u:system_r:chronyd_t:s0 tcontext=system_u:system_r:kernel_t:s0 tclass=system
Поэтому есть более мягкий вариант отключения IPv6:
$ nano -w /etc/sysctl.d/01-disable_ipv6.conf net.ipv6.conf.all.disable_ipv6 = 1 net.ipv6.conf.default.disable_ipv6 = 1 $ systemctl restart systemd-sysctl.service
А для того чтобы после отключения IPv6 не было лишней ругани от разных сервисов в логах – нужно подправить конфиги postfix, демона синхронизации времени chrony и sshd:
$ sed -i 's/inet_protocols = [^ ]*/inet_protocols = ipv4/g' /etc/postfix/main.cf $ systemctl restart postfix.service $ sed -i 's/^\(bindcmdaddress ::1\)/#\1/' /etc/chrony.conf $ nano -w /etc/sysconfig/chronyd OPTIONS="-4" $ chcon -u system_u /etc/sysconfig/chronyd $ systemctl restart chronyd.service $ sed -i s/udp6/#udp6/ /etc/netconfig $ sed -i s/tcp6/#tcp6/ /etc/netconfig $ nano -w /etc/ssh/sshd_config AddressFamily inet ListenAddress 0.0.0.0 $ systemctl restart sshd.service
Настройка демона sshd
На новом сервере я сразу отключаю авторизацию по паролю, оставляю только авторизацию по ключу. А авторизацию по паролю разрешаю только определённым IP-адресам:
$ nano -w /etc/ssh/sshd_config PasswordAuthentication no ... Match address 1.2.3.4/32 PasswordAuthentication yes Match address 2.3.4.5/32 PasswordAuthentication yes $ systemctl restart sshd.service
Note: используйте только если знаете что делаете!
Настройка менеджера пакетов
Ограничиваем количество установленных версий пакетов до 3-х (например количество версий установленного ядра):
$ nano -w /etc/yum.conf installonly_limit=3 $ yum -y install yum-cron yum-utils
Включаем проверку новых версий пакетов (информация о новых версиях будет приходить по почте, сами пакеты обновляться автоматически не будут):
$ nano -w /etc/yum/yum-cron.conf download_updates = no $ systemctl enable yum-cron.service $ systemctl start yum-cron.service
Обновление базовой системы после установки
$ yum -y update
Установка необходимых утилит и программ
Теперь подключаем EPEL-репозиторий (Extra Packages for Enterprise Linux) и доустанавливаем необходимые пакеты, отсутствующие в базовой установке:
$ rpm -Uvh http://mirror.yandex.ru/epel/7/x86_64/e/epel-release-7-2.noarch.rpm $ rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7 $ yum -y install bash-completion logwatch lsscsi mc mlocate mtr nfs-utils parted pciutils \ pinfo policycoreutils-python rsync screen sysstat telnet unzip usbutils wget
Есть ещё интересный пакет atop, в котором можно посмотреть статистику загрузки сервера в реальном времени с разбивкой по процессам и устройствам. Но в настоящий момент этот пакет для CentOS 7 находится в тестовом репозитории EPEL, поэтому устанавливается он следующей командой:
$ yum -y install atop --enablerepo=epel-testing
Update: atop
уже поместили в основной репозиторий, поэтому его можно устанавливать просто командой:
$ yum -y install atop
А статистика выглядит примерно таким образом:
ATOP - centos 2014/09/14 15:12:22 --------- 12h1m4s elapsed PRC | sys 37.23s | user 12.51s | #proc 194 | #zombie 0 | #exit 0 | CPU | sys 0% | user 0% | irq 0% | idle 400% | wait 0% | cpu | sys 0% | user 0% | irq 0% | idle 100% | cpu002 w 0% | cpu | sys 0% | user 0% | irq 0% | idle 100% | cpu001 w 0% | cpu | sys 0% | user 0% | irq 0% | idle 100% | cpu003 w 0% | cpu | sys 0% | user 0% | irq 0% | idle 100% | cpu000 w 0% | CPL | avg1 0.00 | avg5 0.01 | avg15 0.05 | csw 1279901 | intr 4020376 | MEM | tot 990.6M | free 538.6M | cache 198.1M | buff 0.7M | slab 136.9M | SWP | tot 3.8G | free 3.8G | | vmcom 309.8M | vmlim 4.3G | LVM | ntos-lv_root | busy 0% | read 5419 | write 5933 | avio 0.65 ms | LVM | ntos-lv_swap | busy 0% | read 216 | write 0 | avio 0.07 ms | DSK | sda | busy 0% | read 6164 | write 6056 | avio 0.61 ms | NET | transport | tcpi 6376629 | tcpo 6373269 | udpi 2957 | udpo 2966 | NET | network | ipi 6439613 | ipo 6376153 | ipfrw 0 | deliv 6380e3 | NET | eth0 ---- | pcki 6443870 | pcko 6377318 | si 75 Kbps | so 77 Kbps | NET | lo ---- | pcki 6 | pcko 6 | si 0 Kbps | so 0 Kbps | *** system and process activity since boot *** PID TID THR SYSCPU USRCPU VGROW RGROW RDDSK WRDSK ST EXC S CPUNR CPU CMD 1/10 704 - 5 0.76s 7.78s 537.1M 16096K 2784K 16K N- - S 3 0% tuned 41 - 1 7.72s 0.00s 0K 0K 0K 0K N- - S 2 0% rcu_sched 44 - 1 6.17s 0.00s 0K 0K 0K 0K N- - S 3 0% rcuos/2 467 - 1 4.50s 0.00s 0K 0K 0K 0K N- - S 0 0% xfsaild/dm-0 705 - 1 3.67s 0.69s 19112K 1172K 144K 0K N- - S 3 0% irqbalance 1 - 1 1.45s 0.54s 50028K 6624K 45321K 84K N- - S 0 0% systemd 549 - 1 1.36s 0.37s 54308K 6544K 584K 0K N- - S 2 0% systemd-journa 43 - 1 1.23s 0.00s 0K 0K 0K 0K N- - S 3 0% rcuos/1 709 - 2 0.33s 0.54s 34996K 2072K 612K 0K N- - S 2 0% dbus-daemon 712 - 1 0.78s 0.08s 123.4M 1728K 14104K 15356K N- - S 2 0% crond 827 - 3 0.26s 0.49s 441.1M 8900K 9640K 0K N- - S 3 0% NetworkManager 75 - 1 0.75s 0.00s 0K 0K 0K 0K N- - S 1 0% watchdog/1 698 - 2 0.37s 0.33s 319.6M 20924K 11148K 4K N- - S 0 0% firewalld 45 - 1 0.69s 0.00s 0K 0K 0K 0K N- - S 2 0% rcuos/3 74 - 1 0.67s 0.00s 0K 0K 0K 0K N- - S 0 0% watchdog/0 80 - 1 0.62s 0.00s 0K 0K 0K 0K N- - S 2 0% watchdog/2 85 - 1 0.60s 0.00s 0K 0K 0K 0K N- - S 3 0% watchdog/3 2373 - 1 0.41s 0.09s 130.3M 4956K 268K 4K N- - S 3 0% sshd 738 - 1 0.46s 0.00s 0K 0K 0K 0K N- - S 0 0% kworker/0:3 2378 - 1 0.14s 0.31s 113.5M 3092K 76272K 27208K N- - S 1 0% bash 1836 - 1 0.36s 0.06s 91528K 2200K 284K 8K N- - S 2 0% master
Настройка рабочего окружения
Для комфортной работы в консоли в домашнем каталоге необходимо создать файлы с настройками локали, часто используемыми алиасами и настройками для различных утилит:
$ nano -w ~/.bash_profile #---------------------------------------------------------------------------- # ~/.bash_profile: executed by bash(1) for login shells. # $Revision: 2.20 (CentOS/OS X Edition by Wakko Warner) $ # $Comment: Any comments please send to wakko@acmelabs.spb.ru $ #---------------------------------------------------------------------------- # If not running interactively, don't do anything [ -z "$PS1" ] && return # Test for an interactive shell. There is no need to set anything # past this point for scp and rcp, and it's important to refrain from # outputting anything in those cases. if [[ $- != *i* ]] ; then # Shell is non-interactive. Be done now! return fi # Source global definitions if [ -f /etc/bashrc ]; then . /etc/bashrc fi # Include ~/.config/bashrc.d/* if it exists if [ -d ~/.config/bashrc.d ]; then for i in `ls ~/.config/bashrc.d/` ; do if [[ -f ~/.config/bashrc.d/${i} ]]; then . ~/.config/bashrc.d/${i} fi done unset i fi $ nano -w ~/.bash_logout #---------------------------------------------------------------------------- # ~/.bash_logout: executed by bash(1) when login shell exits. # $Revision: 2.10 (CentOS Edition by Wakko Warner) $ # $Comment: Any comments please send to wakko@acmelabs.spb.ru $ #---------------------------------------------------------------------------- # When leaving the console clear the screen to increase privacy if [ "$SHLVL" = 1 ]; then [ -x /usr/bin/clear_console ] && /usr/bin/clear_console -q [ -x /usr/bin/clear ] && /usr/bin/clear -q fi $ mkdir -p ~/.config/bashrc.d $ nano -w ~/.config/bashrc.d/00-aliases #---------------------------------------------------------------------------- # ~/.config/bashrc.d/00-aliases: executed by .bash_profile for aliases # $Revision: 2.20 (CentOS/OS X Edition by Wakko Warner) $ # $Comment: Any comments please send to wakko@acmelabs.spb.ru $ #---------------------------------------------------------------------------- # Alias definitions. alias cp='cp -i' alias df='df -h' alias du='du -h' alias flushdns='sudo discoveryutil udnsflushcaches' alias less='less -r' alias ll='ls -lp' #alias ls='ls --color=auto' alias md='mkdir' alias mtr='mtr -o "LRSD NBAWV"' alias mv='mv -i' alias pman='pinfo -m' alias px='ps xa' alias rd='rmdir' alias rm='rm -i' alias scp='scp -p -r' alias screen='[ -z "$HUSHLOGIN" ] && TERM=xterm screen -D -RR || TERM=linux screen -D -RR' alias su='su -' alias sudo='sudo -s' alias showextip='curl http://ipecho.net/plain; echo' alias watch='watch ' alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde' alias who='who -HuT' $ nano -w ~/.config/bashrc.d/01-locale #---------------------------------------------------------------------------- # ~/.config/bashrc.d/01-locale: executed by .bash_profile for locale settings # $Revision: 2.20 (CentOS/OS X Edition by Wakko Warner) $ # $Comment: Any comments please send to wakko@acmelabs.spb.ru $ #---------------------------------------------------------------------------- # Locale definitions. #export LC_ALL="" #export LANG="ru_RU.UTF-8" #export LC_NUMERIC="C" #export LC_TIME="POSIX" # Set english messages for root. [ ${EUID} == 0 ] && export LC_MESSAGES="POSIX" $ nano -w ~/.config/bashrc.d/02-terminal #---------------------------------------------------------------------------- # ~/.config/bashrc.d/02-terminal: executed by .bash_profile for terminal settings # $Revision: 2.20 (CentOS/OS X Edition by Wakko Warner) $ # $Comment: Any comments please send to wakko@acmelabs.spb..ru $ #---------------------------------------------------------------------------- # Set variable identifying the chroot you work in (used in the prompt below) if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then debian_chroot=$(cat /etc/debian_chroot) fi # Set colorful PS1 only on colorful terminals. # dircolors --print-database uses its own built-in database # instead of using /etc/DIR_COLORS or /etc/dircolors. # Try to use the external file first to take advantage of user additions. use_color=false safe_term=${TERM//[^[:alnum:]]/.} # sanitize TERM if [ -f /etc/DIR_COLORS ]; then grep -q "^TERM ${safe_term}" /etc/DIR_COLORS && use_color=true elif [ -f /etc/dircolors ]; then grep -q "^TERM ${safe_term}" /etc/dircolors && use_color=true elif type -p dircolors >/dev/null ; then if dircolors --print-database | grep -q "^TERM ${safe_term}" ; then use_color=true fi fi if ${use_color} ; then if [ ${EUID} == 0 ]; then PS1='${debian_chroot:+($debian_chroot)}\[\033[01;31m\]\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' else PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' fi # PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD/$HOME/~}\007"' eval "`dircolors -b`" alias ls='ls --color=auto' alias dir='ls --color=auto --format=vertical' alias vdir='ls --color=auto --format=long' alias less='less -r' else if [ ${EUID} == 0 ]; then PS1='${debian_chroot:+($debian_chroot)}\h:\w\$ ' else PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' fi fi $ nano -w ~/.config/bashrc.d/03-userfiles #---------------------------------------------------------------------------- # ~/.config/bashrc.d/03-userfiles: executed by .bash_profile for user files # $Revision: 2.00 (CentOS/OS X Edition by Wakko Warner) $ # $Comment: Any comments please send to wakko@acmelabs.spb..ru $ #---------------------------------------------------------------------------- # User specific environment and startup programs if [ -d $HOME/bin ]; then PATH=$PATH:$HOME/bin export PATH fi # do the same with MANPATH if [ -d $HOME/man ]; then MANPATH=${MANPATH:-:}:$HOME/man export MANPATH fi $ nano -w ~/.config/bashrc.d/99-other #---------------------------------------------------------------------------- # ~/.config/bashrc.d/99-other: executed by .bash_profile for other settings # $Revision: 2.20 (CentOS/OS X Edition by Wakko Warner) $ # $Comment: Any comments please send to wakko@acmelabs.spb.ru $ #---------------------------------------------------------------------------- # Don't put duplicate and garbage lines from Midnight Commander to the history. export HISTCONTROL="ignoreboth" # Check the window size after each command and, if necessary, # update the values of LINES and COLUMNS. shopt -s checkwinsize # Make less more friendly for non-text input files, see lesspipe(1) #[ -x /usr/bin/lesspipe ] && eval "$(lesspipe)"
После создания этих файлов лучше всего перелогиниться, для того чтобы применились все изменения.
Настройка утилиты screen
Я люблю работать в screen, во-первых если, вдруг отвалится связь до удалённого сервера – сеанс не завершится, а продолжит своё выполнение. Особенно это актуально если удалённо был запущен какой-нибудь длительный процесс, который не желательно прерывать.
Ну и плюс, я настроил screen таким образом, что при его запуске – у нас сразу же создаются 10 консолей, и переключаться между ними так же удобно как если бы вы сидели за рельной консолью Linux, по Alt+F1, Alt+F2 и т.д. до Alt+F10. Можно ещё нажимая клавиши Ctrl+Alt+Left/Right переключаться между консолями влево-вправо.
$ nano -w ~/.screenrc #---------------------------------------------------------------------------- # ~/.screenrc: executed by screen for user settings # $Revision: 2.10 (CentOS Edition by Wakko Warner) $ # $Comment: Any comments please send to wakko@acmelabs.spb.ru $ #---------------------------------------------------------------------------- hardstatus string "[screen %n%?: %t%?] %h" defshell -bash shell -$SHELL # VARIABLES # =============================================================== # Automatically detach on hangup. autodetach on # default: on # Don't display the copyright page startup_message off # default: on # Affects the copying of text regions crlf off # default: off # Change default scrollback value for new windows defscrollback 1000 # default: 100 # Define the time that all windows monitored for silence should # wait before displaying a message. Default 30 seconds. silencewait 15 # default: 30 # UTF-8 support defutf8 on # PuTTY tweaks termcapinfo xterm* ti@:te@ termcapinfo xterm ti@:te@ # KEYBINDINGS # ============================================================== # Alt+Fn keys. bindkey "^[^[OC" next bindkey "^[^[OD" prev bindkey "^[^[OP" select 0 bindkey "^[^[OQ" select 1 bindkey "^[^[OR" select 2 bindkey "^[^[OS" select 3 bindkey "^[^[[15~" select 4 bindkey "^[^[[17~" select 5 bindkey "^[^[[18~" select 6 bindkey "^[^[[19~" select 7 bindkey "^[^[[20~" select 8 bindkey "^[^[[21~" select 9 # STARTUP SCREENS # =============================================================== # Uncomment one/some following lines to automatically let # SCREEN start some programs in the given window numbers: # screen -t IRC 1 irssi # screen -t EDIT 1 vim # screen -t GOOGLE 2 links http://www.google.com # screen -t NEWS 3 slrn # screen -t WWW 4 links http://rt.com screen -t F1 0 screen -t F2 1 screen -t F3 2 screen -t F4 3 screen -t F5 4 screen -t F6 5 screen -t F7 6 screen -t F8 7 screen -t F9 8 screen -t F10 9 select 0
Note: Если запускать Midnight Commander в screen, то у него не работал subshell (не работал шелл в mc). Для того чтобы починить, добавьте в файл .screenrc
строчку «shell -$SHELL
«.
Настройка редактора nano
nano – отличный маленький редактор. Но многие его почему-то незаслуженно не любят. Это зря. С небольшими донастройками nano умеет даже подсветку синтаксиса. Не так круто как тот же vim, но в целом всё равно получается лучше чем чёрно-белый.
$ nano -w ~/.nanorc #---------------------------------------------------------------------------- # ~/.nanorc: executed by nano for user settings # $Revision: 2.10 (CentOS Edition by Wakko Warner) $ # $Comment: Any comments please send to wakko@acmelabs.spb.ru $ #---------------------------------------------------------------------------- ## Constantly display the cursor position in the status bar. set const ## Enable mouse support, so that mouse clicks can be used to set the ## mark and run shortcuts. set mouse ## Don't wrap text at all. set nowrap ## Use smooth scrolling as the default. set smooth ## ----------------------------------------------------------------------------- ## *conf-files # syntax "configfiles" "\/etc" "(\.|/|)ini$" "(\.|/|)cf$" "(\.|/|)conf$" "(\.|/|)cnf$" "(\.|/|)include$" "(\.|/|)ample$" "(\.|/|)globals$" "xfce.*$" "syslog-ng" "sudoers" "(\.|/|)config$" "(\.|/|)COLORS$" "(\.|/|)colors$" color red "/.*$" "TERM" "\..*$" "=.*$" "\*.*$" color brightgreen ":unscaled" "[0-9]" color brightwhite "setenv|export" "\;" color brightwhite "\<(alias)\>" color brightgreen "<(\\.|[^'])*>" color magenta "[a-zA-Z_0-9\-\ \ ]+( | |)+=" color brightwhite ">(\\.|[^'><])*" "\<(logfile)\>" "\<(driftfile)\>" "\<(restrict)\>" color brightwhite ":unscaled" "http\:\/\/" "ftp\:\/\/" "rsync\:\/\/" color magenta "'(\\.|[^'])*'" color brightwhite "[0-9]" color brightwhite "[<>]" color brightgreen "\[[a-zA-Z_0-9\ \-]+\]" color magenta "Section" "EndSection" "SubSection" "EndSubSection" color red "\<(root)\>" color brightred,blue "^.*-->" start="<!--.*" end="$" ## strings color brightyellow "\"(\\.|[^\"])*\"" "'(\\.|[^'])*'" "`(\\.|[^'])*`" "\{(\\.|[^'])*\}" ## comments color green "^( *| *)#.*$" start="<!--" end="-->" color green ";.*$" ## header color brightgreen "^( *| *)[#;]+ *\/etc\/[a-zA-Z_0-9]+.*$" color brightgreen "^( *| *)[#;]+ *\$[a-zA-Z_0-9]+:.*$" ## ----------------------------------------------------------------------------- ## /etc/group, /etc/passwd, /etc/shadow # syntax "passwd" "(\.|/|)group(.*)$" "(\.|/|)passwd(.*)$" "(\.|/|)shadow(.*)$" color white ".*$" color green "\:.*$" color yellow "\:*\:" color cyan "/.*$" color red "/bin/false" color red "/sbin/nologin" color brightred "root" color brightgreen "/bin/.*sh" color white "[0-9]" color magenta "\:\/.*\:" ## ----------------------------------------------------------------------------- ## *tab-files ( e.g. fstab, crontab, inittab ) # syntax "fstab" "(\.|/|)tab$" color brightwhite "[0-9,\*]" color yellow "-([a-z])\>" color magenta "\<(none)\>.*$" "\<(wait)\>" "\<(respawn)\>" color red "/dev/hd.*$" "\<(ctrlaltdel)\>" "\<(initdefault)\>" color brightgreen "/dev/sr.*$" "/dev/cd.*$" "\/sbin.*$" color cyan "/dev/sd.*$" color brightcyan "^.*(nfs|smbfs|tmpfs).*$" color yellow "/dev/fd.*$" color red "root" color cyan "\<(rm|test)\>" color cyan "((\/|\/usr\/|\/usr\/local\/)(bin\/|sbin\/)[a-zA-Z_0-9,-]+)" color magenta "(\$|)[a-zA-Z_0-9]+( |)=" color red "\$\{?[a-zA-Z_0-9]+\}?" ## comments color green "^( *| *)#.*$" ## header color brightgreen "^( *| *)[#]+ *\$[a-zA-Z_0-9]+:.*$" ## Color setup include "/usr/share/nano/asm.nanorc" include "/usr/share/nano/awk.nanorc" include "/usr/share/nano/cmake.nanorc" include "/usr/share/nano/c.nanorc" include "/usr/share/nano/css.nanorc" include "/usr/share/nano/debian.nanorc" include "/usr/share/nano/fortran.nanorc" include "/usr/share/nano/gentoo.nanorc" include "/usr/share/nano/groff.nanorc" include "/usr/share/nano/html.nanorc" include "/usr/share/nano/java.nanorc" include "/usr/share/nano/lua.nanorc" include "/usr/share/nano/makefile.nanorc" include "/usr/share/nano/man.nanorc" include "/usr/share/nano/mgp.nanorc" include "/usr/share/nano/mutt.nanorc" include "/usr/share/nano/nanorc.nanorc" include "/usr/share/nano/objc.nanorc" include "/usr/share/nano/ocaml.nanorc" include "/usr/share/nano/patch.nanorc" include "/usr/share/nano/perl.nanorc" include "/usr/share/nano/php.nanorc" include "/usr/share/nano/pov.nanorc" include "/usr/share/nano/python.nanorc" include "/usr/share/nano/ruby.nanorc" include "/usr/share/nano/sh.nanorc" include "/usr/share/nano/spec.nanorc" include "/usr/share/nano/tcl.nanorc" include "/usr/share/nano/tex.nanorc" include "/usr/share/nano/xml.nanorc"
Финиш
И, наконец, перезагружаем наш сервер:
$ reboot
Update: особенности временной работы с qwertz
Если, вдруг, Вы будете устанавливать CentOS на каком-нибудь немецком хостинге с раскладкой qwertz, без возможности смены её на qwerty, нужно помнить следующее:
z == y y == z _ == Shift + / / == - - == \ : == Num Lock, Left Alt + 058 (NumPad)
Так же не забудьте про то что пароль который вы введёте с раскладкой qwertz потом не подойдёт при доступе по ssh, так что на время установки поставьте какой-нибудь простой пароль, а потом при первом логине через ssh, уже замените его на нормальный.
Настройка различных сервисов
Так же, можно прочитать следующие заметки по настройке различных сервисов в CentOS/RHEL:
- Настройка syslog-ng
- Настройка DNS-сервера (bind)
- SSL/TLS-сертификаты для лентяев
- Настройка VPN-сервера (OpenVPN)
- Настройка LAMP-сервера (Linux, Apache, MariaDB/MySQL, PHP)
- Настройка почтового сервера (Postfix, Dovecot, MariaDB/MySQL)
- Настройка спам-фильтра DSpam (dspam, dspam-web, dovecot-antispam)
- Настройка почтового веб-интерфейса (RoundCube)
Иван
30.11.2014 - 19:30
спасибо
Aleksey
02.12.2014 - 16:46
Просто супер.
Не поможешь с проблемой? Установил на ноут CentOS7 и поднял на нем торрент клиент, все прекрасно работает, но при закрытии крышки он уходит в спящий режим.
Спасибо
Wakko
02.12.2014 - 16:51
Под root’ом сделай следующее:
1. В файле /etc/systemd/logind.conf замени строку #HandleLidSwitch=suspend на строку HandleLidSwitch=ignore
2. systemctl restart systemd-logind
Должно помочь.
Aleksey
04.12.2014 - 09:37
Огромное спасибо, все работает. Осталось самбу настроить.
Андрей
13.01.2015 - 11:30
Спасибо за инструкцию! Сделал всё как в разделе «Настраиваем локаль и русскую раскладку» и до перезагрузки после выполнения loadkeys /lib/kbd/keymaps/i386/qwerty/ru.map.gz при переключении по Ctrl-Shift русский текст выводился корректно. После перезагрузки стало также как было (квадратики вместо русских букв), а loadkeys не помогла.
Wakko
13.01.2015 - 11:53
Да, как оказалось почему-то не подгружается русский шрифт после перезагрузки.
Временно можно выполнять команду
systemctl restart systemd-vconsole-setup.service
. Тогда русские символы станут отображаться вместо квадратиков.На сайте RH по этому поводу открыт такой вот баг: https://bugs.centos.org/view.php?id=7325 Как починят – всё заработает, а пока команду
systemctl restart systemd-vconsole-setup.service
можно добавить куда-нибудь типа ~/.bash_profile.Андрей
14.01.2015 - 18:27
После упорного гугления нашлось временное решение, которое, похоже, на ближайшее время станет постоянным https://gist.github.com/ROMB/a7a76d30a5f25faf36c5 После установки пакета сразу всё заработало.
Андрей
14.01.2015 - 20:10
По разделу про отключение IPv6 из http://wiki.centos.org/FAQ/CentOS7 рекомендуют ещё поменять имя loopback:
«(1) edit /etc/postfix/main.cf and comment out the localhost part of the config and use ipv4 loopback.
#inet_interfaces = localhost
inet_interfaces = 127.0.0.1
»
и поправить /etc/hosts
Не знаю нужно ли это на самом деле.
Также в «голой поставке» отсутствует привычный ifconfig, который ставится yum install net-tools.
Wakko
17.01.2015 - 00:29
Честно говоря, hosts менять не хочется. Мне там IPv6 особо не мешает. 🙂
А по поводу main.cf’а, мы же выполняем команду
sed -i 's/inet_protocols = [^ ]*/inet_protocols = ipv4/g' /etc/postfix/main.cf
, т.е. говорим Postfix’у использовать только IPv4. К тому же, лично у меняinet_interfaces = all
, а неinet_interfaces = localhost
.opv
29.01.2015 - 15:49
Добрый день.
не могу поднять CentOs на сервере HP DL360G5. Аппаратный RAID E200i. По умолчанию не виден жесткий диск для установки. Проблема с отсутствием драйверов в ядре. На сайте HP нашел три варианта драйвера (для RHEL правда — hpsa, cciss, mptt). Пытался по очереди их подгружать через boot: linux dd blacklist=ahci — драйвер вроде «жует» с дискеты, но эфффекта нет — диск не появляется в инсталляторе. На каком-то забугорном форуме нашел рекомендацию в опциях ядра при установке прописать пару ключей: hpsa.hpsa_allow_any=1, hpsa.hpsa_simple_mode=1. Установка прошла, все хорошо, диск виден, но после ребута доходит до монтирования ф.систем и всё — диска опять нет…, т.е. видимо как-то надо после установки rpm-ку с драйвером скормить. Пробую перед ребутом после установки Ctrl+Alt+F2 -> rpm -ivh hpsa-xxxx-.rpm — нифига, ругается что ему надо еще кучу модулей для этого…, соответственно, эффект=0…
Чего еще можно предпринять — не знаю, уперся рогом…
Может подскажете куда еще покопать?
Заранее огромное спасибо!
opv
30.01.2015 - 18:25
С загрузкой вопрос решился. Не знаю насколько правильно, но работает. Можт поправите меня.
В общем, смысл такой.
Грузимся с установочного диска, выбираем Troubleshoot -> Rescue, Tab — также прописываем hpsa.hpsa_allow_any=1 в опциях.
#chroot /mnt/sysimage (вроде так, система подскажет точно)
#vi /etc/default/grub
в блок опций загрузки ядра длбавляем hpsa.hpsa_allow_any=1
переконфигурим grub
#grub-makeconf -o /boot/grub.conf
Все. Ребут.
Система первый раз сама перегрузилась, после этого загрузилась нормально.
Artem Semenov
02.05.2015 - 16:29
Очень понравился ваш bash_profile на CentOS работает но чтобы он заработал под OS X как у него указано в шапке пришлось помучаться во первых на OS X нет команды dircolors пришлось ставить пакет GNU Coreutils и еще пришлось линковать от туда же команду ls посколько указанные ключи в алиасах поддерживает только ее GNUтая версия
Alt
03.05.2015 - 08:24
Подскажите, что может быть. Звук работает., только через один (левый) динамик. Звуковая карта Sound Blaster SB 0790
Ромарио
31.05.2015 - 06:02
Одна из самых крутых статей, очень приятно читать и очень познавательно. Спасибо!
Bitzer
01.06.2015 - 12:52
по поводу loadkeys /lib/kbd/keymaps/i386/qwerty/ru.map.gz :
попробуйте так : loadkeys /lib/kbd/keymaps/legace/i386/qwerty/ru.map.gz
Wakko
01.06.2015 - 12:55
Ага, перенесли файлики. Только не legace, a legacy, т.е.
loadkeys /lib/kbd/keymaps/legacy/i386/qwerty/ru.map.gz
Bitzer
01.06.2015 - 13:00
Если будет тормозить mc и вход по SSH (как у меня — разворачивал centos7 в vmware), то надо поправить /etc/hosts :
после 127.0.0.1 пишем имя своего сервера (узнаём имя командой hostname)
Bitzer
01.06.2015 - 13:01
ну конечно, legacy
слепота))
Bitzer
01.06.2015 - 13:19
sed -i ‘s/^\(bindcmdaddress ::1\)/#\1/’ /etc/chrony.conf
sed: can’t read /etc/chrony.conf: No such file or directory
Поиск (find) никаких результатов не дал. Как так?
Wakko
01.06.2015 - 13:21
Скорее всего не установлен пакет chrony.
Bitzer
01.06.2015 - 13:42
Еще немного пофлужу ))
вместо rpm -Uvh http://mirror.yandex.ru/epel/7/x86_64/e/epel-release-7-2.noarch.rpm
уже rpm -Uvh http://mirror.yandex.ru/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
а для белорусов rpm -Uvh http://mirror.datacenter.by/pub/fedoraproject.org/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
Bitzer
01.06.2015 - 13:48
sed -i s/udp6/#udp6/ /etc/netconfig
sed: can’t read /etc/netconfig: No such file or directory
Ещё одна засада, что Ему надобно? ))
Bitzer
01.06.2015 - 17:35
По последнему вопросу сам разобрался «методом тыка» : этап отключения IPv6 перенёс после установки утилит и программ. Плюс добавил по совету автора в список установки пакет chrony.
Всё прошло без ошибок! Буду теперь DNS мучать ))
Yuriy
26.07.2015 - 22:57
Здравствуйте
Поставил centos 7 на lenovo thinkpad t430s
Проблема — не видит WiFi интерфейс, lspci указывает как Intel centrino ultimate-n 6300 дров род линукс на офсайте нет, в то же время altlinux 7.04 встал туда же и увидел WiFi, может что то посоветуете?
Вообще макадрес виден как PCI неизвестно и указан реальный мак.
Yuriy
26.07.2015 - 23:05
да еще вот:
решил добавить репозиторий
rpm -Uvh mirror.yandex.ru/centos/7/os/x86_64/
дает ошибку — не такого… я начинающий пользователь Linux
Yuriy
27.07.2015 - 06:13
вот что мне пишет система на команду ip a-
3: wlp3s0: mtu 1500 qdisc noop state DOWN qlen 1000
link/ether 24:77:03:93:cf:e0 brd ff:ff:ff:ff:ff:ff
а при попытке запуска — ifup wlp3s0 — /sbin/ifup: configuration for wlp3s0 not found
хотя изменения в /etc/sysconfig/wpa_supplicant и в /etc/wpa_supplicant/wpa_supplicant.conf сделаны
Alex miles
21.08.2015 - 15:12
Спасибо за толковую статью!
QDe$Nik
11.10.2015 - 14:28
$ sed -i —follow-symlinks ‘s/vconsole.font=[^ ]*/vconsole.font=latarcyrheb-sun16/g’ \
/etc/sysconfig/grub
$ sed -i —follow-symlinks ‘s/vconsole.keymap=[^ ]*/vconsole.keymap=ru/g’ \
/etc/sysconfig/grub
не проходят команды, пишет что-то типа каталог не существует. Фактически он есть.
art
09.12.2015 - 09:16
сделал обновление поставил Qt и Ekiga после чего вдруг прекратила отвечать кнопка настроек (там где общие настройки питание ,раскладка клавиатуры и тд.)арсле перезагрузки черный экран.что делать?
Eugene Taradayko
10.12.2015 - 18:26
Небольшой совет моему самому уважаемому автору 🙂
Epel правильнее всего добавлять так: yum install epel-release
всегда самая актуальная версия да самая лаконичная команда из всех.
Wakko
11.12.2015 - 12:59
Когда это писалось, epel-release’а ещё не было в репозитории. Но мысль правильная, да. Нужно исправить. 🙂
Роман
29.12.2015 - 10:18
Отличная статейка.
Вот бы еще адекватное описание настройки SELinux бы.. К примеру, для веб-сервера…
Semen
30.12.2015 - 15:50
Подскажите как в Сент 6 установить playonlinux?
Wakko
30.12.2015 - 17:10
На офф. сайте есть пакет для Fedora. Можно попробовать установить из этого пакета.
sash80
08.04.2016 - 11:09
подскажите пож.
устанавливаю с диска CentOS 7 Netinstall и указываю http://mirror.yandex.ru/centos/7/os/x86_64/
все проходит нормально, но после установки yum update тянет немного обновлений.
а возможно ли указать репозиторий чтобы во время установки скачивались последние пакеты?
(так построено у ArchLinux-а — что после установки по сети все пакеты уже самые свежие)
woreg
19.04.2016 - 17:19
вместо этого -> $ localectl set-x11-keymap us,ru pc105 grp:ctrl_shift_toggle —no-convert
должно быть -> $ localectl set-x11-keymap us,ru pc105 ,winkeys grp:ctrl_shift_toggle —no-convert
Юля
24.12.2016 - 21:50
Подскажите пожалуйста, у меня не получается. Я скачала, установила — все нормально, но не знаю как перейти на рабочий стол. Ввела логин и пароль (как у Вас на последнем скрине), а что дальше? Помогите, очень прошу…
soldafon3@narod.ru
27.08.2017 - 19:16
ghjcm,f gjlcrfpfnm
а как в шелле 7 centos поменять раскладку
ставил gui и спрашивает «в» -выйти или «п»-продолжить
традиционные сочетания клавиш не помогают
Ctrl-C не помогает
antanariva
19.11.2017 - 23:41
Отлично, большое спасибо!
Кирилл
04.03.2018 - 12:40
Детальная инструкция, как раз такую и искал.
Безмерно благодарю.
integr1
12.04.2018 - 12:05
Как установить centos 7 на ноутбук asus gl553vd с флешки ?
Выходит на меню установки и зависает. Ругается на x.org.