我正在AWS EC2实例上的EFS上创建一个临时文件。但是它没有root用户对EFS的读/写权限。如果我使用home / ubuntu用户创建临时文件,则它确实具有读/写权限。如果有人知道原因,请告诉我。 这是我的代码段。
1-用于创建临时文件的代码段
temp_file = tempfile.NamedTemporaryFile(suffix='.zip', delete=True, dir=join(abspath('./'), "temp"))
temp_file.write(file.stream.read())
2-提供此临时文件路径,我正在读取该临时文件并将其解压缩到另一个目录中。但这给了我错误,因为文件没有读/写权限
@staticmethod
def unzip_shp_zip_file(zip_file_path):
unzip_file_path = TemporaryDirectory(dir=join(abspath('./'), "temp")).name
try:
with ZipFile(zip_file_path, 'r') as zip_ref:
zip_ref.extractall(unzip_file_path)
except BadZipfile:
Utility.___logger.error("Unable to Unzip {} :".format(zip_file_path))
traceback.print_stack()
return unzip_file_path