Получение помощи / Документация
Есть некоторые места на вашем компьютере, на этой Вики и в сети, к которым вы должны обратиться в первую очередь, когда ищете помощи по CentOS.
1. Спросите установленную систему про CentOS
CentOS имеет полный набор страниц man и info. Доступно средство чтения документации pinfo и может быть установлено с помощью yum. Каждый пакет может иметь дополнительную документацию, которую следует считать авторитетной. Вы можете увидеть, какую документацию содержит пакет на вашей установленной системе с помощью команды: <<
Вы можете посмотреть, какие дополнительные пакеты доступны вам с помощью инструмента управления пакетами yum. Пожалуйста, посмотрите его страницу man для получения детального руководства.
2. Документация на этой Вики
Эта Вики будет расти, поэтому если вы вернетесь сюда позже, вы можете захотеть взглянуть на список изменений, чтобы увидеть изменения и добавления с момента вашего последнего визита.
Поиск любой информации на CentOS Вики или в Интернете
Часто задаваемые вопросы про CentOS в общем и про различные выпуски CentOS
Советы и приемы — короткие статьи со вспомогательной информацией
Как сделать — более длинные статьи с детальным описанием о том, как сделать что-либо в системе
‘Облако’ — это новая сущность с точки зрения частных и общественных инстанций. Общественные вычислительные окружения в основном нуждаются в оплате за использование. Оплата сторонним организациям, таким как: Amazon, чтобы иметь в руках воспроизводящее окружение. Поэтому мы просим задавать соответствующие вопросы на специфических каналах. Почтовая рассылка: CentOS Virt ; IRC: на #centos-virt
CentOS Вики на Испанском — Советы и приемы, часто задаваемые вопросы и немного больше информации
3. Руководства и другая документация
Секция документации — это ваша отправная точка по официальной документации CentOS.
Руководства: официальное руководство и документация по CentOS
4. Официальная домашняя страница CentOS
Домашняя страница CentOS содержит много информации по различным аспектам CentOS.
5. Почтовые рассылки
Проект CentOS поддерживает ряд почтовых рассылок, на которых вы можете задать свои вопросы или помочь другим людям с их вопросами. Все разработчики CentOS, а так же множество опытных пользователей Linux и CentOS принимают участие в почтовых рассылках.
Список почтовых рассылок о CentOS (включая Бразильский Португальский, Французский, Голландский, Немецкий, Испанский, Чешский и Японский языки)
6. Фора
CentOS Фора предоставляет вам место для вопросов о CentOS. Множество хорошо известных членов сообщества CentOS помогают другим пользователям. Пожалуйста, выбирайте темы, соответствующие вашим вопросам. В первую очередь прочитайте FAQ & Readme First.
7. IRC
Для получения поддержки в реальном времени, канал #centos на irc.freenode.net представляет собой другой значимый источник информации по вопросам, связанным с CentOS. Пожалуйста, прочитайте сначала указания по CentOS IRC.
8. Агрегатор блога разработчиков CentOS
Разработчики CentOS — интересные люди, их индивидуальные блоги собраны в поток Планета CentOS.
9. Веб поиск
Нет, мы не содержим CentOS-версию поиска Google. Но Google (и другие поисковые механизмы) уже знают достаточно много о CentOS, если вы научитесь корректно ставить вопрос. В любом случае, все ожидают, что вы сначала произведете поиск в Google по вашей проблеме прежде чем спросите о ней в почтовых рассылках или на канале #centos. Конечно, вы получите помощь. Но вы получите намного более разумную помощь, если зададите разумный вопрос.
Перечень поисковых ресурсов о CentOS (включая советы, помогающие вам лучше осуществлять фильтрацию)
ru/Documentation (последним исправлял пользователь анонимно 2019-12-09 09:11:32)
Источник
Linux Centos краткий учебник
Данное пособие было написано Козловым Михаилом для себя т.к. работаю с довольно большим количеством совершенно разных технологий, постоянно все вылетает из головы, выкладываю в общедоступный доступ на своем сайте http :// snakeproject . ru /
Это не подробная книга-учебник, больше краткий учебник-справочник по администрированию самой ОС.
Здесь мало теории и минимум объяснений (ну не люблю ит-художественный жанр), руководство больше основано на примерах и выводе команд.
Многое из этого учебника является моими статьями или частями статей за разные годы на сайте. (Устал уже каждый раз искать, что надо, слишком много информации скопилось)
Все примеры работы будут показаны на примере ОС Centos 7 (на дворе 2018 год, декабрь)
Предполагается, что вы умеете пользоваться базовыми командами cd , ls , cat и банально хоть одним редактором типа vi \ vim \ nano по вкусу.
Читали хоть немного или смотрели видео по linux и хоть чуть-чуть имеете представление об ОС
Процесс установки опускаем, там все довольно тривиально, единственно пару слов о разбивке жесткого диска:
Можно оставить разбивку по умолчанию, или сделать нечто подобное:
Допустим у тестовой виртуальной машины диск 20 гигабайт и 2 гигабайта памяти
/boot — файлы загрузчика — 300 мегабайт
/ — корень файловой системы — 15 гигабайт
swap — раздел подкачки (т.н. виртуальной памяти) — 1 гигабайт (1\2 памяти)
/home — раздел домашних директорий для файлов пользователя — все остальное
Файловую систему для корня ставим предлагаемую xfs или ext 4
Под boot раньше т\исторически отдавалось предпочтение ext 2 , но это в данном случае не имеет значения
1. Примеры работы с железом
2. Процесс загрузки ОС Linux и загрузчики
3. Управление службами systemd
4. Логи в systemd
5. Работа с жестким диском
6. Управление ПО
7. Сеть и брандмауэр
8. Пользователи, группы, права, файлы, поиск, ssh
10. Планировщик заданий cron
11. Репозитории ПО
1. Примеры работы с железом
Поработаем с виртуальной файловой системой, менеджер устройств в ОС называется Udev
udev — это система, которая автоматически отображает устройства, которые подключены к жестким дискам, USB-накопителям и т. д., и создаст запись в файловой системе dev.
Посмотрим на фрагмент вывода файлов устройств
Буква в начале «b» — блочное устройство (отправляет\принимает данные блоками данных)
Буква в начале «c» — символьное устройство (отправляет\принимает данные потоками данных)
По сути упрощенно, файлы устройств — указатели на драйверы
crw——- 1 root root 10, 235 Dec 6 14:44 autofs
drwxr-xr-x 2 root root 160 Dec 6 14:44 block
drwxr-xr-x 2 root root 80 Dec 6 14:44 bsg
crw——- 1 root root 10, 234 Dec 6 14:44 btrfs-control
lrwxrwxrwx 1 root root 3 Dec 6 14:44 cdrom -> sr0
drwxr-xr-x 2 root root 80 Dec 6 14:44 centos
drwxr-xr-x 2 root root 2.6K Dec 6 14:44 char
crw——- 1 root root 5, 1 Dec 6 14:44 console
lrwxrwxrwx 1 root root 11 Dec 6 14:44 core -> /proc/kcore
drwxr-xr-x 6 root root 140 Dec 6 14:44 cpu
crw——- 1 root root 10, 61 Dec 6 14:44 cpu_dma_latency
crw——- 1 root root 10, 62 Dec 6 14:44 crash
drwxr-xr-x 5 root root 100 Dec 6 14:44 disk
brw-rw—- 1 root disk 253, 0 Dec 6 14:44 dm-0
brw-rw—- 1 root disk 253, 1 Dec 6 14:44 dm
Мой диск sda, на котором есть разделы sda1 и sda2
brw-rw—- 1 root disk 8, 0 Dec 6 14:44 /dev/sda
brw-rw—- 1 root disk 8, 1 Dec 6 14:44 /dev/sda1
brw-rw—- 1 root disk 8, 2 Dec 6 14:44 /dev/sda2
sysfs – содержит информацию об устройствах
В выоде мы видим блочные устройства, шины другую информацию о устройствах
drwxr-xr-x 2 root root 0 Dec 6 15:25 block
drwxr-xr-x 30 root root 0 Dec 6 15:25 bus
drwxr-xr-x 4 root root 0 Dec 6 15:25 dev
drwxr-xr-x 13 root root 0 Dec 6 15:25 devices
drwxr-xr-x 6 root root 0 Dec 6 15:25 firmware
drwxr-xr-x 5 root root 0 Dec 6 15:25 fs
drwxr-xr-x 10 root root 0 Dec 6 15:25 kernel
Пример вывода mac адреса сетевой карточки с именем enp 0 s 3
Procfs – содержит информацию о процессах системы
На пример информация о процессоре
Или файловой системе и точках монтирования
В / proc / sys / находятся изменяемые параметры
dr-xr-xr-x 1 root root 0 Dec 6 15:34 dev
dr-xr-xr-x 1 root root 0 Dec 6 14:44 fs
dr-xr-xr-x 1 root root 0 Dec 6 14:44 kernel
dr-xr-xr-x 1 root root 0 Dec 6 14:44 net
dr-xr-xr-x 1 root root 0 Dec 6 15:34 user
dr-xr-xr-x 1 root root 0 Dec 6 14:52 vm
Разрешить ip -форвардинг пакетов (сделать роутер проще говоря)
Изменить количество единовременно открытых файлов
cat / proc / sys / fs / file — max
Надо учитывать, что эти параметры будут работать только до перезагрузки
Утилита lsmod – информация модулей ядра
Module Size Used by
fat 65950 1 vfat
iosf_mbi 14990 0
Он исчез из вывода
]# lsmod | grep vfat
Добавим, «жесткое» добавление не пройдет
insmod: ERROR: could not load module vfat: No such file or directory
]# lsmod | grep vfat
fat 65950 1 vfat
Установим утилиту для работы с usb
yum -y install usbutils
Подключаем флешку, и видим ее в выводе:
Bus 001 Device 002: ID 3456:1211 Transcend Usb Device 8 GB
В директории / dev появилось устройство sdb
udevadm info — a / dev / sdb
Создам папку, куда подмонтирую флешку
mkdir / media / usb 1
Монтирую ее (на флешке файловая система fat 32)
mount -t vfat /dev/sdb1 /media/usb1
Утилита udevadm дает управление
Мониторинг событий сообщений ядра системы
udevadm monitor —property –kernel
Попробуйте вставить\выдернуть флешку или диск, вы увидите события ядра
KERNEL[4672.481546] change /devices/pci0000:00/0000:00:01.1/ata2/host1/target1:0:0/1:0:0:0/block/sr0 (block)
2. Процесс загрузки ОС Linux и загрузчики
Упрощенная схема загрузки компьютера и ОС
1. BIOS \ UEFI – запускает ОС с носителя
2. MBR\GPT – содержит загрузчик
3. LILO\GRUB – загрузчик ядра ОС
4. Ядро Linux – конфигурирует все процессы и запускает init
5. Init – пользовательская среда
Пару примеров решения задач с загрузчиком GRUB
1 — Апгрейд ядра
Узнать текущую версию ядра:
rpm —import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
Посмотреть доступную версию ядра и заголовков:
yum —disablerepo=»*» —enablerepo=»elrepo-kernel» list available
Установить версию из репозитория :
yum —enablerepo=elrepo-kernel install kernel-ml
yum install —enablerepo=elrepo-kernel kernel-ml-
Смотрим, версия должна быть прописана в
Смотрим, какое ядро загружется по умолчанию:
Это значит, что будет загружена последняя сохраненная версия
Это значит, что будет по умолчанию использоваться первое ядро, находящееся в списке Grub
И применяем команду обновления конфигурации:
grub2-mkconfig -o /boot/grub2/grub.cfg
Проверяем версию ядра
Список пакетов ядра
rpm -qa | grep ‘^kernel-1’
Удаляем ненужные пакеты
yum remove kernel-3.10.0-862.11.6.el7.x86_64 kernel-3.10.0-862.14.4.el7.x86_64
И проверяем, чтоб лишние версии исчезли из списка в:
2 — Установка таймера загрузчика
Изменяем таймер в секундах:
grub2-mkconfig -o /boot/grub2/grub.cfg
3. Управление службами systemd
У systemd объектом действий является юнит
. device — точки монтирования
/ usr / lib / systemd — содержит юниты по умолчанию
/ etc / systemd — содержит управляемые юниты (редактируемые)
Вывести их список юнитов:
В т.ч. выключенных:
systemctl list-units —all
Вывести список файлов юнитов:
Вывести содержимое файла юнита:
systemctl cat network.service
Вывести список зависимостей юнита:
systemctl list — dependencies network
Пример старта, остановки, перезагрузки, перечитывания файлов службы:
systemctl start network.service
systemctl restart network.service
systemctl stop network
systemctl reload network
Включение и выключение службы в автозагрузку:
systemctl enable network.service
systemctl disable network.service
По сути создает и удаляет симлинк отсюда:
systemctl status network.service
systemctl is-enabled network
Linux Centos имеет 7 уровней запуска (3й по умолчанию)
0 — poweroff.target Выключение и выключение питания
1 — rescue.target Однопользовательский режим
2,3,4 — multi-user.target Настройка неграфической многопользовательской оболочки
5 — graphical.target Настройка графической многопользовательской оболочки
6 — reboot.target Выключение и перезагрузка системы
Команда показывает, что мы находимся на 3ем уровни загрузки
multi — user . target говорит о том, что мы находимся на 3ем уровни загрузки
systemctl list-units —type=target
UNIT LOAD ACTIVE SUB DESCRIPTION
local-fs.target loaded active active Local File Systems
multi-user.target loaded active active Multi-User System
network-online.target loaded active active Network is Online
network.target loaded active active Network
Перейти на другой уровень (например уровень 1 — rescue.target)
systemctl isolate rescue.target
Изменить уровень запуска по умолчанию
systemctl set-default -f multi-user.target
Время логгируемых событий указывается универсальное ( UTC ) или местное
Вывести список доступных часовых поясов:
timedatectl list — timezones
Установка часового пояса из списка выше:
timedatectl set-timezone Europe/Moscow
Вывод логов с момента последней загрузки
Вывести список пережних загрузок
journalctl — list — boots
Вывод логов загрузки с id 0
journalctl — b 0
Вывод логов с определенного времени
journalctl — since «2018-08-10 09:10:00»
Вывод логов определенного сервиса
journalctl — u crond . service
Вывод логов определенного сервиса с определенного времени
journalctl -u crond.service —since «2018-08-10 09:10:00»
Вывод логов определенного бинаря
journalctl / usr / sbin / crond
Вывод логов только ошибок с момента последней загрузки
journalctl — p err — b
После — p указываем
Вывод логов определенного pid
journalctl _ PID =9791
Вывод логов определенной учетки
journalctl — F _ UID
Вывод списка пользователей, у которых имеются записи в логах
Мануал по фильтрам
Осуществляется с помощью опций:
Устанавливает предельный размер для хранимых на диске логов
По превышению старые файлы будут автоматические удалены
Устанавливает срок хранения
По истечении они файлы будут автоматически удалены
5. Работа с жестким диском
/ — корневая файловая система
/ boot – загрузочный раздел
/ root – домашняя директория суперпользователя
/ home – домашние директории пользователей
/ etc – конфигурационные файлы
/ var – часто изменяющиеся файлы
/ usr – ПО и библиотеки
/ tmp – временные файлы
Swap – подкачка, виртуальная память, не монтируется
Перед дальнейшими действиями подключил к машине еще один диск на 2 гигабайта, определился как sdb
brw-rw—- 1 root disk 8, 16 Dec 7 09:59 /dev/sdb
Вывести информацию о дисках (в выводе оба наших диска)
Disk /dev/sdb: 2147 MB, 2147483648 bytes, 4194304 sectors
Disk /dev/sda: 8589 MB, 8589934592 bytes, 16777216 sectors
Выбрать диск для работы (утилита fdisk )
fdisk / dev / sdb
Вывести справку по командам
Для начала на пустом диске надо создать таблицу разметки
Создать новый раздел ( extended или primary (возможно создание до 4х))
W – записать изменения на диск
Command (m for help): n
p primary (0 primary, 0 extended, 4 free)
Select (default p): p
Partition number (1-4, default 1):
First sector (2048-4194303, default 2048):
Using default value 2048
Last sector, +sectors or +size
Using default value 4194303
Partition 1 of type Linux and of size 2 GiB is set
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Варианты форматирования созданной партиции ( mkfs )
mkfs . ext 3 / dev / sdb 1
mkfs . ext 2 / dev / sdb 1
mkfs. fat /dev/sdb1
Подмонтируем созданную партицию
/dev/sdb1 /mount ext4 defaults 0 0
Отмонтируем и удалим партицию
Command (m for help): d
Selected partition 1
Partition 1 is deleted
Утилита для работы с партициями ( parted )
Выбрать диск для работы
select / dev / sdb
Создать метку ( msdos или gpt )
Создать партицию ext 4 размером 2ГБ первичную
artition type? primary/extended? primary
File system type? [ext4]?
Вывод информации после создания
Model: ATA VBOX HARDDISK (scsi)
Disk /dev/sdb: 2147MB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 1049kB 2000MB 1999MB primary ext4
mkfs . ext 4 / dev / sdb1
Изменяем размер партиции (из прошлого вывода Number — 1)
Partition number? 1
End? [2000MB]? 1000
Warning: Shrinking a partition can cause data loss, are you sure you want to continue?
Попытка восстановления партиции
Number Start End Size Type File system Flags
1 1049kB 2000MB 1999MB primary ext4
6. Управление ПО
Yum представляет собой консольный менеджер RPM пакетов.
вывести список пакетов из репозиториев:
вывести по определенным совпадениям:
поиск пакета по совпадениям:
установка пакета (для примера vsftpd ):
yum install vsftpd
yum remove vsftpd
yum update vsftpd
откатиться к предыдущей версии пакета:
yum downgrade vsftpd
обновить все пакеты:
вывести установленные пакеты:
yum list installed
проверить, установлен ли пакет:
yum list installed ‘vim*’
вывести информацию о пакете:
вывести список зависимостей пакета:
yum deplist vim
проверить доступные обновления:
yum check — update
вывести список подключенных репозиториев:
вывести список транзакций(историю):
yum history list
вывести информацию по транзакции:
yum history info 5
yum history undo 5
Управление rpm пакетами
rpm -ihv «имя_пакета»
rpm -e «имя_пакета»
rpm -U «имя_пакета»
Поиск в установленных пакетов:
rpm -qa | grep «имя_пакета»
Вывести информацию о пакете:
rpm -qi «имя_пакета»
Список файлов, входящих в пакет:
rpm -ql «имя_пакета»
Вывести список всех пакетов:
rpm -qa | grep more
7. Сеть и брандмауэр
Базовые сетевые настройки
Добавить машрут по умолчанию:
route add default gw 10.10.0.1
Добавить статический маршрут:
route add -net 192.168.1.0 netmask 255.255.255.0 gw 10.10.0.1
Определить маршрут по умолчанию:
Перезагружаем сервис, проверяем
service network restart
default via 10.0.2.1 dev enp0s3 proto dhcp metric 100
10.0.2.0/24 dev enp0s3 proto kernel scope link src 10.0.2.4 metric 100
service networking restart
Статический адрес на интерфейс (мой интерфейс определился как enp0s3):
Источник