Лабораторная работа знакомство с линукс

Операционная система Linux. Знакомство с операционной системой - online presentation

лабораторная работа знакомство с линукс

Лабораторная работа на тему Лабораторная работа Знакомство с операционной системой Linux - заказ № / Программирование / Linux, Unix. Операционная система Linux. Лабораторная работа №1: Знакомство с операционной системой. Кафедра ЮНЕСКО по новым информационным. Лабораторная работа 1 Знакомство с операционными системами семейства *nix на примере ОС ALT Linux Server. Copyright (c) , Nikolay A.

Пользователи и процессы в системе. ОС UNIX изначально разрабатывалась как многопользовательская многозадачная система, и предусматривает одновременную работу многих программ разных пользователей.

Каждому пользователю в системе соответствует уникальный числовой идентификатор UID User IDи символьное имя пользователя. Имя пользователя может содержать только латинские строчные буквы, цифры и символ - дефис.

Желательно, чтобы имя пользователя было не длиннее 8 символов, хотя допускаются и более длинные имена. Пользователи объединяются в группы, которые также имеют уникальные числовые идентификаторы GID Group IDи символьные имена.

Каждый пользователь должен входить хотя бы в одну группу, которая носит название первичной группы.

лабораторная работа знакомство с линукс

Также пользователь может входить в одну или несколько других групп, носящих название вторичных. Этот пользователь является администратором или суперпользователем системы. Традиционно имя суперпользователя root. Выполняющиеся в системе программы носят названия процессов. Любой процесс может с помощью системного вызова fork создать новый процесс. Также процессам доступен системный вызов chuserкоторый меняет UID выполняющего процесса.

Имеется аналогичный системный вызов и для смены GID. Процесс init постоянно находится в системе, вплоть до завершения работы. Все процессы, работающие в системе, можно разделить на три группы. Во-первых, это системные процессы, которые, как и init, запускаются ядром. Эти процессы отвечают за работу таких подсистем ядра, как кэширование дисков, управление виртуальной памятью и.

Эти процессы запускаются и контролируются непосредственно ядром операционной системы, возможности управления ими весьма ограничены.

Вторая группа это процессы неинтерактивных системных программ различных сервисов, выполняющихся в системе. В качестве примера можно привести веб-серверы, серверы баз данных, серверы удалённого доступа к системе, и.

Непосредственно с пользователем эти программы не взаимодействуют, для работы с ними требуются дополнительные прикладные программы. Такие процессы, как правило, автоматически запускаются системой при её загрузке, и далее постоянно выполняются в фоновом режиме.

Но для функционирования системы они не требуются, и имеется возможность управлять их выполнением останавливать, запускать и. К третьей группе относятся прикладные процессы то есть программы, непосредственно запускаемые пользователем при его работе с системой.

Кроме суперпользователя и обычных пользователей в системе существует набор.

Лабораторная работа Знакомство с операционной системой Linux

Как правило, псевдопользователям не назначен командный 12 13 интерпретатор, а их домашний каталог это тот каталог, в который соответствующие программы могут писать свои данные.

Системные программы обычно запускаются с привилегиями суперпользователя и после инициализации изменяют с помощью системного вызова chuser свой идентификатор пользователя на непривилегированный. В качестве дополнительной меры безопасности существует возможность изменения в настройках запущенных процессов указателя на корневой каталог. Системные вызовы chuser и сhroot доступны только суперпользователю, поэтому после перехода в непривилегированный режим работы процесс не может вернуть себе полномочия root обратно.

Все создаваемые им процессы также будут работать с правами псевдопользователя. В случае, если в программе будет обнаружена уязвимость и злоумышленник получит над ней контроль то есть сможет запускать свои программы в системеон не сможет получить права суперпользователя и выйти за границы chroot-окружения.

Как правило, идентификатор UID псевдопользователя меньшеа обычного пользователя равен или. Однако данное разделение чисто условное и соблюдается по договорённости. Для интерактивной работы пользователей с системой используется понятие терминала устройства, с которого поступают вводимые пользователем команды, и на который выводится результат их выполнения. Для начала работы с системой пользователь должен зарегистрироваться на одном из поддерживаемых системой терминальных устройств.

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

Можно одновременно открыть и несколько терминальных сессий с 13 14 системой для одного и того же пользователя, и работать одновременно с несколькими терминалами. Права доступа к файлам. Поскольку система Linux с самого начала разрабатывалась как многопользовательская, в ней предусмотрен такой механизм, как права доступа к файлам и каталогам. Он позволяет разграничить полномочия пользователей, работающих в системе. Например, если пользователь student создал в своём домашнем каталоге файлы, то он является владельцем этих файлов и может определить права доступа к ним для себя и остальных пользователей.

