В таблице 5 приведены некоторые команды для работы с каталогами.
Таблица 5 – команды для работы с каталогами.
Команда | Назначение |
ls | Команда просмотра содержимого каталога (более удобная и имеет более 40 параметров, о которых можно узнать в справочной системе, введя команду man ls). |
dir | Команда просмотра содержимого каталога. |
pwd | Команда вывода имени текущего каталога (используется при написании сценариев). |
mkdir | Команда создания каталога. |
rmdir | Команда удаления пустых каталогов. |
rm -r | Команда удаления непустых каталогов. |
cd | Команда меняет текущий каталог на указанный. |
Права доступа
Для каждого файла и каталога в ОС Linux задаются права доступа. Права доступа определяют, кто имеет доступ к объекту и какие операции над объектом он может выполнять. Под объектом следует понимать файл и каталог. Выполнять можно три основных операции: чтение, запись и выполнение. Для изменения прав доступа используется команда chmod. В таблице 6 указаны параметры для команды chmod. При этом права доступа можно задавать двумя способами: символьным и абсолютным. В общем случае существует три категории пользователей: владелец, группа и остальные пользователи. Просмотр набора прав доступа можно просмотреть командой ls –l. Пример выполнения команды: ls –l file.txt. Результат выполнения: -rw-r—— 1 den group 300 feb 10 12:00 file.txt. Строка –rw-r—— характеризует набор прав доступа к файлу file.txt. Владельцем файла является пользователь den. Первый символ – это тип файла. «-» означает файл, а «d» — каталог. Следующие три символа «rw-» задают права доступа для владельца файла. Символ «r» — это право на чтение, «w» — на запись, а «x» — на выполнение. Если право на какой-нибудь вид доступа отсутствует, то ставится «-». В данном случае отсутствует право на выполнение. Следующих три символа задают права доступа для группы, следующие три – для остальных пользователей.
Чтобы изменить группу файла можно воспользоваться командой chgrp, а владельца – chown.
Таблица 6 – Права доступа (символьный метод).
Опция | Описание |
+ | Устанавливает право доступа. |
— | Отменяет право доступа. |
= | Присваивает набор прав доступа. |
r | Право на чтение файла или каталога. |
w | Право на запись файла или каталога. |
x | Право на выполнение. |
u | Устанавливает право доступа для пользователя, который создал файл и является его владельцем. |
g | Устанавливает права доступа для группы |
o | Устанавливает права доступа для прочих пользователей. |
a | Устанавливает права доступа для владельца, группы и прочих пользователей. |
s | Устанавливает бит смены идентификатора пользователя или группы. |
t | Устанавливает sticky-бит. |
Пример изменения прав на чтение и выполнение для файла абсолютным методом (chmod 500 dir1/script). Числом 500 определяются права доступа к файлу. Каждое число, задающее права доступа, состоит из трех разрядов, например 500: 5 – первый разряд; 0 – второй раздяр;0 – третий разряд. Первый разряд задает права доступа для владельца файла, второй – для группы, третий – для остальных пользователей. Разряды задаются в восьмеричной системе. Одному разряду восьмеричной системы соответствует три разряда в двоичной. В таблице 7 приведено соответствие разрядов восьмеричной системы разрядам в двоичной системе. Каждый двоичный разряд задает соответствующий ему тип доступа: первый – чтение, второй – запись, третий – выполнение. Будем считать, что разряды нумеруются слева направо. 0 – если данная операция запрещена, а 1 – если разрешена. Если например, право доступа задано числом 777 (111 111 111), это означает право на чтение, запись и выполнение для всех пользователей. Наиболее часто используется маска 644, разрешающая чтение и модификацию файла для владельца, и только чтение для других пользователей.
Таблица 7 – Соответствие восьмеричной и двоичной системы.
Восьмеричный формат | Двоичный формат |
Ссылки
Иногда очень полезно, чтобы в каталоге находился один и тот же файл, но под разными именами. Можно скопировать этот файл в другой, но при этом неэффективно используется дисковое пространство. Для этих целей в ОС Linux существует специальный тип файлов – ссылки. Ссылки позволяют хранить один и тот же файл, но под разными именами. Linux поддерживает два типа ссылок: жесткие (прямые) и символические.
Каждый файл в ОС Linux имеет свой уникальный номер – индексный дескриптор, который по сути и является настоящим именем файла. Получить информацию обо всех индексных дескрипторах в текущем каталоге можно с помощью команды ls –i. Пример просмотра индексного text: ls –i text, результат 25617 text. Создать жесткую ссылку на файл можно командой ln. Пример создания жесткой ссылки: ln text words. Ссылка words на файл text имеет тот же идентификатор, что и файл text. Количество ссылок отображается по команде ln -l. Число, стоящее слева от имени владельца, и есть количество ссылок. При этом доступны две ссылки на каталоги: «.» — ссылка на текущий каталог, а «..» — на родительский.
Символьные ссылки выполняют ту же функцию, что и жесткие, но несколько иначе. Они не ссылаются на индексный дескриптор файла. Символическая ссылка представляет собой специальный файл, при обращении к которому система понимает, что на самом деле нужно обратится к другому файлу, и обеспечивает прозрачность операции. Отсюда следует, что операции и символическими ссылками выполняются медленнее, чем с жесткими. Создать символическую ссылку можно командой ls –s, например: ls –s text words. После выполнения команды файлы text и words имеют разные индексные дескрипторы. Символическая ссылка не имеет прав доступа – для нее всегда используется набор rwxrwxrwx.
Пользователи
ОС Linux является многопользовательской операционной системой и не потому, что она может хранить профили нескольких пользователей, а потому, что одновременно в системе могут быть зарегистрированы несколько пользователей. Вы можете работать в консоли, кто-то по сети может подключиться к вашему серверу X, кроме того, могут быть еще несколько десятков пользователей, которые подключены к вашей системе по telnet, ssh или ftp.
Учетную запись может создать только администратор, то есть пользователь root. Сведения об учетных записях пользователей хранятся в файле /etc/passwd, а о группах – в файле /etc/group.
Добавлять пользователя можно командой adduser (или useradd), а изменить пароль – командой passwd.