저는 파이썬 스크립트를 실행하고 os
라이브러리를 사용하여 일반적으로 Windows의 명령 프롬프트에서 실행되는 gsutil
명령을 실행합니다. 내 로컬 컴퓨터에서 일부 파일이 있고 나는 Google Bucket
에 넣어 싶어 그래서 수행gsutil "병렬 복합 업로드"경고에 대해 어떻게해야합니까?
수입 OS
command = 'gsutil -m cp myfile.csv gs://my/bucket/myfile.csv'
os.system(command)
나는 같은 메시지 수 :
==> 참고 : 하나 이상의 대용량 파일을 업로드하는 중입니다. 병렬 합성 업로드를 사용하면 훨씬 빠르게 실행됩니다. 이 기능은 .boto 구성 파일의 "parallel_composite_upload_threshold"값을 편집하여 사용하도록 설정할 수 있습니다. 그러나이 작업을 수행하면 은 'composite objects https://cloud.google.com/storage/docs/composite-objects'_으로 업로드되며, 은 그러한 객체를 다운로드하는 모든 사용자에게 컴파일 된 crcmod가 설치되어 있어야 함을 의미합니다 ("gsutil help crcmod"참조). . 이는 에 컴파일 된 crcmod가 없기 때문에 복합 오브젝트의 체크섬 계산은 이므로 gsutil은 복합 오브젝트 다운로드를 비활성화합니다.
실제로이 메시지가 의미하는 것과 상관없는 경우이 메시지를 숨기거나, .boto 파일을 찾을 수 없습니다. 어떻게해야합니까?
gsutil -o GSUtil:parallel_composite_upload_threshold=150M cp bigfile gs://your-bucket
것은이 작업을 수행하려면 :
파일 이름을 엄격하게 제어하지 않으면 보안 위반시에도 사용할 수 있습니다 'touch '$ (rm -rf ~) .csv''는 잘되지 않을 것입니다. 'shell = True'없이'subprocess.Popen' 또는 파생물을 사용하는 것이 훨씬 안전합니다. 명령 행의 각 부분을 별도의 목록 요소로 전달하십시오. –