Он может, например, полностью закрыть доступ к своим файлам для остальных пользователей, или разрешить им читать свои файлы, запретив изменять и исполнять. Правильная настройка прав доступа позволяет повысить надёжность системы, защитив от изменения или удаления важные системные файлы.

Наконец, поскольку внешние устройства с точки зрения системы также являются объектами файловой системы, механизм прав доступа применяется и для управления доступом к устройствам. Например, одна из таких программ командная оболочка, которая считывает команды пользователя из командной строки и передаёт их системе на выполнение. Каждая программа процесс выполняется от имени определённого пользователя. Её возможности работы с файлами и каталогами определяются правами доступа, заданными для этого пользователя.

Содержимое файла программа может считывать или записывать, а если в файле хранится другая программа, то её можно запустить на выполнение и создать новый процесс. Из каталога можно считать список содержащихся в нём файлов и каталогов, или внести в этот список изменения создать новую запись файл или каталогпереименовать или удалить существующую. Кроме того, в каталог можно перейти сделать его текущим для данного процесса. У любого файла в системе есть владелец один из пользователей.

Однако каждый файл одновременно принадлежит и некоторой группе пользователей системы. Права доступа определяются по отношению к трём типам действий: Эти права доступа могут быть предоставлены трём классам пользователей: Право на чтение даёт пользователю возможность читать содержимое файла или, если такой доступ разрешён к каталогам, просматривать содержимое каталога используя команду ls.

Право на 14 15 запись даёт пользователю возможность записывать или изменять файл, а право на запись для каталога возможность создавать новые файлы или удалять файлы из этого каталога. Наконец, право на исполнение позволяет пользователю запускать файл как программу или сценарий командной оболочки разумеется, это действие имеет смысл лишь в том случае, если файл является программой или сценарием.

Чтобы получить информацию о правах доступа, можно использовать команду ls с ключом -l. При этом будет выведена подробная информация о файлах и каталогах, в которой будут, среди прочего, отражены права доступа.

Третье поле указывает на владельца файла studentчетвёртое поле указывает на группу, которая владеет этим файлом student. Последнее поле это имя файла file. Другие поля описаны в документации к команде ls. Данный файл является собственностью пользователя student и группы student.

Последовательность -rw-r--r-- показывает права доступа для пользователя владельца файла, пользователей членов группы-владельца, а также для всех остальных пользователей. Первый символ из этого ряда обозначает тип файла. Символ дефис означает, что это обычный файл, который не является каталогом в 15 16 этом случае первым символом было бы dсимвольной ссылкой было бы l или псевдофайлом устройства было бы c или b.

Следующие три символа rw- представляют собой права доступа, предоставленные владельцу student. Символ r сокращение от read англ. Таким образом, student имеет право на чтение и запись изменение файла file.

После символа w мог бы стоять символ x, означающий наличие прав на исполнение англ. Однако символ - дефисстоящий здесь вместо x, указывает, что student не имеет права на исполнение этого файла.

Это разумно, так как файл file. В то же время, пользователь, зарегистрировавшийся в системе как student, при желании может предоставить себе право на исполнение данного файла, поскольку является его владельцем. Для изменения прав доступа к файлу или каталогу используется команда chmod. Следующие три символа r-- отражают права доступа группы к файлу.

Поскольку здесь присутствует только символ r, все пользователи из группы student могут читать этот файл, но не могут изменять или исполнять. Наконец, последние три символа это опять r-- показывают права доступа к этому файлу всех других пользователей, помимо собственника файла и пользователей из группы student.

Так как здесь указан только символ r, эти пользователи тоже могут лишь читать файл. Другие пользователи как члены группы student, так и все прочие никаких прав не имеют и ни перейти, ни прочитать содержимое этого каталога, ни, тем более, что-либо в него записать не могут. Некоторым неудобством встроенной справочной системы man является то, что далеко не вся информация локализована, то есть переведена с английского языка.

Частичным решением этой проблемы является справка формата info, которая, однако, имеется не для всех команд и менее подробная. Еще одна возможность получения информации о команде - это выполнение ее с параметром --help. Выдает информацию о FILE текущий каталог по умолчанию. Сортирует в алфавитном порядке если ни один из ключей -cftuSUX --sort не задан. Завершение работы Первые Unix-подобные ОС создавались в расчете на длительную работу без выключения компьютера.

