2013-04-16 48 views

回答

15

只需使用s3cmdbotoS3 command-line tools或......以及其他一些選項。

基本上你只是發佈到S3 API。您可以使用AWS的無數SDK以幾乎任何語言進行操作。然而,s3cmd是一個不錯的,輕量級的小型CLI工具,可能比您需要的要多。

您的評論建議您尋找稍有不同的東西。以下是基於文件的源和目標上的一些建議:

  • 如果你正在從EC2文件或本地主機到S3,使用s3cmd。如果您需要定期運行,請考慮cron job。以下將每五分鐘運行一次。

    */5 * * * * s3cmd sync --delete-removed my_local_directory/ s3://my-bucket/path/ 
    
  • 如果你從S3移動文件EC2的或本地主機,使用s3cmd但反向的語法:

    */5 * * * * s3cmd sync s3://my-bucket/path/ my_local_directory/ 
    
  • 如果你從本地主機移動文件到EC2,考慮scprsync

+0

也許我應該清除問題,但是當您已經將文件傳輸到EC2實例時,您可以使用這些工具。我的問題更多的是將文件導入EC2實例的最佳方式。 – Dimitry

+0

啊。他們應該從任何地方開展工作,只要您擁有允許您上傳到S3的AWS憑證即可。你不需要從EC2'scp'。你可以從你的電腦或真正的任何地方做到這一點。 – Christopher

1

您可以安裝S3鬥作爲本地分區,並與S3文件的工作,因爲他們位於您的服務器的文件系統。有a numbergood可用的開源工具。

但是從我這邊我建議你看看我的項目:RioFS,一個用來掛載Amazon S3存儲桶的用戶空間文件系統。與其他類似工具相比,項目的目標和主要優勢是:簡單性,操作速度和無錯代碼。

目前該項目處於「測試」狀態,但它已經在幾個高負載文件服務器上運行了相當長的一段時間(RioFS提供了一個訪問位於S3的文件到ftp/sftp服務器)。

我們正在圍繞我們的項目建立一個社區,並正在尋求更多人加入我們的項目來討論未來計劃並幫助進行測試。從我們這邊我們提供一個快速的錯誤修復程序,並會聽取您的請求以添加新功能。

快速操作指南:

你可以使用下面的命令(假設你已經安裝了RioFS,並已遠銷AWSACCESSKEYID和AWSSECRETACCESSKEY環境變量)裝入桶:

riofs http://s3.amazonaws.com your_bucket_name /path/to/localfolder

(請請參閱項目描述並運行riofs --help以獲得有關命令行參數的幫助)

請注意,該項目仍處於開發階段可能仍然是一些缺陷。 如果您發現某些內容無法按預期工作:請在項目的GitHub頁面上填寫問題報告。

希望它有幫助,我們期待着您的加入我們的社區!

相關問題