У слоя AWS Lambda нет разрешения на выполнение
Я создаю лямбда-лямбду для Python Runtime (совместим с 3.6 и 3.7), который содержит исполняемый файл bin (texlive)
Но когда я пытаюсь выполнить это через subprocess.run
он говорит, что у него нет прав на исполнение!
Как сделать так, чтобы у этого слоя были разрешения на выполнение? Я заархивировал файлы слоев в Windows 10, поэтому не уверен, как добавить разрешение на выполнение Linux.
Кроме того, насколько я знаю, когда вы распаковываете файл, он "сбрасывает" разрешения, поэтому, если AWS не устанавливает разрешения на выполнение при разархивировании моих слоев, что я могу сделать?
Кстати, я загружаю свой слой через консоль aws
1 ответ
Я установил WSL в Windows 10 и заархивировал свой слой с помощью исполняемого файла zip из Ubuntu:
zip -r importtime_wrapper_layer.zip .
Он создал zip-файл, в котором сохранились права доступа к файлу 755 для моего сценария.
Я смог увидеть, что правильные атрибуты присутствовали с помощью 7zip, и среда выполнения Lambda смогла его выполнить.