Gents - muito obrigado a todos que ajudaram. Em parte, todas as suas sugestões me ajudaram a chegar ao resultado final. Por isso, dei-lhe todo o crédito pelas respostas, mas publiquei a minha própria resposta abaixo, na esperança de que seja útil para os outros. Eu percebo que geralmente não é a coisa feita, mas neste caso há muitas áreas para formar a solução, então eu amarrei tudo em uma abaixo.
Instale os serviços necessários para usar o AWS S3
# > sudo apt-get install python-pip
# > sudo pip install awscli
Inscreva-se no AWS S3 Service com sua própria conta da Amazon: link
Defina uma nova chave de acesso para sua conta de usuário por meio de "Chaves de acesso - > Criar nova chave de acesso 'e baixar o arquivo CSV quando prometido. Se você não fizer isso, não poderá usar as funções da linha de comando S3: link
Abra o arquivo ROOTKEY.CSV, copie e cole o valor AccessKeyID contido e o valor de SecretKey quando solicitado ao iniciar o 'aws configure', que você inicia na linha de comando antes de usar o AWS com o Linux.
> aws configure
Enter your access key and secret key when asked. You can leave the third and fourth empty or as 'None'.
Teste você pode se conectar e fazer o upload de um arquivo com um arquivo sample.txt:
> aws s3 mv ~/SourceFolder/sample.txt s3://NameOfYourAWSS3Bucket
/ AFolderYouHaveCreated
Faça o download e instale o mjpg_streamer seguindo as instruções de criação aqui: link Uma vez feito, navegue até sua pasta
> cd mjpg_streamer
Inicie o streams mjpg:
> mjpg_streamer -i "./input_uvc.so -f 15 -r 1280x960" -o "./output_http.so -w ./www"
Verifique se está em execução visitando o seguinte link no seu navegador:
http://127.0.0.1:8080/stream.html
Pegue um único arquivo de data e hora (e salve-o no diretório local a partir do qual ele está sendo executado) com:
> wget http://127.0.0.1:8080/?action=snapshot -O output-$(date +"%Y-%m-%d-%k-%M-%S").jpg
Isso criará um arquivo na subpasta 'www' da sua pasta mjpeg_streamer, chamada 'output-16-09-01-22-35-30.jpg' se executada às 22:35 do dia 1º de setembro de 2016.
Crie um novo script bash (como MyScript.sh) e conceda permissões executáveis a ele e copie o conteúdo na parte inferior dele. Quando executado, ele criará um JPEG com registro de data e hora a cada 5 segundos até que a data atual se torne a data final especificada. Nesse caso, ele começa na data A e termina na Data B. Substitua suas próprias datas.
Copie isso no script, substituindo os caminhos relevantes:
#!/bin/bash
SOURCE="/home/YourUser/YourSourceFolder"
DESTINATION="s3://YourS3Bucket/DestinationFolder"
input_start=2016-8-29
input_end=2016-9-9
startdate=$(date -I -d "$input_start") || exit -1
enddate=$(date -I -d "$input_end") || exit -1
d="$startdate"
while [ "$d" != "$enddate" ]; do
sleep 5
wget "http://127.0.0.1:8080/?action=snapshot" -O output-$(date +"%Y-%m-%d-%k-%M-%S")'.jpg';
aws s3 mv $SOURCE $DESTINATION --recursive;
done
Sugestões de melhorias bem-vindas.
Além disso, você pode verificar o progresso do seu armazenamento no AWS S3 com
aws s3 ls s3://yourbucketname --recursive --human-readable --summarize
Eu deixei por duas horas disparando a cada 10 segundos e gerou 74Mb de uploads. Então, eu trabalho isso para ser 6.5Gb por uma semana - menos do que o nível de preços para o serviço onde os custos entram em ação, o que eu acho que é 8Gb.
Obrigado novamente.