Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Администрирование ОС Linux

Покупка
Артикул: 825154.01.99
Доступ онлайн
1 000 ₽
В корзину
Курс рассчитан на получение начальных знаний о системном и сетевом администрировании ОС Linux. Курс дает возможность пользователю получить твёрдые навыки при работе с операционной системой Linux, познакомиться со строением операционных систем семейства Unix, научиться эффективно ее использовать. Основной целью курса является получение обучаемым фундаментальных навыков администрирования Linux. В процессе обучения вы познакомитесь с файловой системой Linux (основными понятиями, командами навигации и управления файлами, структурой файловой системы); системой распределения прав (учетные записи, группы, права доступа на файлы, в том числе и специальные права доступа); методам эффективного контроля и управления процессами; методам работы с командными оболочками и основам создания сценариев; планированием заданий и средствами для управления запланированными заданиями; принципам инициализации системы SVR4; познакомитесь с основами стека TCP/IP и базовыми инструментами для работы с сетью в Linux.
Гончарук, С. В. Администрирование ОС Linux : краткий учебный курс / С. В. Гончарук. - Москва : ИНТУИТ, 2016. - 124 с. - Текст : электронный. - URL: https://znanium.ru/catalog/product/2137404 (дата обращения: 22.11.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов

                                    
Администрирование ОС Linux

2-е издание, исправленное

Гончарук С.В.

Национальный Открытый Университет “ИНТУИТ”
2016

2

Администрирование ОС Linux/ С.В. Гончарук - М.: Национальный Открытый Университет
“ИНТУИТ”, 2016

Курс рассчитан на получение начальных знаний о системном и сетевом администрировании ОС
Linux. Курс дает возможность пользователю получить твёрдые навыки при работе с операционной
системой Linux, познакомиться со строением операционных систем семейства Unix, научиться
эффективно ее использовать. Основной целью курса является получение обучаемым
фундаментальных навыков администрирования Linux.
В процессе обучения вы познакомитесь с файловой системой Linux (основными понятиями,
командами навигации и управления файлами, структурой файловой системы); системой
распределения прав (учетные записи, группы, права доступа на файлы, в том числе и специальные
права доступа); методам эффективного контроля и управления процессами; методам работы с
командными оболочками и основам создания сценариев; планированием заданий и средствами для
управления запланированными заданиями; принципам инициализации системы SVR4; познакомитесь
с основами стека TCP/IP и базовыми инструментами для работы с сетью в Linux.

(c) ООО “ИНТУИТ.РУ”, 2011-2016
(c) Гончарук С.В., 2011-2016

3

Введение в операционную систему Unix

Познакомить обучаемых с предметом обучения: Unix-way, история Юникс,
разновидности Юникс. Линукс, что такое Linux, средства просмотра системной
информации.

Ход занятия

1. Сегодня мы с вами начинаем изучать Linux, как одну из составных частей мира
информационных технологий под названием Unix. Все вы, ну или практически все
раньше сталкивались с ОС семейства Windows. Я хочу сделать небольшое примечание
– Unix не Windows, он не похож на него (не считая внешнего сходства) и приемы
работы в unix отличаются от приемов работы в Windows. Unix – это не только
операционная система, это еще и идеология работы с компьютером. Те правила, о
которых мы с вами будем говорить сейчас лежат в основе изучения Linux, да и Unix
вообще. Общий термин для них – Unix Way:

одна задача – одна программа . В Unix не принято делать комбайны для
выполнения “сразу всего”. Программа делается таким образом, чтобы она могла
выполнять одно простое действие, но выполняла его хорошо.
есть множество путей решения.Для решений той или иной комплексной задачи
каждый может выбирать свой набор простых компонентов для ее решения.
все есть файл . Самая замечательная концепция в unix. Действительно, в Unix все
представлено в виде файлов – программы, настройки, системные данные и даже
устройства. И с устройствами можно работать как с простыми файлами.

Остальную часть Unix way мы с Вами будем изучать в течение этого курса. Будьте
готовы к изучению не просто новых программ, а новых методов работы на
компьютере.

2. В 1969 году Кен Томпсон и Денис Ритчи, работники корпорации AT&T, создали
небольшую операционную систему для компьютера PDP-7. Эта операционная система
получила название Unix. Однако в планы компании AT&T не входило распространение
этой операционной системы, и она предоставила ее за символическую плату учебным
заведениям США, не организовав при этом службы технического сопровождения,
исправления ошибок и вообще не дав никаких гарантий.

Вследствие этого пользователи, почти все являвшиеся представителями
университетских вычислительных центров, были вынуждены сотрудничать друг с
другом. Они сами устраняли ошибки, создавали полезные программы и утилиты и
совместно их использовали. Результатом их работы стала целая серия версий Unix,
распространяемых под эгидой компании Bell Labs вплоть до 1990 года (Последней
версией была Unix System V Release 4 – SVR4).

Одна из групп пользователей Unix находилась в калифорнийском университете в
Беркли. В 1977 году специалисты этого учебного заведения сделали следующий шаг в
истории Unix и приступили к распространению магнитных лент с операционной

4

системой 2BSD (Berkeley Software Distribution). С тех пор было продано 75 копий.

На основании Unix SVR4 и BSD были созданы все современные разновидности Unix.

3. Существует множество разновидностей Unix и Unix-подобных систем. К наиболее
известным из них относятся Solaris (ранее SunOS) корпорации SUN Microsystems, AIX
компании IBM, DEC Unix фирмы DEC, SCO UnixWare и прочие. Все вышеназванные
системы являются коммерческими, и многие из них имеют высокую цену. Они
работают на различных архитектурах (Intel, Sparc, Alpha, PowerPC и т.д.). Однако
наибольший интерес сегодня в мире Unix приобрели операционные системы,
построенные на модели открытого кода, такие как Linux.

Linux изначально была разработана как свободно распространяемая версия Unix. В
1991 году студент Хельсинского университета Линус Торвальдс выпустил первую
версию Linux. Она была основана на операционной системе Minix – ограниченном
аналоге Unix для ПК. После выпуска первого “почти безошибочного” релиза в марте
1992 года, многие программисты мира подключились к разработке этой операционной
системы, и она стала расти.

На сегодняшний день Linux является полнофункциональным, открытым и, зачастую,
бесплатным, аналогом Unix. Но этого бы не произошло, не будь программного
обеспечения в рамках проекта GNU (GNU’s not Unix, GNU – это не Unix). Linux
содержит много утилит GNU, включая трансляторы многих языков программирования
(C, C++, Fortran, Pascal, LISP, Ada, BASIC, SmallTallk, Perl, PHP, Tcl/Tk и др.),
отладчики, текстовые редакторы, утилиты печати и многое другое. Проект GNU
развивается под эгидой фонда свободно распространяемого программного обеспечения
– Free Software Foundation (FSF).

4. Linux является свободно распространяемой многозадачной многопользовательской
операционной системой, похожей на Unix. Linux была разработана специально для
платформы ПК (с процессором Intel) и благодаря преимуществам архитектуры
позволяет достичь производительности, сравнимой с мощными рабочими станциями
Unix. Linux также переносилась и на другие платформы, но все эти версии сходны с
версией для ПК.

Давайте рассмотрим операционную систему как единый комплекс. Ниже приведен
список того, что мы получим, установив ее:

Ядро Linux:

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

Ядро Linux поддерживает множество файловых систем, включая FAT, FAT32.
Собственные файловые системы Linux (ext2fs и ext3fs) разработаны для оптимального
использования дискового пространства.

5

Утилиты GNU:

Linux содержит множество утилит GNU, без которых была бы невозможна работа с
операционной системой.

X Window:

Графический интерфейс пользователя представлен в Linux средой X Window.
Различные оконные менеджеры (IceWM, WindowMaker, Fluxbox и прочие) и
графические среды такие как KDE и GNOME, обеспечивают удобный интерфейс и
работу со средствами мультимедиа.

Интерфейсы DOS и Windows:

Поскольку Linux была создана для компьютеров класса ПК, разработчики посчитали
необходимым обеспечить совместимость с программами MS-DOS. В Linux
предлагается эмулятор DOS как часть дистрибутива. Он позволяет исполнять DOSприложения непосредственно из-под Linux. Для запуска программ Microsoft Windows
было разработано несколько средств. Наиболее известное из них – WINE – свободная
реализация Windows API. Wine также входит в большинство дистрибутивов Linux.

