права доступа к файлам и каталогам являются неотъемлемой частью мира GNU / Linux, и они составляют одну из частей, унаследованных от того, что было в Unix в течение многих лет. Для значительного числа пользователей, которым приходилось сталкиваться с фактом достижения этой платформы в какой-то момент, это одна из тех проблем, которые блокируют и вызывают уважение, но, как и все в жизни, легко понять, даем ли мы правильная помощь.
В этом посте мы постараемся развеять некоторые сомнения и быть максимально ясными, простыми и важными, чтобы каждый мог начать понимать как права доступа к файлам и каталогам работают в GNU / Linux. Это ни в коем случае не продвинутое руководство, поэтому те, у кого уже есть опыт в этой области, могут следовать за ним, потому что мы постараемся быть ясными и подробными для тех, кто только начинает работать с этой операционной системой, или для тех, кто, несмотря на то, что пользовался этой платформой в течение некоторого времени, но до сих пор не научился этому.
Первое, что нужно понять, это то, что разрешения разделены на три группы: владелец, группа и другие, которые представляют разрешения на доступ у которого будет владелец файла или каталога, у которого будет пользователь, принадлежащий к группе, владеющей этим файлом или каталогом, и у которой будут остальные пользователи системы. Чтобы просмотреть эти разрешения, мы можем перейти в любой каталог и выполнить следующее:
ls -l
Мы увидим то же, что и на верхнем изображении этого поста, где у нас есть информация, представленная в нескольких строках и столбцах. Последние показывают нам что-то вроде -rw-r - r– 1 root root 164 11 ноября 2014 г. xinitrc, и то, что мы хорошо видим слева, - это то, что нас больше всего заинтересует, чтобы мы начали понимать, как мы можем управлять разрешениями. Этот первый столбец показывает нам 10 пробелов, каждое из которых имеет разное значение в зависимости от того, занято ли оно:
- b: блочное устройство
- c: символьное устройство (например, / DEV / tty1)
- d: каталог
- l: символическая ссылка (например, / usr / bin / java -> / главная / программы / java / jre / bin / java)
- p: именованный канал (например, / proc / 1 / карты)
- - разрешение не назначено
- r: чтение
- w: письмо
- x: выполнение
Буква d будет присутствовать только в первом пробеле, начиная слева, и это означает, что рассматриваемый элемент является каталогом., поэтому, если это пространство занято дефисом «-», мы будем перед файлом. Потом, следующие девять пространств делятся на три группы по три, и порядок всегда следующий: rwx, который представляет права записи, чтения и выполнения для владельца, группы и других (других) соответственно.
Далее следует число, которое показывает нам количество ссылок на этот файл или каталог, число, которое часто равно 1, иногда может быть 2 и несколько, как минимум, оно имеет другое число. На данный момент это не имеет значения или, по крайней мере, не имеет значения для нашей цели освоения прав доступа к файлам в Linux, поэтому давайте продолжим со следующего поля, поскольку это нас действительно интересует, поскольку тот `` корень '', который мы видим там, означает, что он является владельцем этого файла, а «корень», который мы видим в четвертом столбце, подразумевает, что файл также принадлежит к группе «корень». Затем следующие поля представляют размер inode, дату и имя файла или каталога.
Имея в виду эту информацию, мы сможем начать понимать, что будет дальше, а именно цифровая номенклатура разрешений, что-то очень типичное для GNU / Linux, BSD и других систем * nix. Кроме того, эта номенклатура поможет нам быстро изменить права доступа к файлам с помощью команды chmod, и это то, что мы увидим в другом посте, но пока мы можем сосредоточиться на следующем: Разрешение на чтение означает, что мы можем видеть содержимое указанного файла или каталога, запись означает, что у нас есть разрешение на изменение файла или каталога, а разрешение на выполнение означает, что мы можем выполнить файл или, если мы находимся перед каталогом, что мы можете поискать в нем. (то есть делать "ls"). Это объясняет, почему основные файлы в системе, такие как / usr /, / usr / bin или / usr / lib, имеют разрешение на выполнение, но не имеют разрешения на запись, за исключением владельца, поскольку таким образом все пользователи могут выполнять все команды, но делают не изменять и не удалять ничего, пока мы не получим эти разрешения или не станем «root» с помощью команды «su».
Отличное примечание !! Привет
Я насрал на информацию!