Linux centos самоучитель pdf

Получение помощи / Документация

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

1. Спросите установленную систему про CentOS

CentOS имеет полный набор страниц man и info. Доступно средство чтения документации pinfo и может быть установлено с помощью yum. Каждый пакет может иметь дополнительную документацию, которую следует считать авторитетной. Вы можете увидеть, какую документацию содержит пакет на вашей установленной системе с помощью команды: <<>> Если вы обнаружили несоответствие между документацией и конкретной функцией, тогда это ошибка, о которой следует доложить на: трекер ошибок CentOS или трекер ошибок RedHat. Так же, но, возможно, менее очевидно, проект CentOS просто пересобирает исходный код, который находится в свободном доступе благодаря первоначальному источнику (Red Hat), устанавливая другой способ (не через Red Hat Network) получения обновлений с помощью сети зеркал CentOS, избавляясь от зарегистрированных торговых марок и тд. Проект не стремится расширять свой ‘базовый’ архив, ‘обновления’ или ‘исправления’ ошибок отдельно от выпусков исходных кодов его первоисточника.

Вы можете посмотреть, какие дополнительные пакеты доступны вам с помощью инструмента управления пакетами 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)

Источник

Читайте также:  Команды telnet для windows

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

Читайте также:  Hyper v linux cd rom

Разрешить 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»

Читайте также:  Astra linux принтер epson

Вывод логов определенного бинаря

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 (2048-4194303, default 4194303):

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):

Источник

Оцените статью