Backup de arquivos na Cloud com AWS Amazon S3 e PHP
Publicado por Edilson Osorio Junior (última atualização em 21/01/2013)
[ Hits: 4.430 ]
Homepage: www.eddieoz.com
Boas práticas de Segurança da Informação ditam que não se deve manter os backups somente na mesma máquina onde os dados principais estão. Para ajudar a resolver este ponto específico - manter cópias dos backups em ambiente externo à empresa - vamos exemplificar como utilizar a Amazon S3 como storage para seus dados.
#!/usr/bin/php <?php /* * Script: s3-send.php * Author: Edilson Osorio Junior * Contact: ml: osorio.edilson at eddieoz dot com | twttr: eddieoz * Date: 2013-01-04 * Description: This script backups a file to some amazonS3 bucket * Requisites: - An AWS Amazon account * - S3 bucket * - Functional AWS SDK for PHP installed * Usage: s3-send.php --bucket= --file=<fullpath_filename> * * More information on http://www.eddieoz.com/us/articles/cloud-computing/43-backup-de-arquivos-na-aws-amazon-s3 */ error_reporting(-1); header("Content-type: text/plain; charset=utf-8"); # SDK AWS for PHP require_once '/installed/binaries/AWSSDKforPHP/sdk.class.php'; # Get and test parameters $shortopts = ""; $longopts = array( "bucket:", "file:", ); $param = getopt($shortopts,$longopts); if ( count($param) < 2 ){ print("Params: --bucket= --file=\n"); exit(1); } $fullpath_filename = $param['file']; $bucket = $param['bucket']; # Initialize AmazonS3 $s3 = new AmazonS3(); # Get just the filename, without path $filename = explode(DIRECTORY_SEPARATOR, $fullpath_filename); $filename = array_pop($filename); # Prepare to send the file $s3->batch()->create_object($bucket, $filename, array('fileUpload' => $fullpath_filename)); # send the file and get response, thats an array $file_upload_response = $s3->batch()->send(); # Consists the return if ($file_upload_response->areOK()) { # Show the full URL to access the file. echo $s3->get_object_url($bucket, $filename, '5 minutes') . PHP_EOL . PHP_EOL; } else { # On error, show the xml print_r( $file_upload_response ); } ?>
SuperTab - tabela HTML com paginação e ordenação (PHP + MySQL)
FormConstructor: Formulário Construído por Variável
Monitoramento simples de servidores [versão 1.0]
Nenhum coment�rio foi encontrado.
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Realizar overclock no Miyoo Mini (plus ou normal)
Otimização de memória para máquinas modestas
linux mint reconhece microfone de lapela como fone de ouvido sem micro... (0)
Dúvidas sobre a originalidade de conteúdos online (10)
Erro de interface de Rede no Virt Manager dentro Debian 13 KDE (12)
Monitoramento pfsense com zabbix (3)
Google Crhome não abre desde que eu atualizei pelo "program... (13)