miércoles, 27 de enero de 2010

Crear una segunda partición en el disco de un Mac sin perder los datos.


¿Es posible crear una nueva partición en un disco que ya estemos usando, que contenga datos, y sin que perdamos éstos?
Si que es posible recurriendo a Utilidad de Discos, herramienta ya incluida en Mac OS X. En el ejemplo siguiente, crearemos una segunda partición en un disco duro externo USB.

¿Y qué sentido tiene hacer esto? Por ejemplo, evitar usar un segundo disco duro (y la correspondiente conexión USB en nuestro ordenador) para Time Machine, ya que éste tiende a ocupar la totalidad del espacio disponible, o bien para clonar el disco de arranque en una segunda partición que podamos formatear sin afectar al resto.

Que quede claro que esto es "cirugía invasiva" y no está exenta de riesgos. Siempre es conveniente utilizar "Primera Ayuda" (también parte de "Utilidad de Discos") para verificar el correcto estado del disco. Y recordemos que un fallo mecánico afectaría a la integridad de los datos de ambas particiones.



Una vez abramos "Utilidad de Discos" (Aplicaciones/Utilidades) veremos a la izquierda el listado de discos conectados al Mac. En la mayoría de los casos veremos solo el "disco de arranque" (con el sistema operativo) y tal vez el disco que utilizamos para "Time Machine", aunque en las capturas de pantalla veremos también el disco "USB_300" que queremos "particionar".
Observemos que cada disco viene representado como "el disco en sí" y una especie de "subcarpeta" o "subcarpetas" que corresponden a las particiones existentes en cada disco. En un principio, veremos sólo una única partición por unidad, pero una vez finalicemos, veremos como el disco USB pasa a mostrar dos "subcarpetas".

Ahora, primero, LO QUE NO DEBEMOS HACER. No debemos seleccionar el disco, hacer clic en la "pestaña" o apartado "particiones" y cambiar, en "Esquema de volumen" a "2 particiones", porque sí, tendríamos dos particiones, pero habiendo FORMATEADO todo el disco y perdiendo todos los datos guardados en él.



POR EL CONTRARIO, debemos hacer clic en el icono "+" de la parte inferior para AÑADIR y crear una nueva partición pero conservando la existente y los datos guardados en ésta.
Por supuesto, debe haber suficiente espacio libre en el disco como para asignarlo a la nueva partición. Es decir, si disponemos 80GB libres, éste es el tamaño máximo que se podría asignar a la nueva partición. Pero de hecho, debemos dejar un margen. Si existen 80GB libres no debiéramos hacer una nueva partición de más de 60 ó 70 GB. De lo contrario, la partición con lo datos se quedaría casi inmediatamente sin espacio y podría haber problemas.

Como decíamos antes, una vez finalicemos veremos como el disco USB pasa a mostrar dos "subcarpetas" o particiones, y veremos cómo en el Escritorio aparecen montadas dos "unidades de disco".



jueves, 21 de enero de 2010

Sincronizando iCal y Address con tu cuenta de Gmail.

Hacía tanto tiempo que no miraba las opciones de publicar/subscribir y sincronizar de iCal que no sabía que las versiones de iCal incluidas en Leopard y Snow Leopard permiten sincronizar los eventos con los calendarios de una cuenta Gmail y sin necesidad de "software de terceros" (Spanning Sync, BusySync, Calgoo, etc…).

En realidad, no se pueden sincronizar los calendarios ya existentes en iCal, pero si se pueden visualizar los calendarios de tus cuentas de Google dentro del iCal de tu Mac y además editarlos. Del mismo modo, los eventos creados desde iCal, tras sincronizar con el calendario de Gmail también pueden ser editados en éste. Ya no se trata de "publicación" y "suscripción" como ocurría antes.



Como ya he dicho, no es posible hacerlo con los calendarios propios de iCal, pero no me ha supuesto ningún problema seleccionar todos los eventos de mi calendario de "Trabajo" y en la ventana "Editar información" moverlos al calendario que sí sincroniza con Gmail.

