Невозможно извлечь файл tar в python из-за проблемы с разрешениями

Я не могу извлечь файл tar в python.

Это база кода, которую я использую для извлечения файла tar в Python.

file_path = os.path.join(extracted_tar_files, file.strip('.tar'))
tf = tarfile.open(os.path.join(files_directory, file))
tf.extractall(file_path)
tf.close()

Некоторые из файлов tar работают нормально. Некоторые из файлов tar получают следующую ошибку.

*** PermissionError: [Errno 13] В доступе отказано: '\home\piercer\etc.sudoers'

Можете ли вы помочь здесь. Спасибо!

2 ответа

Решение

Кажется , что файл принадлежит кому-то другому, и у вас нет прав на чтение. как и следовало ожидать для файла sudoers. Вы можете изменить разрешения:

$ sudo -E chown $USER /home/piercer/etc.sudoers

tar.extractall(путь_к_файлу, numeric_owner=True)

это создать владельца файла пользователем, который запускает скрипт

Другие вопросы по тегам