Администрирование ОС Linux
Покупка
Тематика:
UNIX, LINUX
Издательство:
ИНТУИТ
Автор:
Гончарук Сергей Викторович
Год издания: 2016
Кол-во страниц: 124
Дополнительно
Курс рассчитан на получение начальных знаний о системном и сетевом администрировании ОС Linux. Курс дает возможность пользователю получить твёрдые навыки при работе с операционной системой Linux, познакомиться со строением операционных систем семейства Unix, научиться эффективно ее использовать. Основной целью курса является получение обучаемым фундаментальных навыков администрирования Linux.
В процессе обучения вы познакомитесь с файловой системой Linux (основными понятиями, командами навигации и управления файлами, структурой файловой системы); системой распределения прав (учетные записи, группы, права доступа на файлы, в том числе и специальные
права доступа); методам эффективного контроля и управления процессами; методам работы с командными оболочками и основам создания сценариев; планированием заданий и средствами для управления запланированными заданиями; принципам инициализации системы SVR4; познакомитесь с основами стека TCP/IP и базовыми инструментами для работы с сетью в Linux.
Тематика:
ББК:
УДК:
ОКСО:
- ВО - Бакалавриат
- 09.03.01: Информатика и вычислительная техника
- 09.03.02: Информационные системы и технологии
- 09.03.03: Прикладная информатика
- 09.03.04: Программная инженерия
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
Администрирование ОС 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