Pero la utilidad "Missing Sync" que utilizo para sincronizar datos con la Blackberry no permite hacerlo con este nuevo tipo de calendarios, solo puede hacerlo con los calendarios "locales" de iCal. Si que puede sin embargo, añadir los eventos de los calendarios "Gmail" a la Blackberry, es decir, sólo en un sentido. El problema que me surgía es que al crear eventos nuevos en el único calendario disponible en la Blackberry, Missing Sync sólo puede añadir estos nuevos eventos en un único calendario de iCal que hayamos definido, en mi caso "Trabajo".

La solución "simple" y poco práctica es ir moviendo manualmente en iCal los eventos de "Trabajo" al calendario "de Gmail". El inconveniente es que si te olvidas, estos eventos no se verán luego desde tu cuenta de Gmail.

Pero encontré un estupendo applescript que hace lo siguiente: selecciona todos los eventos que encuentra del calendario "Trabajo", los copia en el calendario "Gmail" y luego los borra de "Trabajo".
Evidentemente, si los calendarios se llaman de otra forma hay que editar el script cambiando los nombres de los calendarios.

Lo único que me faltaba es "programar" el script para que se ejecute automáticamente de forma periódica. Para ello lo más fácil es recurrir al mismo iCal creando un "evento" repetido periódicamente en el que la "alarma" ejecute el script. La única pega es que un evento de iCal puede repetirse como mínimo una vez al día, y es posible que queramos que el script se ejecute cada ciertas horas, o evitar que lo haga los fines de semana, etc.… Esto obligaría a ir añadiendo eventos de este tipo, lo cual es poco práctico.

Se puede recurrir al "cron" del sistema, pero para los que no dominan el Terminal es más fácil recurrir a software de terceros que  permiten crear "schedules" para ejecutar scripts y aplicaciones., aunque no hay casi nada "freeware".
Yo he recurrido a mi programa de backup favorito "Tri-Backup", que permite ejecutar scripts o abrir archivos o programas al terminar de hacer una copia. Tras una de ellas, automáticamente ejecuta el famoso script.

La libreta de direcciones de Mac OS X -con la ayuda de iSync- también sincroniza con la libreta de direcciones de tu cuenta de Gmail. Sólo hay que introducir los datos de ésta en Preferencias / Cuentas. De este modo, no es necesario exportar e importar constantemente desde Gmail y Address para mantener los contactos sincronizados.


martes, 19 de enero de 2010

Virtualizando sin complejos.

Existen para Mac OS X infinidad de aplicaciones y utilidades para casi todo. Es más, hay software magnífico sólo disponible para Mac y si existen versiones de un programa tanto para Mac OS X como para Windows, habitualmente suelen disponer de una interfaz más atractiva para el primero. Sin embargo, todo usuario de Mac necesita alguna vez ejecutar alguna aplicación "solo Windows", o se topa con alguna página web que funciona correctamente solamente con Internet Explorer. Por supuesto, en esta misma situación se pueden encontrar también los usuarios de Linux.


Windows XP Home virtualizado en Ubuntu.

La posibilidad de instalar Windows en nuestro Mac es muy interesante.
¿Windows en mi Mac? A muchos les sale urticaria solo con pensarlo y lo rechazan por una cuestión "de principios". A otros les parece algo "muy técnico", complicado y fuente de problemas. Por último hay muchísimos usuarios que ni siquiera saben que esto se puede hacer.

Yo ya he perdido toda reticencia a usar Windows en mi Mac.
Si una aplicación "sólo está para PC" o funciona mejor en Windows (Powerpoint, por ejemplo) no tengo ningún reparo en recurrir a éste. Esta es la ventaja de los Mac: permiten utilizar prácticamente cualquier sistema operativo. Lo mejor de los mundos Mac OS X, Windows o Linux en una sola máquina.

¿Pero no es esto muy complicado?
¿No voy a corromper de alguna manera a mi inmaculado ordenador? No ha de ser así en absoluto, pero hemos de aclarar primero un par de cosas. En primer lugar, el Mac debe ser uno de los últimos modelos con procesador Intel y no uno de los venerables Macintosh con procesador PowerPC o anterior. En segundo lugar, para instalar Windows necesitaremos del correspondiente CD o DVD de instalación, que habremos adquirido o que alguien "nos habrá prestado". Y en tercer lugar existen dos métodos para hacer funcionar Windows en nuestro Mac: Bootcamp y "virtualización".

Bootcamp
es un sistema por el cual, mediante una utilidad llamada "Asistente Bootcamp" incluida ya "de serie"en Mac OS X, podemos crear una partición en el disco duro del Mac ("dividir el disco en dos") en la cual instalar Windows, y desde la cual iniciar con éste nuestro ordenador. Esto supone que podremos iniciar el ordenador como el Mac que es, o bien como un PC con Windows, pero "de marca Apple". Este método tiene una única ventaja: el rendimiento de la máquina será del 100%, o sea, el mismo que el de un hipotético PC de otra marca pero con los mismos componentes de "hardware". Pero como desventajas tendrá todas las que que tendría cualquier PC con el sistema operativo de Microsoft, por "muy Apple" que sea.

La virtualización,
por el contrario, consiste en instalar un software que "emula" un PC real. Es decir, nuestro Mac se convierte en un "Matrix" capaz de hacer creer a Windows "que vive dentro de un PC de verdad". Esto tiene una desventaja: el rendimiento no es el mismo que en el caso anterior. Algunas aplicaciones muy exigentes, con 3D, y sobre todo muchos juegos recientes, pueden funcionar lentamente o no llegar siquiera a hacerlo, al encontrar, por ejemplo, incompatibilidades con la tarjeta gráfica "emulada".

Sin embargo, todo lo demás son ventajas:
Podemos utilizar Mac OS X y Windows simultáneamente en el mismo ordenador. Y no sólo "un Windows", también diferentes versiones de éste y las distintas distribuciones de Linux, UNIX, etc.… Es más, podemos correr varias máquinas virtuales a la vez; el límite está en la potencia del Mac y en la RAM disponible.

La mayoría de las aplicaciones y utilidades, por ejemplo el famoso MS Office, funcionan perfectamente de este modo.

Es posible "copiar y pegar" entre los dos entornos, compartir carpetas y arrastrar archivos y carpetas "de Mac a PC" y viceversa (esto último aún no es posible con VirtualBox).

Una enorme ventaja es que podemos "guardar el estado del PC". Esto supone "congelar el PC" tal como se encuentra en un momento dado, con ventanas, aplicaciones abiertas y documentos sin guardar. Al "restaurar el estado" de la máquina, y aunque hayamos apagado durante días nuestro ordenador "real", en pocos segundos volvemos a tener todo como estaba en ese punto "de congelación", incluso veremos la barra de inserción de texto parpadeando donde la dejamos en ese documento de Word en el que aun no habíamos guardado cambios. Esto es mas cómodo y muchísimo mas rápido que apagar y encender Windows cada vez.

Y lo mejor de todo: toda la máquina virtual es en realidad un conjunto de carpetas y archivos en el Mac que como medida de precaución podemos copiar en un DVD o disco externo. Si "Windows" empieza a hacer cosas raras a raíz de una actualización, instalación o virus, no hay más que "reemplazar la máquina virtual" partiendo de su copia para tener TODO igual que estaba cuando funcionaba correctamente. Es decir, configuración, aplicaciones, utilidades, cuentas, documentos, etc...

¿Qué software de virtualización podemos usar?
Aunque existen más, hay tres opciones a considerar en especial. El gratuito VirtualBox de Sun, y las soluciones comerciales VMware y Parallels. Las tres están disponibles tanto para Mac como para Windows, y las dos primeras también se pueden instalar sobre Linux.

Para un usuario doméstico en el que el precio es un factor importante. VirtualBox es gratuito, por lo que gana puntos en este apartado.
El espacio que ocupa en disco, el uso de los recursos del sistema y procesador, y la memoria RAM utilizada son menores que en las otras opciones. Por esto es recomendable en máquinas poco potentes.
Desde mi experiencia, VirtualBox es el mas rápido abriéndose y restaurando la maquina virtual. También me parece que Windows corre algo mas ágil y "suelto" que en las otras opciones.
VirtualBox permite que el Windows virtualizado acceda a las carpetas del Mac que definamos (las ve como carpetas compartidas en red) y nos deja compartir el portapapeles de modo que podamos, por ejemplo, copiar texto desde un documento de iWork en Mac OS X a otro documento de Word en Windows y viceversa.