ОС Линукс - не исключение и завершение работы компьютера с ОС Линукс имеет некоторые особенности, которые в общем-то, зависят от конфигурации системы. Как правило, полное выключение может выполнять только суперпользователь по команде shutdown. По команде shutdown в зависимости от параметров система может быть остановлена в указанное время с предварительной рассылкой сообщения.

Перед выключением Линукс записывает все несохраненные данные на диск, выгружает запущенные программы и последовательно останавливает системные сервисы. Во избежание потери информации необходимо дождаться сообщения о том, что питание можно отключить. При завершении сеанса Линукс выгружает только те программы, которые были запущены текущим пользователем, затем выгружает оболочку и снова выводит приглашение login.

ЛР №1. ОС Linux. Первое знакомство | Открытое программное обеспечение

Задания к выполнению Включить компьютер и определить, какой загрузчик используется в системе и имеются ли другие операционные системы на компьютере Наблюдая за процессом загрузки ядра обратить внимание на то, какие сервисы загружаются и сделать предположения о их назначении. Выяснить, как можно перейти в режим интерактивной загрузки. Переключиться в этот режим и определить, какие сервисы могут быть запущены по запросу пользователя Войти в систему с учетной записью суперпользователя.

Ознакомиться со справочными системами man и info Получить справочную информацию о следующих командах: Создать собственную учетную запись с которой вы будете работать в дальнейшем. Установить пароль для этой учетной записи. Ключи во многих случаях могут объединяться в одну группу. Команды разделяются на внутренние, которые выполняются командным процессором, и внешние.

Внутренних команд обычно немного, а их состав и синтаксис могут зависеть от используемой командной оболочки. Внешние команды представляют собой запуск программ, независимых от оболочки. Для запуска программы простым указанием ее имени необходимо, чтобы путь к этой программе был указан в переменной среды PATH аналог одноименной переменной среды в MS- DOS. Если программа не найдена в каталогах, перечисленных в PATH, перед именем программы должен быть явно указан путь, даже если программа находится в текущем каталоге хотя в современных Unix системах это уже не требуется.

Например, запуск программы hello из текущего каталога может выглядеть так: Пути в переменной среды PATH отделяются друг от друга знаками двоеточия без окаймляющих пробелов. Если вывести на экран листинги всех каталогов, входящих в PATH, можно таким образом получить полный список внешних команд системы, с которой осуществляется работа.

Следует отметить, что значение любой переменной среды 10 6 можно получить, указав в требуемом контексте ее имя с предшествующим знаком доллара. Учитывая, что действие команды echo заключается в выводе в стандартный поток вывода своего аргумента, то на экран попадет именно содержимое переменной среды PATH.

Изменение пароля Первая команда, которую следует выполнить при первом сеансе работы в системе команда изменения собственного пароля: Эта команда вызывается без параметров.

После ее запуска на экране появится приглашение ввести старый пароль если пароля не было, этот шаг может быть пропущен. После правильного ввода старого пароля будет предложено ввести новый пароль, а затем ввести его еще раз для исключения случайной ошибки. Пароли при вводе отображаться не. Ниже представлен примерный протокол работы команды passwd: Основное требование состоит в том, что пароль не должен быть угадываемым. Не надо писать свое имя в обратном порядке, не следует составлять пароль из одинаковых или ряда соседних на клавиатуре букв и.

Пароль должен содержать минимум шесть-семь символов и включать необычные сочетания букв, цифр, дефисов и подчеркиваний.

лабораторная работа знакомство с линукс

В современных системах предпочтительно использование длинных паролей из ти и более символов. Многие реализации команды passwd пытаются определить пригодность нового пароля и выводят предупреждающие сообщения, если пароль неудачен. Не следует думать, что вышеуказанные правила чрезмерны. Даже личный домашний компьютер при входе в сеть Internet через модемное соединение может стать видимым другим людям, которые могут 11 7 попытаться поменять пароль или узнать пароль соединения с провайдером.

Получение справочной информации Системы Unix, как правило, поставляются с огромным количеством справочной информации в электронном виде. Справочная информация разбита на разделы по тематике. Нумерация разделов в разных системах может быть разной. Пожалуй, самая часто используемая информация содержится в разделе 1, где рассматриваются команды и прикладные программы, доступные рядовым пользователям системы.

Каждая такая страница содержит документацию по конкретной команде, функции, интерфейсу, протоколу и. Отметим, что номер раздела указывать необязательно. В частности, команда apropos [ключ] позволяет найти и вывести перечень тех страниц руководств, которые содержат в строке краткого пояснения заданное ключевое слово ключ.

