Что drwxr xr x linux

Уровень доступа к файлам и каталогам Linux: наши права и возможности в Линукс

Как вы уже наверное знаете, полнейшими правами в Линукс обладает только root. Но как организованны данные права? Где они исполняються? Как их настроить? и многое другое будет разобранно в данной статье. Начнём с самого простого, если вы находитесь под обычным пользователем, но вам нужны права root, то не обязательно что-то делать сверх сложное, набирайте команду su — и зная пароль root, вы получите полные права root’a. Также вы можете воспользоваться виртуальным Термналом(см. статья о Терминале). Но сейчас более подробно о правах на сами файлы и каталоги: знакомая нам уже команда ls -l выдаёт к примеру..

debian2x:/home# ls -l итого 8 drwxr-xr-x 30 jakudza jakudza 4096 Авг 5 23:49 jakudza drwxr-xr-x 2 test test 4096 Авг 6 22:14 test
debian2x:/home#

В первом значении прописаны сами прова на действия с файлами, далее написано что Владельцем файла являеться jakudza, и группа тоже jakudza. Но нас интересует первое поля определяющее тип файла и права доступа.

Рассмотрим пример: drwxr-xr-x условно данные значения можно разбить на 4ре части.

Первая часть — состоит из одного символа. drwxr-xr-x значения могут быть такими:
[-] — обычный файл
[d] — каталог
[b] — файл блочного устройства
[c] — файл символьного устройства
[s] — socket
[p] — pipe
[l] — link

Как мы видим, в нашем случае — это каталог «jakudza», расмотрим далее.. Последующие символы можно разбить на три группы по три символа:

drwxr-xr-x права доступа для владельца файлов
drwxr-xr-x права доступа для группы пользователей
drwxr-xr-x права доступа для всех остальных пользователей системы.

Эти права одинаковы как для файлов так и для папок, но значение немного отличаеться. Значение их таково:

r — право чтения файла или право просмотреть содержимое каталога
w — право записи в файла или право создавать или удалять файлы в каталоге
x — право запуска файла на выполнение или право перейти в этот каталог!

Порой именно эти права не дают нам многое, что мы не понимаем при выполнении тех или иных действий.

Каким образом изминять права на файл?

Команда chmod — меняет права, при правильном использовании) И так: chmod xyz имя-файла

Что означают буквы xyz? Вместо x вы должны подставить:

[u] — пользователь, владелец файла
[g] — группа
[o] — все пользователи вне группы, которым принадлежит данный файл
[a] — все пользователи системы

Вместо y вы должны подставить:

[+] — предоставляет право
[-] — лишает прав
[=] — меняет прежние на новые права

Вместо z вы должны подставить:

[r] — чтение
[w] — запись
[x] — выполнение

И так, правильно данная команда выглядит к примеру так:

chmod go-rw file

команда удаляет право на чтение, на запись — кроме самого владельца файла) Неограничивайте себя одним источником, читайте, смотрите в поисковиках — дабы понять смысл полностью)

Источник

Права доступа к файлам в Linux

В этой статье мы поговорим об обозначении прав доступа к файлам в Unix подобных системах и на простых примерах разберем, что же обознают цифры 777, 755, 644 и т.д., а также символы drwxrwxrwx.

Права доступа могут быть представлены как в буквенном, так и цифровом виде, то есть к примеру
запись «777» является полностью идентична записи «drwxrwxrwx» или «-rwxrwxrwx».

Существует 3 вида прав доступа:

  • чтение — обозначается как r (read),
  • запись — обозначается как w (write),
  • выполнение — обозначается как x (execute).

И 3 типа пользователей, которым эти права раздаются:

  • Владелец файла или директории
  • Группа пользователей, которой принадлежит владелец
  • Все остальные
Читайте также:  Linux stop process by pid

Рассмотрим символьное представление прав доступа.

к примеру «drwxrwxrwx» (полный доступ всем) можно поделить на 4 секции: d rwx rwx rwx

1 секция можеть быть либо «d»- директория, либо «-» — файл.

2 секция показывает права доступа владельца файла или директории.