Sin embargo, no permite arrastrar y copiar entre los directorios de los dos sistemas operativos, cosa que si permiten VMware o Parallels. Y es ciertamente cómodo poder arrastrar un documento o archivo desde el escritorio del Mac hasta el de Windows sin tener que recurrir a las carpetas compartidas.

Otra opción interesante y disponible en VMware y Parallels pero no en VirtualBox, es la posibilidad de asociar determinados tipos de archivo con aplicaciones de Windows o del Mac, de modo que un doble clic en un documento de Powerpoint guardado en una carpeta del Mac se abra en MS Powerpoint de Windows, o que los MOV se abran en el Quicktime de Mac aunque estén en una carpeta de Windows.

En VirtualBox se puede ocultar el escritorio de Windows de modo que solo veamos "sobre el Mac" las carpetas y aplicaciones abiertas y la barra de tareas de Windows. Como ésta puede ser molesta, podemos antes ocultarla o moverla a la parte superior desde Windows. Sin embargo, VMware en su modo "unity" y Parallels en el correspondiente "coherence" ocultan el entorno Windows y hacen que sólo esas ventanas sean visibles y se comporten como si fueran parte de Mac OS X. Parallels permite incluso dar "apariencia Mac" a las ventanas de Windows.

La configuración de la red por defecto en las máquinas virtuales es la de NAT, en la cual el Mac facilita dirección de red y demás parámetros al PC, que deberá estar configurado con DHCP o "automático". Otra opción es la configuración "en puente", que permite que el PC utilice su propia IP y parámetros. Esta opción está muy bien resuelta en VMware y Parallels, pero en VirtualBox es menos intuitiva y cómoda de definir.
Finalmente existe una tercera opción "solo host" en la que el PC está limitado a acceder exclusivamente al Mac.

Por ultimo, en VMware y Parallels podemos hacer que Windows utilice directamente las impresoras ya configuradas en el Mac, cosa que de momento no es posible en VirtualBox.

Toda esta integración de la maquina virtual con Mac OS X consume sin duda unos recursos de los que no hace uso VirtualBox, lo cual es una de las causas de que "parezca mas liviano" que los otros.

domingo, 10 de enero de 2010

Carta a ciertos profesores de colegio.

Estimados señores profesores,

es habitual que a los alumnos se les pida que realicen algunos trabajos en soporte informático. Entiendo que cuando se les pide "un powerpoint" el requisito es que dichos trabajos puedan ser mostrados como "presentaciones", es decir en un formato que permita "visualizar" o proyectar cada una de las "páginas" que componen el trabajo a modo de "slides" o diapositivas.

Sabemos que para ello, los dos tipos de documentos mas habituales son el formato PDF (que puede ser mostrado a pantalla completa mediante Acrobat Reader u otros visores de PDF) o bien el formato PPT. Este es el tipo de archivo que generan tanto Microsoft Powerpoint como OpenOffice, NeoOffice, IBM Symphony, o las herramientas "online" de Google, Zimbra, SlideRocket, G.ho.st, ThinkFree, etc.

Pero dado que la aplicación de Microsoft forma parte de la "suite" Microsoft Office y que ésta tiene un precio elevado, doy por supuesto que los alumnos tienen libertad para elegir cualquiera de las otras herramientas que si son gratuitas,. De otro modo se verían obligados a instalar software de forma ilegal en sus ordenadores, perderían la posibilidad de elegir libremente el sistema operativo, o que se verían forzados a utilizar un determinado software comercial.

Atentamente

"un padre que está hasta las narices de que para muchos, por ignorancia o desidia, solo existan Microsoft y Windows, y de que se presuponga que todo el mundo tiene en casa un PC con un Office "pirata" instalado o le sobra el dinero para comprar una licencia para uso doméstico."

martes, 22 de diciembre de 2009

¿Compartir carpetas entre ordenadores a través de internet?


