Sí, otra vez.
¿Qué se creían? ¿Que
nos íbamos a rendir? No, amiguitos. Por algo este blog se llama El
Rostro de Muerte. Si nuestro padre espiritual no dio su brazo a
torcer luchando contra el Todopoderoso (y ganó), nosotros no íbamos
a ser menos.
En capítulos
anteriores de Buffy la Cazavampiros...
Tras ímprobos esfuerzos,
Shemer Olufunmilayo consiguió que ese ultrabook híbrido de
Microsoft llamado Surface Pro funcionase con GNU/Linux, aunque no tan
bien como le gustaría. Habíamos logrado que arrancase desde USB con
persistencia, pero todavía nos quedaban dos escollos importantes,
por no decir gravísimos:
1. Si arrancamos Linux
con el ordenador desenchufado, no sólo se cuelga, sino que se
estropea y hay que reinstalarlo en el pendrive.
2. Si se desenchufa
estando encendido, pierde la señal de la wifi y la única manera de
recuperarla es apagando el ordenador y volviéndolo a encender
enchufado a la corriente.
El primer problema estaba
resuelto en parte, porque ya había comprobado que al menos una
distribución de GNU/Linux era capaz de hacerlo correctamente: Fedora
20. Por desgracia, ya comenté en la entrega anterior que Fedora es
incapaz de crear discos USB con persistencia de más de 4 Gb cuando
la partición está formateada como FAT32. Con ext2 y sus sucesores
este límite no existe, pero la UEFI (a diferencia de su “obsoleta”
predecesora, la BIOS) es un sistema de arranque tan cateto que no
entiende otro formato que Fat32, cuya primera aparición se remonta
a... Windows 95. Vamos, que es tan revolucionario como el peinado de
Jennifer Aniston.
(Otra cosa que he
descubierto en mis experimentos es que Windows sólo sabe leer la
primera partición que haya en un pendrive, da igual el formato,
aunque todas estén en Fat32. Este analfabetismo se daba en Windows
XP y persiste en Windows 8.)
Todo ello indica que una
versión posterior del kernel (el núcleo del sistema operativo)
había metido en cintura al díscolo Surface Pro y por fin se
encendía sin estar conectado a la red eléctrica.
Ahora bien, la nueva
versión de Ubuntu (con un kernel actualizado) no saldrá hasta
mediados de abril (otra razón para esperar con impaciencia la
llegada de este mes), lo que me obligaba a elegir entre un sistema
que se colgaba constantemente por la diabólica limitación de 4 Gb
(Fedora 20) o jugar a la ruleta rusa cada vez que encendiera el
ordenador (Ubuntu 13.10).
Como ustedes me conocen,
ya habrán adivinado que escogí la opción secreta c).
La derrota no es más
que una victoria postergada
MeX Linux es una versión
de Linux Mint, que a su vez es una versión de Ubuntu, que a su vez
es una versión de Debian, que a su vez es una versión de... Bueno,
mejor lo dejamos; otro día les explicaré la genealogía de las
distribuciones GNU/Linux.
Lo importante es que MeX
viene con el kernel más moderno (13.0), de manera que no hay peligro
de que el ordenador se cuelgue si se enciende sin estar enchufado. No
sólo eso; como está basado en Ubuntu, se puede aprovechar todo el
espacio del pendrive, sin estar sometidos a la tiranía de los 4 Gb.
(Con razón el Doctor Muerte odia tanto el número 4...)
Para lograr la
persistencia, MeX utiliza un método propio (procedente de Kanotix,
otra distribución basada en Ubuntu), distinto del que explicamos en
su día. Consiste en ejecutar dos scripts (programas) que transfieren
la imagen al pendrive y crean una capa de persistencia.
1. El primer paso es (lógicamente) descargar la iso o imagen del disco de la siguiente dirección:
2. A continuación,
descargamos los dos scripts: mex-create-usb-drive.sh
y mex-create-usb-drive-persistent.sh
3. Hecho esto, tenemos que cambiar los permisos de los scripts para que sean ejecutables. ¿Alguna vez se han preguntado por qué dicen que GNU/Linux es más seguro que otros sistemas operativos? Entre otras razones, porque hay que dar permiso EXPRESAMENTE a un archivo para que se ejecute en el sistema. Esto es así desde los años 70, cuando un tal Gates se reventaba los granos del acné en el espejo mientras un tal Jobs mangoneaba a su antojo al pobre Steve Wozniak.
¿Y cómo se cambian los
permisos? Pues de varias maneras, pero como todos los empollones
saben por las películas de los 80, las mujeres caen rendidas a los
pies de un hombre que domina la notación octal. (Advertencia: La
frase anterior podría no corresponderse con la realidad. En caso de duda,
consulte a su farmacéutico.) Así que abrimos la terminal (esa cosa
que sirve para hacer calendarios y navegar por internet) y tecleamos:
chmod 755
mex-create-usb-drive.sh mex-create-usb-drive-persistent.sh
Chmod es la instrucción que sirve para cambiar los permisos de un archivo. 755 indica (en notación octal) que cualquiera puede leer y ejecutar el archivo que va detrás del número (en este caso, dos archivos), pero sólo el dueño del archivo puede escribir en el archivo además de leerlo y ejecutarlo.
Ahora bien, lo más
probable es que esta instrucción nos dé un error porque los
archivos no existen. ¿Pero cómo no van a existir, si acabo de
descargarlos? Porque la terminal se abre (normalmente) en
/home/nombre_de_usuario/, y nosotros queremos ir al directorio donde
hemos descargado todo lo demás, generalmente
/home/nombre_de_usuario/Descargas (ojo a las mayúsculas y
minúsculas, porque en Linux se distinguen).
Así que tecleamos:
cd Descargas
Y si ahora escribimos:
ls
¡Magia! Entre los
archivos listados nos aparecen todos los anteriores.
Ahora volvemos a
escribir:
chmod 755 mex-create-usb-drive.sh mex-create-usb-drive-persistent.sh
Y todo irá como la seda.
4. Llegó la hora de
ejecutar el primero de los scripts. Esto es tan sencillo como
teclear:
./mex-create-usb-drive.sh mex-64bit-cinnamon-310-isoh-persistent-921mb-140123.iso /dev/sdX
Examinemos la sintaxis con mayor detenimiento.
El punto y la barra
inclinada indican a Linux que el archivo se ejecute en el directorio
actual. A continuación, aparece el nombre del script, con dos
argumentos: a) la imagen que queremos copiar a nuestra unidad USB y
b) dónde está esa unidad, para que se grabe correctamente,
cambiando X por la letra de esa unidad.
Normalmente, las unidades
USB se montan en /dev/sdb, pero no siempre es así. En mi sistema,
por ejemplo, están en /dev/sdd/. Es importante averiguar esto de
antemano, porque podemos grabar en el disco equivocado o incluso
borrar el disco duro si escribimos /dev/sda/. ¡Así que cuidado!
Importante: no hay que
especificar un número de partición, como /dev/sdd1. Hay que decir
simplemente /dev/sdd/.
Por lo tanto, en mi caso,
tengo que escribir:
./mex-create-usb-drive.sh
mex-64bit-cinnamon-310-isoh-persistent-921mb-140123.iso /dev/sdd
5. En tan sólo dos
minutos (estamos usando USB 3.0, por las razones que explicamos en su
momento), ya tenemos la imagen copiada al pendrive. Para hacerla
persistente, tecleamos:
./mex-create-usb-drive-persistent.sh
mex-64bit-cinnamon-310-isoh-persistent-921mb-140123.iso /dev/sdX
De
nuevo, cambiando sdX por el disco correcto (n mi caso, sdd).
6.
Esperamos otros dos
minutos y ya está todo listo... ¡Pues no! Como ya anticipé en la
primera entrega, ni UNetbootin ni el Creador de Discos de Arranque de
Ubuntu generan correctamente la persistencia en el caso de la UEFI
(sí para BIOS). Dado que los scripts de MeX ejecutan a su vez los
scripts en que se basa el Creador de Discos de Arranque, el fallo se
perpetúa.
Por
suerte, ya sabemos lo que tenemos que hacer, ¿verdad? Abrimos
nuestro recién
creado LiveUSB en el explorador de archivos, buscamos
/boot/grub/grub.cfg
y lo modificamos con nuestro editor de textos favorito para añadir
la palabra mágica “persistent” antes de quiet splash (para una
explicación más detallada, lean el capítulo anterior).
7. El siguiente paso es opcional, pero muy recomendable. Usando gparted (el editor de particiones), reducimos el tamaño de la partición casper-rw para crear una partición FAT32, útil si queremos evitar problemas de permisos cuando copiemos archivos desde o hacia nuestro Linux de sobremesa.
(La
solución ideal sería agrandar la primera partición, donde se copia
MeX, porque es la única que reconoce Windows, pero me da miedo que
Windows 8 la estropee con sus triquiñuelas del Fast Startup.)
8. Si todo ha salido bien, ya tenemos un sistema GNU/Linux que arranca desde USB y conserva todos los cambios, aunque el Surface Pro esté desenchufado.
En
resumen...
¡SHORYUKEN!
Charlie
Tango a Bravo Delta, Charlie Tango a Bravo Delta, ¿me recibe?
En
cuanto a la wifi, todavía no he logrado que funcione como
es debido, aunque
los avances son alentadores.
Con
Ubuntu 13.10, cuando se desenchufa el cable de la corriente, la wifi
del Surface Pro se desconecta automáticamente, y aunque se vuelva a
enchufar, no reconoce la red, por lo que no hay más remedio que
apagar el ordenador y volverlo a encender.
Con
MeX, pasa lo mismo, pero cuando se vuelve a enchufar el Surface Pro,
sí se puede volver a conectar a la red inalámbrica, aunque para eso
hace falta meterse en Conexiones de Red (o más bien, en Network
Manager, por razones que luego explicaré) y conectarse a una red
oculta, seleccionando la que tuviéramos antes de quitar el enchufe.
¿Y
funciona la wifi sin estar conectado? A ratos. Yo lo he conseguido un
par de veces, tras muchos intentos, probando toda clase de
combinaciones y sin que todavía tenga muy claro cuál de ellas es la
que funciona. Pero se puede hacer, y una vez dé con el procedimiento
correcto (aunque sea engorroso
a más no poder), lo
explicaré en otra entrega.
No hay comentarios:
Publicar un comentario