r-чтение, w-запись, x- выполнение.

3 секция показывает права доступа группы в которой находится владелец, rwx — аналогично

4 секция показывает права доступа все остальных пользователей системы.

Расшифруем несколько примеров для закрепления:

Допустим мы имеем директорию test, ниже представлен ее вывод

gt# ls -la
total 6
drwxr-xr-x 3 igor users 512 May 16 11:06 .
drwxr-xr-x 5 igor users 512 May 16 11:05 ..
-rwxr-xr-x 1 igor users 0 May 16 11:06 script.pl
drwxr—— 2 igor users 512 May 16 11:06 test2
-rwxrw-r— 1 igor users 0 May 16 11:06 text.txt

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

script.pl имеет права при которых владелец может все (rwx), а все остальные, в том числе пользователи группы владельца только чтение и выполнение (r-x).

test2 видим, что это директория, владелец может все (rwx), группа владельца только чтение (r- -), у все остальных никаких прав доступа нет (- — -).

text.txt владелец может все (rwx), группа владельца может читать и изменять файл (rw-), все остальные пользователи только читать (r- -).

Теперь рассмотрим цифровое значение прав доступа.

3 цифры прав доступа это 3 секции:владелец, группа владельца, все остальные.

У каждого типа доступа есть свое значение:

  • r (чтение) — 4
  • w (запись) — 2
  • x (выполнение) — 1

Чтобы получить цифру доступа просто складываем права для каждой секции отдельно, то есть:

7 (4+2+1) — чтение, запись, выполнение;

6(4+2) — чтение, запись;

5(4+1) — чтение, выполнение;

4 — только чтение;

1 — только выполнение.

Если взять нашу директорию test, то права доступа будут выглядеть следующим образом:

script.pl 755 или -rwxr-xr-x

text.txt 764 или -rwxrw-r—

test2 740 или drwxr——

Чтобы изменить права доступа в Linux необходимо воспользоваться командой chmod

Источник

Сколько в людях ни разочаровывайся — всё равно удивят

Права доступа к файлам в Linux или почему rwxr-xr-x=755

12.03.09 23:18 / Обновлено 23.11.11 15:48 | Версия для печати Linux

Пользователи и группы

Linux — многопользовательская система. Человек может отличать пользователей реальных (учётные записи людей, которые работают за компьютером) и системных (от имени которых запускаются системные процессы), но для машины разницы между ними нет никакой. Каждый пользователь представлен его уникальным идентификатором (UID, user ID), которым компьютер и оперирует в работе.

Пользователи могут объединяться в группы пользователей. В одной группе может находиться сколько угодно пользователей, так же как и один пользователь может состоять в скольких угодно группах. Любой пользователь обязательно состоит хотя бы в одной группе. По аналогии с пользователями, группы в cиcтеме также представлены их идентификаторами (GID, group ID).

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

Посмотреть идентификатор пользователя можно командой id. Например:

$ id root uid=0(root) gid=0(root) groups=0(root)

Если имя не вводить, то выйдет информация про текущего пользователя. И кстати да, у root-а всегда UID=GID=0.

Файлы и права

Каждый файл в Linux принадлежит какому-либо пользователю (пользователь-владелец, владелец) и одновременно группе пользователей (группа-владелец). Пользователь-владелец не обязательно должен состоять в группе-владельце. Для каждого файла в Linux определяются отдельно права доступа для владельца, группы-владельца и для всех остальных пользователей.

Разновидностей прав доступа всего три: чтение, запись и выполнение, но их совместное использование даёт нам 2 3 =8 комбинаций (3 категории прав и 2 варианта для каждого права — установлено оно или нет, см. комбинаторику).

Рассмотрим права доступа к файлу, которые выводятся как:

Запись — rwx r-x r-x состоит из трёх блоков: это права доступа к файлу владельца , группы-владельца и всех остальных . Про первый символ минуса поговорим отдельно позже.

Буквы блока rwx определяют, соответственно, право доступа на чтение (r, read), запись (w, write) и выполнение (x, execute). Порядок букв менять нельзя. Если соответствующего права нет, то вместо буквы ставится минус (как, например, во втором и третьем блоках).

