[docs] происхождение файла
Kirill Maslinsky
kirill на altlinux.ru
Чт Авг 19 04:31:13 MSD 2004
Добрый день!
> >Господа, кому-нибудь известно происхождение и авторство файла в
> >docs/install/basics/file-permissions/file-permissions.xml ?
> >Я хочу включить его в документацию, но даже не знаю авторства,
> >не говоря уж о лицензии. Хотя и надеюсь на лучшее.
>
> Возможно, речь идет об этом документе:
>
> http://lists.altlinux.ru/pipermail/docs/2002-December/001178.html
Вообще похоже на то. Такое впечатление, что это текст,
просто отконвертированный из OOo в xml.
Файл приаттачу.
> Правда, если документ тот, то он производный от GPL текста, и я не знаю,
> может ли он попасть в документацию (она ведь GFDL?).
А мы укажем в примечании, что данная глава распространяется под GPL.
А то что же Вы думаете: я тоже использовал фрагменты из того же Уэлша,
что и Вы, в нашей документации.
КМ
-------------- next part --------------
<?xml version="1.0" encoding="koi8-r"?>
<article>
<sect2><title>Права доступа в системе Linux</title></sect2>
<sect3><title>Пользователи и группы</title></sect3>
<para>Поскольку система Linux с самого начала разрабатывалась как многопользовательская система, в ней предусмотрен такой механизм, как права доступа к файлам и каталогам. Он позволяет разграничить полномочия пользователей, работающих в системе. В частности, права доступа позволяют отдельным пользователям иметь "личные" файлы и каталоги. Например, если пользователь* ivanov создал в своём домашнем каталоге файлы, то он является владельцем этих файлов и может определить права доступа к ним для себя и остальных пользователей. Он может, например, полностью закрыть доступ к своим файлам для остальных пользователей, или разрешить им читать свои файлы, запретив изменять и исполнять их.</para>
<para>*Сноска: [В этом разделе, если специально не оговорено иное, под пользователем понимается пользователь с точки зрения системы, т.е. зарегистрировавшийся в определённой учётной записи (работающий под определённым именем пользователя). Права доступа определяются именно для пользователей в указанном смысле. При этом один человек, работающий в системе, может регистрироваться под различными именами пользователя для выполнения различных действий. Наоборот, несколько человек, использующих одну и ту же учётную запись, для системы являются одним и тем же пользователем.]</para>
<para>Правильная настройка прав доступа позволяет повысить надёжность системы, защитив от изменения или удаления важные системные файлы. Наконец, поскольку внешние устройства с точки зрения Linux также являются объектами файловой системы, механизм прав доступа можно применять и для управления доступом к устройствам.</para>
<para>У любого файла в системе есть владелец – один из пользователей. Однако каждый файл одновременно принадлежит и некоторой группе пользователей системы. Каждый пользователь может входить в любое количество групп, и в каждую группу может входить любое количество пользователей из числа определённых в системе.</para>
<para>Когда в системе создаётся новый пользователь, он добавляется по крайней мере в одну группу. В системе ALTLinux при создании новой учётной записи создаётся специальная группа, имя которой совпадает с именем нового пользователя, и пользователь включается в эту группу. В дальнейшем администратор может добавить пользователя к другим группам.</para>
<para>Механизм групп может применяться для организации совместного доступа нескольких пользователей к определённым ресурсам. Например, на сервере организации для каждого проекта может быть создана отдельная группа, в которую войдут учётные записи (имена пользователей) сотрудников, работающих над этим проектом. При этом файлы, относящиеся к проекту, могут принадлежать такой группе и быть доступными для её членов. В системе также определено несколько групп (например, bin и admin), которые используются для управления доступом системных программ к различным ресурсам. Как правило, пользователи-люди не включаются в такие группы.</para>
<para>В некоторых дистрибутивах Linux (в т.ч. в системе ALT Linux) с помощью групп могут быть предоставлены права, необходимые для выполнения определённых задач. Например, чтобы пользователь получил возможность собирать пакеты RPM, его следует включить в группу rpm. Чтобы предоставить возможность записи дисков CD-R/RW, пользователя нужно добавить к группе cdwriter.</para>
<sect3><title>Права доступа и получение информации о них</title></sect3>
<para>Права доступа определяются по отношению к трём типам действий: чтение, запись и исполнение. Эти права доступа могут быть предоставлены трём классам пользователей: владельцу файла (пользователю), группе, которой принадлежит файл, а также всем остальным пользователям, не входящим в эту группу. Право на чтение даёт пользователю возможность читать содержимое файла или, если такой доступ разрешён к каталогам, просматривать содержимое каталога (используя команду ls). Право на запись даёт пользователю возможность записывать или изменять файл, а право на запись для каталога -- возможность создавать новые файлы или удалять файлы из этого каталога. Наконец, право на исполнение позволяет пользователю запускать файл как программу или сценарий командной оболочки (разумеется, это действие имеет смысл лишь в том случае, если файл является программой или сценарием). Владение правами на исполнение для каталога позволяет перейти (командой cd) в этот каталог.</para>
<para>Чтобы получить информацию о правах доступа, используйте команду ls с ключом -l. При этом будет выведена подробная информация о файлах и каталогах, в которой будут, среди прочего, отражены права доступа. Рассмотрим следующий пример:</para>
<para>/home/ivanov/docs# ls -l report1303</para>
<para/>
<para>-rw-r--r-- 1 ivanov users 505 Mar 13 19:05 report1303</para>
<para>Первое поле в этой строке (-rw-r--r--) отражает права доступа к файлу. Третье поле указывает на владельца файла (ivanov), четвёртое поле указывает на группу, которая владеет этим файлом (users). Последнее поле -- это имя файла (report1303). Другие поля описаны в документации к команде ls.</para>
<para>Данный файл является собственностью пользователя ivanov и группы users. Последовательность -rw-r--r-- показывает права доступа для пользователя – владельца файла, пользователей – членов группы-владельца, а также для всех остальных пользователей. </para>
<para>Первый символ из этого ряда ("-") обозначает тип файла. Символ "-" означает, что это – обычный файл, который не является каталогом (в этом случае первым символом было бы <quote>d</quote>) или псевдофайлом устройства. Следующие три символа ("rw-") представляют собой права доступа, предоставленные владельцу ivanov. Символ "r" -- сокращение от "read" (читать), а "w" -- сокращение от "write" (писать). Таким образом, ivanov имеет право на чтение и запись (изменение) файла report1303.</para>
<para>После символа <quote>w</quote> мог бы стоять символ "x", означающий наличие прав на исполнение (execute) файла. Однако символ "-", стоящий здесь вместо "x", указывает, что ivanov не имеет права на исполнение этого файла. Это разумно, так как файл report1303 не является программой. В то же время, пользователь, зарегистрировавшийся в системе как ivanov, при желании может предоставить себе право на исполнение данного файла, поскольку является его владельцем. Для изменения прав доступа к файлу или каталогу используется команда chmod. </para>
<para>Следующие три символа ("r--") отражают права доступа группы к файлу. Группой-собственником файла является группа users. Поскольку здесь присутствует только символ "r", все пользователи из группы users могут читать этот файл , но не могут изменять или исполнять его. </para>
<para>Наконец, последние три символа (это опять "r--") отражают собой права доступа к этому файлу всех других пользователей, кроме собственника файла и пользователей из группы users. Так как здесь указан только символ "r", эти пользователи тоже могут читать файл</para>
<para>Вот ещё несколько примеров: </para>
<para>-rwxr-x--x – пользователь – владелец файла может читать файл, изменять и исполнять его; пользователи, члены группы-владельца могут читать и исполнять файл, но не изменять его; все остальные пользователи могут лишь запускать файл на выполнение.</para>
<para>-rw------- - только владелец файла может читать и изменять его</para>
<para>-rwxrwxrwx – все пользователи могут читать файл, изменять его и запускать на выполнение.</para>
<para>---------- - никто, включая самого владельца файла, не имеет прав на его чтение, запись или выполнение*. Хотя такая ситуация вряд ли имеет практический смысл, с точки зрения системы она является вполне корректной. Разумеется, владелец файла может в любой момент изменить права доступа к нему.</para>
<para>*Сноска: [Строго говоря, за исключением суперпользователя (root), который может выполнять любые операции над любыми файлами в системе.]</para>
<para>Возможность доступа к файлу зависит также от прав доступа к каталогу, в котором находится файл. Например, даже если права доступа к файлу установлены как -rwxrwxrwx, другие пользователи не могут получить доступ к файлу, пока они не имеют прав на исполнение для каталога, в котором находится файл. Другими словами, чтобы воспользоваться имеющимися у вас правами доступа к файлу, вы должны иметь право на исполнение для всех каталогов вдоль пути к файлу.</para>
<para><quote>Пользователями</quote> системы Linux, выполняющими различные действия с файлами и каталогами, являются не только люди, но и программы, выполняемые в системе. Каждая программа (процесс) выполняется от имени определённого пользователя. Её возможности работы с файлами и каталогами определяются правами доступа, определёнными для этого пользователя. С целью оптимальной настройки прав доступа для ряда программ-серверов в системе созданы специальные пользователи (учётные записи), от имени которых работают эти программы. Например, в системе ALTLinux http-сервер (Apache) выполняется от имени пользователя apache, а ftp-сервер – от имени пользователя ftp. Такие учётные записи не предназначены для работы людей-пользователей.</para>
<sect3><title>Права доступа и администрирование системы</title></sect3>
<para>Установка и поддержание оптимальных прав доступа является одной из важнейших задач системного администратора. Права должны быть достаточными для нормальной работы пользователей и программ, но не большими, чем необходимо для такой работы. ALTLinux обладает продуманной системой прав (предопределённые группы, псевдопользователи для различных программ-серверов, права доступа для системных файлов и каталогов). Прежде чем вносить существенные изменения в эту систему, целесообразно понять её логику и выяснить, нет ли другого способа достичь нужной цели.</para>
<para>Поскольку программы, запускаемые от имени суперпользователя (root), могут совершать любые действия с любыми файлами и каталогами, их выполнение может нанести системе серьёзный ущерб. Это может быть как следствием уязвимостей или ошибок в программах, так и результатом ошибочных действий самого пользователя. Поэтому работа с правами суперпользователя требует особой осторожности. Чтобы уменьшить связанные с этим риски, разработчики системы ALTLinux рекомендуют для выполнения задач, требующих таких прав, использовать утилиту sudo.Подробнее об обеспечении безопасности системы и настройке sudo рассказано в <quote>Руководстве администратора</quote>.</para>
<sect3><title>Основные команды</title></sect3>
<para>Ниже перечислены важнейшие команды для решения задач, связанных с правами доступа. Обратитесь к документации по системе для получения информации об использовании этих команд.</para>
<para>chmod – изменение прав доступа к файлу или каталогу.</para>
<para>chown – изменение владельца файла.</para>
<para>chgroup – изменение группы, которой принадлежит файл.</para>
<para>umask – определение прав доступа по умолчанию для файлов, создаваемых пользователем.</para></article>
Подробная информация о списке рассылки docs