Para inicializar base de datos de iTunes de un iPod Touch o iPhone nuevo o recién formateado, o para borrar la colección de música (si está corrupta, o simplemente queremos cambiar de canciones) desde Linux hay que salvar un par de obstáculos:
Primero, hay que acceder al dispositivo montándolo manualmente (p.e. sudo mkdir /media/iPod; sudo chmod 777 /media/iPod; ifuse /media/iPod;
) o dejando que un programa lo haga por nosotros (Amarok monta automáticamente /var/mobile/Media en /tmp/kde-$USER/amarok/imobiledevice_*
).
Nuestra música, la base de datos de iTunes y demás se encuentran en Media/iTunes_Control
. Podemos eliminar (o renombrar) todo para deshacernos de la colección, con excepción de Media/iTunes_Control/Device/HashInfo
. Este fichero contiene el código con el que Apple pretende impedir nuestro libre acceso a nuestro dispositivo. Por tanto, conviene hacer un respaldo del mismo.
En caso de una nueva instalación, tendremos que obtener HashInfo, a menos que tengamos un respaldo. Afortunadamente, Héctor Martín Cantero ha creado un generador público: iPhone/iPod hash generation. Para usarlo, necesitamos el UUID de nuestro dispositivo, que usualmente es listado como SerialNumber en sus propiedades, las cuales se pueden ver en syslog. Este comando puede ayudar:
perl -ne 'our $UUID; if (/Manufacturer: Apple/) { $_=<>; $UUID=$1 if /SerialNumber: (.+)/; } END { print "$UUIDn" if $UUID;}' /var/log/syslog
Una vez que tenemos HashInfo en su lugar, podemos dejar el trabajo más pesado a Amarok o gtkpod; si borramos la colección de música con alguno de los dos abierto, tendremos que expulsar nuestro dispositivo y volverlo a conectar; si no, simplemente ejecutamos uno de los dos, que inmediatamente nos ofrecerá inicializar nuestro juguete; si no sabes su modelo, puedes verlo en sus Ajustes de sistema / General / Información / Modelo (en mi caso, ignorando el primer y los dos últimos caracteres).