Доступ на изменение запись. Специальные права доступа к файлам в Linux. Кому назначаются права доступа

С каждым объектом, который находится в ведении Mac OS X, связан опреде­ленный набор прав доступа (в unix-среде используется термин привилегии до­ступа), который полностью определяет, кто является владельцем этот объекта и что с ним могут делать разные пользователи.

Эти права можно просмотреть в окне свойств объекта – команда Файл>>Свойства , раздел Общий доступ и права доступа.

Полученные права доступа к файлу записываются в следующем порядке: права владельца, права группы и права для других. К примеру, права доступа 640 имеют смысл: право читать листинг для владельца, право на чтение для группы и право на других. Вы можете добавить символ, который характеризует тип файла, в начале символической записи прав доступа. В среде сервера хостинга вы столкнетесь со следующими типами файлов.

Ниже представлен обзор наиболее часто используемых прав доступа. Дополнительные права могут быть произвольно объединены, а сумма соответствующих значений получит итоговое значение дополнительных прав. Мы пишем эту цифру три цифры, представляющие права доступа к файлу.

Кому назначаются права доступа

В окне свойств объекта, в колонке Имя указаны пользователи или точнее, ка­тегории пользователей, которые обладают какими-то специфическими права­ми на этот объект: зарегистрированный пользователь обозначен силуэтом одного человека, группа – два силуэта и все остальные – три силуэта. Рассмо­трим их подробнее.

Мы не будем иметь дело с важностью дополнительных прав. С точки зрения пользователя это право не имеет никакого эффекта. Если файл установил права по умолчанию или 777 прав, нет никакой разницы в функциональности. Поэтому любое переопределение до 777 не требуется. Доступны инструкции по сбросу прав доступа в программе.

Обсуждение форума для статьи Права доступа к файлам

Но будьте осторожны, чтобы параметр со значением прав доступа был правильно введен в восьмеричную систему. В этой статье еще нет темы для обсуждения. В прошлый раз мы показали, к чему принадлежит пользователь и как; сегодня мы говорим о том, как система охраняет и не принуждает никого «делать то, что он не делает».

Зарегистрированный пользователь . По умолчанию первым таким пользо­вателем указан владелец - тот, кто создал этот объект. Им может быть любой зарегистрированный пользователь или root (в Finder root фигурирует под име­нем system).

Группа . В окне свойств обычно указывается ее имя, в нашем примере это staff. Само понятие группы используется для того, чтобы так-то отделить от «всех остальных» некий определенный круг людей, которым нужно дать осо­бые права доступа к этому объекту.

Способ, которым система находит этот тройной переключатель для каждого конкретного действия, выполняемого каждой конкретной программой, будет смотреть на него через мгновение; мы скоро предположим, что у нас уже есть переключатели и объяснить их смысл.

Это, конечно, полная глупость: почему это должно быть? Новичок может утверждать, что контент не меняется, но исчезает; но в приличной файловой системе, в общем, это неверно. Если вы все еще так думаете, прочтите пятую часть нашей серии и особенно сосредоточьтесь на сторонниках жесткой линии!

Например, если речь идет о каком-то важном документе в пределах организа­ции, - скажем, рабочем расписании, - то доступ к нему с правом чтения могут иметь все сотрудники этой структуры, а право изменять его - только строго определенный круг лиц. Администратор, определяющий привилегии доступа к этому файлу, объединит людей, имеющих право вносить коррективы в файл, в отдельную группу и даст ей нужные права.

В противном случае, с файлами, содержащими программы, это понятно - они только начинаются. Текстовые файлы также «запускаются», передавая оболочку в виде списка команд для выполнения. Пользователь может свободно использовать такую ​​программу; но не может его прочитать - и поэтому даже не учиться и не «трещать»! На самом деле это не так: просто обратите внимание, что папка - это ничего, кроме файла, содержащего имена вложенных файлов и папок, - и важность прав доступа становится абсолютно понятной.

Когда меняется папка? Конечно, всякий раз, когда мы хотим переименовать или удалить любой из объектов в папке, или если мы хотим добавить новый объект в папку. Но, конечно же, мы используем его для доступа к объектам, которые лежат внутри! Посмотрите на следующий пример. Переключатель г, ш и х, как мы описали их, действительно очень сильный, но все еще не достаточно, чтобы покрыть все ситуации, с которыми они сталкиваются в современных операционных системах можно встретить.

