13 de octubre de 2019

Atajos de teclado del Firefox


Para aumentar la productividad es muy importante conocer los atajos de teclado de las herramientas que utilizas. Una de la que más utilizo al cabo de día es el Firefox. Aquí os dejo los que creo que son más importantes:
  • Alt+←: Ir a la página anterior
  • Alt+→: Ir a la página siguiente
  • F5: Recargar
  • Ctrl+F5: Recargar (reemplazar caché)
  • Tab: Resaltar próximo enlace
  • Shift+Tab: Resaltar enlace anterior
  • Ctrl+P: Imprimir
  • Ctrl++: Aumentar tamaño
  • Ctrl+-: Reducir tamaño
  • Ctrl+0: Restablecer tamaño
  • Ctrl+F: Buscar
  • F3: Buscar de nuevo
  • Mayús+F3: Buscar anterior
  • Ctrl+F4: Cerrar pestaña
  • Alt+F4: Cerrar ventana
  • Ctrl+Q: Salir
  • Ctrl+PagUp: Ir una pestaña a la izquierda
  • Ctrl+PagDown: Ir una pestaña a la derecha
  • Ctrl+Shift+PageUp: Mover pestaña focalizada a la izquierda
  • Ctrl+Shift+PageDown: Mover pestaña focalizada a la derecha
  • Ctrl+T: Nueva pestaña
  • Ctrl+N: Nueva ventana
  • Ctrl+Shift+P: Nueva ventana privada
  • Enter: Abrir marcador resaltado o enlace en la pestaña actual
  • Ctrl+Mayús+T: Deshacer cerrar pestaña
  • Ctrl+Mayús+N: Deshacer cerrar ventana
  • Ctrl+D: Agregar esta página a marcadores
  • F12: Herramientas
  • Ctrl+Mayús+K: Consola web
  • Ctrl+Shift+C: Inspector
  • Ctrl+Shift+S: Depurador
  • Ctrl+Shift+E: Redes
  • Ctrl+Shift+M: Vista de diseño adaptable
  • Ctrl+U: Código fuente de la página
  • F11: Pasar a pantalla completa
  • Alt: Activar la Barra de menú
  • F6: Seleccionar barra de direcciones
  • Shift+F10: Activar menú contextual
Comparte:    Facebook Twitter
Leer más

Atajos de teclado del multiplexor de terminal Byobu


Byobu es un multiplexor de terminal para sistemas tipo unix que permite dividir una consola en múltiples secciones o generar sesiones independientes en la misma terminal.

Yo he empezando a usarla hace poco y para usarla bien es necesario conocer sus atajos de teclado. Aquí os dejo los que creo que son más importantes:
  • F2: Crear una nueva ventana.
  • F3: Ir a la ventana anterior.
  • F4: Ir a la ventana siguiente.
  • F8: Renombrar la ventana.
  • F9: Menú de configuración.
  • shift+F2: Dividir la pantalla horizontalmente.
  • ctrl+F2: Dividir la pantalla verticalmente.
  • shift+F3: Poner el foco el la división anterior.
  • shift+F4: Poner el foco el la división siguiente.
  • ctrl+F6: Eliminar la división actual.
Comparte:    Facebook Twitter
Leer más

Qué programas desinstalar después de instalar Ubuntu Desktop 18.04


En uno de mis últimos posts sobre cómo hacer una instalación mínima de Ubuntu Desktop con RAID 0 y con cifrado de la carpeta home de un usuario, explico al final que el hacer una instalación mínima de Ubuntu Desktop me estaba dando muchos problemas, así que al final he optado por hacer una instalación completa, el problema es que hay programas que no utilizo.

C Así que, como en otras ocasiones, a continuación escribo, en forma de apuntes, qué programas desinstalar después de instalar Ubuntu Desktop 18.04. Esto es algo muy personal y seguro que hay gente que usa los programas que yo personalmente no uso. En cualqueir caso ahí va mi selección:

Primero desinstalo el icono de Amazon con:

sudo rm /usr/share/applications/ubuntu-amazon-default.desktop
Primero desinstalo el programa de la webcam Cheesse, el gestor de correo Thunderbird, el calendario de Gnome, el escritorio remoto Remmina, el gestor de tareas ToDo con:

sudo apt remove --autoremove chesse thunderbird gnome-calendar remmina gnome-todo
Luego desinstalo varios juegos: el Mahjong, el Buscaminas, los juegos de cartas de Aisleriot, el Sudoku con:

sudo apt remove --autoremove gnome-mahjongg gnome-mines aisleriot gnome-sudoku
Espero que le sea útil a alguien. A mi yo del futuro seguro que sí ;-)
Comparte:    Facebook Twitter
Leer más

Cómo hacer que se vean correctamente las imágenes en miniatura (thumbnails) en el explorador de archivos Nautilus en Ubuntu 18.04


Como he comentado en uno de mis últimos posts sobre cómo hacer una instalación mínima de Ubuntu Desktop con RAID 0 y con cifrado de la carpeta home de un usuario, hace poco me he comprado un Slimbook ProX, y aunque la gente de Slimbook me lo dieron con Ubuntu instalado y configurado, yo como buen hacker he querido instalar Ubuntu desde cero y algún que otro problema me he encontrado.

Así que, como en otras ocasiones, a continuación escribo, en forma de apuntes, cómo hacer que se vean correctamente las imágenes en miniatura (thumbnails) en el explorador de archivos Nautilus en Ubuntu 18.04.

Después de mucho buscar por Internet como arreglar el problema encontré este post en francés que me sirvió de inspiración.

A modo de resumen, a mi me ha servido con hacer:

sudo apt install gnome-raw-thumbnailer libgdk-pixbuf2.0-bin
Espero que le sea útil a alguien. A mi yo del futuro seguro que sí ;-)
Comparte:    Facebook Twitter
Leer más

Cómo hacer USB tethering con Android en un Ubuntu Server


Como he comentado en uno de mis últimos posts sobre como hacer una instalación mínima de Ubuntu Desktop con RAID 0 y con cifrado de la carpeta home de un usuario, hace poco me he comprado un Slimbook ProX, y aunque la gente de Slimbook me lo dieron con Ubuntu instalado y configurado, yo como buen hacker he querido instalar Ubuntu desde cero y algún que otro problema me he encontrado.

Así que, como en otras ocasiones, a continuación escribo, en forma de apuntes, cómo hacer USB tethering con Android en un Ubuntu Server para compartir la conexión de Internet de tu teléfono Android con tu portátil Ubuntu.

Primero conectamos nuestro teléfono Android por USB y en opciones buscamos como compartir la conexión por USB.

Una vez hecho esto miramos que interfaces de red tenemos con:

ifconfig -a
Vemos cual es la que corresponde con la de nuestro teléfono, en mi caso es la enp0s20f0u5, así que la levantamos con:

sudo ifconfig enp0s20f0u5 up
Y luego tenemos que configuar el DHCP con:

sudo dhclient enp0s20f0u5
Como el nombre de la interfaz de red de mi teléfono no cambia, se puede crear un pequeño script para automatizarlo. Yo por ejemplo me he creado este en el ~/.zsgrc:

function usbtethering() {
  sudo ifconfig enp0s20f0u5 up
  sudo dhclient enp0s20f0u5
}
Espero que le sea útil a alguien. A mi yo del futuro seguro que sí ;-)
Comparte:    Facebook Twitter
Leer más

9 de octubre de 2019

Arreglar un problema de la BIOS y el GRUB con el "Secure Boot" en mi Slimbook Pro


Como he comentado en uno de mis últimos posts sobre como hacer una instalación mínima de Ubuntu Desktop con RAID 0 y con cifrado de la carpeta home de un usuario, hace poco me he comprado un Slimbook ProX, y aunque la gente de Slimbook me lo dieron con Ubuntu instalado y configurado, yo como buen hacker he querido instalar Ubuntu desde cero y algún que otro problema me he encontrado.

Así que, como en otras ocasiones, a continuación escribo, en forma de apuntes, como arreglar un problema de la BIOS y el GRUB con el "Secure Boot".

El problema consistía en que una vez instalado Ubuntu con sistema EFI y "Secure Boot" habilitado en la BIOS, algunas veces, cuando reiniciaba el portátil, no se cargaba bien el GRUB, pero otras veces, o pulsando F7 y seleccionando el boot me funcionaba. Como tengo 2 discos SSD en RAID 0, pensé que era un problema de particiones, así que copié la partición EFI del primer disco al segundo, pero esto no resolvió el problema.

Afortunadamente, mi amigo y compañero Roberto Mengibar que es un crack con sistemas Linux en general y con el sistema MAX en particular, me estuvo ayudando y parece que dio con la solución.

La solución pasa por habilitar el CSM en la BIOS y poner primera la partición EFI (yo además he deshabilitado las demás opciones, pero eso es opcional). El tema es que al habilitar el CSM, el "Secure Boot" se desactiva. El caso es que si vuelves a activar el "Secure Boot" el CSM se desactiva de nuevo, pero curiosamente el problema de que a veces arranca bien el GRUB y otras veces mal, se arregla. Supongo que será un pequeño bug de la BIOS :-)

Espero que le sea útil a alguien. A mi yo del futuro seguro que sí ;-)
Comparte:    Facebook Twitter
Leer más

3 de octubre de 2019

Instalar los drivers de Nvidia en Ubuntu y posteriormente actualizar el Secure Boot


Como he comentado en mi último post sobre como hacer una instalación mínima de Ubuntu Desktop con RAID 0 y con cifrado de la carpeta home de un usuario, hace poco me he comprado un Slimbook ProX, y aunque la gente de Slimbook me lo dieron con Ubuntu instalado y configurado, yo como buen hacker he querido instalar Ubuntu desde cero y algún que otro problema me he encontrado.

Así que, como en otras ocasiones, a continuación escribo, en forma de apuntes, como instalar los drivers de NVIDIA en Ubuntu y como posteriormente actualizar el "Secure Boot" si lo tienes activado en la BIOS.

Antes de nada, comentar que los chicos de Slimbook ya tienen un artículo explicándolo, pero a mi el blog me sirve como un "disco duro" para mi yo del futuro que ya de paso espero que sea útil a más gente. ;-)

Para actualizar los drivers de NVIDIA tienes que:
  1. abrir "Software y actualizaciones",
  2. luego ir a la pestaña "Controladores adicionales"
  3. y finalmente pinchar en el driver de NVIDIA en vez de en el driver de Nouveau.
Hasta aquí nada raro. Sólo que si tienes el Secure Boot activado en la BIOS:
  1. al pulsar el botón "Aplicar cambios" te saltará un popup indicándote que tienes que configurar el Secure Boot,
  2. entonces en ese momento hay que hacer click en "Siguiente" e 
  3. introducir una contraseña que no tienes que olvidar pues te la pedirá después de
  4. reiniciar el equipo.
Una vez reiniciado el equipo:
  1. sale un mensaje azul de la BIOS,
  2. entonces pulsamos cualquier tecla para continuar,
  3. y entonces aparece un menú, 
  4. y entonces primero seleccionamos "Enroll Mok", 
  5. luego "Continue"
  6. y luego "Yes",
  7. y después nos pide introducir la contraseña (que es la misma que la del paso anterior)
  8. y una vez hecho seleccionamos "Reboot".
Et voilá, c'est fini ;-)
Comparte:    Facebook Twitter
Leer más

2 de octubre de 2019

Instalación mínima de Ubuntu Desktop con RAID 0 y con cifrado de la carpeta home de un usuario



Hace poco que me he comprado un Slimbook ProX con 2 discos SSD, y aunque la gente de Slimbook me lo dieron con Ubuntu instalado y configurado, yo como buen hacker he querido instalar Ubuntu desde cero y algún que otro problema me he encontrado.

Así que, como en otras ocasiones, a continuación escribo, en forma de apuntes, como hacer una instalación mínima de Ubuntu Desktop con RAID 0 y con cifrado de la carpeta home de un usuario.

Lo primero que hay que tener en cuenta es que la instalación de Ubuntu Desktop no ofrece la posibilidad de instalar un RAID, así que hay que hacerlo desde la instalación alternativa de Ubuntu Server.

Lo primero a remarcar es que hay que instalar Ubuntu Server con cable de red para que configure automáticamente la red durante la instalación y luego no tengas problemas para instalar cosas adicionales.

Una vez instalado y configurado el WiFi, si quitas el cable puedes tener un problema de que cuando arranca Ubuntu se queda esperando una conexión a Internet y se arregla como se indica aquí:

https://askubuntu.com/questions/1090631/start-job-is-running-for-wait-for-network-to-be-configured-ubuntu-server-18-04

Pero antes de tenerlo todo instalado, queda instalar el RAID 0, y eso se hace como pone aquí pero para RAID 0 en vez de RAID 1:

https://support.us.ovhcloud.com/hc/en-us/articles/360006076940-How-to-Configure-Software-RAID-on-Ubuntu-18-04

En mi caso creo 3 particiones en cada uno de los discos: una para EFI, otra para SWAP y otra para ROOT. Pero solo creo 2 RAID: uno para SWAP y otra para ROOT. La partición EFI del segundo disco la dejo sin usar pues si no da problemas al instalar el GRUB on EFI.

Resumen:

Disco 1:
Partición 1.1: 1 GB como EFI
Partición 1.2: 3 GB como partición RAID
Partición 1.3: X GB como partición RAID

Disco 2:
Partición 2.1: 1 GB sin usar (para que no de problemas al instalar)
Partición 2.2: 3 GB como partición RAID
Partición 2.3: X GB como partición RAID

RAID 0 A:
Partición A.1: 6 GB para SWAP

RAID 0 B:
Partición B.1: 2X GB como EXT4 para /
Para cifrar la home de un usuario primero tenemos que instalar ecryptfs-utils y lo hacemos con:

sudo apt install ecryptfs-utils
Y luego añadimos el usuario que queramos indicando que su home esté cifrada con:

sudo adduser --encrypt-home asanzdiego
Si además le queremos dar permisos de sudo al usuario lo hacemos con:

sudo usermod -aG sudo asanzdiego
Y luego hacemos una instalación mínima del escritorio de Ubuntu con:

