7Zip Невозможно создать символическую ссылку, доступ запрещен для libhdfs.so и libhadoop.so


19

Я работаю на Windows 10 и пытаюсь установить Hadoop

Я скачал это отсюда .

При попытке извлечь Hadoop для файлов ( libhdfs.soи libhadoop.so) я получаю сообщение об ошибке.

Cannot create symbolic link : Access is denied

введите описание изображения здесь

Как я могу это исправить?


Вы работаете в качестве администратора?
DavidPostill

Обратите внимание, что для установки hadoop в Windows вам необходимо скачать исходный код и собрать его самостоятельно. Сборка и установка Hadoop 2.x или новее в Windows
DavidPostill

Администратор @DavidPostill сделал это - должен был запустить 7Zip как приложение. Спасибо
Матас Вайткявичюс

Большой! Добавлено как ответ.
DavidPostill

Ответы:


21

Как я могу это исправить?

Я получаю сообщение об ошибке: «Не удается создать символическую ссылку: доступ запрещен»

Вам необходимо запустить 7-Zip File Manager в режиме администратора.

Щелкните правой кнопкой мыши значок 7-Zip File Manager и выберите «Запуск от имени администратора».


Сработало, но зачем вам админ для создания символических ссылок в Windows?
Тимммм

2
@Timmmm Вам не обязательно нужен администратор, но вам нужны особые привилегии: см. Как создать ссылку в Windows 7 home premium для обычного пользователя?
Дэвид Постилл

@ DavidPostill этот ответ применим к Windows 7?
Каньон Колоб

@KolobCanyon Err да. Смотрите мой комментарий выше.
DavidPostill

14

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

Проблема будет возникать в большинстве случаев при распаковке .tar.gz или другого аналогичного формата файловой системы, отличной от Windows. Проблема связана с порядком распаковки файлов. Например, в Linux разрешены «висячие символические ссылки», поэтому ошибки не возникает, и все работает нормально, но в Windows это не так. Он распаковывает и пытается создать символическую ссылку на файл, который еще не существует, что недопустимо.

Принудительное выполнение может распаковать файлы в некоторых ситуациях или распаковать их, но они будут иметь размер 0. Многократное извлечение МОЖЕТ решить проблему в других ситуациях, в зависимости от того, как они были упакованы, или ручного извлечения в правильном порядке.

Для 100% успеха распакуйте их в системе, которая разрешает символические ссылки на несуществующие файлы (например, Linux или систему, для которой этот файл предназначен).

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


Как вы думаете, может ли 7ZIP обойти эту проблему, если будет сделано сообщение об ошибке?
Pikamander2

@ Pikamander2 Вероятно, это возможно, возможно, потребует какой-то сортировки и разрешения символических ссылок перед упаковкой, хотя попытка сделать это может привести к еще одному новому набору проблем, поскольку это выходит за рамки программы сжатия. Симлинки между системами работают совершенно по-разному, как и файловые системы. Есть также определенные вещи, которые можно сделать в одной системе, а не в других (даже только между версиями Windows). Вероятно, это сломает больше, чем исправит, и лучше всего оставить это пользователю, чтобы гарантировать правильность.
ForeverZer0
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.