sábado, 4 de diciembre de 2021

Montar y desmontar un pendrive en GNU/Linux (modo fácil)

Es una pregunta que se hace quien acaba de llegar a GNU/Linux pero es algo muy sencillo y que se hace igual que en otros sistemas operativos.

Advertencia: si se retira un pendrive, tarjeta SD, etc... sin desmontar correctamente podemos perder todo su contenido... EN CUALQUIER SISTEMA.

 

Montar

Simplemente cuando introduzcáis el pendrive se montará solo, posiblemente habra una ventana del "explorador de archivos" correspondiente en el directorio raíz del pendrive.

 

Desmontar

Simplemente hay que abrir el "explorador de archivos" y junto al directorio raíz del pendrive aparecerá un icono de expulsión, hacemos clic en él y esperamos a que nos diga que podemos retirar el dispositivo.



Hay que tener en cuenta que si tenemos un archivo o carpeta abierta dentro del pendrive NO nos va a dejar expulsarlo, así que en ese caso primero hay que cerrar todos los archivos y salirnos de las carpetas del pendrive y luego intentarlo otra vez.

Como solución de emergencia si nos resultara imposible cerrar el pendrive por lo que sea si se apaga el ordenador COMPLETAMENTE también se puede sacar de manera segura.

domingo, 28 de noviembre de 2021

Usar toda la pantalla en Debian virtualizado con VirtualBox

Si vísteis el vídeo que puse en mi canal sobre como instalar Debian 11 os llamaría la atención que se mostrara en una ventanita con muy poca resolución, así no es factible usarlo para trabajar ni para hacer prácticamente nada que requiera del entorno gráfico, así que vamos a ver como hacer que aparezca a pantalla completa.


Debian dentro de Ubuntu

Vamos por pasos:

  1. Lo primero que tenemos que hacer es activar sudo para nuestro usuario sin privilegios como vimos en un vídeo anterior, ya que el instalador del driver para el cliente de Virtual Box no se deja instalar con su -
  2. Cargamos el disco del driver, para ello seleccionamos en el menú de Virtual Box las opciones:
    Dispositivo  Instalar imagen de CD de las "Guests Aditions"
    Montara inmediatamente el disco con el driver si está descargado y si no lo descargará previamente.
  3. Instalamos el driver:
    cd /media/cdrom
    sudo bash ./VBoxLinuxAdditions.run
  4. Seguimos los pasos del asistente y reiniciamos.
  5. Maximizamos la ventana donde se está ejecutando la máquina virtual y si la ventana no crece activamos el autoredimensionado con las opciones;
    Ver ►Autodimensionar pantalla del invitado.
Y ya está, ya podemos disfrutar de nuestro sistema virtualizado en toda la pantalla disponible.

domingo, 21 de noviembre de 2021

CPCEC y ZXCEC, emuladores de Amstrad CPC y ZX Spectrum para GNU/Linux

CPCEC es un potente emulador de Amstrad CPC que soporta 464, 664, 6128 y la gama plus, así como los formatos virtuales de disco (unidades A y B), cinta y snapshots, etc...

Para acceder a su menú basta con hacer clic con el botón derecho sobre la zona de emulación.


Ahora viene acompañado del emulador ZXCEC, un poderoso emulador de ZX Spectrum y de manejo y características muy similares.

Desde hace tiempo están disponibles para GNU/Linux y son muy fáciles de instalar desde consola con los siguientes comandos:

sudo apt install -y build-essential libsdl1.2-dev gcc wget
mkdir cpcec
cd cpcec
wget -c http://cngsoft.no-ip.org/cpcec-20211119.zip -O cpcec.zip
unzip -xuoL cpcec.zip
rm cpcec.zip
gcc -DSDL2 -O2 -xc cpcec.c -lSDL2 -ocpcec.sh
gcc -DSDL2 -O2 -xc zxsec.c -lSDL2 -ozxsec.sh
gcc -DSDL2 -O2 -xc xrf.c -lSDL2 -oxrf.sh
chmod +x *.sh

Nota: cpcec-20211119.zip es la última versión en el momento de escribir este artículo, recomiendo ver cual es la última disponible en su página de descargas.

Los requerimientos de ambos son mínimos y de hecho funcionan bien incluso en una raspberry pi.

viernes, 12 de noviembre de 2021

Windows virtualizado, otra aplicación más en tu GNU/Linux

Un truco para cuando pones GNU/Linux a un familiar es ponerle un acceso directo que arranque VirtualBox y a su vez la versión de Windows que se requiera, al cerrar el Windows volverá al GNU/Linux nativo, así todo es trasparente para el usuario nobel.


 

Pero, ¿Y como se consigue esto?

Tan simple como hacer un acceso directo que ejecute un comando similar a este:

virtualboxvm --startvm "Windows 7" --fullscreen --start-running

En este ejemplo bastaría con:

1. Creamos la máquina virtual si es que no la tenemos creada ya y vemos que funciona correctamente, en este ejemplo tendría que llamarse "Windows 7".

2. Crear un archivo $HOME/Desktop/windows7.desktop con este contenido (en algunas distros puede ser Escritorio en lugar de Desktop):

[Desktop Entry]
Encoding=UTF-8
Version=1.0
Name=Oracle VM VirtualBox
GenericName=Virtual Machine
Type=Application
Exec=virtualboxvm --startvm "Windows 7" --fullscreen --start-running
TryExec=VirtualBox
MimeType=application/x-virtualbox-vbox;application/x-virtualbox-vbox-extpack;application/x-virtualbox-ovf;application/x-virtualbox-ova;
DocPath=file:///usr/share/doc/virtualbox-4.2/UserManual.pdf
Icon=windows7.png
Categories=Emulator;System;Application;
Comment=Run several virtual systems on a single host computer
Name[es_ES]=Windows 7
GenericName[es_ES]=Windows 7 virtual
Comment[es_ES]=Ejecutamos Windows 7 dentro de Ubuntu

3. Dar permisos de ejecución a este archivo.

sudo chmod +x $HOME/Desktop/windows7.desktop

4. Crear o copiar un pequeño icono en /usr/share/pixmaps/windows7.png

5. Opcionalmente podemos copiar, como root, el archivo $HOME/Desktop/windows7.desktop a /usr/share/applications/windows7.desktop y así aparecerá también en los menús de aplicaciones.


Esto mismo lo podríamos hacer con otras máquinas virtuales de otros Windows (p.e.: 10, XP...), MS-DOS y otros sistemas.


viernes, 5 de noviembre de 2021

Conectarse por ssh desde un GNU/Linux a otro con el entorno de escritorio completo

Este procedimiento te permite conectarte a una máquina remota por ssh, es decir, encriptado y sin depender de servicios de terceros, para ello solo debes tener instalado ssh en la máquina cliente y vncserver y vncviewer en el servidor.


Hay que hacer lo siguiente:

En la máquina cliente

ssh -XC tusuario@ordenadorcliente

En la máquina servidor

vncserver

vncviewer localhost:2


martes, 26 de octubre de 2021

Recuperar resolución previa a la ejecución de juegos que la cambian al salir

Algunos juegos cambian la resolución de tu ordenador y al salir la dejan distinta a la que tenías configurada según tus necesidades.

En mi caso tengo dos pantallas conectadas a mi PC, un monitor Full HD y un viejo televisor LCD que solo admite HD Ready con un refresco adecuado para trabajar.

Configuración de trabajo por defecto
Mi configuración deseada: resoluciones correctas y modo extendido

Como se puede ver en la imagen para trabajar normalmente los tengo configurados de manera que el monitor sea la pantalla principal (la que tiene los botones) y el televisor la extienda hacia la derecha.

Pero después de ejecutar algunos juegos a pantalla completa que no gestionan bien las resoluciones terminan ambos con una resolución pobre y mostrando la misma imagen (en espejo).

Después de salir de DosBox a pantalla completa: resolución pobre y modo espejo

 

La solución más sencilla es reiniciar el ordenador o al menos el entorno gráfico, pero es poco práctico, lo ideal es que un script devolviera la resolución correcta.

Para conseguir este objetivo, lo primero es ver cual es la resolución de tu monitor para lo que usaremos el comando xrandr (si no lo tienes instalado ya estás tardando):

xrandr -q

En mi caso me ha devuelto una salida como ésta:

Screen 0: minimum 320 x 200, current 3200 x 1080, maximum 16384 x 16384
DVI-I-1 connected 1280x720+1920+0 (normal left inverted right x axis y axis) 160mm x 90mm
   1280x720      60.00*+  59.86    50.00    59.94    59.74  
   1920x1080i    60.00    50.00    59.94  
   .......

HDMI-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 510mm x 290mm
   1920x1080     60.00*+  50.00    59.94    59.93  
   1920x1200     59.95  
   1920x1080i    60.00    50.00    59.94
   ........

Vamos a analizar con más detalle la salida de datos obtenida.

  1. La primera línea empieza con la etiqueta Screen 0 y no hay una etiqueta Screen 1, lo que significa que ambos monitores en realidad se comportan como uno solo (modo extendido).
  2. La siguiente línea y otra que aparece más abajo con la misma sangría nos dice a que puerto está conectado cada monitor, la resolución nativa, si está girado, etc...
  3. Debajo de esas líneas aparecen muchas líneas correspondientes a cada resolución soportada, he omitido algunas irrelevantes sustituyéndolas por puntos suspensivos para que no nos perdiéramos en la longitud de la salida.
  4. Nos fijamos en las líneas que tiene un *, ya que es la resolución utilizada en cada pantalla:
    • DVI-I-1: el televisor LCD funciona con una resolución 1280x720.
    • HDMI-1: el monitor funciona con una resolución 1920x1080 y es la pantalla primaria (la que tiene los botones).

Con esta información ya podemos crear nuestro comando para recuperar la resolución:

xrandr --output DVI-I-1 --mode 1280x720 --scale 1x1 --output HDMI-1 --primary --mode 1920x1080 --scale 1x1 --left-of DVI-I-1

Como veis es muy fácil adaptar a cualquier necesidad, definimos dos output para cada conector, con el parámetro --mode le indicamos la resolución y en principio dejamos una escala 1x1.

En el caso del segundo monitor indicamos también que es primary y que extiende al televisor por la izquierda (--left-of DVI-I-1).

Como es lógico, lo ideal es poner ese comando enorme en un script que podemos guardar en /usr/local/bin con permisos de escritura, hacer un acceso directo a él o invocarlo al final de los scripts que ejecutan los juegos problemáticos.

 

miércoles, 20 de octubre de 2021

Configurar una impresora por red en Debian

Si tenemos Ubuntu podemos obviar este paso pero si tenemos Debian hay que instalar el soporte de impresoras:

sudo apt-get install system-config-printer cups

Lo siguiente es iniciar el servicio de impresión.


Iniciamos el servicio cups

sudo systemctl enable --now cups

Después nos conectamos al servidor CUPS (localhost)

Para continuar pulsamos el botón desbloquear y Agregar

Impresora de red

Muchas impresoras soportan el protocolo AppSocket/HP JetDirect (aunque no sean HP)


En este caso lo que hay que hacer es poner la IP de la impresora y darle a siguiente:


Lo más probable es que detecte el fabricante y el modelo exacto, o al menos el que más se le aproxime.

 


En este caso ha detectado sin problemas el modelo exacto.

 

Le damos a siguiente para instalar el driver:

Si tuviera hardware adicional como terminadores se lo indicamos en este paso.


Ponemos un nombre para distinguir a la impresora en la red, si no ponemos nada podrá su denominación técnica.


Ya tenemos añadida la impresora, aunque no hemos terminado.


Para cambiar las propiedades de la impresora hacemos clic con el botón derecho en el icono de la misma o la seleccionamos para ir a las opciones Impresora > Propiedades.

Nos vamos justo antes de la sección de Basic para indicar la seguridad de nuestra impresora, que puede ser por Password o por user code / user id como es en nuestro caso.