Compartir carpetas entre ordenadores de una misma red es muy sencillo, sin embargo es habitual plantearse hacer lo mismo entre ordenadores situados en oficinas o domicilios distantes y "a través de internet".  Esto es perfectamente posible, pero nada sencillo para un usuario "de a pie". Si alguien se lo pregunta, este es uno de los motivos por los que proliferan los servicios tipo "mobile me", "Live Mesh", Ubuntu One", o mi favorito DropBox, que nos permiten disponer de "un sitio" donde guardar archivos que queremos que sean accesibles por nosotros mismos desde otro lugar, o que queremos compartir con otros, y que nos evitan complicaciones como las que siguen.


¿PORQUÉ NO ES "TAN FÁCIL?"

A modo de introducción rápida en el tema, lo primero es ver de qué modo se comparte esa carpeta; siendo lo más lógico usar el protocolo FTP. FTP es tan antiguo como internet, y se sigue utilizando por su eficiencia incluso si se dispone de una conexión a la red lenta. Si se dispone de un Mac se puede utilizar el servicio FTP ya integrado en Mac OS X, o bien añadir algún software que permita un mayor control sobre lo que se hace, como el gratuito PureFTP para Mac o el también gratuito Filezilla Server para Windows o Linux.

Este software convierte al ordenador en "servidor FTP", y permite compartir determinadas carpetas con otros ordenadores que accedan a ellas utilizando otro software llamado "cliente FTP". Filezilla (cliente) y CuteFTP para Windows, o Cyberduck y Transmit para Mac, son algunos ejemplos. Que quede claro que en ningún caso vamos a cometer la imprudencia de compartir todo el disco duro de nuestro ordenador, sino unas determinadas carpetas en las que guardaremos solo ciertos archivos.

