Как изменить права доступа к файлу?

Если вы просто пользователь Windows, то скорее всего вы даже не слышали, что такое права доступа к файлам. Но если вы даже новичок в Linux, то скорее всего вы столкнулись у же с тем, что вам пришлось столкнуться с этим понятием. И наверняка у вас возник простой вопрос: как изменить права доступа к файлу или папке?

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

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

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

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

Первые четыре значения определяют, к какому типу пользователей (владельцу, группе, остальным или всем пользователям) применять изменение прав доступа, значение по умолчанию — а, ко всем пользователям. Последние три обозначения — изменяемые права доступа. Если вас интересует ремонт кондиционеров Daikin, то лучше делать это в Москве у официального дилера.

Таким образом, чтобы установить изменить права доступа на 644 (независимо от предыдущих прав доступа) можно применить следующие две команды:

Первая команда задает разрешение для всех: пользователя, группы и остальных (а) на чтение, но не на запись и выполнение (+r-w-x) файла. Вторая разрешает пользователю (u) записывать (+w) в файл. Для выяснения текущего значения атрибутов введите:

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

-r—r—r—

Самый первый символ в строке обозначает, является ли объект файлом, каталогом или символической ссылкой. Файлы обозначаются дефисом (-), каталоги — буквой d, а символические ссылки — буквой l. Таким образом, без первого символа остается 9 символов, три группы по три, представляющие права доступа по порядку для владельца, группы и остальных.

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

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

Или же, поскольку по умолчанию изменения касаются всех пользователей, можно просто ввести:

Вот такими простыми командами можно изменить права доступа к папкам и файлам. Возможно запомнить всё сразу трудно, но главное поймите принцип и тогда вам будет легко использовать эти команды.

Оцените статью
Просто Линукс
Добавить комментарий

  1. Слава

    У меня ничего не выходит!
    1. Открываю терминал в дирктории, где находится файл areca.sh
    2. Ввожу в терминале команду:
    chmod +x areca.sh
    3. Смотрю Свойства файла areca.sh — ничего не поменялось! В пункте «Позволять выполнение файла, как программы» нет «птички».
    Вручную (мышью) «птичка» тоже не ставится.
    При этом, на вкладке «Права» я указан, как владелец, с доступом «Чтение-запись» и группа «root».
    Что я делаю не так???

  2. prostolinux автор

    А где физические находится файл, на какой файловой системе?

  3. Слава

    Я, похоже, догадался — в чём тут дело!
    Моя ОС Linux Mint Mate 17.1 (64bit), файловая система Ext4, но все файлы программы находятся на отдельном диске, на разделе NTFS.
    Я сейчас скопировал их на раздел Ext4 и всё стало получаться! Права изменяются мышкой на соответствующей вкладке Свойств файла. И сам файл areca.sh стал исполняемым, и запускается двойным кликом.
    Т.е., все манипуляции и команды среды Linux на разделе с NTFS просто так не работают!

  4. prostolinux автор

    Я так подумал, поэтому и спросил, права можно выставить этими командами только на файловых системах linux. Успехов!