3

Amazon S3 バケットに転送する必要がある 5 つのファイルに約 15 ギガのデータがあり、それらは現在、スクリプトまたはシェル アクセス権のないリモート サーバーでホストされています。httpd リンク経由でのみダウンロードできます。

これらのファイルを、最初にローカル マシンにダウンロードしてから S3 に再アップロードすることなく、Amazon S3 バケットに転送するにはどうすればよいですか?

4

3 に答える 3

2

プロセスを自動化したい場合は、AWS SDK を使用してください。

次の場合のように、AWS PHP SDK を使用します。

use Aws\Common\Aws;

$aws = Aws::factory('/path/to/your/config.php');
$s3 = $aws->get('S3');

$s3->putObject(array(
    'Bucket'     => 'your-bucket-name',
    'Key'        => 'your-object-key',
    'SourceFile' => '/path/to/your/file.ext'
));

詳細:

http://blogs.aws.amazon.com/php/post/Tx9BDFNDYYU4VF/Transferring-Files-To-and-From-Amazon-S3 http://docs.aws.amazon.com/aws-sdk-php/guide /latest/service-s3.html

于 2014-04-17T02:00:35.067 に答える
1

ファイルが 5 つしかない場合は、中間ファイルにファイルをダウンロードした後、S3 ファイル アップローダーhttp://console.aws.amazon.com/s3/home?region=us-east-1 (アクション、アップロード) を使用します。機械。S3 へのアップロードは非常に高速であるため、Windows を実行する EC2 が最適なソリューションである可能性があります。chrome.google.com から EC2 インスタンスに Chrome をダウンロードするか、既存の Web ブラウザ (IE) を使用して作業を行うことができます。

于 2013-09-04T17:01:44.770 に答える
0

[1] 鍵付き SSH

    sh-keygen -f ~/.ssh/id_rsa -q -P ""
    cat ~/.ssh/id_rsa.pub

この SSH キーを ~/.ssh/authorized_keys ファイルに配置します

    mkdir ~/.ssh 
    chmod 0700 ~/.ssh
    touch ~/.ssh/authorized_keys
    chmod 0644 ~/.ssh/authorized_keys

[2] ZFS のスナップショット、LZMA で転送を最小化、RSYNC で送信

    zfs snapshot zroot@150404-SNAPSHOT-ZROOT
    zfs list -t snapshot

lzma でファイルに圧縮 (bzip2 より効果的)

    zfs send zroot@150404-SNAPSHOT-ZROOT | lzma -9 > /tmp/snapshots/zroot@150404-SNAPSHOT-ZROOT.lzma
    rsync -avz -e "ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" --progress --partial /tmp/snapshots/zroot@150404-SNAPSHOT-ZROOT.lzma <username>@<ip-address>:/

[3] MBUFFERで高速転送、ZFS送受信で送信 受信機を先に起動。これはポート 9090 でリッスンし、1GB のバッファーを持ち、128kb のチャンクを使用します (zfs と同じ):

    mbuffer -s 128k -m 1G -I 9090 | zfs receive zremote

データを送信し、mbuffer 経由でも送信します。

    zfs send -i zroot@150404-SNAPSHOT-ZROOT zremote@150404-SNAPSHOT-ZROOT | mbuffer -s 128k -m 1G -O <ip-address>:9090

[4] diff送信のみで転送を高速化

    zfs snapshot zroot@150404-SNAPSHOT-ZROOT
    zfs snapshot zroot@150405-SNAPSHOT-ZROOT [e.g. one day later]
    zfs send -i zroot@150404-SNAPSHOT-ZROOT zroot@150405-SNAPSHOT-ZROOT | zfs receive zremote/data

私のメモも参照してください

于 2015-04-18T12:12:05.050 に答える