Управление правами доступа и управление пользователями в Linux

Тема в разделе "Linux", создана пользователем Andrey, 22 авг 2009.

  1. Andrey

    Andrey Администратор

    Сообщения:
    3.234
    Симпатии:
    3.507
    Управление правами доступа

    Linux - многопользовательская операционная система. Это означает, что несколько пользователей могут работать одновременно, решая различные задачи и совершенно не мешая друг другу.
    Многопользовательская среда предполагает наличие механизма регулирования прав доступа к любому ресурсу в системе. Существует три типа прав доступа: на чтение, запись и исполнение.
    Каждый файл имеет определенного владельца и группу, увидеть это можно с помощью команды ls -l:
    Код:
    $ ls -l
    -rw-r--r-- 1 kolya users 0 Апр  5 03:12 foo
    В данном случае владельцем является kolya, а группой файла - users.
    Первый (считая слева) символ говорит обычный ли это файл, каталог, символьное устройство, сокет или любое другое псевдофайловое устройство. В нашем случае -, указывает на обычный файл. Следующие три символа (в данном случае это rw-) задают права доступа владельца файла. Затем идут права группы, которой принадлежит файл (r--). Последняя тройка (r--) определяет права для всех остальных.
    Права сгруппированы три по три, соответственно чтение/запись/выполнение для владельца/группы/всех остальных. Численное и символьное представление:
    [​IMG]
    Права на устройства контролируются аналогичным образом. В Linux все устройства представлены в виде файлов, которые можно открывать, читать и писать в них. Эти специальные файлы содержатся в каталоге /dev.
    Каталоги также являются файлами. К ним применимы те же права на чтение, запись и выполнение. Правда, в данном случае "выполнение'' имеет несколько другой смысл. Когда каталог помечен как "исполнимый'', это означает, что можно "зайти'' в него (с помощью команды cd, change directory). Это также означает, что в данном каталоге можно получить доступ к файлам, имена которых известны (конечно, если собственные права на файл разрешают такой доступ).
    Для управления правами используется команда chmod:
    Упрощенный синтаксис:
    Код:
    chmod изменение цель
    в качестве изменения может выступать как цифровой код новых прав для файла:
    Код:
    chmod 777 foo
    установит режим "можно все" для "всех"
    так и модификации, с использованием операторов +, - и =
    оператор + означает добавить права
    оператор - означает удаление прав
    Код:
    chmod -x foo
    удалит право исполнения для всех пользователей
    так же, возможно целевое удаление или добавление прав, с использованием следующих обозначений:
    Код:
    u  Пользователь (User)
    g  Группа (Group)
    o  Другие (Other)
    a  Все (All)
    Код:
    chmod g+r foo 
    добавит право чтения для группы
    Для смены владельца/группы используется команда chown:
    Код:
    chown владелец:группа цель
    установит для целевого файла указанного владельца и группу.
    Для выполнения отдельных приложений с привилегиями суперпользователя предназначено sudo:
    Код:
    sudo приложение
    Для перехода в режим суперпользователя используется команда su
    Код:
    su
    пароль_суперпользователя
    Управление пользователями в Linux

    Для создания пользователей самый простой способ - использовать утилиту adduser которая в интерактивном режиме запросит все необходимые параметры. В большинстве случаев достаточно использовать параметры "по умолчанию"
    Для смены пароля пользователя используется passwd.
    Пользователь может (при наличии прав) сменить пароль для себя используя passwd без параметров.
    Суперпользователь может сменить пароль для любого пользователя используя passwd логин_пользователя
    Для включения пользователя в группу используется: gpasswd
    добавление:
    Код:
    gpasswd -a пользователь группа
    удаление из группы:
    Код:
    gpasswd -r пользователь группа
    Удаление пользователя - команда userdel:
    Код:
    userdel пользователь
    Более подробную информацию можно найти в man страницах passwd, gpasswd, useradd, userdel
     
    itch нравится это.