Como posso me conectar ao meu dispositivo Android para rsync music (ou outras coisas)?
Como posso me conectar ao meu dispositivo Android para rsync music (ou outras coisas)?
Respostas:
É mais fácil do que todo mundo está dizendo, primeiro observe que quando o GVFS montar a montagem MTP, ela estará disponível em. Você pode forçar isso abrindo o telefone em um navegador de arquivos gráfico (thunar / nautilus / etc)
/run/user/$UID/gvfs
entra lá. Supondo que você tenha um dispositivo mtp, isso deve funcionar:
$ cd /run/user/$UID/gvfs/mtp*
Encontre para onde você deseja transferir os arquivos também e depois os sincronize novamente
$ cd SanDisk\ SD\ card/Movies/
$ pwd # prints "/run/user/1000/gvfs/mtp:host=%5Busb%3A003%2C096%5D/SanDisk SD card/Movies"
$ rsync --verbose --progress --omit-dir-times --no-perms --recursive --inplace ~/Videos/ ./
--inplace
Eu altamente sugerir o uso --inplace
sem a qual mtp pode querer copiar o arquivo de um novo, e em seguida, mude o nome para o antigo. Isso pode resultar na cópia do arquivo para o cartão SD duas vezes: uma vez para a transferência mtp para o cartão SD e outra vez porque o driver MTP pode não suportar (mv), pode (cp / rm) sob o capô para ser seguro .--verbose
, --progress
, --recursive
mas eles são bastante auto-documentado.--omit-dir-times
--no-perms
são necessários porque o mtp não suporta isso.--omit-dir-times --no-perms --ignore-existing
. O Rsync falha ao definir os carimbos de data / hora do diretório no MTP. Tenho certeza de que "sem permissões" é o padrão, mas gosto de especificá-lo. Ignorar arquivos existentes permite que ele continue de onde parou.
--ignore-existing
? Isso está apenas perdendo redundância. Você sempre pode --size-only
reduzir a sincronização com a listagem de diretórios e não as somas de verificação. Vou adicionar o --omit-dir-times
e --no-perms
porque isso parece útil, e me lembro de ter recebido um erro no final sobre isso.
--ignore-existing
ele , ele tenta sincronizar todos os arquivos. Eu gosto da sua --size-only
sugestão. Vou tentar isso da próxima vez.
~/Videos/ ./
Encontrei esta solução:
Edite ssh-config local, para alterar a porta padrão do host "android"
.ssh/config
host android
Port 2222
rsync -rvlc Música android: SDCardLink /
Atualizar
I prefere -rvlc
a -a
vez que você começa um monte de avisos desde a definição de permissões e time-stamps não funciona. A opção -c
torna a segunda sincronização muito mais rápida.
I prefere -rvl --size-only
a -a
vez que você começa um monte de avisos desde a definição de permissões e time-stamps não funciona. A opção --size-only
torna a segunda sincronização muito mais rápida.
Infelizmente, é necessário algum tempo para que os aplicativos de música vejam os novos arquivos. Reiniciar o dispositivo ajuda.
rsync -avz -e 'ssh -p 2222' Music android:SDCardLink/
( stackoverflow.com/a/4630407/399105 )
--size-only
seria a solução mais rápida. No entanto, não é tão salvar como-c
192.168.1.5
que pode ser diferente toda vez:rsync -avzhP --inplace --info=progress2 -e 'ssh -p 2222' 192.168.1.5:/storage/emulated/0/DCIM/Camera/ /home/username/path/to/pics/
O backup rsync para Android pode ser configurado para sincronizar ao contrário, ou seja, de um host Linux para um dispositivo Android.
E com a ajuda do LlamaLab Automate, é possível configurar o dispositivo Android para sincronizar automaticamente em condições específicas, por exemplo: