29 de septiembre de 2016

Ubuntu de 32 bits en Lenovo ideapad 100S 11IBY

Recientemente he instalado Ubuntu 16.04 de 32 bits en un Lenovo ideapad 100S de 11 pulgadas. Como me he encontrado varias dificultades, voy a resumir aquí cómo las he resuelto.

Creando una segunda partición


No cuenta con mucha capacidad de almacenamiento, pero aún así decidí crear una segunda partición para Ubuntu. Me encontré con que no podía modificar la partición original debido a que la unidad venía pre-cifrada con BitLocker. Por lo que, lo que hay que hacer es desactivar dicho cifrado, en el Panel de Control de Windows.

Accediendo a la UEFI



Uno de los problemas era la UEFI de este dispositivo, se puede acceder a ella durante el arranque con la combinación de teclas Fn+F2, acceder al menú de arranque con Fn+F12, y también dispone de un pequeño botón al lado del de arranque, y con aspecto de reset, que permite acceder a su configuración UEFI.

Lenovo ideapad 100S 11IBY


En dicha configuración lo principal que nos permite hacer es desactivar el Secure Boot. También desde ahí, particularmente desactivé las teclas rápidas para no tener que hacer combinaciones y poder marcar directamente las teclas de función.

Tras todo ello mis USB's de arranque habituales no me los reconocía, ello es porque en este caso, ¡sólo reconoce el arranque desde 32-bit UEFI! Así que antes de nada, hay que implementar en el USB de Ubuntu este sistema que no trae por defecto.

Comentario: Tanto el sistema de arranque que tiene este Lenovo, como el sistema Windows instalados de fábrica son de 32 bits, pero su procesador es compatible con 64 bits, por lo que se puede instalar un Ubuntu de 64 bits; sin embargo hay que instalarle el Grub que nos permita arrancar con 32-bit UEFI.

Los comandos para instalarlo en el sistema de 64 bits son los siguientes:

sudo apt-get update
sudo apt-get install grub-efi-ia32
sudo update-grub

Lo complicado, y antes de hacer el paso anterior, es arrancar el sistema la primera vez, cuando el Grub no se ha instalado. Lo podemos hacer con el mismo USB de arranque que se explica más adelante, al arrancar desde él y cuando nos sale el menú, hay que pulsar 'c' y escribir los siguientes comandos:

linux (hd1,gpt2)/boot/vmlinuz-4.4.0-22-generic root=/dev/mmcblk1p2
initrd (hd1,gpt2)/boot/initrd.img-4.4.0-22-generic
boot

Para poner bien estos comandos y arrancar correctamente, hay que hacer buen uso del autocompletar (TAB) y de conocer dónde hemos hecho las particiones. En el ejemplo concreto hay tres particiones, la primera para EFI la segunda para ext4 (gpt2 y mmcblk1p2) y la tercera para swap.

Implementando 32-bit UEFI


Como en este caso partimos de un USB Live de Ubuntu de 32 bits, hay que añadir los arranques UEFI de 32 y 64 bits. Ello lo conseguimos obteniéndolo de la ISO de otra distribución que lo trae. En mi caso concreto usé debian-8.6.0-amd64-i386-netinst.iso para el arranque de 32 bits, y el de Ubuntu de 64 bits para el arranque UEFI de 64 bits.

Una vez descargamos los archivos, lo podemos abrir con el Gestor de archivadores. Ya que el formato .iso se trata de un tipo archivo sin compresión para empaquetar otros archivos. De todos sus archivos nos interesa extraer las carpetas boot y efi respectivamente.

Partimos entonces de tres ISO's: Ubuntu de 32 bits, Ubuntu de 64 bits y Debian de 32 bits. El Ubuntu de 32 bits lo usaremos para crear el USB de arranque con UNetbootin,  en un USB formateado con FAT32.

De la ISO del Ubuntu de 64 bits deberemos extraer las carpetas boot y EFI combinando y sobreescribiendo en el USB de arranque.

De la carpeta de Debian /efi/boot/ tomamos el archivo bootia32.efi y lo copiamos en nuestro USB de arranque en la carpeta /EFI/BOOT/ correspondiente.

Y de la carpeta /boot/grub/ de Debian copiamos la carpeta entera i386-efi y la pegamos en el USB de arranque en su propia carpeta /boot/grub/

Por último debemos cambiar el nombre del fichero que está en el USB de arranque /casper/vmlinuz añadiéndole la extensión para que se quede con el nombre de vmlinuz.efi

Hecho esto, nos reconocerá el nuevo arranque UEFI y se podrá instalar.

Arreglando el WiFi


Hay otro problema añadido y es que el WiFi interno del sistema no se reconoce ni instala. Para solventarlo, hay que hacer uso de algún USB WiFi que nos dé conexión a Internet temporalmente para instalar los drivers.

Los pasos para instalar los drivers son los siguientes:

sudo apt install build-essential linux-headers-generic git
git clone https://github.com/hadess/rtl8723bs.git
cd rtl8723bs
make
sudo make install
sudo depmod -a
sudo modprobe r8723bs


Por último reiniciamos, y ya no necesitaremos un USB WiFi porque funcionará el interno. Eso sí, si en alguna actualización deja de funcionar, hay que aplicar de nuevo el driver.

Cuelgues del equipo



Los cuelgues de este equipo, parece que son debidos a que la gestión de energía no está bien implementada, se pueden solucionar actualizando el kernel de un modo u otro, aunque quizás podamos simplemente retrasar los cuelgues con la siguiente solución que no afecta tanto, aunque hará que consuma algo más de batería.

Edita el archivo /etc/default/grub modificando la línea en la que pone

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

por

GRUB_CMDLINE_LINUX_DEFAULT="intel_idle.max_cstate=1 quiet splash"

luego aplicas los cambios

sudo update-grub

y reinicias.


Corregir el sonido


Otro hardware problemático en este Bay Trail es el sonido. Para la versión 17.04 parece que existe un parche que al menos consigue que podamos escuchar a través de auriculares. Los pasos son los siguientes:

  • Dirigirse a la siguiente web: https://github.com/plbossart/UCM
  • Hacer click en la flecha derecha del botón verde "Clone or download" y luego descargar haciendo click en el enlace "Download Zip".
  • En el terminal dirigirnos a la carpeta de descargas y poner el comando "unzip UCM-master.zip"
  • Instalar con el comando "sudo cp -rf UCM-master/bytcr-rt5640 /usr/share/alsa/ucm"
  • Reiniciar, conectar los auriculares y en "Configuración de sonido" establecer la salida por auriculares.


ACTUALIZACIÓN (1):  Por lo que he podido averiguar el kernel 4.8 soluciona el problema de los cuelgues, y el kernel 4.9 soluciona además el problema del sonido y el WiFi. Además hay un blog que se está dedicando a este tema con más profundidad y desde el que aparecen parches y distribuciones enteras listas para instalar:

http://linuxiumcomau.blogspot.com/

ACTUALIZACIÓN (2):  Recientemente me he vuelto a enredar en la instalación de GNU/Linux en equipos con sistemas UEFI complicados. Afortunadamente ahora es más sencillo y para facilitaros las cosas os pongo a continuación el ISO de Ubuntu 17.10 de 64bits para equipos tipo Atom, como el del presente artículo:

linuxium-atom-ubuntu-17.10-desktop-amd64.iso

22 de septiembre de 2016

Instalar Konica Minolta PagePro 1350E en Ubuntu

Konica Minolta PagePro 1350E
En los centros educativos de Andalucía, la impresora Konica Minolta PagePro 1350E es todo un clásico que perdura hasta nuestros días. Y desde luego se le tiene que seguir sacando partido tal como están las cosas, y qué mejor modo que usándola desde un sistema libre como Ubuntu.

En principio parece que no es problemática, si la intentamos añadir en nuestro sistema operativo, la reconoce y de momento nos está ofreciendo el imprimir una página de prueba. Cosa que como comprobaremos inmediatamente no es tan cierta como nos gustaría:

☻┐㊰âƒ☺♦♦,☻▂«☺É↕ ... en una línea, el resto en blanco y así páginas y páginas

Con lo que la única solución que he encontrado, en un foro de centros TIC, nos lleva a un archivo PPD que proporcionó la junta de Andalucía para Guadalinex. En concreto el archivo lo podéis descargar del siguiente enlace:

http:/www.juntadeandalucia.es/educacion/cga/portal/wp-content/uploads/2013/09/KonicaMinolta-PagePro-1350E.ppd_.gz

Y aplicándolo en la configuración de nuestra impresora en lugar del "recomendado" por la base de datos, hará que funcione correctamente por fin.

Por precaución, y como no sé cuanto durará el enlace de la junta voy a copiarlo a continuación tal cual, de forma que si hiciera falta con copiarlo en un archivo y poniéndole su extensión PPD lo tendríamos de nuevo:

https://github.com/jesusabad/KonicaMinolta-PagePro-1350E/blob/master/KonicaMinolta-PagePro-1350E.ppd
Y bueno, como la cosas cuanto más fáciles mejor, pinchando aquí con el botón derecho y eligiendo "Guardar enlace como..." también se descargará directamente.

6 de septiembre de 2016

Restablecer la contraseña en Ubuntu

Últimamente se me han dado varios casos en los que habían olvidado la contraseña de la cuenta de Ubuntu. Principalmente porque habían configurado el sistema para acceder directamente sin que la preguntara al principio. Y claro llegado un momento en que la necesitaron, ya no se acordaban.

La solución más sencilla en estos casos, pasa directamente por forzar una nueva contraseña (y tratar de no olvidarla). Veamos como.

Lo primero es arrancar en el Modo de Recuperación o Recovery Mode, en lugar de dejar que arranque de forma normal.
Accediendo al Recovery Mode

Al hacerlo, nos saldrán varias opciones, entre las que elegiremos la opción root o Consola de superusuario. Que normalmente nos dejará acceder sin contraseña si no se ha establecido para la cuenta de root, y en la instalación normal de Ubuntu suele quedarse así sin definir.

Desde hay es muy sencillo, lo que haremos será montar nuestro disco con permisos de escritura (en este modo se monta como sólo lectura), establecer una nueva contraseña para el usuario deseado, y finalmente Continuar con el arranque normal o resume. Los comandos a introducir primeramente para todo ello, son los siguientes:


mount -o remount,rw /

passwd tu_nombre_usuario

exit


Espero que os sea de utilidad, aunque recordad la importancia de establecer bien las contraseñas, no olvidarlas, y entre otras cosas, establecer también la de root ;)

El terminal de texto deja de verse en Ubuntu

Llevaba ya un tiempo muy contento con el nuevo Ubuntu 16.04, hasta que un día necesité trabajar en el terminal de texto.

Terminal de texto al que esperaba acceder.
Por si no lo sabías, a parte del terminal gráfico, hay otros 6 más de texto: tty1, tty2, ..., tty6. Y para acceder a cada uno de ellos se emplea una combinación de teclas específica: Ctrl+Alt+F1, Ctrl+Alt+F2, ..., Ctrl+Alt+F6. Para volver al terminal gráfico la combinación sencillamente es Ctrl+Alt+F7.

Pues bien, resulta que al intentarlo, en lugar del mensaje típico de acceso pidiendo el login, tan sólo me aparecía el cursor perdido sin más. Tras investigarlo, parece que la causa del problema es la resolución por defecto que trae ahora el terminal de texto, y que supera evidentemente la de mi monitor. Para corregirlo, sencillamente seguí los siguiente pasos.

Abrí un terminal (esta vez virtual) que funciona sin problemas en el modo gráfico, la forma más rápida de hacerlo es con la combinación de teclas Ctrl+Alt+T desde la que modifiqué el grub con los siguientes comandos:

sudo sed -i -e 's/#GRUB_TERMINAL/GRUB_TERMINAL/g' /etc/default/grub
y seguidamente

sudo update-grub

Tras ello, hay que reiniciar por completo, y comprobar como ya se puede acceder a los terminales de texto de forma normal.