Linux изначально задумывался как многопользовательская система, а потому разделение файлов и профилей пользователей здесь организовано на высочайшем уровне. Пользователь с ограниченными правами в системе может взаимодействовать с теми или иными файлами и каталогами.
Важно помнить, что в Linux существует суперпользователь с именем root, обладающий полными администраторскими привилегиями в операционной системе, — так сказать, самый главный босс всех боссов. Он может создавать и удалять учетки других юзеров и вообще менять глобальные настройки ОС. Любой юзер может временно побывать в роли root с помощью команды sudo (Substitute User and do, дословно «подменить пользователя и выполнить»). Но сработает этот sudo, только если ты знаешь пароль от учетной записи суперпользователя.
РЕКОМЕНДУЕМ:
Структура каталогов в Linux
Каждому файлу в Linux назначается определенный набор разрешений, определяющих, кто и что может делать с этим файлом. Эти разрешения обозначаются специальными буквами:
- <strong>r</strong> (read) — разрешение на чтение файла;
- <strong>w</strong> (write) — разрешение на запись в файл;
- <strong>x</strong> (execute) — разрешение на запуск файла;
- <strong>-</strong> (прочерк) — разрешение не установлено.
Важно помнить, что каталоги Linux тоже считает файлами, поэтому для них действительны все те же разрешения и ограничения. Однако указанные разрешения не имели бы большого смысла, если бы они распространялись на всех пользователей операционной системы. К счастью, это не так: в Linux имеется три разных категории пользователей, для каждой из которых можно устанавливать свои собственные разрешения доступа к файлам:
- владелец — пользователь, который создал этот файл или назначен его владельцем. Владельцем файла может быть не только учетная запись, но и сама операционная система или приложение, которое создало файл;
- группа — группа пользователей, «привязанная» к данному файлу. Ты можешь узнать, к какой группе пользователей относится твоя учетная запись, с помощью консольной команды groups <<wbr />username>. Список всех зарегистрированных в системе групп обычно хранится в папке /<wbr />etc/<wbr />group;
- другие — все, кто не относится к владельцу файлового объекта или группам пользователей.
Таким образом, разрешения доступа к любому файлу или папке можно записать в виде строки, состоящей из девяти символов и имеющей следующий вид:
1 |
rwxrwxrwx |
Первые три символа здесь определяют разрешения для владельца файлового объекта, вторые — для группы, к которой относится владелец файла или папки, последние три — для всех остальных. Разрешения всегда следуют именно в таком порядке: «чтение, запись, запуск», то есть rwx. Например, обозначение вида rwxrw-r-- означает, что владелец этого файла может делать с ним что угодно, члены его группы — только читать и писать в файл, но не запускать его (разрешение x не установлено), а всем остальным пользователям системы файл доступен только на чтение.
Если эти разрешения установлены для папки, это означает, что пользователи группы также не смогут запускать хранящиеся в ней файлы, а прочим пользователям открыт доступ к содержимому папки исключительно в режиме read only.
Просмотреть права и разрешения файлов и папок можно с помощью консольной команды ls, снабженной ключом -l.
Чтобы изменить права доступа, существует команда chmod (Change Mode). При помощи этой команды можно даже не прописывать все требуемые разрешения вручную: для лентяев в Linux предусмотрены цифровые обозначения стандартных наборов разрешений. Например, команда chmod <wbr />755 <wbr />filename присвоит файлу filename разрешения rwxr-xr-x (каждый пользователь имеет право читать и запускать на выполнение; владелец может редактировать), chmod <wbr />777 <wbr />filename даст на выходе rwxrwxrwx (все могут делать все, что захотят), а «дьявольская» команда chmod <wbr />666 <wbr />filename — вернет rw-rw-rw- (все пользователи могут читать и редактировать файл).
РЕКОМЕНДУЕМ:
Полезные инструменты для работы с сетью в консоли Linux
В современном Linux существуют еще так называемые специальные разрешения, но их мы рассматривать не будем: для начала информации вполне достаточно, чтобы чувствовать себя в системе более‑менее уверенно.