Come posso collegarmi al mio dispositivo Android per sincronizzare musica (o altre cose)?
Come posso collegarmi al mio dispositivo Android per sincronizzare musica (o altre cose)?
Risposte:
È più facile di quanto tutti dicano, per prima cosa nota che quando GVFS monta il mount MTP sarà disponibile sotto. Puoi forzarlo aprendo il telefono in un browser di file grafico (thunar / nautilus / ecc)
/run/user/$UID/gvfs
vai lì. Supponendo che tu abbia un dispositivo mtp, questo dovrebbe funzionare:
$ cd /run/user/$UID/gvfs/mtp*
Trova dove vuoi trasferire anche i file, quindi sincronizzali su di esso
$ 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
: Consiglio vivamente di usare --inplace
senza il quale mtp potrebbe voler copiare un nuovo file e quindi rinominarlo con quello vecchio. Ciò può comportare la copia del file sulla scheda SD due volte: una volta per il trasferimento mtp sulla scheda SD e un'altra volta perché il driver MTP potrebbe non supportare (mv), potrebbe essere (cp / rm) sotto il cofano per sicurezza .--verbose
, --progress
, --recursive
ma sono abbastanza auto-documentazione.--omit-dir-times
--no-perms
sono richiesti perché mtp non lo supporta.--omit-dir-times --no-perms --ignore-existing
. Rsync non riesce a impostare i timestamp della directory su MTP. Sono abbastanza sicuro che "nessuna autorizzazione" sia l'impostazione predefinita, ma mi piace specificarlo. Ignorare i file esistenti consente di riprendere da dove era stato interrotto.
--ignore-existing
? Questo sta solo perdendo la ridondanza. Puoi sempre --size-only
che riduce la sincronizzazione con l'elenco delle directory e non i checksum. Ho intenzione di aggiungere il --omit-dir-times
e --no-perms
perché sembra utile, e mi sembra di ricordare di aver ricevuto un errore alla fine.
--ignore-existing
esso prova a sincronizzare tutti i file. Mi piace il tuo --size-only
suggerimento. Ci proverò invece la prossima volta.
~/Videos/ ./
Ho trovato questa soluzione:
Modifica ssh-config locale, per modificare la porta predefinita per l'host "android"
.ssh/config
host android
Port 2222
rsync -rvlc Music android: SDCardLink /
Aggiornare
Io preferisco -rvlc
al -a
dato che si ottiene un sacco di avvertimenti in quanto i permessi e le marche temporali non funziona. L'opzione -c
rende la seconda sincronizzazione molto più veloce.
Io preferisco -rvl --size-only
al -a
dato che si ottiene un sacco di avvertimenti in quanto i permessi e le marche temporali non funziona. L'opzione --size-only
rende la seconda sincronizzazione molto più veloce.
Purtroppo è necessario del tempo perché le app musicali vedano i nuovi file. Il riavvio del dispositivo aiuta.
rsync -avz -e 'ssh -p 2222' Music android:SDCardLink/
( stackoverflow.com/a/4630407/399105 )
--size-only
sarebbe la soluzione più veloce. Tuttavia non è così salvo come-c
192.168.1.5
che potrebbe essere ogni volta diverso:rsync -avzhP --inplace --info=progress2 -e 'ssh -p 2222' 192.168.1.5:/storage/emulated/0/DCIM/Camera/ /home/username/path/to/pics/
Il backup rsync per Android può essere configurato per la sincronizzazione inversa, ovvero da un host Linux a un dispositivo Android.
E con l'aiuto di LlamaLab Automate è possibile configurare il dispositivo Android per la sincronizzazione automatica a condizioni specifiche, ad esempio: