Файл: Операционная система Linux предназначена для персональных компьютеров и рабочих станций.doc
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 11.01.2024
Просмотров: 104
Скачиваний: 8
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Введение
Операционная система Linux – сетевая операционная система, предназначенная для решения задач вычислительного характера, администрирования серверов, управления специализированными компьютерными системами, управляющими сложным техническим и физическим оборудованием, а также для выполнения задач пользователя.
Операционная система Linux предназначена для персональных компьютеров и рабочих станций. Она представляет собой версию OC UNIX и может обеспечивать работу в многопользовательском и многозадачном режимах, система является стабильной и настраиваемой, имеет высокую скорость и гибкость в работе, полноценный графический интерфейс, не требовательна к потребляемым ресурсам. Большинство дистрибутивов является бесплатным, но защищено лицензией, его исходные коды доступны в Интернете.
OC Linux в последние годы интенсивно развивается, обновляются ядра ОС, совершенствуется командный интерпретатор, разработаны многие приложения для пользователей. OC Linux представляет собой версию OC UNIX, предназначенную для персональных компьютеров и имеет с ней много общего.
OC Linux в большинстве дистрибутивов имеет модульное построение, высокую гибкость и стабильность в работе, полноценный графический интерфейс, обладает развитыми сетевыми средствами, предназначенными для работы в сетях, использует все известные стандартизированные протоколы передачи данных. OC Linux является операционной средой и может настраиваться под конкретный класс задач, существуют дистрибутивы, компилируемые под конкретное аппаратное обеспечение, что оптимизирует работу операционной системы.
Первая версия OC Linux разработана в начале 90-х годах и предназначалась для персональных компьютеров, которые в это время стремительно развивались. Программное обеспечение (ПО) первоначально разрабатывалось для проведения сложных математических расчетов в сфере научных исследований.
OC Linux имеет большое количество различных дистрибутивов, основные из которых: Red Hat компании RedHat и ее следующая версия Fedora Core; Mandrake ‑ версия, по основным функциям похожая на Red Hat, постоянно обновляющаяся, имеющая удобную инсталляцию и настройки графической среды; версия Debian, являющаяся некоммерческой разработкой и ее последовательница Ubuntu, очень быстро завоевавшая известность. В настоящее время перечисленные версии в основном русифицированы, и некоторые пользователи в нашей стране знают их под другими именами.
OC Linux работает как в графическом так и в текстовом режимах. Основные команды выполняются в любом из этих режимов. Графическому режиму соответствует графический интерфейс, текстовому режиму ‑ режим интерфейса командной строки, которую обрабатывает командный интерпретатор (КИ). В OC Linux представлен полный набор КИ, входящих также в ОС UNIX: TCSH, Z-shell, PDKSH. Наиболее распространённый из них ‑ BASH. Режим командной строки используется в основном для выполнения программ расчетов, системного администрирования, управления работой серверов. В нем удобно создавать программы-сценарии для выполнения последовательности действий, групповых выборок, сложных сортировок, сложных команд сетевого администрирования. Широко используются средства разработки в среде Linux. Они имеют качественные компиляторы, большие наборы подключаемых библиотек, удобные утилиты.
OC Linux - профессиональная операционная система, она удобна для широкого класса пользователей, может настраиваться под конкретный класс задач.
Для графических столов в настоящее время существует много приложений. Разработаны офисные программы, растровые и векторные редакторы, браузеры, почтовые программы, которые могут быть различными для разных графических столов.
Изучение OC Linux стало актуальным для широкого класса разработчиков, программистов и пользователей компьютеров в различных сферах деятельности.
Лабораторная работа №1
Ознакомление с рабочим столом ОС Linux
и командным интерпретатором BASH
Цель работы: изучение графического стола Red Hat, приемов работы в командном интерпретаторе и основных команд командного интерпретатора BASH, используемого в ОС Linux и ОС UNIX.
Продолжительность работы: - 4 ч.
Теоретические сведения
Операционная система Linux
OC Linux, как и OC UNIX имеет базовую структуру системы: ядро, системная среда, файловая система.
Ядро- основные программы управления аппаратными средствами и программы, обеспечивающие взаимодействие с прикладным программным обеспечением. Файловая система предназначена для работы с файлами (создание, хранение, копирование, перемещение, удаление, добавление). Она имеет иерархическую структуру и устроена таким образом, что можно работать с файлами большого размера и с большими дисками, при этом скорость обращения к файлам и каталогам высокая, действия выполняются с большой степенью надежности.
Системная среда обслуживает функционирование интерфейса пользователя. Она принимает от пользователя команды и посылает их в ядро ОС для исполнения. Системную среду можно назвать интерпретатором, так как она преобразует команды пользователя и направляет их в ядро. В OC разработано несколько видов системной среды. Это рабочие столы, менеджеры окон, интерпретаторы командной строки, каждый из которых является отдельным модулем ОС Linux. Пользовательский интерфейс настраивается под конкретные нужды определенного пользователя и для каждого пользователя может быть свой.
Командный интерпретатор (КИ) имеет командную строку, в которую вводятся команды пользователя. После ввода каждой команды пользователь нажимает клавишу [Enter], после чего команда выполняется. В ОС Unix и ОС Linux может использоваться несколько командных интерпретаторов и их различных версий, устанавливаемых на выбор пользователя. Наиболее известными из них являются: Bourne Again shell, TCSH-shell, Public Domain Korn shell (PDKSH), C, Z-shell. Самый распространенный из них BASH shall, представляющий усовершенствованную версию командного интерпретатора Bourne. Его полное название Bourne Again shell. Для версий ОС Unix BSD первоначально была разработана расширенная версия интерпретатора С, названная TCSH-shell, которая позднее стала использоваться в ОС Linux. По умолчанию в ОС Linux применяется интерпретатор Bourne Again shell, сокращенно BASH, но можно использовать по умолчанию и любой другой КИ, имеющийся в системе. В ОС UNIX более предпочтительными являются другие командные интерпретаторы, например, Z - расширенная версия интерпретатора Korn. Командный интерпретатор обеспечен текстовым режимом работы ОС и потребляет незначительные ресурсы оперативной памяти. В процессе работы в одном рабочем окне, называемом окном терминала, можно применять один командный интерпретатор.
Менеджеры окон - это усечённая версия рабочего стола, поддерживающая операции с окнами, управляющая видом самого окна, его рамок, меню. Менеджер окон состоит из трех частей: системы Х Windows, обеспечивающей открытие окон и вывод изображения на экран; менеджера файлов, выполняющего действия с файлами, использующего пиктограммы и меню
; менеджера программ - запускающего программы на выполнение, располагающего их на панели задач.
Рабочие столы. В отличие от текстового режима работы КИ можно использовать графический режим, который обеспечивается оконным интерфейсом и представлен рабочим столом с его атрибутами. Рабочий стол дает полноценный графический интерфейс пользователя, он похож на графический интерфейс ОС Windows или ОS/2. Как и другие рабочие столы, рабочие столы ОС Linux и ОС Unix имеют аналогичные основные объекты: собственно рабочий стол, на нем располагаются окна, пиктограммы, меню, панель задач, среди пиктограмм есть Home (или Home directory) и Trash аналогично «Мой компьютер» в ОС Windows и «Корзина». Управлять этими объектами можно также с помощью мыши или клавиатуры.
Рабочий стол представлен четырьмя виртуальными рабочими столами, установленными по умолчанию, но настроить ОС можно и на большее количество, равное двум в натуральной степени. На каждом рабочем столе могут быть расположены свои пиктограммы, обычно всегда присутствуют Home directory и Trash. Наиболее распространенными для различных дистрибутивов и версий ОС Linux являются рабочие столы GNOME и KDE (рис.1).
По нажатию левой кнопки мыши объекты рабочего стола выделяются, двойному нажатию запускаются на выполнение, по нажатию правой открывается дополнительное меню, в нем можно установить свойства объекта. Предусмотрены настройки рабочих столов, дающие возможность выделить объект подведением курсора, а запустить задание на выполнение одиночным нажатием левой кнопки мыши.
Панелей задач может быть несколько, размещаются произвольно на рабочем столе согласно вкусам пользователя. Рекомендуется использование двух или нескольких панелей в случаях, когда приложения разбиваются на группы по смысловому содержанию.
Рис.1. Графический стол Red Hat и окно командного интерпретатора
Рабочие столы Gnome и KDE
Состав рабочих столов Gnome (GNU Network Object Model Invironment) и KDE (K Desktop) следующий: интерфейс состоит из панели задач, собственно рабочего стола и расположенных на нем пикторамм. Панель - длинная полоса внизу экрана, которая, однако, может находиться в любом удобном месте рабочего стола. На ней размещаются меню, программы и апплеты - небольшие программы, в основном стандартные и служебные, предназначенные для запуска с панели.
На рабочем столе располагаются пиктораммы начального каталога, Web-браузера, корзины, а также прикладных программ и файлов на усмотрение пользователя. В верхнем левом углу на рабочем столе находится пиктограмма начального каталога, называемая Home Directory. При щелчке левой кнопкой мыши по этой пиктограмме откроется окно менеджера файлов. В левой его части расположено дерево каталогов, в правой - содержимое выбранного подкаталога. При входе открывается личный каталог пользователя в соответствии с его регистрационным именем.
Рабочие столы поддерживают функции перемещения. Если перемещать файл или другой объект и нажимать на среднюю кнопку мыши или, если ее нет, на левую и правую кнопки одновременно, то на рабочем столе будет создаваться ссылка на первоначальный объект. Окна содержат кнопки увеличения/уменьшения, закрытия, свертывания на панель задач, иногда кнопку «закрепить», позволяющую закрепить окно в определённом месте экрана. Чтобы переместить окно, нужно щелкнуть мышью на строке заголовка и, не отпуская кнопки мыши, переместить окно в новую позицию. Двойной щелчок в строке заголовка уменьшает окно до размера строки заголовка, следующий двойной щелчок восстанавливает окно.
Рабочие столы можно настраивать и оформлять в соответствии с выбранной темой. Размер рабочего стола превышает размер экрана монитора, в ОС Linux создаются виртуальные рабочие столы, на которые можно переключаться посредством специальной пиктограммы на панели задач. Рабочий стол может состоять из нескольких виртуальных столов, на которых можно расположить группы пиктограмм по темам.
Рабочий стол Gnome является мощной и простой в использовании системной средой. Это основной графический интерфейс, поддерживаемый дистрибутивом Red Hat, но он также входит в большинство других распространенных дистрибутивов.
Основные компоненты рабочего стола Gnome: функциональные средства, представленные пиктограммами, панель запуска программ, средства настроек. Обычно на рабочем столе присутствуют приложения, совместимые с Gnome: менеджер файлов Nautilus, Web-браузер Mozilla, менеджер окон, использующий базовуюсистему X Window. Слева на панели задач имеется кнопка с изображением ступни гнома, открывающая главное меню рабочего стола Gnome со списком задач, которые можно запустить, что реализовано подобно кнопке Пуск в ОС Windows. На панели можно установить ее автоматическое свертывание и развертывание. Возможно использование нескольких панелей на рабочем столе. Количество виртуальных рабочих столов по умолчанию устанавливается равным четырем. Пользователь на свое усмотрение может поместить на эти столы пиктограммы наиболее часто используемых приложений, файлов и каталогов.
Если войти в основное меню на панели задач, изображаемое ступней гнома или красной шляпой, выбрать строку Programs, в следующем открывшемся меню - Office, далее - Офисные программы, то в этом меню можно найти текстовый редактор, который по функциям аналогичен программе Word под Windows, табличный редактор и программу презентаций. Наибольшее распространение получил набор офисных программ, называемый OpenOffice.org, являющийся бесплатным и доступным для копирования из Интернета.
Рабочий стол KDE является универсальным рабочим столом и содержит менеджер окон, менеджер файлов, корзину, набор приложений. Рабочий стол KDE хорошо приспособлен для работы в Internet и имеет полный набор встроенных сетевых приложений: почтовую программу, программу чтения новостей, Web-браузер. Менеджер файлов устроен таким образом, что является клиентом FTP и Web, это дает возможность заходить на узлы Internet с рабочего стола.
Интерфейс KDE схож с интерфейсом GNOME, но для выделения объекта нужно нажать на левую кнопку мыши одновременно с нажатием на клавишу Ctrl. А для запуска программы на выполнение нужно один раз нажать на левую кнопку мыши на требуемом файле, что соответствует в ОС Windows двойному нажатию левой кнопки мыши. Рабочий стол может состоять из 4 - 16 частей, на каждую из которых можно переключаться на специальной пиктограмме, расположенной на панели задач.
Файловая структура ОС Linux
Файловая структура ОС Linux – иерархическая структура каталогов, в которой размещена информация о файлах всей операционной системы. Дерево каталогов ОС Linux имеет один общийкорневой каталог для всей системы, обозначаемый знаком "слеш" (/) и включающий основные системные каталоги bin, boot, dev, etc, lib, lost+found, mnt, proc, sbin, pub, opt, tmp, var, usr. В версиях ядра ОС Linux могут быть небольшие различия в составе входящих каталогов.
Kаталог bin содержит пользовательские команды и утилиты (примеры: cat, ls ,fgrep, mkdir, zcat); dev используется для специальных файлов, представляющих устройства; etc служит для хранения команд администратора системы; lib включает важные совместно используемые библиотеки и модули ядра; lost+found необходим дя быстрого восстановления системы после сбоев; media – для монтирования компакт-дисков и flash-накопителей; mnt - содержит каталоги для монтирования новых файловых систем и временных накопителей; proc - каталог процессов; opt - дополнительные приложения (например, GNOME, если установлено KDE); sbin содержит системные команды, включая команды привилегированного пользователя; tmp используется для хранения временных файлов; usr включает исходные коды, файлы и команды системы, документацию, содержащую пользовательскую информацию, новые программы, устанавливаемые по умолчанию; var - каталог, предназначенный для быстро изменяющихся файлов, в частности, файлов почтовых ящиков, системных журналов, протоколов приложений, очереей печати.
В свою очередь эти каталоги могут содержать каталоги следующего уровня. Каталог usr включает подкаталоги: bin -хранение дополнительных команд; games - игры; include - хранение фрагментов системных программ; lib - хранение дополнительных библиотек.
Полные имена файлов, как и в других ОС включают имена каталогов на пути к ним: /usr/bin, /usr/games, /usr/include, /usr/lib. Формальным признаком полного имени в ОС Linux и Unix является то, что оно начинается со знака "слэш", обозначаемого знаком (/).
В качестве имени файла, как правило, может использоваться любая последовательность из букв, цифр и знаков подчеркиваний длиной до 255 символов. Могут применяться и другие символы, однако использование этих символов в имени требует специального экранирования. Старые файловые системы поддерживают длину имени файла четырнадцать символов (этого ограничения желательно придерживаться для переносимости файлов), однако в большинстве систем допускаются более длинные имена - до 256 символов. В общем случае расширения в именах файлов не являются обязательными. В ОС UNIX и ОС Linux прописные и строчные буквы воспринимаются как различные, например, Ivan, IVAN и ivan - это три различных имени.
ОС UNIX и ОС Linux работают с файловой системой, а не с устройствами хранения информации, как это реализовано в ОС Widows и многих других ОС. Прежде чем считать информацию с внешнего устройства, его нужно смонтировать специальной командой mount, после чего подсоединенные файлы и каталоги становятся элементами файловой системы, и пользователь может обращаться к любым доступным файлам и каталогам, при этом в имени никак не отражается устройство, на котором файл (каталог) находится или создается.
Отдельные части файловой системы могут находиться на различных физических устройствах, например, на нескольких жестких и гибких дисках (или в различных частях одного диска). Соответствующие фрагменты (поддеревья файловой системы) монтируются в единую файловую систему также командой mount.
В ОС UNIX и ОС Linux имеется примерно 200 базовых команд - инструментальных средств, позволяющих пользователю решать многие проблемы, не прибегая к программированию на языках типа Си или использованию специальных пакетов.
Основные типы файловых систем, поддерживаемые ОС Linux: ext2, ext3, swap, ReiserFS, JFS.
Командный интерпретатор
Командные интерпретаторы используют интерфейс командной строки. В начале строки появляется приглашение к работе, после которого можно вводить команду (рис.1).
Большинство команд OC UNIX и OC Linux, выполняемых в командном интерпретаторе, можно выполнить из специальных утилит графического интерфейса, но не все, некоторые гораздо быстрее выполнить из КИ с заданием опций и параметров.
Структура команды командного интерпретатора следующая:
$ имя_команды опции параметры
Появление приглашения к работе со знаком $ в конце приглашенияили знаком # зависит от того, с какими правами доступа зарегистрирован работающий в системе. Знак $ является приглашением к работе для пользователя, # - приглашение для системного администратора. Опция - однобуквенный код, перед которым стоит дефис, уточняет действия команды. После дефиса может быть указано несколько опций. Все последующие указываются без пробелов. Дефис обозначает, что после него и до знака пробела указаны опции. Для каждой конкретной команды опции и параметры могут быть обязательными или нет. Параметр - дополнительные данные для выполнения команды, часто это имя файла или каталога. Указанный порядок расположения компонентов структуры команды КИ обязателен для любых командных интерпретаторов.
Пример 1. Команда ls выводит на экран протокол, состоящий из файлов текущего каталога. Опция l команды ls дает подробную информацию о файле. Чтобы вывести на экран подробную информацию обо всех файлах текущего каталога, следует набрать в командной строке:
$ ls -l
На экране появится протокол, фрагмент которого приведен ниже:
drwxrwxr-x 2 root 2048 nov 3 12: 11 bin
drwxrwxr-x 2 root 1024 jan 9 11:55 dev
drw-r--r-- 3 root 4096 nov 17 12: 01 include
drwxr-xr-x 7 root 480 nov 17 12:30 lib
Пример 2. Вывести подробную информацию об одном файле, например, о файле file1, находящемся в текущем каталоге:
$ ls -l file1
На экране появится протокол, состоящий из одной строки из одной строки, с подробной информацией о свойствах файла:
drwxrwxr-x 2 ivan 8192 jan 9 11:55 file1
Пример 3. Вывести подробную информацию о файлах каталога usr, пользователь при этом находится в корневом каталоге (рис.2):
$ ls -l /usr
Рис.2. Просмотр содержимого текущего каталога usr командой ls с опцией l
Права доступа к файлам и каталогам
Каждому файлу или каталогу соответствует строка информации при выводе команды ls –l, как показано в примерах 1 и 2. Первый символ строки означает тип файла (d - каталог, знак "дефис"(-) - обычный файл). В каждой строке символы со второго по десятый описывают права доступа к файлам и каталогам, опеделенные для трех категорий пользователей: владельцев, членов группы, прочих пользователей. Каждая категория пользователей может иметь право на чтение, запись, выполнение файлов. В примере 2 дан потокол, в котором первая триада - права владельца, которая разрешает: r - чтение каталога, w - запись в него и х - выполнение, для файлов типа d (каталогов) w означает разрешение создавать в каталоге файлы и удалять их из него; вторая триада - rwx , предназначена членам группы, в которую входит владелец файла, для нее разрешены все три операции. Последняя триада r-x отражает права доступа прочих пользователей, которым разрешено только читать и выполнять файл, запрещено записывать в файл. Далее следует цифра 2, указывающая число cссылок на файл, что означает наличие в системе еще одного имени-ссылки, связанного с этим файлом; ivan - имя владельца, 8192 - число символов в файле, дата и время создания или последней модификации файла (9 января в 11 часов 55 минут); file1 - имя файла.
Команды командного интерпретатора BASH
и специальные символы
Язык команд КИ ОС UNIX и ОС Linux часто называют shell, что в переводе с английского означает "скорлупа". Ниже приведены часто используемые команды.
Справочник команд терминала man и общие команды. Команда man является справочником и содержит описание команд с их опциями и параметрами, так же приведены примеры использования команд. Если набрать в командной строке командного интерпретатора:
$ man
то откроется весь справочник, повключающий команды интерпретатора.
Если указать имя команды, то можно получить справочную информацию об указанной команде:
$ man <имя команды>
Например, информацию о командном интерпретаторе BASH можно посмотреть следующим образом: $ man bash Информацию о команде даты и времени можно посмотреть так: $ man date Информацию о дате и времени можно посмотреть так: $ date Результатом будет строка с указанием дня недели, месяца, года, даты и времени.
При задании команды в КИ можно указывать одну опцию или несколько. Например, чтобы показать подробную информацию обо всех файлах текущего каталога, включая скрытые файлы (опция а), в командной строке вводится: $ ls -alF
Прописные и строчные буквы различаются и при указании опций. Таким образом, F и f являются разными опциями. Если опций несколько, то они пишутся подряд без пробелов, начиная со знака "дефис". Выполнение команды начинается после нажатия на клавишу [Enter]. Если команда запущена на выполнение ошибочно, отменить ее действие можно, используя нажатие клавиши [Ctrl+c] или [Del]. Если команда с ее опциями и параметрами оказалась длиннее строки, то для продолжения команды в следующей строке нужно ввести символ "обратный слеш" (\), потом [Enter], далее продолжать набор команды в следующей строке. Вместо символа "обратный слеш" может использоваться другой символ, если его задать в переменной командного интерпретатора, что описано ниже.
Команда history. Командная строка представляет собой текстовый буфер ввода с возможностью редактирования. Если набрать команду с необходимыми опциями и параметрами до нажатия клавиши [Enter], текст можно отредактировать. Используя клавиши [Backspace] или [Del] можно удалить ненужные символы, а, включив режим вставки (клавиша [Insert]), можно вставить нужные символы, набрав их на клавиатуре. Перемещаться по тексту можно, используя клавиши стрелок влево и вправо (назад и вперед соответственно).
Существует архив команд текущего сеанса работы, находящийся в файле history_list, благодаря которому можно повторять предыдущие команды. Используя клавишу , следует найти нужную команду из ранее выполненных в данном сеансе командного интерпретатора, отредактировать ее, если нужно, и, нажав клавишу [Enter], выполнить.
Нажимая несколько раз клавишу , находим нужную команду. Если нужно вернуться по этому списку команд, нажимать клавишу.
Список последних выполненных команд с их номерами можно просмотреть так же, воспользовавшись командой-утилитой:
$ history
Выполнить команду из списка историй можно так: $ !№
где № - номер команды, полученный из списка history_list. Если № не указан, то имеется в виду последняя выполненная команда. Вместо № можно набрать несколько первых символов команды из списка команд, однозначно ее идентифицирующую. Попробуйте повторить одну из ранее выполненных команд, обратившись к ней по номеру из списка событий.
Снятие блокировки (!). Эта команда используется, чтобы разрешить запись в уже существующий файл. Обычно по умолчанию установлена проверка на наличие существующих файлов и выдача на экран предупреждающего сообщения, но иногда файлы нужно перезаписывать в уже существующие. Тогда используется снятие блокировки. Например, файл f10 предположительно уже существует, но в него нужно записать содержиое файла file10, тогда удобна следующая запись:
$ cat file10 >! f10
Удобство более ощутимо, когда перезаписывается много файлов, поскольку просматривать, есть ли предыдущие версии, и потом удалять их дольше, чем поставить знак ! в вышеуказанной команде.
Путевое имя ‑ это полное имя файла с учетом каталогов, начиная с домашней директории пользователя, включает последовательно имена всех каталогов, ведущих к текущему. Иначе имя называется относительным. При входе в систему пользователь оказывается в определенной заранее вершине дерева файловой системы. Обычно это /home или /home/имя_пользователя, иногда используется каталог /usr. Путевое имя для суперпользователя root - путь от корневого каталога в текущий каталог. Команда pwd сообщает местоположение пользователя в файловой системе. С ее помощью выводится полное имя текущего каталога.
$ pwd
Команды создания и удаления каталогов. Команда предназначена для создания каталогов в любой вершине файловой структуры при наличии прав доступа и имеет следующий синтаксис:
$ mkdir <имена создаваемых каталогов>
Например, для создания в текущем каталоге двух новых каталогов с относительными именами k1 и k2, нужно выполнить команду:
$ mkdir k1 k2
Для удаления пустых (не содержащих файлов и каталогов) каталогов используется команда rmdir, имеющая структуру:
$ rmdir <имена удаляемых каталогов>
Удалить обычный файл можно командой:
$ rm <имена удаляемых файлов>
Чтобы просмотреть содержимое рабочего (текущего) каталога со всеми его подкаталогами (рис.3): $ ls –R
Рис.3. Просмотр содержимого текущего каталога. Рабочий стол GNOME
Выводится писок файлов и подкаталогов в текущем каталоге с указанием имен подкаталогов, после их имени ставится знак "слеш" (/).
Перемещение по каталогам. Чтобы перейти в другой каталог, используется команда сd:
$ cd <каталог>
Этот символ можно также использовать при копировании или перемещении, указав каталог на один уровень выше, чем текущий.
Пример 1. Находясь в корневом каталоге, можно перейти в каталог /usr/lib, набрав команду:
$ cd /usr/lib
Указано полное имя каталога /usr/lib. Если пользователь находится в каталоге usr, то указывается относительное имя: $ cd lib
Пример 2. Команда cd без параметров осуществит переход в начальный каталог пользователя, т.е. в каталог, в котором пользователь оказывается при входе в систему: $ cd
Копирование файлов и каталогов выполняется командой cp, причем последнее указанное в строке КИ имя считается именем каталога, в который нужно скопировать файлы. Общая структура команды:
$ cp <полное_имя_файла/имя_каталога,_которые_копируются> <полное_имя_файла/имя_каталога,_куда_копируется>
Команда cp имеет следующие основные опции:
-r - используется при копировании подкаталога из одного каталога в другой. Копирование выполняется со всеми подкаталогами, входящими в копируемый подкаталог.
-i - проверка, существует ли уже файл (каталог) с таким именем, в месте, указанном для копирования.
Полное имя можно не указывать, если действия выполняются в текущем каталоге, что в общем виде представлено структурой:
$ cp <имя_файла> имя_каталога/новое_имя_файла>
Пример 3. Копирование файла file1 из каталога dx в каталог user в файл file2, каталоги dx и user лежат в текущем каталоге:
$ cp dx/file1 user/file2 ,
Пример 4. $ cp file1_katal/file11
Здесь katal - каталог, находящийся в текущем каталоге. Можно использовать и такую форму записи, но тогда имя нового файла в каталоге katal будет как и исходное, file1:
$ cp file1 katal
Пример 5. Можно копировать несколько файлов в каталог:
$ cp <имена_файлов> <имя_каталога>,
$ cp file1 file2 katal
Чтобы скопировать все файлы текущего каталога в указанный каталог katal2 (сохранив также старые файлы) для указания нескольких символов используется знак “*”, следует выполнить:
$ cp *.* katal2
Пример 6. Чтобы скопировать все файлы с заданным расширением:
$ cp *.cpp katal3
Перемещение файлов и каталогов выполняется командой mv. Синтаксис команды аналогичен синтаксису команды cp. Общая структура команды:
$ mv <имя_файла/каталога> <имя_файла/каталога>
Пример 7. Чтобы файлу file1 присвоить имя file5, следует выполнить команду:
$ mv file1 file5
Опции -r- и -i команды mv имеют назначение, как и в команде cp.
Знак "тильда". При выполнении команд, использующих файлы и каталоги, иногда требуется указывать полный путь к файлу или каталогу. Для сокращенной записи используется знак "тильда" (
).
Пример 8. Использование знака "тильда".
$ cp file1
/katal1
$ mv file1
/katal1
Рабочие столы Gnome и KDE
Состав рабочих столов Gnome (GNU Network Object Model Invironment) и KDE (K Desktop) следующий: интерфейс состоит из панели задач, собственно рабочего стола и расположенных на нем пикторамм. Панель - длинная полоса внизу экрана, которая, однако, может находиться в любом удобном месте рабочего стола. На ней размещаются меню, программы и апплеты - небольшие программы, в основном стандартные и служебные, предназначенные для запуска с панели.
На рабочем столе располагаются пиктораммы начального каталога, Web-браузера, корзины, а также прикладных программ и файлов на усмотрение пользователя. В верхнем левом углу на рабочем столе находится пиктограмма начального каталога, называемая Home Directory. При щелчке левой кнопкой мыши по этой пиктограмме откроется окно менеджера файлов. В левой его части расположено дерево каталогов, в правой - содержимое выбранного подкаталога. При входе открывается личный каталог пользователя в соответствии с его регистрационным именем.
Рабочие столы поддерживают функции перемещения. Если перемещать файл или другой объект и нажимать на среднюю кнопку мыши или, если ее нет, на левую и правую кнопки одновременно, то на рабочем столе будет создаваться ссылка на первоначальный объект. Окна содержат кнопки увеличения/уменьшения, закрытия, свертывания на панель задач, иногда кнопку «закрепить», позволяющую закрепить окно в определённом месте экрана. Чтобы переместить окно, нужно щелкнуть мышью на строке заголовка и, не отпуская кнопки мыши, переместить окно в новую позицию. Двойной щелчок в строке заголовка уменьшает окно до размера строки заголовка, следующий двойной щелчок восстанавливает окно.
Рабочие столы можно настраивать и оформлять в соответствии с выбранной темой. Размер рабочего стола превышает размер экрана монитора, в ОС Linux создаются виртуальные рабочие столы, на которые можно переключаться посредством специальной пиктограммы на панели задач. Рабочий стол может состоять из нескольких виртуальных столов, на которых можно расположить группы пиктограмм по темам.
Рабочий стол Gnome является мощной и простой в использовании системной средой. Это основной графический интерфейс, поддерживаемый дистрибутивом Red Hat, но он также входит в большинство других распространенных дистрибутивов.
Основные компоненты рабочего стола Gnome: функциональные средства, представленные пиктограммами, панель запуска программ, средства настроек. Обычно на рабочем столе присутствуют приложения, совместимые с Gnome: менеджер файлов Nautilus, Web-браузер Mozilla, менеджер окон, использующий базовуюсистему X Window. Слева на панели задач имеется кнопка с изображением ступни гнома, открывающая главное меню рабочего стола Gnome со списком задач, которые можно запустить, что реализовано подобно кнопке Пуск в ОС Windows. На панели можно установить ее автоматическое свертывание и развертывание. Возможно использование нескольких панелей на рабочем столе. Количество виртуальных рабочих столов по умолчанию устанавливается равным четырем. Пользователь на свое усмотрение может поместить на эти столы пиктограммы наиболее часто используемых приложений, файлов и каталогов.
Если войти в основное меню на панели задач, изображаемое ступней гнома или красной шляпой, выбрать строку Programs, в следующем открывшемся меню - Office, далее - Офисные программы, то в этом меню можно найти текстовый редактор, который по функциям аналогичен программе Word под Windows, табличный редактор и программу презентаций. Наибольшее распространение получил набор офисных программ, называемый OpenOffice.org, являющийся бесплатным и доступным для копирования из Интернета.
Рабочий стол KDE является универсальным рабочим столом и содержит менеджер окон, менеджер файлов, корзину, набор приложений. Рабочий стол KDE хорошо приспособлен для работы в Internet и имеет полный набор встроенных сетевых приложений: почтовую программу, программу чтения новостей, Web-браузер. Менеджер файлов устроен таким образом, что является клиентом FTP и Web, это дает возможность заходить на узлы Internet с рабочего стола.
Интерфейс KDE схож с интерфейсом GNOME, но для выделения объекта нужно нажать на левую кнопку мыши одновременно с нажатием на клавишу Ctrl. А для запуска программы на выполнение нужно один раз нажать на левую кнопку мыши на требуемом файле, что соответствует в ОС Windows двойному нажатию левой кнопки мыши. Рабочий стол может состоять из 4 - 16 частей, на каждую из которых можно переключаться на специальной пиктограмме, расположенной на панели задач.
Файловая структура ОС Linux
Файловая структура ОС Linux – иерархическая структура каталогов, в которой размещена информация о файлах всей операционной системы. Дерево каталогов ОС Linux имеет один общийкорневой каталог для всей системы, обозначаемый знаком "слеш" (/) и включающий основные системные каталоги bin, boot, dev, etc, lib, lost+found, mnt, proc, sbin, pub, opt, tmp, var, usr. В версиях ядра ОС Linux могут быть небольшие различия в составе входящих каталогов.
Kаталог bin содержит пользовательские команды и утилиты (примеры: cat, ls ,fgrep, mkdir, zcat); dev используется для специальных файлов, представляющих устройства; etc служит для хранения команд администратора системы; lib включает важные совместно используемые библиотеки и модули ядра; lost+found необходим дя быстрого восстановления системы после сбоев; media – для монтирования компакт-дисков и flash-накопителей; mnt - содержит каталоги для монтирования новых файловых систем и временных накопителей; proc - каталог процессов; opt - дополнительные приложения (например, GNOME, если установлено KDE); sbin содержит системные команды, включая команды привилегированного пользователя; tmp используется для хранения временных файлов; usr включает исходные коды, файлы и команды системы, документацию, содержащую пользовательскую информацию, новые программы, устанавливаемые по умолчанию; var - каталог, предназначенный для быстро изменяющихся файлов, в частности, файлов почтовых ящиков, системных журналов, протоколов приложений, очереей печати.
В свою очередь эти каталоги могут содержать каталоги следующего уровня. Каталог usr включает подкаталоги: bin -хранение дополнительных команд; games - игры; include - хранение фрагментов системных программ; lib - хранение дополнительных библиотек.
Полные имена файлов, как и в других ОС включают имена каталогов на пути к ним: /usr/bin, /usr/games, /usr/include, /usr/lib. Формальным признаком полного имени в ОС Linux и Unix является то, что оно начинается со знака "слэш", обозначаемого знаком (/).
В качестве имени файла, как правило, может использоваться любая последовательность из букв, цифр и знаков подчеркиваний длиной до 255 символов. Могут применяться и другие символы, однако использование этих символов в имени требует специального экранирования. Старые файловые системы поддерживают длину имени файла четырнадцать символов (этого ограничения желательно придерживаться для переносимости файлов), однако в большинстве систем допускаются более длинные имена - до 256 символов. В общем случае расширения в именах файлов не являются обязательными. В ОС UNIX и ОС Linux прописные и строчные буквы воспринимаются как различные, например, Ivan, IVAN и ivan - это три различных имени.
ОС UNIX и ОС Linux работают с файловой системой, а не с устройствами хранения информации, как это реализовано в ОС Widows и многих других ОС. Прежде чем считать информацию с внешнего устройства, его нужно смонтировать специальной командой mount, после чего подсоединенные файлы и каталоги становятся элементами файловой системы, и пользователь может обращаться к любым доступным файлам и каталогам, при этом в имени никак не отражается устройство, на котором файл (каталог) находится или создается.
Отдельные части файловой системы могут находиться на различных физических устройствах, например, на нескольких жестких и гибких дисках (или в различных частях одного диска). Соответствующие фрагменты (поддеревья файловой системы) монтируются в единую файловую систему также командой mount.
В ОС UNIX и ОС Linux имеется примерно 200 базовых команд - инструментальных средств, позволяющих пользователю решать многие проблемы, не прибегая к программированию на языках типа Си или использованию специальных пакетов.
Основные типы файловых систем, поддерживаемые ОС Linux: ext2, ext3, swap, ReiserFS, JFS.
Командный интерпретатор
Командные интерпретаторы используют интерфейс командной строки. В начале строки появляется приглашение к работе, после которого можно вводить команду (рис.1).
Большинство команд OC UNIX и OC Linux, выполняемых в командном интерпретаторе, можно выполнить из специальных утилит графического интерфейса, но не все, некоторые гораздо быстрее выполнить из КИ с заданием опций и параметров.
Структура команды командного интерпретатора следующая:
$ имя_команды опции параметры
Появление приглашения к работе со знаком $ в конце приглашенияили знаком # зависит от того, с какими правами доступа зарегистрирован работающий в системе. Знак $ является приглашением к работе для пользователя, # - приглашение для системного администратора. Опция - однобуквенный код, перед которым стоит дефис, уточняет действия команды. После дефиса может быть указано несколько опций. Все последующие указываются без пробелов. Дефис обозначает, что после него и до знака пробела указаны опции. Для каждой конкретной команды опции и параметры могут быть обязательными или нет. Параметр - дополнительные данные для выполнения команды, часто это имя файла или каталога. Указанный порядок расположения компонентов структуры команды КИ обязателен для любых командных интерпретаторов.
Пример 1. Команда ls выводит на экран протокол, состоящий из файлов текущего каталога. Опция l команды ls дает подробную информацию о файле. Чтобы вывести на экран подробную информацию обо всех файлах текущего каталога, следует набрать в командной строке:
$ ls -l
На экране появится протокол, фрагмент которого приведен ниже:
drwxrwxr-x 2 root 2048 nov 3 12: 11 bin
drwxrwxr-x 2 root 1024 jan 9 11:55 dev
drw-r--r-- 3 root 4096 nov 17 12: 01 include
drwxr-xr-x 7 root 480 nov 17 12:30 lib
Пример 2. Вывести подробную информацию об одном файле, например, о файле file1, находящемся в текущем каталоге:
$ ls -l file1
На экране появится протокол, состоящий из одной строки из одной строки, с подробной информацией о свойствах файла:
drwxrwxr-x 2 ivan 8192 jan 9 11:55 file1
Пример 3. Вывести подробную информацию о файлах каталога usr, пользователь при этом находится в корневом каталоге (рис.2):
$ ls -l /usr
Рис.2. Просмотр содержимого текущего каталога usr командой ls с опцией l
Права доступа к файлам и каталогам
Каждому файлу или каталогу соответствует строка информации при выводе команды ls –l, как показано в примерах 1 и 2. Первый символ строки означает тип файла (d - каталог, знак "дефис"(-) - обычный файл). В каждой строке символы со второго по десятый описывают права доступа к файлам и каталогам, опеделенные для трех категорий пользователей: владельцев, членов группы, прочих пользователей. Каждая категория пользователей может иметь право на чтение, запись, выполнение файлов. В примере 2 дан потокол, в котором первая триада - права владельца, которая разрешает: r - чтение каталога, w - запись в него и х - выполнение, для файлов типа d (каталогов) w означает разрешение создавать в каталоге файлы и удалять их из него; вторая триада - rwx , предназначена членам группы, в которую входит владелец файла, для нее разрешены все три операции. Последняя триада r-x отражает права доступа прочих пользователей, которым разрешено только читать и выполнять файл, запрещено записывать в файл. Далее следует цифра 2, указывающая число cссылок на файл, что означает наличие в системе еще одного имени-ссылки, связанного с этим файлом; ivan - имя владельца, 8192 - число символов в файле, дата и время создания или последней модификации файла (9 января в 11 часов 55 минут); file1 - имя файла.
Команды командного интерпретатора BASH
и специальные символы
Язык команд КИ ОС UNIX и ОС Linux часто называют shell, что в переводе с английского означает "скорлупа". Ниже приведены часто используемые команды.
Справочник команд терминала man и общие команды. Команда man является справочником и содержит описание команд с их опциями и параметрами, так же приведены примеры использования команд. Если набрать в командной строке командного интерпретатора:
$ man
то откроется весь справочник, повключающий команды интерпретатора.
Если указать имя команды, то можно получить справочную информацию об указанной команде:
$ man <имя команды>
Например, информацию о командном интерпретаторе BASH можно посмотреть следующим образом: $ man bash Информацию о команде даты и времени можно посмотреть так: $ man date Информацию о дате и времени можно посмотреть так: $ date Результатом будет строка с указанием дня недели, месяца, года, даты и времени.
При задании команды в КИ можно указывать одну опцию или несколько. Например, чтобы показать подробную информацию обо всех файлах текущего каталога, включая скрытые файлы (опция а), в командной строке вводится: $ ls -alF
Прописные и строчные буквы различаются и при указании опций. Таким образом, F и f являются разными опциями. Если опций несколько, то они пишутся подряд без пробелов, начиная со знака "дефис". Выполнение команды начинается после нажатия на клавишу [Enter]. Если команда запущена на выполнение ошибочно, отменить ее действие можно, используя нажатие клавиши [Ctrl+c] или [Del]. Если команда с ее опциями и параметрами оказалась длиннее строки, то для продолжения команды в следующей строке нужно ввести символ "обратный слеш" (\), потом [Enter], далее продолжать набор команды в следующей строке. Вместо символа "обратный слеш" может использоваться другой символ, если его задать в переменной командного интерпретатора, что описано ниже.
Команда history. Командная строка представляет собой текстовый буфер ввода с возможностью редактирования. Если набрать команду с необходимыми опциями и параметрами до нажатия клавиши [Enter], текст можно отредактировать. Используя клавиши [Backspace] или [Del] можно удалить ненужные символы, а, включив режим вставки (клавиша [Insert]), можно вставить нужные символы, набрав их на клавиатуре. Перемещаться по тексту можно, используя клавиши стрелок влево и вправо (назад и вперед соответственно).
Существует архив команд текущего сеанса работы, находящийся в файле history_list, благодаря которому можно повторять предыдущие команды. Используя клавишу , следует найти нужную команду из ранее выполненных в данном сеансе командного интерпретатора, отредактировать ее, если нужно, и, нажав клавишу [Enter], выполнить.
Нажимая несколько раз клавишу , находим нужную команду. Если нужно вернуться по этому списку команд, нажимать клавишу.
Список последних выполненных команд с их номерами можно просмотреть так же, воспользовавшись командой-утилитой:
$ history
Выполнить команду из списка историй можно так: $ !№
где № - номер команды, полученный из списка history_list. Если № не указан, то имеется в виду последняя выполненная команда. Вместо № можно набрать несколько первых символов команды из списка команд, однозначно ее идентифицирующую. Попробуйте повторить одну из ранее выполненных команд, обратившись к ней по номеру из списка событий.
Снятие блокировки (!). Эта команда используется, чтобы разрешить запись в уже существующий файл. Обычно по умолчанию установлена проверка на наличие существующих файлов и выдача на экран предупреждающего сообщения, но иногда файлы нужно перезаписывать в уже существующие. Тогда используется снятие блокировки. Например, файл f10 предположительно уже существует, но в него нужно записать содержиое файла file10, тогда удобна следующая запись:
$ cat file10 >! f10
Удобство более ощутимо, когда перезаписывается много файлов, поскольку просматривать, есть ли предыдущие версии, и потом удалять их дольше, чем поставить знак ! в вышеуказанной команде.
Путевое имя ‑ это полное имя файла с учетом каталогов, начиная с домашней директории пользователя, включает последовательно имена всех каталогов, ведущих к текущему. Иначе имя называется относительным. При входе в систему пользователь оказывается в определенной заранее вершине дерева файловой системы. Обычно это /home или /home/имя_пользователя, иногда используется каталог /usr. Путевое имя для суперпользователя root - путь от корневого каталога в текущий каталог. Команда pwd сообщает местоположение пользователя в файловой системе. С ее помощью выводится полное имя текущего каталога.
$ pwd
Команды создания и удаления каталогов. Команда предназначена для создания каталогов в любой вершине файловой структуры при наличии прав доступа и имеет следующий синтаксис:
$ mkdir <имена создаваемых каталогов>
Например, для создания в текущем каталоге двух новых каталогов с относительными именами k1 и k2, нужно выполнить команду:
$ mkdir k1 k2
Для удаления пустых (не содержащих файлов и каталогов) каталогов используется команда rmdir, имеющая структуру:
$ rmdir <имена удаляемых каталогов>
Удалить обычный файл можно командой:
$ rm <имена удаляемых файлов>
Чтобы просмотреть содержимое рабочего (текущего) каталога со всеми его подкаталогами (рис.3): $ ls –R
Рис.3. Просмотр содержимого текущего каталога. Рабочий стол GNOME
Выводится писок файлов и подкаталогов в текущем каталоге с указанием имен подкаталогов, после их имени ставится знак "слеш" (/).
Перемещение по каталогам. Чтобы перейти в другой каталог, используется команда сd:
$ cd <каталог>
Этот символ можно также использовать при копировании или перемещении, указав каталог на один уровень выше, чем текущий.
Пример 1. Находясь в корневом каталоге, можно перейти в каталог /usr/lib, набрав команду:
$ cd /usr/lib
Указано полное имя каталога /usr/lib. Если пользователь находится в каталоге usr, то указывается относительное имя: $ cd lib
Пример 2. Команда cd без параметров осуществит переход в начальный каталог пользователя, т.е. в каталог, в котором пользователь оказывается при входе в систему: $ cd
Копирование файлов и каталогов выполняется командой cp, причем последнее указанное в строке КИ имя считается именем каталога, в который нужно скопировать файлы. Общая структура команды:
$ cp <полное_имя_файла/имя_каталога,_которые_копируются> <полное_имя_файла/имя_каталога,_куда_копируется>
Команда cp имеет следующие основные опции:
-r - используется при копировании подкаталога из одного каталога в другой. Копирование выполняется со всеми подкаталогами, входящими в копируемый подкаталог.
-i - проверка, существует ли уже файл (каталог) с таким именем, в месте, указанном для копирования.
Полное имя можно не указывать, если действия выполняются в текущем каталоге, что в общем виде представлено структурой:
$ cp <имя_файла> имя_каталога/новое_имя_файла>
Пример 3. Копирование файла file1 из каталога dx в каталог user в файл file2, каталоги dx и user лежат в текущем каталоге:
$ cp dx/file1 user/file2 ,
Пример 4. $ cp file1_katal/file11
Здесь katal - каталог, находящийся в текущем каталоге. Можно использовать и такую форму записи, но тогда имя нового файла в каталоге katal будет как и исходное, file1:
$ cp file1 katal
Пример 5. Можно копировать несколько файлов в каталог:
$ cp <имена_файлов> <имя_каталога>,
$ cp file1 file2 katal
Чтобы скопировать все файлы текущего каталога в указанный каталог katal2 (сохранив также старые файлы) для указания нескольких символов используется знак “*”, следует выполнить:
$ cp *.* katal2
Пример 6. Чтобы скопировать все файлы с заданным расширением:
$ cp *.cpp katal3
Перемещение файлов и каталогов выполняется командой mv. Синтаксис команды аналогичен синтаксису команды cp. Общая структура команды:
$ mv <имя_файла/каталога> <имя_файла/каталога>
Пример 7. Чтобы файлу file1 присвоить имя file5, следует выполнить команду:
$ mv file1 file5
Опции -r- и -i команды mv имеют назначение, как и в команде cp.
Знак "тильда". При выполнении команд, использующих файлы и каталоги, иногда требуется указывать полный путь к файлу или каталогу. Для сокращенной записи используется знак "тильда" (
).и специальные символы
Пример 8. Использование знака "тильда".
$ cp file1