Читайте также:  Загрузка пакетов без установки linux

В данном примере у владельца файла полные права, а у группы и всех остальных — только чтение и выполнение, запись запрещена (удаление также относится к записи).

Буквы и цифры

Компьютер работает в двоичном коде. В двоичном коде он хранит данные на жёстком диске и в нём же производит вычисления.

Оперируя с числами в жизни мы имеем дело с десятичной системой счисления, так она называется потому, что все числа записываются десятью цифрами: от 0 до 9. В двоичной системе счисления цифр всего две: ноль и единица. К примеру, посчитаем от 0 до 7 в десятичной и двоичной системах, это поможет понять дальнейшее:

Десятичная система 0 1 2 3 4 5 6 7
Двоичная система 0 1 10 11 100 101 110 111
Двоичная система (по 3 цифры) 000 001 010 011 100 101 110 111

Каждый блок rwx — это три бита информации по правам. Первый бит — чтение, второй — запись, третий — выполнение. Если право есть, бит равен 1, если нет — 0. То есть, для нашего примера, rwx = 111 = 7 , r-x = 101 = 5 , поэтому rwxr-xr-x = 111101101 = 755 .

Большинство сайтов даёт такое правило пересчёта: x=1, w=2, r=4, нужные права просуммировать. Например, r-x = 4+1 = 5. Это даёт метод пересчёта, но не приносит понимания. Понимать надо так: права на чтение и запись это r-x = 101 (в двоичной записи) = 100+1 (в двоичной системе) = 4+1 (в десятичной системе) = 5.

Математики нервно курят, настолько лихо я использую знак равенства.

Это всё неправильно!

Потому что права доступа к файлу задаются не 9, а 12 битами. То есть:

А всё то, о чём говорилось раньше — это укороченная запись прав.

На что уходят первые три бита?

Первый бит — SUID. Устанавливается на исполняемый файл. В этом случае файл выполнится от имени не текущего пользователя (как обычно и бывает), а от имени владельца файла. Группа для запуска — группа текущего пользователя.

Второй бит — SGID. Устанавливается на исполняемый файл. То же самое, что и для SUID, но для запуска подменяется не владелец, а группа.

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

Установка этих битов (и их комбинаций) в цифровом виде считается так же, как и установка прав. То есть, при установке Т-бита на файл с правами 755, получим права 1755.

Запись прав в буквенном виде всё-таки предназначена для человека, поэтому в ней есть нюансы. Установка SUID заменит x в блоке владельца на s и наш пример будет выглядеть как rwsr-xr-x . Установка SGID проделает то же самое с блоком группы-владельца: rwxr-sr-x . Установка Т-бита поменяет x на t в блоке остальных пользователей: rwsr-xr-t .

Забытый минус

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

Источник

Команда chmod в Linux


Команда chmod, команда chown и команда chgrp.

Команда chmod

Команда chmod предназначена для изменения прав доступа файлов и директорий в Linux. Название команды произошло от словосочетания «change mode».

Синтаксис команды chmod следующий:

Разрешения можно задавать двумя способами:

Изменение прав доступа командой chmod

Запись прав доступа числом

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

  • Первая цифра используется для указания прав доступа для пользователя.
  • Вторая цифра для группы.
  • Третья для всех остальных.

В таблице ниже приводятся все возможные комбинации разрешений rwx и соответсвующие им числа (которые используются в команде chmod):

Число Разрешения Символьное обозначение
0 разрешения отсутствуют
1 x — запуск —x
2 w — изменение -w-
3 x+w — запуск+изменение -wx
4 r — чтение r—
5 r+x — чтение+запуск r-x
6 r+w — чтение+изменение rw-
7 r+w+x — чтение+изменение+запуск rwx

Рассмотрим использование команды chmod с записью прав доступа числом на примере. Установим для файла права доступа 764:

