Linux

Полный гайд по управлению разрешениями в Linux: chmod, chown и sudo

В этом гайде вы узнаете, как изменять права доступа, переносить владельцев и использовать sudo в Linux, чтобы защитить файлы и безопасно работать с системой.

Обновлено 18 июля 2026 г.
10-15 мин
Средняя
FixPedia Team
Применимо к:Ubuntu 20.04 LTSDebian 11CentOS 8Fedora 34

Введение

В Linux управление разрешениями файлов и директорий — ключевая часть администрирования. Правильные настройки защищают данные от случайного изменения, утечки и обеспечивают безопасное выполнение скриптов. В этом гайде вы узнаете, как быстро и уверенно изменять права доступа с помощью chmod, переносить владельцев с chown, а также безопасно выполнять привилегированные команды с sudo. После выполнения инструкции ваши файлы будут настроены правильно, а работа с системой — безопасной.

Требования

  • Доступ к терминалу с правами root или пользователя, добавленного в группу sudo.
  • Базовые знания работы с консолью Linux.
  • Любая из поддерживаемых дистрибутивов: Ubuntu 20.04 LTS, Debian 11, CentOS 8, Fedora 34.

Пошаговая инструкция

Шаг 1: Проверка текущих прав доступа

Перед изменением прав полезно увидеть текущие настройки.

ls -l /path/to/file

Если вы видите строку вроде:

-rw-r--r-- 1 user group 1234 Jan 01 12:00 file.txt

то файл сейчас доступен для чтения всеми, но не для записи.

Шаг 2: Изменение прав доступа с chmod

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

  • u — владелец, g — группа, o — остальные.
  • r — чтение, w — запись, x — исполнение.

Пример: сделать скрипт исполняемым для владельца и дать чтение остальным:

chmod 755 script.sh

После этого владелец получит rwxr-xr-x, остальные — r-xr-xr-x.

💡 Совет: для быстрого редактирования используйте сокращённые формы: chmod u+x file добавит исполнение только владельцу.

Шаг 3: Изменение владельца и группы с chown

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

chown bob:staff document.txt

Теперь document.txt принадлежит пользователю bob, группе staff. Если вам нужно изменить только владельца, опустите группу:

chown alice document.txt

Шаг 4: Использование sudo для привилегированных команд

Выполнение важных системных команд напрямую от root не рекомендуется. Вместо этого добавьте пользователя в группу sudo и запускайте команды с префиксом sudo.

sudo usermod -aG sudo $USER   # добавить текущего пользователя

Теперь вы можете обновить пакеты без полного root-доступа:

sudo apt update
sudo apt upgrade

⚠️ Важно: всегда проверяйте, какие команды вы запускаете с sudo. Лишний root-доступ может повредить систему.

Шаг 5: Проверка результата изменений

После всех изменений проверьте, что всё настроено правильно:

ls -l /path/to/file

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

sudo -u bob ./script.sh

Если скрипт работает, настройки корректны. В противном случае вернитесь к предыдущим шагам.

Проверка результата

Выполните две команды:

  1. ls -l <путь_к_файлу> — убедитесь, что права соответствуют ожидаемым.
  2. sudo -u <пользователь> <команда> — проверьте, что файл доступен для назначенного владельца.

Если оба пункта выполнены, управление разрешениями завершено успешно.

Возможные проблемы

  • Permission denied при изменении прав. Убедитесь, что у вас есть write-права на директорию, содержащую файл (chmod u+w .).
  • ** chown: невозможно определить пользователя: nobody:** Проверьте, что указанный пользователь или группа существуют (id bob, getent group staff`).
  • **sudo: не удалось выполнить команду:** Проверьте, добавлен ли пользователь в группу sudo (sudo -l -U $USER`).

Решите эти ошибки с помощью шагов выше, и работа с правами доступа пройдёт гладко.

Часто задаваемые вопросы

Как изменить права доступа файла с помощью chmod?
Как изменить владельца файла с помощью chown?
Зачем использовать sudo и как настроить?
Что делать, если возникает ошибка «Permission denied» после изменений?

Полезное

Проверить текущие права доступа
Изменить права доступа с chmod
Изменить владельца и группу с chown
Использовать sudo для привилегированных команд
Проверить результат изменений

Эта статья помогла вам решить проблему?