Linux позволяет без проблем переносить файлы между файловыми системами DOS и
Windows, напрямую обращаясь к соответствующим разделам на диске, хотя это и
требует некоторой настройки.

Сетевая поддержка:

TCP/IP – основная сетевая система используемая Unix и Linux. TCP/IP – это целый
набор протоколов, разработанных для Internet. Однако для объединения в локальные
сети машин Unix тоже используется TCP/IP. Также Linux поддерживает другие
протоколы, такие как IPX/SPX, AppleTalk и т.д.

5. Встает вопрос – как же узнать тип операционной системы, установленной у вас на
компьютере. Для получения такой информации существует утилита uname (Unix NAME)
.

uname , запущенная без параметров, покажет базовое имя системы:

gserg@ADM:~$ uname 
  Linux

Также она может принимать следующие параметры:

-s – показывает название ядра системы

-r – имя релиза ядра системы

-v – имя версии, а также дату компиляции ядра

-o – операционную систему

6

-p – тип процессора

-m – тип оборудования (i386, i686, Alpha)

-a – всю информацию сразу

Это не все параметры uname. О справке Linux мы поговорим с вами на лекции 5.

Команда free показывает объем памяти и объем ее использования, а также
использование swap :

gserg@ADM:~$ free 
             total       used       free     shared    buffers     cached 
 Mem:       498916     483332      15584          0       4392     112924 
 -/+ buffers/cache:    366016      132900 
 Swap:     1453840     412532      1041308

Обратите внимание, что практически вся свободная память резервируется системой
под дисковые буферы и дисковый кэш, что позволяет Linux более эффективно работать
с дисками.

Состояние системы в данный момент, степень ее загруженности и время без
перезагрузок показывает команда uptime :

gserg@ADM:~$ uptime 
  14:24:08 up 1 day,  6:01,  2 users,  load average: 0.08, 0.19, 0.16

Первым идет текущее время, потом, после слова up – время, прошедшее с момента
включения компьютера, потом показано сколько пользователей зарегистрировано
сейчас в системе (это может быть и несколько регистраций одного и того же
пользователя) и загрузка системы. Загрузка системы показывается в количестве
процессов, одновременно работающих в системе, среднее значение за 1-ну, 5 и 15
минут. Система считается нагруженной, если это значение превышает 1 в расчете на 1
процессор.

Другим средством мониторинга производительности является команда vmstat :

[gserg@admin ~]$ vmstat  
 procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------  
  r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st  
  0  0 268928 776168  15072 203316    1    2    10    14  207  225 13  3 84  0  0

Эта команда выдает за раз достаточно большой объем информации.

Раздел procs :

r — количество ожидающих процессов

b — количество спящих процессов

7

Раздел memory :

swpd — объем используемой виртуальной памяти

free — объем свободной виртуальной памяти

buff — объем памяти, занятой под дисковые буферы

cache - объем памяти, занятой под дисковый кэш

Раздел swap :

si — объем памяти, подкачанной с диска

so — объем памяти, выгруженной на диск

Раздел io :

bi — количество блоков, отправленных на блочное устройство

bo — количество блоков, прочитанных с блочного устройства

Раздел system :

in — количество прерываний в секунду

cs — количество переключений контекста в секунду

Раздел cpu :

us — время выполнения кода уровня пользователя (в процентах от общего времени)

sy — время выполнения кода уровня системы (в процентах от общего времени)

id — время простоя процессора (в процентах от общего времени)

wa — время ожидания ввода/вывода

st — время работы виртуальной машины уровня ядра

vmstat показывает при простом запуске усредненные показатели за все время с
момента запуска системы. Но можно попросить vmstat вывести показатели за
заданное количество времени:

[gserg@admin ~]$ vmstat 1 5 
 procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------  
  r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st  
  1  0 268844 742148  16620 212452    1    2    10    14  216  230 13  3 84  0  0  
  0  0 268844 742140  16628 212436    0    0     0    48 1097  414  6  2 92  0  0  
  0  0 268844 742140  16628 212436    0    0     0     0 1105  392  5  1 94  0  0  

8

0 268844 742172  16628 212436    0    0     0     0 1090  345  4  1 95  0  0  
  0  0 268844 742172  16628 212436    0    0     0     0 1107  403  6  1 93  0  0

