./Applications
En esta carpeta se almacnanestarán las aplicaciones por defecto. Desde calendario, notas, Teléfono... las aplicaciones instaladas a través del Installer también serán almacenadas aquí. Cada aplicación estará dentro de su correspondiente Carpeta.app, exceptuando aquellas aplicaciones que son aplicaciones de linea de comandos o similares
La estructura de cada Carpeta.app dependerá ya de cada caso, pero por regla general la estructura de estas carpetas es la misma.
./Applications/Carpeta.app/Idioma.lproj
Estas carpetas son los diferentes idiomas en los que se encuentra traducida nuestra app. Existirá una carpeta lprog por cada idioma que tengamos. Esto es util saberlo, ya que para ahorrar espacio podremos borrar aquellas carpetas de idomas que no usemos o también editar los archivos descriptivos para hacer nuestras propias traducciones.
./Applications/Carpeta.app/Archivos.png
casi todas las app tienen uno o varios archivos de imágenes .png que se usarán a modo de interfaz de la aplicación. Estos .png por lo tanto se pueden modificar o crear nosotros algunos personalizados. En esto precisamente se basa Customize. Estos archivos serán muy comunes encontrarlos a lo largo de todo el sistema de archivos. Hay que tener en cuenta, eso sí, que apple usa archivos .png no estandares, y puede ser posible convertirlos antes con alguna herramienta para poder editarlos correctamente en el PC.
./Applications/Carpeta.app/Info.plist
Cada aplicación lleva asociado un archivo Info.plist. En el se almacenan datos básicos como la versión de la aplicación, el nombre... y algunas características más de la aplicación.
./Applications/Carpeta.app/Carpeta
Normalmente es la aplicación en sí, el ejecutable por así decirlo.
/Applications/Apollo.app/Host
Archivo Host de Apollo. En un archivo host se asocian nombres a IPs, es como un pequeño archivo que nos hace de servidor de DNS. Este archivo es el responsable que Apollo no funcione correctamente. Si MS modifica los servidores de DNS de Messenger, es necesario modificar este archivo. En el momento de escribir este post, este archivo deberá de tener las siguientes entradas para que funcione correctamente:
64.12.161.185 login.oscar.aol.com
65.54.179.216 nexus.passport.com
65.54.183.203 login.live.com
65.54.239.20 messenger.hotmail.com
65.54.239.21 gateway.messenger.hotmail.com
65.54.179.193 loginnet.passport.com
Seguramente el archivo host antiguo que hace una de las primeras causas de que no funcione, tenga otras IPs asignadas a algunos dominios. Aquí dejo uno ya modificado:
Host
./Applications/Preferences.app
Esta es la ruta de la aplicación Ajustes. Es muy importante dado que dentro de ella se encuentran los archivos de configuración que dicen que opciones podremos manejar dentro de Ajustes. Modificando estos archivos se logran sin mucho trabajo agregar o quitar funciones dentro de ajustes. El ejemplo más clásico por ejemplo es mediante la modificación del archivo de configuración Keyboard.plist que modificándolo se le añade la opción de poder habilitar o deshabilitar la correción automática del teclado. Muchas aplicaciones del tipo Advanced preferences, precisamente se basan mucho en la modificación de estos archivos.
Como se puede observar en dicha carpeta, existe un archivo .plist para casi cada ajuste:
Keyboard.plist -> los ajustes del teclado, modificandolo nos permite por ejemplo añadir una opcion para activar/desactivar la autocorrección del teclado. Para ello bastaría con la creación de las claves:
Keyboard.plist modificado
Settings-iPhone.plist -> Si es un iPhone, es el archivo de ajustes que se cargará, con opciones para modificar el teléfono, EDGE...
Settings-iPod.plist -> Si es un iPod, es el archivo de ajustes que se usará especificamente para Touch.
Quien se de cuenta rapidamente, se elimina el archivo Settings-iPod.plist y se renombra Settings-iPhone.plist a Settings-iPod.plist, cuando entremos en Ajustes tendremos los Ajustes del iPhone.
Hay muchos otros archivos que pueden ser muy útiles, pero comprendereis que tan solo me pare en algunos. Ya entra en cada cual ir investigando y editando los posibles archivos e ir viendo los efectos que va ocasionando.
./Applications/Weather.app/Info.plist
Aunque hemos comentado anteriormente este tipo de archivos, es bueno especificar concretamente el del tiempo. Cuando queremos modificar los iconos del board a través de SummerBoard por ejemplo, rapidamente nos damos cuenta de que el icono del "Tiempo" no cambia. Es debido a este archivo. Se puede modificar para que el icono finalmente se aplique. Para ello debemos de eliminar de dicho archivo las claves:
Info.plist modificado
./bin
En esta carpeta se almacenarán las utilidades de UNIX, como cp, ln... es posible que muchas de las utilidades que instalemos nosotros de este tipo caigan en esta carpeta
./dev
Esta es la carpeta de dispositivos por así decirlo. No hay que engañarse del tamaño de los archivos, ya que en realidad son los dispositivos en sí. Por ejemplo rdisk0s1 es la imagen del OS. Es en esta carpeta donde de echo se monta la primera partición, la partición del OS
./Library/Alarms
Se guardan los diferentes tonos que podemos elegir para las alarmas, como todo, podemos eliminar aquellos que no usemos. El archivo Plist tan solo es el índice de los archivos que se mostrarán luego en la aplicación alarma
./Library/Ringtones
Se guardarán los diferentes tonos de llamadas.
./Library/Wallpaper
Se guardarán los diferentes Wallpaper.
./private/etc/
Carpeta en la que encontramos algunas utilidades más de sistema, como passwd, así como archivos de configuración del sistema como hosts (explicado antes en apollo), master.passwd (que contiene la contraseña de nuestros usuarios)...
./private/etc/bluetool
Algunos script de inicialización y suspension del BlueTooth
./private/etc/racoon
La carpeta de configuración de racoon. Racoon es un demonio IKE, para permitir conexiones IPsec. Imprescindible para conexion VLAN
./private/var
Es el lugar en el que se monta la segunda partición, o la partición de datos. Para llevar un orden, será explicada más adelante, al finalizar con la partición del OS.
./sbin
Al igual que la carpeta ./bin contenía ulitidades de sistema, sbin almacenará las utilidades esenciales más básicas, como mount o reboot
./System/Library/ApplePTP
./System/Library/AppleUSBDevice
Archivos de configuraión para la comunicación USB con el PC
./System/Library/Audio/UISounds
Los archivos de sonido del sistema. Es decir, los click, los correos que llegan, el sonido del deslizante cuando se apaga...
./System/Library/Caches
El caché del Kernel
./System/Library/CoreServices/SystemVersion.plist
Es el archivo que especifica la versión del software que tenemos. Podemos cambiarlo si lo deseamos, y en ajustes, acerca de... podremos ver los nuevos ajustes. Como si queremos poner que tenemos una versión 1.2.0 ó lo que queramos. Este archivo se ha usado mucho para publicar videos falsos de supuestas versiones JB antes de que fuera posible.
./System/Library/CoreServices/Encodings
Conversores para la conversión de diferentes sistemas de codificación (idiomas). Por ejemplo para poder mostrar un texto en cirílico o en chino.
./System/Library/CoreServices/SpringBoard.app
Es la carpeta de la aplicacion SpringBoard. Esta no se encuentra dentro de la carpeta /Applications, es una de las escepciones. En ella se encuentra evidentemente todos lso archivos de configuración del SpringBoard, así como multitud de imágenes .png que pueden modificarse para cambiar la apariencia del SpringBoard. Recordemos que el SpringBoard es por asi decirlo el escritorio.
./System/Library/CoreServices/SpringBoard.app/M68AP.plist
Es el archivo de configuración que se carga al iniciar el iPhone. En este archivo de configuración se le dice al iPhone los ajustes que debe de tener, los iconos, las funciones... Es posible deshabilitar o añadir funciones a este archivo de manera relativamente simple
./System/Library/CoreServices/SpringBoard.app/N45AP.plist
Al igual que el archivo anterior, este es el que se carga al iniciar el iPod Touch. Dado que tanto el iPod como el iPhone comparten prácticamente el mismo software y hardware, simplemente con modificar el nombre de estos archivos, y renombrar N45AP.plist a M68AP.plist, convertiremos el iPhone en un iPod Touch, en cuanto a software me refiero claro está, al enceder el iPhone, el software pensará que se trata de un iPod. Lo mismo pasa al revés. En este caso el iPod se creerá que es un iPhone. Este fue el primer método que se realizó para activar las aplicaciones de Enero, dado que el iPhone las tiene activadas por defecto, era tan facil como modificar este archivo.
./System/Library/CoreServices/SpringBoard.app/SpringBoard
Esta es la aplicación en sí, ha sido ya muy comentado este archivo cuando hablaba de la modificación del SpringBoard.
./System/Library/Extensions
Aquí se encuentran algunas aplicaciones secundarias, como por ejemplo los protocolos para VLAN, las app encargadas de la conexión al PC, etc
./System/Library/Fonts
Las fuentes del sistema. Ya apareció una aplicación que permitía usar cualquier fuente instalada como fuente del sistema. También es posible, aunque un poco más complejo, instalar fuentes propias, fuentes que de por sí no vienen en el dispositivo
./System/Library/Frameworks
Los Frameworks en el mundo de MAC OS podría ser el equivalente a las librerías DLL en los PCs más o menos. Son archivos necesarios para el funcionamiento de las aplicaciones, son rutinas... son subprogramas necesarios para otras aplicaciones. aquí tambien se encuentran las configuraciones de cada aplicación que podamos encontrar en ajustes. Listarlas todas sería muy lento, así que tan solo me detendré en las localidades más importantes.
./System/Library/Frameworks/AppSupport.framework
Podemos encontrar los archivos donde se encuentran zonas horarias y los paises del mundo
./System/Library/Frameworks/Celestial.framework
Otra de esas carpetas interesantes. En este caso aquí encontramos todos los ajustes de volumen, vibración...
./System/Library/Frameworks/Celestial.framework/RegionalVolumeLimits.plist
Este archivo es el que limita el volumen según nos encontremos en una región u otra. Como sabemos, la UE tiene normas para limitar la potencia de salida de algunos dispositivos por posibles problemas de audión que ello pudiera ocasionar. Pero muchas veces necesitamos que este limitador desaparezca. Si lo editásemos veríamos códigos y el nivel de volumen al que se ha limitado, suponiendo un 1 como sin limitación. Así podemos limitar o no limitar la salida. Si quisiésemos quitar la limitación, bastaría con establecer a 1 todos los códigos de region:
RegionalVolumeLimits.plist modificado para eliminar los límites de volumen de región
./System/Library/Frameworks/UIKit.framework
En esta ruta se encuentran el 90% de todas las "pieles" o imágenes del sistema. Mucho del trabajo que realiza Customize se basa en este archivo. Todos aquellos archivos que terminan por ejemplo en .artwork pueden extraerse y obtener de ellos las imágenes que queremos modificar.
Para extraer estos archivos lo mejor es usar una herramienta llamada iPhoneShop, descargable desde aquí:
iPhoneShop
Es una app en java, para hacerla andar hay q teclear:
java -jar iPhoneShop-0.6.jar ARTWORK archivoquesea.artwork export pngs
y despues de modificar los archivos, el proceso contrario:
java -jar iPhoneShop-0.6.jar ARTWORK archivoquesea.artwork import pngs
Por supuesto despues de modificar los archivos artwork, al copiarlos de nuevo en el dispositivo hay que establecer permisos 755, como con todo
./System/Library/Internet Plug-Ins
Es la carpeta dnd se instalan los accesorios para Safari. ya hay algunos por ahí andando, aunque el sueño sería tener uno para soporte flash.
./System/Library/KeyboardDictionaries
Aquí se encuentran los diccionarios de los distintos idiomas. Podemos eliminarlos si no los usamos o incluso modificarlos si queremos
./System/Library/LaunchDaemons
Los demonios que se ejecutan al iniciar el dispositivos con los parámetros concretos
./System/Library/Lockdown
Carpeta imprescindible. En ella se guardan los certificados de seguridad necesarios para por ejemplo la música comprada en itunes con DRM, activación del iPhone...
./System/Library/PreferenceBundles
Básicamente las opciones de configuración que tenemos en ajustes.
./usr/bin
./usr/libexec
Algunas utilidades de liena de comandos más. Además será aquí donde se instalesn las utilidades de Cydia o BSD Subsystem.
./usr/lib
Aquí se encuentran las librerías que serán usadas en los programas y utilidades
./usr/sbin
Los servicios
-----------------
--------------------------
./private/var
Como hemos dicho este es el punto de montaje de la partición de datos. Casi todos los datos que se crean aquí son dinámicos. Toda esta partición nada más tener el dispositivo formateado, estaría casi completamente vacía. Son datos de configuración, nuestros datos, información...
./private/var/logs/
Carpeta en la que se almacenan diferentes logs. Los logs son registros de sucesos.
./private/var/logs/AppleSupport/general.log
Aquí encontraremos los pequeños errores que se detecten en las aplicaciones, pero que no impiden su funcionamiento en el momento de ocurrir. Podemos ver perfectamente que aplicación a que hora como... está muy bien si notamos pequeños mal funcionamientos de las aplicaciones.
./private/var/logs/CrashReporter
En este caso encontraremos en esta carpeta un archivo plist con cada uno de los errores críticos que hemos tenido y que debido a ellos la aplicación se debió de cerrar. Estos reportes pueden ser enviados a Apple. Itunes detecta de forma automática cuando uno de estos errores se ha generado y nos dará la oportunidad de enviarlos a Apple. Evidentemente la gran mayoria de los errores son aplicaciones instaladas, y no son fallos en de Apple. Si queremos podemos eliminar aquellos reportes que creamos inservibles.
Por último, las carpetas mobile y root las trataremos indistintamente. A efectos prácticos es muy diferente, pero a efectos teóricos para saber que hay en cada lado es lo mismo. En Root irían los archivos creados y usados por root y en mobile lo propio, así que para no repetir lo mismo, siempre haré mención a mobile, pero puede que el archivo en realidad esté en root:
./private/var/mobile/Library
Aquí estarán la gran mayoría de los datos de las aplicaciones, así como nusetros ajustes, datos... usados en las mismas aplicaciones. En cuanto veamos algunos importantes, el resto se comprenderá perfectamente:
./private/var/mobile/Applications/
Esta carpeta por ahora casi en deshuso, por ahora tan solo alberga el archivo de configuración de Apple para activar las app de la actualización de Enero para el iPod Touch. Sin embargo en el futuro, es casi seguro que las app del SDK vengan instaladas aquí, en vez de en ./Applications
./private/var/mobile/Library/AddressBook
La libreta de contactos. En esa carpeta se guardan nuestros contactos. Apple no ha usado en esta ocasión un formato estandar, sino que se basa en un formato de bases de datos. Que no es que no sea estandar, pero el estandar dice que los contactos deberían de estar en ldif por ejemplo. Si queremos realizar una copia de seguridad de nuestros contactos, estas es la carpeta a guardar
./private/var/mobile/Library/Calendar
Pues creo que está claro. En esta se encuentra nuestro calendario. Y al igual que con la libreta de contactos no se usa un formato estandar como .icl. Si deseamos una copia de seguridad tan solo deberíamos de...
./private/var/mobile/Library/CallHistory
Como su propio nombre dice, el hisotrial de llamadas del iPhone
./private/var/mobile/Library/Cookies/Cookies.plist
Las cookies de safari
./private/var/mobile/Library/Installer
Esta es de las pocas carpetas ajena al sistema de apple pondré, pero me parece importante, ya que en ella es donde se almacenan nuestros repositorios, nuestras aplicaciones instaladas...
Así si deseásemos hacer una copia de seguridad de los repositorios para evitar meterlos a mano otra vez, nos bastaría con el archivo PackageSources.plist
Así si deseamos eliminar una aplicación que esté en el installer y no nos lo permite, podríamos eliminar su entrada desde el archivo LocalPackages.plist
./private/var/mobile/Library/Mail
Ahora le toca el turno de la configuración de nuestra cuenta de correo, así como de los correos descargados en el dispositivo en ese momento
./private/var/mobile/Library/Notes
Las notas creadas, y al igual que con el calendario o los contactos, aunque se pueden editar relativamente simple en el PC, si buscábais un archivo txt para editar olvidaros. Aunque para copia de seguridad da igual
./private/var/mobile/Library/Preferences
Normlamente cada aplicación tiene una carpeta propia en Library para guardar algunos datos como hemos visto en installer o notas. Sin embargo eso son los datos. Las configuraciones suelen ir sin embargo en esta otra carpeta. Solo los ajustes establecidos por nosotros en dichas aplicaciones. El uso de uno u otro lugar depende mas que nada de los programadores y como tengan implementado su código
./private/var/mobile/Library/Preferences/com.apple.springboard.plist
Este archivo es interesante guardarlo o modificarlo, ya que es el que dice el orden de nuestras aplicaciones y otros muchos datos.
./private/var/mobile/Library/Preferences/com.apple.stocks.plist
En este se almacenarán los mercados añadidos en la bolsa. Util guardarlo si queremos no tener que volver a buscar los valores y añadirlos
./private/var/mobile/Library/Preferences/com.apple.weather.plist
En este se almacenarán el tiempo de las diferentes ciudades. Muy util si no queremos volver a añadir y buscar el tiempo en determinados lugares
/private/var/mobile/Library/Safari
Aquí podemos encontrar tres archivos.
Tenemos por un lado los favoritos (o marcadores), que estarían en el archivo Bookmarks.plist.
Por otro lado el historial: History.plist
Y por otro un archivo que nos dice el estado actual de safari
./private/var/mobile/Library/SummerBoard/Themes
Otra de esas carpetas ajenas al dispositivo. En esta se almacenarán los diferentes temas instalados de SummerBoard. Si queremos añadir uno manualmente o modificar alguno existente, este será el punto de partida. Tambien es válido para realizar copias de seguridad de nuestros temas y no tener que instalarlos de nuevo o buscarlos o...
./private/var/mobile/Library/WebClips
Aquí se almacenarán los WebClips, es decir, esos accesos directos que podemos crear en el Board para ir directamente a la web.
./private/var/mobile/Library/YouTube
Por si queremos guardar los favoritos de Youtube
./private/var/mobile/Media
Por último, en esta carpeta tendremos el peso de nuestra memoria Flash. Algunos programadores de aplicaicones prefieren usar esta ruta cuando hablamos de datos masivos, como las ROMs de los emuladores o samples para algunos instrumentos.
./private/var/mobile/Media/DCIM/100APPLE
En esta carpeta se almacenarán las fotos realizadas por el iPhone. Esta carpeta tambien puede ser muy util crearla en el iPod touch, dado que algunas aplicaciones usan estas imágenes para otras tareas. Por ejemplo hay aplicaciones para capturar la pantalla que dirige aquí las capturas tomadas.
./private/var/mobile/Media/iTunes_Control/Artwork
Lugar donde se almacenan las carátulas de los álbumnes introducidos, en caso de tener las carátulas claro está
./private/var/mobile/Media/iTunes_Control/iTunes
Los archivos de sincronización con iTunes, desde la lista de archivos introducidos, como los ajustes de reproducción...
./private/var/mobile/Media/iTunes_Control/Music
La carpeta que contiene tanto los videos como la música introducida en el dispositivo. Apple lia un poco el asunto, y crea una carpeta cada X archivos y cada archivo lo renombra según sus gustos...
./private/var/mobile/Media/Photos
Las fotos introducidas en el dispositivo. En contra de lo que sucede también en el iPod Classic que permite introducir las fotos en "Alta calidad", itunes escala las imágenes y crea archivos de bases de datos de un extraño formato, lo que hace complicado la extracción de vuelta de las imágenes previamente cargadas. Luego no vemos un archivo png ni jpg por cada imagen, tan solo "paquetes".
--------------------
---------------------------
Creo que no me dejo nada de importancia, si encuento algo más editaré y completaré la lista, o si alguno quiere aportar algo también.
Un saludo.
7 comentarios:
Buenos días,
Muy buenas las direcciones para poder realizar los backups de las cosas, llevo tiempo esperando que hicieras una entrada así en tu blog para quedarme al canto desde que te lei en un foro diciendo que cuando restaurabas en pocos pasos tenías el ipod tal y como lo tenías antes de restaurar.
Yo creo que más o menos lo que haces es una copia de:
Aplicaciones
Installer
Preferencias
root
mobile
Tanto la Música como las Fotos las sincronizas de nuevo con el iTunes ¿verdad?
Lo digo para ir haciendome yo mis backups cada vez que actualizo y demás, y no tener que estar metiendo constantemente todas las apps.
Un saludo y muy currado tu blog.
En realidad no hago copias de seguridad de las aplicaciones, y mucho menos de las carpetas root o mobile. Si lo hago del installer, calendario, archivos modificados, agenda...
Magnífico y currado manual. Felicitaciones!
Con qué haces el backup, con el TimeCapsule?
no, a mano
Genial aportación Theliel!
Muchísimas gracias.
Una información muy muy buenas. Gracias por compartirla con la Comunidad.
Un saludo.
vmnetmgHola,
También estaría bien publicar las rutas de los archivos para el iPhone clásico con el firm 2.0.
Gracias y saludos
Publicar un comentario