Базовые принципы Linux и основные понятия
Семейство ОС Linux: философия Unix и базовые понятия
Linux - это...
... семейство Unix-подобных операционных систем на базе ядра Linux, включающих тот или иной набор утилит и программ проекта GNU и, возможно, другие компоненты.
Философия Unix: Unix-Way
«Делайте что-то одно, но делайте это хорошо»
Базовые понятия
Файл - именованная область данных на носителе информации (например, жестком диске или в оперативной памяти).
Файлами также считаются:
- области данных (необязательно на диске);
- устройства — как физические, например, порты или принтеры, так и виртуальные (/dev/null, /dev/random, /dev/urandom);
- потоки данных (именованный канал);
- сетевые ресурсы, сокеты.
Типы файлов
Тип файла можно определить по первой букве вывода программы ls –l:
f— (или -) обыкновенный файл;l— символьная ссылка;d— директория;c— символьное устройство;b— блочное устройство;p— pipe (FIFO) файл;s— socket файл типа.
Процесс - программа, которая выполняется в текущий момент.
Поток выполнения - наименьшая единица обработки, исполнение которой может быть назначено ядром операционной системы.
Обратите внимание: поток является составляющей процесса, но не наоборот.
Иерархия файловой системы (где и что искать)
В файловой системе linux-систем нет дисков, как в Windows. Есть общий корень, который обозначается прямым слешем - '/'.
Структура является древовидной, что показано на рисунке ниже:
Назначение директорий (папок):
/bin– исполняемые файлы;/sbin– исполняемые файлы;/dev– файлы устройств;/etc– файлы конфигурации;/lib– системные библиотеки;/home– каталогипользователей;/root– каталогсуперпользователя;/usr– размещениеприложений;/var– данные приложений;/tmp– временный каталогсистемы;/var/tmp– временныекаталоги приложений;/proc– файловый интерфейсОС;/opt– “Program Files” аналог;/mnt– монтирование сетевыхФС;/media– монтированиесъемных ФС;/boot– загрузчик и ядросистемы;/sys– интерфейс кустройствам ОС;/srv– Web-размещениесайтов, FTP...
Права доступа
Для описания модели доступа рассмотрим следующую строку (вывод команды ls -l, которая будет рассмотрена далее):
[file type][rwx][rwx][rwx] [file type] - параметр, который определяет тип файла (ранее были приведены возможные типы)
Далее следуют 3 тройки - они определяюь права доступа:
- первая тройка [rwx] - права доступа владельца файла
- вторая тройка [rwx] - права доступа группы файла
- третья тройка [rwx] - права доступа остальных пользователей
Параметры r, w, x принимают одно из значений "0" - если данное действие недоступно, или "1" - если действие доступно:
r- read. Права на чтение;w- write. Права на запись;x- execute. Права исполение.
Если в тройке вместо одной из букв указан минус "-", то значит, что такое право отсутствует в данной тройке.
Пример:
-rwxr-x--x
Имеется обычный файл (указывает первый знак "-") со следующими правами:
- Владелец файла может его читать, изменять и исполнять;
- Группа файла может его читать и исполнять;
- Остальные пользователи могут только исполнять файл.
Данная тройка может обозначаться как 751, где:
- 7 = 111, rwx
- 5 = 101, r-x
- 1 = 001, --x
Для подробного ознакомления рекомендуем перевод статьи: Хабрахабр: Основы Linux от основателя Gentoo. Часть 3 (2/4): Модель прав доступа