В примере выведена информация за каждую секунду на протяжении 5 секунд. Если
второй параметр ( 5 ) не указывать, то vmstat будет выводить информацию каждую
секунду до нажатия Ctrl+C :

[gserg@admin ~]$ vmstat 1  
 procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------  
  r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st  
  0  0 268844 740824  16824 212720    1    2    10    14  217  230 13  3 84  0  0  
  0  0 268844 740856  16824 212720    0    0     0     0 1088  488  8  2 90  0  0  
  0  0 268844 740856  16824 212720    0    0     0     0 1392  873 14  4 82  0  0  
 ^C

Для просмотра размеров файловых систем используется команда df:

[gserg@admin ~]$ df  
 Файловая система     1K-блоков      Исп  Доступно  Исп% смонтирована на  
 /dev/hdb2             36733400  10074596  24762736  29% /  
 /dev/hdb1               101086     16228     79639  17% /boot  
 tmpfs                   647688         0    647688   0% /dev/shm

Без параметров команда выводит данные в виде количества блоков по 1 килобайту. Для
человека это не очень удобная подача информации. У df существует ключ - h (или —

human ), позволяющий увидеть объемы в привычных нам единицах измерения:

[gserg@admin ~]$ df --human  
 Файловая система      Разм  Исп  Дост  Исп% смонтирована на  
 /dev/hdb2              36G  9,7G   24G  29% /  
 /dev/hdb1              99M   16M   78M  17% /boot  
 tmpfs                 633M     0  633M   0% /dev/shm

9

Файловая система Linux

Основные понятия: корневой каталог, точка монтирования, домашний каталог, типы
файлов. Обычные файлы. Каталоги. Файлы устройств. Команды. Навигация по
файловой системе: команды cd, pushd, popd, pwd. Создание, удаление и копирование
файлов. Команды touch, rm, cp. Операции с каталогами. Команды mkdir и rmdir.
Важнейшие каталоги файловой системы Linux.

Ход занятия

1. Файловая система Linux, в отличие от операционных систем семейства Windows не
разделена по томам (дискам, устройствам), а имеет единую древовидную структуру, в
основе которой лежит корневой каталог. Корневой каталог - это уровень файловой
системы, выше которого по дереву каталогов подняться невозможно. В Linux корневой
каталог обозначается как / (именно / - слэш, а не \ - обратный слэш). Система
позволяет устанавливать много корневых каталогов. Так например для некоторого
пользователя ftp /home будет корневым каталогом и при обращении к клиенту ftp на
смену каталога на корневой пользователь будет попадать в /home.

Возникает вопрос, а как тогда разные физические устройства участвуют в
формировании единой файловой системы? Сделаем небольшой экскурс в историю. В
то время, когда создавалась ОС Unix, устройства – накопители информации
представляли собой ящик размером с письменный стол и назывались магнитными
барабанами. В то время не было необходимости подключать и отключать его по
нескольку раз в час. Поэтому не был выработан и механизм быстрой смены. Для
подключения любого устройства к файловой системе используется так называемая
точка монтирования – каталог, все вложенные уровни которого являются файловой
системой на устройстве-носителе. Например, при монтировании дискеты обычно
используется каталог /media/floppy . То есть, все каталоги и файлы, находящиеся
внутри /media/floppy на самом деле содержатся на дискете, вставленной в дисковод
компьютера. Для подключения, или монтирования, устройств используется
специальная команда, которую мы изучим на следующих занятиях. Таким образом
подключаются и сетевые файловые системы, то есть такие системы, которые реально
находятся где-то на сервере в сети, однако различий в работе с ними пользователь не
ощущает и видит сетевые файлы и каталоги, как если бы они были расположены на
локальном компьютере.

Есть у файловой системы Linux и еще одна особенность: пользователям в ней
выделяется домашний каталог – специальный каталог, необходимый для хранения
пользователем своих личных данных. При входе пользователя в систему, он сразу
оказывается в своем домашнем каталоге. Обычно права доступа к домашнему каталогу
с консоли пользователя выставлены таким образом, что доступ к каталогу запрещен
всем кроме владельца и администратора.

2. В файловой системе Линукс различают несколько типов файлов. Понятие “файл”
включает в себя также и интерфейсы работы с периферийными устройствами, и
каналы, позволяющие разным процессам в системе обмениваться данными.

10

Доступ онлайн
1 000 ₽
В корзину