sudo apt install --no-install-recommends ubuntu-desktop
Luego instalar algunos programas básicos como el navegador Firefox, el editor de textos GEdit, el visor de documentos Evince, el visor de imágenes EoG, la calculadora con:

sudo apt install firefox gedit evince eog gnome-calculator
Y a continuación seguir con el resto de lo que explico en mi post sobre que hacer después de una instalación mínima de Ubuntu 18.04.

Nota: al instalar el ubuntu-desktop con la opción --no-install-recommends te hace una instalación tan mínima que luego hay cosas como la compartición de archivos de Android mediante USB que no funcionan, así que al final es casi más recomendable instalar el metapaquete ubuntu-desktop entero aunque te instale ciertos programas que no uses.
Comparte:    Facebook Twitter
Leer más

22 de agosto de 2019

Recopilación de mis artículos, charlas, talleres y cursos


Os dejo los enlaces de mis artículos, charlas, talleres y cursos con sus recursos, ya sean slides, video y/o código:

2019
- Artículo: "Recopilación de todos los artículos sobre Blockchain que he escrito"
- Artículo: "Recopilación de todos los artículos sobre JavaScript que he escrito"
- Artículo: "Recopilación de todos los artículos sobre Ubuntu que he escrito"
- Artículo: "Hackathones 101: Tips para montar un buen hackathon"
- Curso: "Java 8, Spring Boot, TypeScript y Angular"
2018
- Charla [con vídeo]: "De 0 a 100 con Bash Shell Scripting y AWK (CommitConf)
- Charla [con vídeo]: "Cómo desarrollar aplicaciones descentralizadas en la Blockchain de Ethereum (Codemotion)
- Taller: "De 0 a 100 de Bash Shell Scripting y AWK (T3chFest)"
- Taller: "Cómo desarrollar aplicaciones descentralizadas en la Blockchain de Ethereum (CommitConf)"
- Curso: "Tecnologías de Internet (Redes, Web, JavaScript, Computación)"
2017
- Charla [con vídeo]: "La revolución del Software Libre (Codemotion)"
- Charla: "La revolución del Software Libre (OpenExpo)"
- Charla: "Y si quiero desarrollar mi propia app, ¿qué debo hacer? (#hackTheJustice)"
- Charla: "¿Qué es un hackathon y por qué deberías asistir?"
- Taller: "JHipster (Codemotion)"
- Curso: "Diseño de Interfaces Responsive Web Design Usables y Accesibles con SASS y Bootstrap"
- Curso: "Git, GitHub y Markdown"
- Curso: "Máquinas Virtuales, Linux, Técnologías Web, Bases de datos y SQL"
2016
- Charla [con vídeo]: "Ética Hacker (T3chFest)"
- Charla: "Ética Hacker (OpenExpo)"
- Charla: "Hackathones 101 (Codemotion)"
- Taller: "Angular y Spring Boot (Codemotion)"
- Curso: "Diseño de Interfaces Responsive Web Design Usables y Accesibles con SASS y Bootstrap"
- Curso: "Git, GitHub y Markdown"
- Curso: "Máquinas Virtuales, Linux, Técnologías Web, Bases de datos y SQL"
2015
- Artículo: "Principios SOLID con ECMAScript 6, el nuevo estándar de JavaScript"
- Charla [con vídeo]: "Hackeando hackathones (The API hour)"
- Charla [con vídeo]: "Hackathones y Comunidades de desarrolladores"
- Charla: "Hackeando hackathones (T3chFest)"
- Charla: "Navega con el Piloto Automático con CasperJS (Codemotion)"
- Charla: "Navega con el Piloto Automático con CasperJS (T3chFest)"
- Charla: "Introducción al desarrollo de Apps para los no informáticos (JustiApps)"
- Curso: "Git, GitHub y Markdown"
- Curso: "JavaScript Avanzado"
2014
- Charla: "Hackathones - de 0 a produccion en 24 horas (Codemotion)"
- Curso: "Bash Shell Script Avanzado"
- Curso: "Diseño de Interfaces Responsive Web Design Usables y Accesibles con LESS y Bootstrap"
- Curso: "Arquitectura Web"
2013
- Charla: "Cliente API REST con LungoJS (GUL UC3M)"
- Charla: "Servidor API REST con Node.js (GUL UC3M)"
- Curso: "Spring"
- Curso: "JSF con PRIMEFACES"
- Curso: "AJAX y jQuery"
- Curso: "Groovy & Grails"
2012
- Curso: "JEE Avanzado: JSF, Spring & Hibernate"
- Curso: "jQuery, REST, y otros frameworks JS y CSS"
- Curso: "Desarrollo con Android"
2011
- Curso: "POO con Java"
2010
- Curso: "GIMP"
Comparte:    Facebook Twitter
Leer más