Acceder al "servidor FTP" desde otros ordenadores será fácil: teclearíamos en nuestro "cliente FTP" la IP del servidor, así como un "nombre de usuario" o "login" y el correspondiente "password" o contraseña.
Por defecto FTP utiliza el puerto 21 y no hay que especificarlo (ftp://192.168.1.5:21), pero si instalamos, por ejemplo,  PureFTP éste suele utilizar el 2121 para no entrar en conflicto con el servicio del propio Mac. En este caso accederíamos también al Mac escribiendo: ftp://192.168.1.5:2121

Vale, pero ¿qué es un puerto? Haciendo un símil poco técnico, en el mando de nuestro televisor podemos seleccionar distintas botones o numeraciones para acceder a diferentes canales a través de un mismo cable de antena. Para no hacernos un lío solemos asignar ciertas numeraciones a determinados canales. En España, por ejemplo, el botón número "1" solemos hacer que corresponda a TV1, el "2" a TV2, el "3" a Antena3, el "5" a Tele5, etc... aunque no tiene porqué ser así y pueden ser otros, es sólo una convención.

Los ordenadores tienen "puertos", y existe también una convención para que por defecto se utilicen ciertos puertos para cada tipo de tráfico de datos, aunque todo entre y salga por un mismo cable. La navegación web se suele hacer a través del puerto 80, el acceso via FTP por el 21, la descarga de correo POP por el 110, y para jugar online al "Age of Empires" el 2301 y sucesivos, etc....

Todo esto de los puertos no tiene demasiada importancia en una red local, pero es fundamental cuando se accede "desde internet" a un ordenador "de tu casa u oficina".



Todos los ordenadores de tu casa: la Xbox, la impresora de red y el router tienen una dirección IP única y distinta. Esta se puede introducir manualmente o bien se confía en que el router asigne una a cada uno mediante el servicio DHCP.
Pero "desde fuera", desde internet, lo único visible sería la IP pública o externa de tu router. Tu router tiene "desde dentro" (desde tu red local o LAN) otra IP, que para los ordenadores es la puerta de enlace o "gateway", que suele ser 192.168.0.1 ó 192.168.1.1

El asunto es, que cuando alguien teclea tu IP ṕublica (la única visible desde el mundo exterior) y quiere acceder mediante FTP, el router debe saber a qué ordenador en concreto debe dirigir ese tráfico. Esto se llama "mapear puertos" o "port mapping" y consiste en crear en el router unas tablas en las que se asocian determinados puertos con ciertas IPs. El cómo se hace esto depende de la marca y modelo de router, pero podemos encontrar ayuda y manuales en muchas páginas de internet.

Otro tema es que tu dirección IP pública no tiene porqué ser siempre la misma, a menos que lo hayas solicitado expresamente y "pasando por caja". El proveedor de servicios puede asignarte automáticamente una IP pública diferente cada vez que apagues y enciendas el router. En principio habría que preguntar a los "del otro domicilio" qué dirección IP pública tienen en ese momento antes de acceder a esa carpeta compartida.

Esto se soluciona mediante un servicio gratuito llamado DynDNS. Si te llamas Fulano y te das de alta en el servicio obtendrás una dirección tipo: fulano.dyndns.ws Deberás instalar un software en tu Mac que periódicamente envía la IP pública del router a los servidores de DynDNS.

De este modo, cuando alguien escriba en su cliente FTP la dirección: ftp://fulano.dyndns.ws:2121, se redirigirá a la IP pública de tu router, éste verá que la petición se hace la puerto 2121 y llevará el tráfico al ordenador que tiene el "servidor FTP" instalado.


LA ALTERNATIVA: "ALMACENAMIENTO ONLINE"

Como todo esto puede ser muy complicado, existen servicios -muchos gratuitos- que facilitan las cosas a los usuarios. Si necesitas "esa carpeta para compartir datos", te la facilitan ubicada en un servidor. Si se dispone de una cuenta en "Mobile me", "Live Mesh" o Ubuntu One" te ofrecen una especie de "disco duro virtual" donde hacer tus copias de seguridad o guardar archivos. Google Apps, por ejemplo, además de crear y editar documentos "online" te permite compartirlos con otros usuarios, y recientemente también te deja compartir carpetas, aunque sólo permite utilizar archivos de tipo "ofimático".
Otros sitios ofrecen FTP gratuito, como Tripod, Files-Upload o DriveHQ, aunque ojo, en muchos casos los archivos que subamos sólo permanecen cierto tiempo (unos meses):



Pero el que desde mi punto de vista resulta el más práctico y cómodo es DropBox, que ofrece de forma gratuita hasta 2GB de espacio en disco. Podemos descargar un software que nos muestra el espacio en disco del servidor como un "disco local" en nuestro ordenador, a modo de "memoria USB virtual". Podemos instalar el software en todos los ordenadores que utilicemos, ya funcionen con Mac OS X, Windows o Linux (existen versiones para todos). Es muy fácil compartir las carpetas y datos con otros usuarios e incluso "copiar el URL" de un documento y enviarlo por email a otra persona para que descargue el archivo haciendo clic en el enlace. Es más, por defecto trae habilitada una función de sincronización entre los contenidos del "espacio online" y la correspondiente carpeta local.


OTRAS OPCIONES.

Y volviendo a lo de "interconectar" dos ordenadores para compartir archivos, cabe la posibilidad de hacerlo a través de programas de mensajería, pero requieren que haya alguien pendiente "al otro lado".

Existe otra opción, que como en el caso anterior, el truco está en utilizar un "intermediario". LogMeIn y NTRConnect son cada uno de ellos, una combinación de "servicio" prestado por los desarrolladores respectivos y un software "cliente" que se instala en nuestro ordenador. Si utilizamos las" versiones gratuitas" podemos controlar un ordenador remoto; es decir ver la pantalla del otro ordenador, ya sea PC o Mac, e interactuar con teclado y ratón como si estuviéramos sentados frente a ellos. Pero si pagamos una cuota, además "de ver el otro ordenador" podemos hacer más cosas, como transferir archivos entre unos y otros

El software de los ordenadores (pueden ser más de dos) se conecta con los servidores de LogMeIn ó NTRConnect, que hacen de intermediarios y permiten gestionar las conexiones. Para ello basta darse de alta en el servicio e instalar una pequeña aplicación en el Mac o PC. En su momento hice una guía o tutorial para instalar y utilizar NTRconnect, en Macuarium y en una entrada de este mismo blog.