Как исправить ошибку «Отказано в разрешении» при запуске файла sh в Ubuntu

Убунту 18

В этой статье мы познакомим вас с процессом устранения ошибки «Отказано в доступе», с которой вы можете столкнуться при запуске sh-файла в Ubuntu. Эта ошибка обычно возникает, когда у пользователя нет необходимых разрешений для выполнения файла. Давайте углубимся и посмотрим, как можно решить эту проблему.

Чтобы исправить ошибку «Permission Denied» при запуске sh-файла в Ubuntu, вы можете использовать команду chmod, чтобы добавить разрешение на выполнение для соответствующей категории. Используйте команду chmod u+x имя_файла.sh, чтобы предоставить пользователю/владельцу разрешение на выполнение, а затем запустите сценарий, используя ./имя_файла.sh или bash имя_файла.sh.

Понимание прав доступа к файлам в Ubuntu

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

Разрешения представлены в виде строки символов, например, -rw-rw-r–. Первый символ представляет тип файла (- для обычных файлов, d для каталогов). Следующие три символа представляют разрешения для владельца, следующие три — для группы и последние три — для остальных.

В этой строке r означает чтение, w — запись, а x — выполнение. Если разрешение не установлено, оно обозначается знаком -.

Выявление проблемы

Если вы попытаетесь запустить сценарий оболочки (sh-файл) и получите сообщение об ошибке «Permission Denied», это, скорее всего, связано с тем, что для вашей категории пользователей не установлено разрешение на выполнение (x). Вы можете проверить права доступа к файлу с помощью команды ls -l:

ls -l мак.ш

Это выведет что-то вроде -rw-rw-r– 1. Здесь вы можете видеть, что разрешение на выполнение отсутствует для всех категорий.

Исправление ошибки «Разрешение отклонено»

Чтобы исправить ошибку, вам необходимо дать разрешение на выполнение соответствующей категории. Это можно сделать с помощью команды chmod.

Использование chmod для изменения разрешений

Команда chmod изменяет права доступа к файлу. Синтаксис команды — chmod. [who][operator][permissions] имя файла.

  • кем может быть u (пользователь/владелец), g (группа), o (другие) или a (все).
  • оператором может быть + (добавить разрешение), – (удалить разрешение) или = (установить точное разрешение).
  • разрешения могут быть r (чтение), w (запись) или x (выполнение).

Чтобы добавить разрешение на выполнение для владельца файла, вы должны использовать опцию u+x:

chmod u+x mc.sh

Эта команда добавляет (+) разрешение на выполнение (x) пользователю/владельцу (u) mc.sh.

Запуск сценария

После установки разрешения на выполнение вы можете запустить скрипт, используя обозначение ./:

./mc.sh

Или вы можете использовать команду bash:

Баш MC.sh

Оба метода теперь должны работать без ошибки «Отказано в доступе».

Заключение

Понимание прав доступа к файлам в Ubuntu имеет решающее значение для управления доступом к файлам и устранения таких ошибок, как «Разрешение отклонено». Команда chmod — мощный инструмент для управления этими разрешениями. Не забывайте использовать его с умом, чтобы обеспечить безопасность ваших файлов.

Для получения дополнительной информации о правах доступа к файлам и команде chmod вы можете посетить официальный сайт. Документация Ubuntu.

Чтобы проверить права доступа к файлу в Ubuntu, вы можете использовать команду ls -l, за которой следует имя файла. Например, чтобы проверить права доступа к файлу с именем «mc.sh», вы должны запустить ls -l mc.sh. В выводе будут отображаться разрешения в формате -rw-rw-r–, где первый символ представляет тип файла, а следующие девять символов представляют разрешения для владельца, группы и других.

Ошибка «Отказано в разрешении» обычно возникает, когда у вас нет необходимых разрешений для выполнения файла sh. Это означает, что для вашей категории пользователей не установлено разрешение на выполнение (x). Вам необходимо предоставить разрешение на выполнение соответствующей категории с помощью команды chmod.

Команда chmod используется для изменения прав доступа к файлам в Ubuntu. Синтаксис команды — chmod. [who][operator][permissions] имя файла. Параметр who может иметь значение u (пользователь/владелец), g (группа), o (другие) или a (все). Оператором может быть + (добавить разрешение), – (удалить разрешение) или = (установить точное разрешение). Параметром разрешений может быть r (чтение), w (запись) или x (выполнение). Например, чтобы добавить разрешение на выполнение для владельца файла с именем «mc.sh», вы должны запустить chmod u+x mc.sh.

После установки разрешения на выполнение файла сценария вы можете запустить его, используя обозначение ./, за которым следует имя файла. Например, чтобы запустить сценарий с именем «mc.sh», вам нужно запустить ./mc.sh. Альтернативно вы можете использовать команду bash, за которой следует имя файла, например bash mc.sh. Оба метода должны работать без ошибки «Отказано в доступе».

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *