Cómo crear un archivo de intercambio (swap) en Manjaro Linux

Intercambio (swap) entre RAM y disco duro

Logo de Manjaro Linux

Veamos los pasos a seguir para crear un archivo de intercambio (swap, en inglés) en la distribución Manjaro Linux.

Versiones implicadas:
Manjaro Linux XFCE 20.0.3 (Lysia)

1. Abrimos una terminal de comandos.

2. Comprobamos el estado actual del área de intercambio del sistema:

Método 1:

  $ swapon --show

Nota: Si el comando no devuelve ningún resultado, entonces no hay definido ningún espacio de intercambio.

Método 2:

  $ free -h

Nota: Si el total de swap es 0B, entonces no se estableció ningún espacio de intercambio.

3. Creamos el archivo:

  $ sudo fallocate -l 8G /swapfile

Nota: El tamaño de swap depende de cada equipo. Yo opté por asignar 8 gigabytes (8G), que es justo el tamaño de mi RAM.

4. Asignamos los permisos oportunos:

Método 1:

  $ sudo chmod u=rw,go= /swapfile

Método 2:

  $ sudo chmod 600 /swapfile

5. Formateamos el archivo:

  $ sudo mkswap /swapfile

6. Activamos el área de intercambio:

  $ sudo swapon /swapfile

7. Verificamos la conformidad de la operación:

Método 1:

  $ swapon --show

Método 2:

  $ free -h

8. Para garantizar que el área de intercambio esté habilitada en el arranque del sistema, podemos agregar una entrada al archivo de configuración /etc/fstab:

Método 1:

 $ sudo nano /etc/fstab
     # /etc/fstab: static file system information
     # <file system> <mount point> <type> <options> <dump> <pass>      
     /dev/mapper/luks / ext4 defaults,noatime 0 1
     /swapfile none swap defaults 0 0

Método 2:

 $ sudo bash -c "echo /swapfile none swap defaults 0 0 >> /etc/fstab"
El pingüino Freedo, logo oficial del proyecto GNU Linux-libre

Para saber más:
Comando swapon
Comando free
Comando sudo
Comando fallocate
Comando mkswap
Comando chmod
Comando nano (Proyecto G N U)
Comando echo
Intérprete bash (Proyecto G N U)
Archivo de configuración /etc/fstab
Estructura de directorios en G N U / L i n u x

Cómo instalar VMware Workstation Pro sobre Manjaro Linux

Logo de VMware Workstation

Logo de Manjaro Linux

En esta breve guía veremos, paso a paso, cómo instalar el software de virtualización VMware Workstation Pro sobre la distribución Manjaro Linux.

Versiones implicadas:
— VMware Workstation 15.5.5 Pro
— Manjaro Linux XFCE 20.0.2 (Lysia)

1. Desde el área de notificación, hacemos clic sobre el gestor de paquetes Pamac.
2. Nos dirigimos a la sección Browse.
3. Pulsamos sobre la lupa.
4. Buscamos “vmware workstation”. Sin las comillas.
5. Del repositorio AUR elegimos el paquete “vmware-workstation 15.5.5-2“.
6. Pulsamos sobre el botón verde Build.
7. Pulsamos sobre el botón verde Apply, al pie de la ventana.
8. En la ventana “Transaction Summary“, confirmamos la instalación haciendo clic sobre Apply en la esquina inferior derecha.
9. Tecleamos nuestra contraseña de sudoer.
10. Pulsamos sobre Authenticate.
11. Verificamos que todo ha ido bien:
     (a) El mensaje final es Transaction successfully finished.
     (b) El paquete “vmware-workstation 15.5.5-2” tiene ahora un botón rojo Remove.
12. Cerramos la ventana de Pamac.
13. Reiniciamos el sistema.

Cómo ejecutar la aplicación de virtualización VMware Workstation Pro:
(a) Desde la línea de comandos:
     $ vmware
(b) Desde el Menú Inicio buscamos “vmware” (sin las comillas) y hacemos clic sobre el lanzador VMware Workstation.

Bienvenido a VMware Workstation. Personaliza la instalación:
1. Licencia para VMware Workstation 15.
    – Si dispones de una clave, introduce la secuencia de 25 carácteres.
    – En caso contrario, activa el período de prueba de 30 días.
2. Pulsamos sobre Finish.
3. Tecleamos nuestra contraseña de sudoer.
4. Pulsamos sobre Authenticate.

Cómo instalar VirtualBox sobre Manjaro Linux

Logo de VirtualBox

Logo de Manjaro Linux

En esta breve guía te explico, paso a paso, cómo instalar el software de virtualización Oracle VM VirtualBox sobre la distribución Manjaro Linux.

Estas son las versiones implicadas:
— Oracle VM VirtualBox 6.1.8
— Manjaro Linux XFCE 20.0.2 (Lysia)

1. Desde el área de notificación, hacemos clic sobre el gestor de paquetes Pamac.
2. Nos dirigimos a la sección Browse.
3. Pulsamos sobre la lupa.
4. Buscamos “virtualbox”. Sin las comillas.
5. Del repositorio oficial elegimos el paquete “Oracle VM VirtualBox (virtualbox) 6.1.8-2“.
6. Pulsamos sobre el botón verde Install.
7. Pulsamos sobre el botón verde Apply, al pie de la ventana.
8. En la ventana “Choose optional dependencies for virtualbox“, el instalador nos pregunta si queremos agregar los siguientes paquetes:
     – virtualbox-guest-iso: Guest Additions CD image
     – virtualbox-ext-vnc: VNC server support
     – virtualbox-sdk: Developer kit
Mi recomendación es que se marquen los tres.
9. Pulsamos sobre Choose.
10. Tecleamos nuestra contraseña de sudoer.
11. Pulsamos sobre Authenticate.
12. En la ventana “Choose a provider for VIRTUALBOX-HOST-MODULES” debes elegir el módulo que corresponda a tu núcleo de Linux.
Si desconoces la numeración de tu núcleo, haz uso de este comando:
      $ uname -r
  4.14.182-1-MANJARO

En mi caso marqué linux414-virtualbox-host-modules, el primer módulo de la lista.
13. Pulsamos sobre Choose en la esquina inferior derecha.
14. En la ventana “Transaction Summary“, confirmamos la instalación haciendo clic sobre Apply en la esquina inferior derecha.
15. Verificamos que todo ha ido bien:
     (a) El mensaje final es Transaction successfully finished.
   (b) El paquete “Oracle VM VirtualBox (virtualbox) 6.1.8-2” tiene ahora un botón rojo Remove.
16. Cerramos la ventana de Pamac.
17. Reiniciamos el sistema.

Cómo ejecutar la aplicación de virtualización Oracle VM VirtualBox:
(a) Desde la línea de comandos:
     $ virtualbox
  $ VirtualBox

(b) Desde el Menú Inicio buscamos “virtualbox” (sin las comillas) y hacemos clic sobre el lanzador Oracle VM VirtualBox.

Qubits frente a Bits

«Medir en el mundo cuántico tiene graves consecuencias».

Linux: Comandos Internos versus Externos

* Características de los comandos internos:
(a) Se encuentran en el interior del intérprete de órdenes (comúnmente bash) y, en consecuencia, precargados en la memoria principal.
(b) Ocupan poco espacio.
(c) Por lo común se ejecutan con mayor celeridad que los comandos externos.
(d) No precisan de ruta para ser ejecutados.
(e) La ayuda se obtiene con el comando help.

Ejemplos de comandos internos:
cd, exit, help, kill y pwd

* Los comandos externos, por contra:
(a) Están alojados sobre el disco, en carpetas establecidas al efecto.
(b) Por lo común se ejecutan con mayor lentitud que los comandos internos.
(c) Tienen una ruta asociada en el sistema de archivos.
(d) La ayuda se obtiene con la orden man.

Ejemplos de comandos externos:
ls

Arranque del ordenador: del BIOS al MBR.

En el proceso de arranque de la computadora, el BIOS consulta la secuencia de dispositivos establecida en el Setup, tratando de localizar algún medio con un sistema operativo.

Cuando el dispositivo es un disco duro, el BIOS cede el control al MBR (Master Boot Record). Éste ocupa el primer sector físico (cilindro 0, cabeza 0, sector 1) y consta de tres piezas:
- Cargador de arranque estándar.
- Tabla de particiones.
- Firma hexadecimal que certifica la autenticidad del disco.

El cargador de arranque (estándar) del MBR tiene por misión examinar la tabla de particiones en busca de una partición marcada como activa:

- Si no existe ninguna partición activa, se devuelve el control al BIOS para que prosiga con la secuencia de dispositivos.

- Si existe una partición activa pueden darse dos situaciones:

a) Es una partición iniciable; esto es, contiene el código de inicio de algún sistema operativo De ser así, el MBR cede el control al sector de arranque de la partición.

b) Es una partición de datos. En cuyo caso se devuelve el control al BIOS para que prosiga con la secuencia de dispositivos.

En el peor de los casos el BIOS habrá recorrido, sin éxito, todos los dispositivos de la secuencia registrada en su seno y emitirá un mensaje del tipo:
“Operating System Not Found” / “Missing Operating System”

Enlaces duros y simbólicos

Tenemos la posibilidad de crear alias para archivos cualesquiera. Estos alias se conocen técnicamente como enlaces, y los hay de dos tipos:

• Enlaces duros (fisicos, fuertes): son simples sobrenombres para los archivos y se caracterizan por no ocupar espacio adicional en el disco (enlace y archivo enlazado tienen el mismo inodo). No se pueden crear enlaces duros a directorios.

• Enlaces simbólicos (lógicos, blandos): son apuntadores a archivos y contienen las rutas de los archivos hacia los que señalan. Desde luego, los enlaces simbólicos sí que consumen espacio en disco, aunque éste sea mínimo. Los enlaces simbólicos se crean con todos los permisos posibles, es decir rwxrwxrwx (777, en octal).

Los comandos empleados para crear enlaces son ln y link. Pasemos a describirlos.

Comando ln
Crea un enlace físico o lógico a un archivo dado.
• Sintaxis:
ln [ -s ] archivo [enlace-archivo]
• Opciones:
-s crea un enlace simbólico (enlace lógico) al archivo dado
• Ejemplos:
$ ln factura.agua fagua # fagua será alternativo para factura.agua
$ ln -s factura.agua elog # elog –> factura.agua
$ cat factura.agua # se visualiza factura.agua
$ cat fagua # se visualiza fagua que, realmente, es el mismo archivo que factura.agua
$ cat elog # se visualiza el archivo apuntado por elog

Si dos o más archivos tienen el mismo número de inodo (bloque de disco) entonces, en verdad, estamos hablando de un único archivo, al que podemos acceder con varios nombres.

Comando link
Crea un enlace físico a un archivo dado.
• Sintaxis:
link archivo enlace-archivo
• Ejemplos:
$ link factura.agua fagua
$ link fagua fa

Filtros head y tail.

Si sólo queremos visualizar la cabecera (las primeras líneas) de un archivo de texto, lo más cómodo es emplear el comando head. Salvo indicación en contrario, head saca las 10 primeras líneas del archivo suministrado. Ahí van un par de ejemplos:

$ head -2 notas # saca las dos primeras líneas del archivo notas
ramiro asi vespertino 9
ana dai nocturno 8

$ head -5 /etc/*.conf | less # para cada archivo de configuración que encaje en la plantilla dada,
# se sacan sus cinco primeras líneas

Si, por contra, lo que se pretende es visualizar el pie (las últimas líneas) de un archivo texto, entonces nuestro aliado natural es el comando tail:

$ tail -2 notas # saca las dos últimas líneas del archivo notas
anibal asi nocturno 6
lorena dai nocturno 9

$ tail -n +4 notas # saca desde la línea cuatro en adelante (las tres últimas líneas)
elisa asi vespertino 7
anibal asi nocturno 6
lorena dai nocturno 9

Filtros de paginación: more y less.

Cuando el archivo a visualizar es muy grande se impone la paginación. Esto es, la descomposición del documento original en páginas del tamaño de una pantalla. Después serán visualizadas una a una, al ritmo marcado por el usuario. En MS-DOS se utiliza el comando more. En Unix tenemos dos alternativas: more y less. Mi consejo es que utilices less porque:
a) Dentro del texto soporta movimientos hacia atrás. No así more.
b) Acepta el empleo de teclas de movimiento tales como los cursores (flechas), avance de página, retroceso de página, comienzo de documento y fin de documento. No así more.
c) Cuando se alcanza el final del último archivo a mostrar, less no termina automáticamente su ejecución. Algo que sí acontece con more.

Al igual que cat, los comandos more y less tienen versiones especiales para paginar archivos de texto
comprimidos. Hablamos de zmore y zless, respectivamente. Lo que sigue es la ficha técnica de los filtros de paginación:

• Sintaxis:
more [opciones] [ +/patrón ] [archivo]…
less [opciones] [archivo]…
zmore [archivo]…
zless [archivo]…

• Opciones:
-s elimina las líneas en blanco (menos una)
-? resumen de comandos interactivos (sólo válida para less)

• Ejemplos:
$ more /etc/group
$ less /etc/passwd /etc/group
$ cat /etc/passwd /etc/group | less # equivale a la orden anterior
$ ls /dev | less # less recibe y pagina el listado de dispositivos

Comando cat

Este comando concatena (concatenate) dos o más archivos y, posteriormente, muestra el resultado en la salida estándar (pantalla). Si no se le pasa ningún argumento, cat lee de la entrada estándar (teclado); esto es algo corriente para la mayoría de los comandos de Unix. Existe también la orden zcat que hace lo mismo pero con archivos de texto comprimidos con gzip (terminan en .gz).

• Sintaxis:
cat [opciones] [archivo]…
zcat [archivo]…

• Opciones:
-b numera sólo las líneas de salida que no están en blanco.
-n numera todas las líneas de salida.