Справочная информация man доступна только для внешних команд. Чтобы вывести на экран полное имя текущего каталога, нужно использовать команду pwd без аргументов. Если имякаталога не указано, то будет выведен листинг текущего каталога.

У команды ls есть несколько полезных ключей l вывести полную информацию о каждом файле; a вывести листинг всех файлов, включая такие, имена которых начинаются с символа точки. Для полной информации о перечисленных командах, их аргументах и вариантах их использования можно обратиться к страницам руководства пользователя команда man.

  • Лабораторная работа 1
  • ЛР №1. ОС Linux. Первое знакомство
  • Открытое программное обеспечение: Лабораторные работы

Программы, требующие входных данных, обычно читают информацию из стандартного потока ввода. Например, команда wc подсчитывает количество строк, слов и символов во входных данных. Если запустить эту команду без аргументов, то wc будет ожидать входных данных с терминала чтобы закончить ввод данных, нужно нажать комбинацию клавиш Ctrl-D: По умолчанию этот поток соединен с терминалом с клавиатурой пользователя, но допускается его перенаправление. Стандартный поток вывода это поток, куда программы записывают выходные данные.

В предыдущем примере команда wc выводила результат три числа именно в этот поток. Так же работают и большинство других неинтерактивных команд включая echo, pwd и ls, рассмотренные выше. Подобно стандартному потоку ввода выходной поток изначально связан с терминалом и также допускает перенаправление. При этом, если файл с таким именем не существовал, он будет создан, в противном случае его старое содержимое будет потеряно. Существует и другая возможность перенаправления вывода, когда новые выходные данные будут дописаны в конец существующего файла.

Например, пусть выполняется попытка получить список файлов в каталоге без соответствующих прав доступа: Access denied В данном случае команда ls вывела сообщение в поток стандартной ошибки. Операция знак вертикальной черты позволяет перенаправить стандартный поток вывода одной команды на стандартный входной поток другой команды: Рассмотрим более сложный пример формирования конвейера команд.

Фильтры получают данные из стандартного входного потока, преобразовывают их и выводят в стандартный поток вывода. Также можно использовать комбинацию клавиш Ctrl- D, которая позволяет выполнить команду завершения работы с командной оболочкой, после чего система переходит в режим ожидания регистрации следующего пользователя. Если сеанс работы производился с удаленной машины с использованием протоколов telnet или ssh, то завершение работы командной оболочки вызывает разрыв соединения Основы интерактивной работы в оболочке bash Оболочка shell или командный интерпретатор в Unix-системах обеспечивает два набора функций: Ниже рассмотрены особенности работы второй группы из набора функций.

Оболочка bash предоставляет пользователю развитые средства интерактивной работы. Следует отметить, что умение пользоваться интерактивными возможностями оболочки значительно повышает эффективность работы в Unix-системе особенно в сочетании с хорошим знанием командного языка.

Более того, работа непосредственно в командной оболочке часто оказывается значительно более продуктивной по сравнению с использованием файловых менеджеров, таких как Norton Commander, Far Manager или Windows Explorer.

Обратная сторона преимуществ работы в оболочке Unix заключается в длительном начальном периоде изучения. Далее рассмотрим лишь некоторые наиболее используемые приемы интерактивной работы. Для более полного описания возможностей оболочки следует пользоваться руководством по использованию bash команда man bash. Редактирование командной строки Классические оболочки Unix позволяли вводить команды как последовательность символов, завершая ввод нажатием клавиши Enter.

Современные версии командных оболочек, такие как bash, включают развитые средства редактирования. Работоспособность модификатора META зависит от настройки терминала, графической среды или программы удаленного доступа. Для этого перед символом нужно нажать и отпустить клавишу Esc. Таким образом, например, комбинацию клавиш META-d можно заменить 17 13 последовательностью нажатий Esc, d.

В табл приведены основные команды для работы в командной строке.

сайтик группы - Лабораторная работа 1

Одному действию соответствует, как правило, несколько разных комбинаций клавиш. Поэтому, если не работает какаялибо из клавиш например, Homeвместо нее может быть использована альтернативная комбинация например, CTRL-a. Также следует отметить, что многие из комбинаций клавиш имеют аналогичное или похожее назначение и в других программах, распространенных в Unix.

Это позволяет вернуться к любой ранее введенной команде, а также использовать отдельные фрагменты команд из истории для ускорения ввода новых команд. История сохраняется при выходе из оболочки в файле с именем.

Таким образом, история команд не пропадает в перерывах между сеансами работы.