В Mac OS по умолчанию заданы и используются такие группы: Admin - все зарегистрированные администраторы, и в том числе tool, Wheel - все зареги­стрированные системные администраторы, по умолчанию это только root, и Staff – все зарегистрированные пользователи и root, группы можно создавать в панели Учетные зашей в Системных настредтках.

Остальные (everyone) – это все иные пользователи, которые не являются владельцами этого элемента и не входят в группу, обладающую особыми права­ми по отношению к этому объекту.

Какие бывают права доступа

Что касается прав, связанных с определенным объектом, то в Finder вы сможе­те задать такие из них:

  • Только чтение обозначает, что пользователь может, если это файл, откры­вать его, а если папка – открывать и копировать ее содержимое. Обычно такие права имеют документы и папки, предназначенные лишь для просмотра. Поль­зователь с правом «только чтение» не сможет как-то изменять или удалять эти объекты. Визуальным обозначением папки, содержимое которой вы не можете изме­нять, служит значок «перечеркнутый карандаш», который появляется В левом нижнем углу окна Finder.
  • Только запись (почтовый ящик) обозначает, что пользователь может со­хранять в этой папке свои файлы. При этом если в паре с пей не идет право «чтение», то он. даже не сможет видеть, что находится внутри этой папки. По­лучается такой «черный ящик», в который можно только что-либо бросить.
  • Чтение и запись – пользователь имеет все права: он может- и открывать этот элемент, и изменять его, и удалять. Обычно такие права доступа имеют создан­ные вами папки и документы.
  • Нет доступа полное отсутствие каких-либо прав по отношению к этому объекту. Пользователь сможет только видеть его иконку – и все. Так, если вы откроете личную папку другого пользователя, то папки, которые вы не можете открывать, будут обозначены дорожным знаком «Проезд запрещен».
  • Настройка прав доступа к объекту

    Когда вы создадите в своей личной папке новую папку или сохраните сюда соб­ственный файл, этот объект получит такие права доступа: владелец имеет все права – может и записывать в нее файлы, и открывать содержащиеся объекты; члены группы staff (то есть зарегистрированные пользователи), могут просматривать ее содержимое; все остальные (то есть те, кто подключился к вашему Маку с гостевыми правами) - тоже просматривать ее содержимое.

    Как видите, права, которые получает каждая создаваемая вами папка, очень демократичны (они существенно отличаются от предустановленных папок - к ним имеете доступ только вы, как владелец). Если вы не хотели бы, чтобы каж­дый пользователь вашего компьютера имел доступ ко всей информации в этой папке, обязательно отредактируйте связанные с ней права.

    В окне выбора пользователей и групп есть объект Адресная книга. Выделив его, вы получите доступ к списку людей, чьи контакты хранятся в вашей Адресной книге. Пользователи, которых вы. добавите туда, будут автоматически регистрироваться па вашем Маке только для сетевого доступа.

    Пользователи или группы, которые в окне свойств находятся в верхней части списка пользователей, имеют преимущество перед нижними. Например, если вы добавите в список группу kids и дадите им права чтения и записи, то они уже не будут ограничены правами группы staff, хоть и будут входить в ее число.

    Учтите, что свободно изменять права доступа к объектам могут только админи­страторы. Если обычный пользователь, например, попробует «чужой» документ сделать «своим», ему придется ввести пароль администратора.

    Групповая настройка прав доступа

    Как быть, если необходимо изменить права доступа к нескольким объектам? Конечно, вам не придется перебирать их по одному. Есть несколько вариантов решения этой задачи.

  • Нужно изменить права доступа к нескольким объектам , которые находятся в одной папке, но не ко всему содержимому этой папки. Выделите нужные объ­екты. Это должны бьть однородные объекты, то есть, только файлы или толь­ко папки. Дальше, удерживая нажатой клавишу Alt, выберите Файл>Показать инспектор. Откроется общее окно свойств, в котором вы, развернув раздел Общий доступ и прав доступа, сможете изменить нрава доступа к всем вы­деленным объектам.
  • Нужно изменить права доступа к папке (диску) и всем объектам, которые на­ходятся внутри. Может случиться, что из-за ваших неправильных действий или некорректной работы каких-то программ были изменены права доступа к вашей личной папке или ее содержимому Это может повлиять на работу программ, хранящих свои файлы в вашей личной папке (например, Mail и Адресной кни­ги).

    Если при попытке запустить такую программу вы получите сообигение, что «Программа не отвечает» или что-то в этом роде, проверьте, правильно ли за­даны привилегии доступа к папке -/Библиотеки/.

  • Вы должны быть единственным пользователем с правами чтения и записи. Все остальные должны иметь категорию «нет доступа».

  • Игнорировать права доступ на диске (томе) , В окне свойств незагрузочно­го диска, в разделе Общий доступ и пра&а доступа, есть опция Игнорировать владельцев в этом томе. Если она отключена, то есть права доступа на этом томе принимаются во внимание, вы можете столкнуться с ситуацией, что вам недоступны ваши же документы, которые находятся в старой личной папке (из которой вы давно «переехали»).
  • В таком случае включите Игнорировать владельцев в этом томе и спокойно открывайте все документы. Иногда для этого, может потребоваться перезагру­зить компьютер.

    «Скорая помощь» для прав доступа

    Советую очень осторожно относиться к изменению прав доступа, особенно к папкам, содержащим системные и программные компоненты. После некото­рых, казалось бы, совершенно безобидных изменений – например, запрещения всем остальным пользователям иметь доступ к системным папкам – возможна неправильная работа системы и остальных программ.

    Поэтому лучше ограни­читься настройкой прав для своих собственных папок, которые вы хотели бы скрыть от всеобщего доступа.

    Но не всегда положение дел с правами будет зависеть только от вас. Есть ряд ситуаций, после которых возможны изменения в правах доступа к системным компонентам, что чревато сбоями в работе системы и некоторых программ. Перечислим основные причины появления проблем с правами.

  • Установщики программ сторонних производителей могут некорректно уста­навливать права для своих папок и файлов, и даже для папки /Программы/, Симптомом таких нарушений становится появление вопросительного знака вместо иконок программ в Доке и, возможно, проблемы с подключением к Интернету.
  • Перезагрузившись с другого системного диска и включив опцию Игнориро­вать владельцев в этом томе, вы фактически получаете права суперпользова­теля по отношению ко всем файлам Mac OS X, которые находятся на жестком диске – можете переносить, удалять и изменять даже ее системные компонен­ты. Чтобы избежать дальнейших проблем в работе такой системы, лучше не вы­полнять никаких действий С незнакомыми элементами, даже не открывать их.
  • Решить проблемы в работе системы, связанные с неправильно установленны­ми правами, можно с помощью программы Дисковая утилита (/Программы/ Служебные программы/). В левом окне профаммы вылелите диск (или раздел диска), где находится «проблемная» Mac OS, в правом – откройте закладку Первая помощь (First Aid). Что можно сделать:

    Проверить права доступа . Программа проверит, нет ли конфликтов в правах доступа на этом диске. Вы получите отчет о проверке, на основании которого сможете решить, нужно ли их исправлять или нет.

    Восстановить права доступа . Если в ходе проверки прав доступа были обнаружены какие-то проблемы, можете попробовать их исправить. На сообщения типа «ACL обнаружен, но не ожидается», можно не обращать внимания. Наличие ACL не нарушает работы системных компонентов и Дисковая утилита их, как правило, не удаляет.

    В Леопарде восстанавливать права доступа можно без перезагрузки с установочного диска, как того требовали предыдущие версии Mac OS. Права доступа ко всем компонентам операционной системы и программам Apple будут сброшены в состояние «по умолчанию». Программы Apple в процессе установки записывают информацию о своих компонентах в папку /Библиотеки/Receipts/. Эти данные дисковая утилита и использует для восстановления прав. Если содержимое папки со сведениями об этих пакетах было уничтожено, утилита восстановит только системные права.

    Без изменений останутся программы сторонних производителей, и если они при установке изменяли права доступа к системному программному обеспечению, то после восстановления прав доступа могут работать некорректно.

    Средства обмена данными между пользователями

    До сих пор мы рассказывали как Mac OS защищает данные пользователей от постороннего доступа. Но есть множество ситуаций, когда наоборот - многие данные, такие как медиатека iTunes или фотоснимки iPhoto должны стать до­ступными всем пользователям одного Мака. Рассмотрим, какие есть средства организацгии обмена файлами всех зарегистрированных пользователей.

    Папка Общий доступ . Находится в папке /Пользователи/. Информация вну­три этой папки доступна всем пользователям, – они могут копировать из нее существующие объекпл и записывать свои.

    Папка Общие . Находится в вашей личной папке. Информация в этой папке доступна остальным пользователям только с правом чтения. Все могут могут открывать ее, просматривать файлы и что-либо из нее копировать.

    Папка Почтовый ящик . Находится в папке -/Общие/). Только вы будете иметь к ней полный доступ. Все остальные могут в нее только что-либо запи­сывать, без права даже просматривать ее содержимое.

    Итак, если вам нужно предоставить файл или папку для всеобщего пользования – поместите ее в папку /Пользователи/Общий доступ/. Только не спешите копировать туда свою медиатеку или фототеку. Чтобы разместить в ней файлы каких-то программ, лучше обратиться к справке этих программ – здесь могут быть нюансы относительно того, какие компоненты лучше туда скопировать и как остальным пользователям «подключиться» к общим данным. Но если музыкальные файлы или изображения хранятся у вас за пределами медиатеки или фототеки, можете смело переносить их в папку Общий доступ – они тут же станут доступными для всех пользователей.

    Если хотите, чтобы все могли пользоваться вашими файлами, но не могли их удалять или добавлять свои - запишите эти файлы в папку -/Общие/. И, наконец, чтобы передать файл кому-либо лично, бросьте его в Почтовый ящик этого пользователя.

    Вы также можете создавать и другие папки для обмена данными, назначая остальным пользователям соответствующие права доступа.

    В операционной системе Linux есть много отличных функций безопасности, но она из самых важных — это система прав доступа к файлам. Linux, как последователь идеологии ядра Linux в отличие от Windows, изначально проектировался как многопользовательская система, поэтому права доступа к файлам в linux продуманы очень хорошо.

    И это очень важно, потому что локальный доступ к файлам для всех программ и всех пользователей позволил бы вирусам без проблем уничтожить систему. Но новым пользователям могут показаться очень сложными новые права на файлы в linux, которые очень сильно отличаются от того, что мы привыкли видеть в Windows. В этой статье мы попытаемся разобраться в том как работают права файлов в linux, а также как их изменять и устанавливать.

    Основные права доступа к файлам в Linux

    Изначально каждый файл имел три параметра доступа. Вот они:

    • Чтение — разрешает получать содержимое файла, но на запись нет. Для каталога позволяет получить список файлов и каталогов, расположенных в нем;
    • Запись — разрешает записывать новые данные в файл или изменять существующие, а также позволяет создавать и изменять файлы и каталоги;
    • Выполнение — вы не можете выполнить программу, если у нее нет флага выполнения. Этот атрибут устанавливается для всех программ и скриптов, именно с помощью него система может понять, что этот файл нужно запускать как программу.

    Но все эти права были бы бессмысленными, если бы применялись сразу для всех пользователей. Поэтому каждый файл имеет три категории пользователей, для которых можно устанавливать различные сочетания прав доступа:

    • Владелец — набор прав для владельца файла, пользователя, который его создал или сейчас установлен его владельцем. Обычно владелец имеет все права, чтение, запись и выполнение.
    • Группа — любая группа пользователей, существующая в системе и привязанная к файлу. Но это может быть только одна группа и обычно это группа владельца, хотя для файла можно назначить и другую группу.
    • Остальные — все пользователи, кроме владельца и пользователей, входящих в группу файла.

    Именно с помощью этих наборов полномочий устанавливаются права файлов в linux. Каждый пользователь может получить полный доступ только к файлам, владельцем которых он является или к тем, доступ к которым ему разрешен. Только пользователь Root может работать со всеми файлами независимо от их набора их полномочий.

    Но со временем такой системы стало не хватать и было добавлено еще несколько флагов, которые позволяют делать файлы не изменяемыми или же выполнять от имени суперпользователя, их мы рассмотрим ниже:

    Специальные права доступа к файлам в Linux

    Для того, чтобы позволить обычным пользователям выполнять программы от имени суперпользователя без знания его пароля была придумана такая вещь, как SUID и SGID биты. Рассмотрим эти полномочия подробнее.

    • SUID — если этот бит установлен, то при выполнении программы, id пользователя, от которого она запущена заменяется на id владельца файла. Фактически, это позволяет обычным пользователям запускать программы от имени суперпользователя;
    • SGID — этот флаг работает аналогичным образом, только разница в том, что пользователь считается членом группы, с которой связан файл, а не групп, к которым он действительно принадлежит. Если SGID флаг установлен на каталог, все файлы, созданные в нем, будут связаны с группой каталога, а не пользователя. Такое поведение используется для организации общих папок;
    • Sticky-bit — этот бит тоже используется для создания общих папок. Если он установлен, то пользователи могут только создавать, читать и выполнять файлы, но не могут удалять файлы, принадлежащие другим пользователям.

    Теперь давайте рассмотрим как посмотреть и изменить права на файлы в linux.

    Как посмотреть права доступа к файлам в Linux

    Конечно, вы можете посмотреть права доступа к файлам в Linux с помощью файлового менеджера. Все они поддерживают эту функцию, но так вы получите неполную информацию. Для максимально подробной информации обо всех флагах, в том числе специальных, нужно использовать команду ls с параметром -l. Все файлы из каталога будут выведены в виде списка, и там будут показаны все атрибуты и биты.

    Чтобы узнать права на файл linux выполните такую команду, в папке где находится этот файл:


    За права файлов в linux тут отвечают черточки. Первая это тип файла, который рассмотрен в отдельной статье. Дальше же идут группы прав сначала для владельца, для группы и для всех остальных. Всего девять черточек на права и одна на тип.

    Рассмотрим подробнее, что значат условные значения флагов прав:

    • — нет прав, совсем;
    • —x — разрешено только выполнение файла, как программы но не изменение и не чтение;
    • -w- — разрешена только запись и изменение файла;
    • -wx — разрешено изменение и выполнение, но в случае с каталогом, вы не можете посмотреть его содержимое;
    • r— — права только на чтение;
    • r-x — только чтение и выполнение, без права на запись;
    • rw- — права на чтение и запись, но без выполнения;
    • rwx — все права;
    • —s — установлен SUID или SGID бит, первый отображается в поле для владельца, второй для группы;
    • —t — установлен sticky-bit, а значит пользователи не могут удалить этот файл.

    В нашем примере, файл test1 имеет типичные разрешения для программ, владелец может все, группа только чтение и выполнение, а все остальные — только выполнение. Для test2 дополнительно установлен флаг SUID и SGID. А для папки test3 установлен Sticky-bit. Файл test4 доступный всем. Теперь вы знаете как посмотреть права на файл linux.

    Как изменить права файла в Linux

    Чтобы изменить права на файл в linux вы можете использовать утилиту chmod. Она позволяет менять все флаги, включая специальные. Рассмотрим ее синтаксис:

    $ chmod опции категория действие флаг файл

    Опции сейчас нас интересовать не будут, разве что только одна. С помощью опции -R вы можете заставить программу применять изменения ко всем файлам и каталогам рекурсивно.

    • u — владелец файла;
    • g — группа файла;
    • o — другие пользователи.

    Действие может быть одно из двух, либо добавить флаг «+», либо убрать флаг — «-«. Что касается самих прав доступа, то они аналогичны выводу утилиты ls: r — чтение, w — запись, x — выполнение, s — suid/sgid, в зависимости от категории, для которой вы его устанавливаете, t — устанавливает sticky-bit. Например, всем пользователям полный доступ к файлу test5:

    chmod ugo+rwx test5

    Или заберем все права у группы и остальных пользователей:

    chmod go-rwx test5

    Дадим группе право на чтение и выполнение:

    chmod g+rx test5

    Остальным пользователям только чтение:

    Для файла test6 установим SUID:

    А для test7 — SGID:

    Посмотрим что получилось:


    Как видите, изменить права на файл в linux очень просто. К тому же вы можете изменить основные права с помощью файлового менеджера.

    Выводы

    Вот и все, теперь вы знаете не только что такое права доступа к файлам в linux, но и как их посмотреть, и даже как их изменить. Это очень важная тема, в которой действительно стоит разобраться новичкам, чтобы использовать свою систему более полноценно. Если у вас остались вопросы, спрашивайте в комментариях!

    На завершение хочу предложить неплохое видео про права доступа в linux:



    Есть вопросы?

    Сообщить об опечатке

    Текст, который будет отправлен нашим редакторам: