Исправление: в настоящее время у вас нет разрешения на доступ к этой папке



Попробуйте наш инструмент устранения неполадок

Если вы используете подсистему Linux в Windows, cygwin или какой-либо из других способов взаимодействия Unix и Windows вместе, то вы можете столкнуться с ошибкой, у которой в настоящее время нет разрешения на доступ к этой папке. В чистой среде Linux или Unix вы можете получить сообщение об ошибке вроде ошибки открытия каталога: в разрешении отказано. То же самое может произойти с сетевыми дисками, которые обслуживаются из файловой системы, совместимой с POSIX, независимо от того, из какой операционной системы осуществляется доступ к данным.



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



Метод 1: изменение учетных записей для доступа к каталогам

Попробуйте получить доступ к папке, в которую вы пытались попасть. Если вы попытаетесь ввести его с помощью cd из командной строки, вы получите команду, которая будет выглядеть примерно так: bash: cd: Permission denied.



ошибка разрешения командной строкиВы получите аналогичную ошибку, если попытаетесь получить доступ к каталогу из графической среды.

ошибка разрешения графического каталога

В этом случае мы пытались получить доступ к каталогу / lost + found, который заблокирован для доступа для всех, кроме пользователя root в большинстве установок Linux. Вернувшись в терминал, введите sudo -i и нажмите Enter. Вам будет предложено ввести пароль, но при этом у вас будет оболочка для входа с правами root. Вы можете cd в каталог и осмотреться, но имейте в виду, что вы работаете из корневой оболочки и, следовательно, может быть очень разрушительным.



Если вы предпочитаете оставаться в своей обычной учетной записи, попробуйте sudo ls / lost + found, чтобы увидеть, что находится в этом каталоге, без необходимости запускать команду sudo -i. Вы можете заменить / lost + found именем любого каталога, в том числе корневого каталога. Имейте в виду, что предварительная обработка команд с помощью sudo может позволить вам уничтожить практически все.

Метод 2: изменение разрешений по умолчанию для папки

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

Запустите sudo chmod -R 755 / path / to / folder, заменив путь фактическим путем к каталогу, который вы хотите сделать доступным. Как только вы это сделаете, попробуйте получить к нему доступ из учетной записи обычного пользователя. Это немного сложнее, чем описанный выше метод, но он более безопасен и долговечен, так как не требует использования учетной записи root после первого раза.

В большинстве случаев вы можете создавать каталоги с самого начала с этими разрешениями. Попробуйте использовать mkdir -m 755, чтобы разрешить красный цвет, запись и выполнение для пользователя с чтением и выполнением для других. В любом случае вместо этого вы можете использовать 777, который предоставит всем, кто вошел в файловую структуру, полномочия делать с указанным каталогом все, что они хотят. Хотя есть случаи, когда вы хотите сделать это, например, на съемном носителе для перемещения файлов между двумя машинами вручную, хорошо подумайте, разумно ли это, если вы делаете это в локальной файловой системе. Использование флага -p вместо этого дает новому каталогу все разрешения, которые считаются по умолчанию, как правило, запуск его с открытым кодом также будет работать.

Вы также можете убедиться, что файлы имеют нужные разрешения при их копировании. Попробуйте использовать rsync –perms –chmod Fu + w, если вы хотите предоставить право записи владельцу файлов. Вы также можете указать другие комбинации. Вы можете использовать –chown = с rsync, за которым следует имя пользователя, двоеточие и их группа, чтобы скопированные файлы также получили правильные назначения.

Поскольку rsync очень полезен для копирования POSIX-совместимых файловых структур между Windows и Linux, вы можете поэкспериментировать с несколькими различными конфигурациями chmod при его использовании. Еще одна команда, которая может вас заинтересовать, - это install. Запустите install -m 777, а затем укажите источник и место назначения для файла, чтобы предоставить ему мгновенный доступ для чтения и записи для всех. В целях безопасности вы можете использовать 755 или любую другую комбинацию.

Это, конечно, не так быстро, как rsync, но может работать в ситуациях, когда вы хотите указать разрешения именно для исправления ошибок типа «у вас в настоящее время нет разрешения на доступ к этой папке».

3 минуты на чтение