Это означает (см. таблицу выше), что для файла myfile мы устанавливаем права доступа 7 6 4 , которые означают:

  • 7 — права для владельца-пользователя. Владелец файла может читать, изменять и запускать файл (r+w+x).
  • 6 — права для группы. Пользователи, которые принадлежат группе могут читать и изменять файл (r+w).
  • 4 — права для всех остальных. Все остальные могут только читать файл (r).

Если записать 764 с помощью символов (см. таблицу), то мы получим: «rwxrw-r-».

В таблице ниже приведены некоторые часто используемые значения числовых значений прав доступа:

Числовое
обозначение
«rwx»-обозначение Описание
400 -r——— Владелец файла может только читать файл. Для всех остальных все действия с файлом запрещены.
644 -rw-r—r— Все пользователи могут читать файл. Владелец может изменять файл.
660 -rw-rw—- Владелец и группа могут читать и изменять файл. Для всех остальных все действия с файлом запрещены.
664 -rw-rw-r— Все могут читать файл. Владелец и группа могут изменять.
666 -rw-rw-rw- Все могут читать и изменять файл.
700 -rwx—— Владелец может читать, изменять и запускать файл. Для всех остальных все действия с файлом запрещены.
744 -rwxr—r— Все могут читать файл. Владелец может также изменять и запускать файл.
755 -rwxr-xr-x Все могут читать и запускать файл. Владелец может также изменять файл.
777 -rwxrwxrwx Все пользователи могут читать, изменять и редактировать файл.

Запись прав доступа символами

Как вы можете видеть, в данном формате права доступа задаются символами rwx, но в синтаксисе используются и другие вспомогательные символы, например, математические операции «+» и «» и такие символы как, например, «g» или «u».

Общий синтаксис можно записать примерно так:

Обозначения для владельцев файла следующие:

Обозначение Описание
u Владелец-пользователь.
g Группа.
o Все остальные.
a Вообще все.

Математические операции означают следующее:

Оператор Описание
+ Добавляет к текущим правам доступа новое разрешение.
Удаляет из текущих прав доступа определенное разрешение.
= Устанавливает полностью новые разрешения (предыдущие перезаписываются новыми).

В одной команде можно перечислять владельцев и их разрешения через запятую (см. пример ниже).

В данном случае мы не используем обозначения для владельцев, а значит разрешения устанавливаются для всех пользователей. «+x» означает — установить разрешение на запуск (x) файла для всех пользователей. Это эквивалентно выполнению команды: chmod a+x myfile1 .

Здесь используется обозначение g и символ равенства «=». Это означает, что для группы мы устанавливаем права доступа на чтение и запись файла (rw).

Для владельца файла (u) мы удаляем разрешение на изменение (w) файла.

Разрешаем владельцу (u) и группе (g) запускать файл (x).

Это как раз тот случай, когда мы перечисляем владельцев через запятую и устанавливаем для них разрешения. Для владельца файла (u) мы разрешаем запуск файла, для группы (g) мы запрещаем изменять файл, для всех остальных (o) мы запрещаем читать файл.

Рекурсивное изменение прав доступа

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

И еще один момент. Если пользователь не является владельцем файла, но ему нужно изменить права доступа у данного файла, то команду chmod необходимо выполнять с использованием sudo, например:

Видео-обзор команды chmod

Команда chown — изменение владельца и группы

Для изменения владельца и группы файла используется команда chown.

Для изменения владельца файла используется следующий синтаксис:

Например, установим для файла myfile нового владельца vasya:

Для изменения владельца и группы файла используется следующий синтаксис:

Например, установим для файла myfile нового владельца vasya и группу sambashare:

Команда chgrp — изменение группы

Есть еще одна команда — chgrp. Она позволяет изменить только группу. Например:

Резюме

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

Разрешения задаются для владельца, группы и для всех остальных.

Есть три вида разрешений — r — чтение, w — изменение, x — запуск.

Чтобы изменить разрешения у файла используется команда chmod.

Чтобы изменить владельца или группу используется команда chown.

Чтобы изменить группу используется chgrp.

Источник

Читайте также:  Драйвера для тачпада asus windows 10 64 bit
Оцените статью