Студопедия

КАТЕГОРИИ:

АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Доступ процессов к файлам и каталогам




Выполняющаяся программа называется в Linux процессом. Все процессы система регистрирует в таблице процессов, присваивая каждому уникальный номер — идентификатор процесса (process identificator, PID). Манипулируя процессами, система имеет дело именно с их идентификаторами, другого способа отличить один процесс от другого, по большому счёту, нет. Для просмотра своих процессов можно воспользоваться утилитой ps («process status»)

Видов доступа в файловой системе Linux три. Доступ на чтение (read) разрешает получать информацию из объекта, доступ на запись (write) — изменять информацию в объекте, а доступ на использование (execute) — выполнить операцию, специфичную для данного типа объектов. Доступ к объекту можно изменить командой chmod (change mode, сменить режим (доступа)). В простых случаях формат этой команды таков: chmod доступ объект, где объект — это имя файла, каталога и т. п., а доступ описывает вид доступа, который необходимо разрешить или запретить. Значение “+r” разрешает доступ к объекту на чтение (read), “-r” — запрещает. Аналогично “+w”, “-w”, “+x” и “-x” разрешают и запрещают доступ на запись (write) и использование (execute).

Права доступа

Каждый файл или каталог в Linux имеет своего владельца – пользователя, а этот пользователь находится в одной или больше группах. Например, у нас может быть пользователь Vasia, он может быть включен в несколько групп – группу vasia, это его основная группа, группу printer, группу admin. Домашняя директория у него будет /home/vasia в файловой системе, и все файлы в ней будут принадлежать ему. На каждый файл раздается по три права на три группы пользователей системы (в контексте прав на файлы). Права – Чтение, Запись, Запуск. Сокращенно – r w x. Типы пользователей – Пользователь, Группа, Другие, сокращенно – u g o. Исполняемые файлы обычно имеют право x для запуска. Для директорий право x означает разрешение на вход в директорию, а право r – видимость ее вообще как элемента в системе.

Работа с текстовыми данными

Текстовый редактор vi, он же vim. Для того, чтобы отредактировать или создать новый файл, напишите в консоли vi filename при этом, если такой файл уже есть, он откроется для редактирования, а если нет, то создастся новый файл. Опять таки, если приходится редактировать файл, принадлежащий руту, придется писать sudo vi filename. После того как файл откроется, нажмите на кнопку с буквой i, что значит insert (вставка). После этого можно писать, редактировать текст, удалять строки тд. Когда вы напишите все что вам нужно, нажмите Esc:wq. Вот что это значит: Esc – переход в командный режим. Двоеточие – выполнить команду, wq – write quit, что по-русски значит сохранить и выйти. Если вы открыли файл, например, не для редактирования, а так, посмотреть, и нечаянно в нем что-то написали, не страшно, можно не сохранять. Просто дайте команду Esc:q!. То есть – выйти без сохранения. При поиске в файлах команда Esc:/ запросит строку поиска. Энтер – и вы перейдете на первое же совпадение. Для перехода к следующему совпадению просто жмите n - то есть next. 

Возможности командной оболочки

В Linux терминал обеспечивает доступ к специальной программе — командной оболочке (чаще всего bash). Она занимается интерпретацией (переводом на машинный язык) команд пользователя. Почему "оболочка"? Наверное потому, что она как бы обволакивает операционную систему, позволяя человеку не вдаваться в подробности реализации функций системы, и, тем самым, облегчает работу.

Итак, через терминал (или консоль) мы получаем доступ к командной оболочке. В операционной системе Linux работать с командной оболочкой можно двумя способами: в графическом режиме и текстовом. Запустить эмулятор терминала в среде KDE (часто тут употребляют название "консоль") можно через главное меню. Для работы в текстовом режиме следует выполнить комбинацию клавиш Ctrl+Alt+F1 (или Ctrl+Alt+F2, или Ctrl+Alt+F3, или Ctrl+Alt+F4, или Ctrl+Alt+F5, или Ctrl+Alt+F6). Комбинация клавиш Ctrl+Alt+F7 переключает экран в графический режим. Другими словами, в Linux эмулируется семь терминалов.

Текстовые редакторы

Бывает, случаются случаи когда графическая оболочка по тем или иным причнам не доступна. Редактирование конфигурационных файлов в таких случаях доступно в консольных текстовых редакторах. Основных консольных редакторов, использующимися новичками два: nano и vim Для того, чтобы открыть файл в редакторе используйте команду

$ редактор /путь/к_файлу

Этапы загрузки системы

При загрузке компьютера происходит последовательная передача управления от BIOS к загрузчику, а от него — к ядру. Затем ядро запускает планировщик (для реализации многозадачности) и выполняет программу init (которая настраивает пользовательское окружение и позволяет осуществлять взаимодействие с пользователем и вход в систему), после чего ядро переходит в состояние бездействия до тех пор, пока не получит внешний вызов.

Основные этапы загрузки:

1. BIOS выполняет загрузочные шаги, специфичные для данного аппаратного обеспечения.

2. Когда все устройства распознаны и правильно запущены, BIOS загружает и выполняет загрузочный код с одного из разделов заданного загрузочного устройства, который содержит фазу 1 загрузчика Linux. Фаза 1 загружает фазу 2 (значительный по размеру код загрузчика). Некоторые загрузчики могут использовать для этого промежуточный этап (под названием фаза 1,5), поскольку современные диски большого объёма могут некорректно считываться без дальнейшего кода.

  3. Загрузчик зачастую предлагает пользователю меню с доступными вариантами загрузки. Затем он загружает ядро, которое распаковывается в память, настраивает системные функции, такие как работа необходимого оборудования и управление страницами памяти, после чего делает вызов start_kernel().

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

5. Планировщик начинает более эффективно управлять системой, в то время как ядро переходит к бездействию.

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

Когда происходит завершение работы, init вызывается для управляемого закрытия программ пользовательского уровня, тоже согласно сценариям. После этого init закрывается, а ядро производит свое собственное завершение работы.










Последнее изменение этой страницы: 2018-05-10; просмотров: 196.

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