domingo, 19 de diciembre de 2021

Comandos básicos de LINUX


El comando  man
Cada vez que no sabemos cómo usar un comando, escribimos man nombre_del_comando para obtener el manual de ayuda:

Las páginas de man son una herramienta indispensable que contiene muy buena y detallada información.
 

El comando   ls
Se puede listar todo el contenido de una carpeta usando el comando

 

ls 

Si ponemos el nombre de una carpeta o una ruta, nos listará el contenido de dicha carpeta: 

 

ls /etc 

 

ls acepta muchas opciones (parámetros). por ejemplo:

 

ls -lah /etc 

 

la información que nos muestra de izquierda a derecha es la siguiente :

- los permisos de los archivos (si usas ACLs, también muestra las ACL)
- el número de enlaces a ese archivo
- el propietario del archivo
- el grupo del archivo
- el tamaño del archivo en bytes
- la fecha y hora de la última modificación del archivo
- el nombre el archivo 

Toda la información anterior la muestra el parámetro: l 

El parámetro: a muestra los archivos ocultos. Los archivos ocultos con archivos que comienzan con un punto (.)

El parámetro: h muestra la información mas legible para el ser humano

No hay un equivalente directo en ls mismo, pero está el less que formateará la salida de cualquier comando como páginas separadas, desplazables por línea o página:

ls -C | less

Dónde -C activa la visualización de la columna. Utilice lah como argumentos ( ls -lah ) para obtener un l ine por línea de visualización con a todos los archivos que se muestran (incluidos los ocultos), y h ón de archivos legibles para el ser humano.

  • Para que los colores aparezcan correctamente , es necesario añadir el --color=always argumento para ls y el -R argumento en menos*:

    ls -C --color=always | less -R



Fuente: https://www.enmimaquinafunciona.com/pregunta/29353/como-activar-la-paginacion-para-el-comando-ls

Si usamos el comando ls con una tubería mas el comando: less este nos dará la salida por pantalla desplazables línea a linea o pantalla a pantalla: 

 

ls | less 

 

Para que los colores aparezcan correctamente , es necesario añadir el --color=always argumento para ls y el  argumento -R 

 

ls --color=always | less -R
 

Para ordenar por orden alfabetico usamos el parámetro sort


ls | sort | less

 


El comando   less 
El comando less muestra el contenido almacenado dentro de un archivo, en una agradable e interactiva interfaz de usuario.
 

less sources.list


Una vez que estás dentro de una sesión less, puedes salir presionando q. 

Puedes navegar el contenido del archivo usando las teclas de arriba u abajo, o usando la barra espaciadora y b para navegar página por página. También puedes saltar al final de un archivo presionando G y saltar devuelta al inicio presionando g. 

Puedes buscar contenido dentro del archivo presionando / y escribiendo la palabra a buscar. Esto busca hacia delante. Puedes buscar hacia atrás usando el signo ? y escribiendo una palabra.

Este comando sólo visualiza el contenido de un archivo. Puedes abrir directamente un editor de texto presionando v. Esto usará el editor del sistema, que en la mayoría de casos es vim.

Presionando la tecla F entramos a modo de seguimiento, o modo de observación (follow mode, o watch mode en inglés, respectivamente). Cuando el archivo es cambiado por alguien más, como desde otro programa, puedes ver los cambios en vivo.



El comando   grep 
El comando grep significa impresión de expresión regular global (global regular expression print en inglés).

Se usa grep para buscar en archivos, o combinarlo con tuberias para filtrar la salida de otro comando.

Por ejemplo:

lspci |grep VGA 

 

El comando  sort 
Tenemos un archivo de texto contiene un listado nombres de personas, y lo nombres estan desordenados. Usamos el comando sort ayudar a ordenarlos por orden alfabetico:

sort nombre.txt

Puedes usar la opción -r para invertir el orden:

sort -r nombre.txt

El ordenamiento por defecto es sensible a mayúsculas y minúsculas, y alfabético. Usa la opción --ignore-case para ordenar ignorando la sensibilidad a mayúsculas y minúsculas, y la opción -n para ordenarlas de manera numérica.

Si el archivo contiene líneas duplicadas, usamos la opción -u para eliminarlos.

sort no sólo funciona en los archivos, también funciona con tuberias. Así que puedes usarlo en la salida de otro comando. Por ejemplo, puedes ordenar los archivos devueltos por ls con:

ls | sort | less 

 

 

El comando  which 
Lo usamos para saber dónde se encuentra un archivo, solo es valido para comandos.

which libreoffice

which sólo funcionará con ejecutables guardados en disco duro, no funciona con los alias ni con las funciones del shell. 

 

El comando  whoami 
usamos whoami para saber el nombre del usuario que está conectado en la terminal en ese momento:

whomai

Nota: esto es diferente del comando who am i, el cual imprime más información.

 

El comando  who 
El comando who muestra los usuarios conectados al sistema.

A menos que estés usando un servidor al que varias personas tienen acceso, lo más probable es que seas el único usuario conectado, varias veces.

¿Por qué varias veces? Porque cada shell abierto cuando su propio acceso.
Puedes ver el nombre de la termina utilizada, y la hora/día en que se inició la sesión.
Los parámetros -aH le dirán a who a mostrar más información, incluyendo el tiempo de inactividad y el identificador del proceso de la terminal.

who -aH


El comando especial who am i listará los detalles de la sesión actual de terminal que estas usando.




El comando  du 
El comando du calculará el tamaño de un directorio en su conjunto:

du

El número mostrado es expresado en bytes y calculael tamaño de cada archivo individualmente
Puedemos configurar du para que muestre los valores en MegaBytes usando du -m, y en GigaBytes usando du -g.
La opción -h mostrará una notación legible por los humanos para los tamaños, adaptándose al tamaño:

 

df -h

Una cosa útil es clasificar los directorios por tamaño:

du -h directorio | sort -nr

y luego agregar un pipe a head para sólo obtener los primeros 10 resultados.



El comando  df 

El comando df se usa para obtener información sobre el uso del disco.
Su forma básica imprimirá información sobre los volúmenes montados.
Usando la opción -h mostrará los valores en un formato legible para los humanos:


df -h

También puedes especificar el nombre de un archivo o directorio para obtener información sobre el volumen específico

 

df /etc
 
para ver los inodos de todos los volumenes usamos el parámetro -i 

 

df -i

para ver los inodos de un volumen o directorio, idicamos el directorio o volumen 

 

df -i /etc 

df /etc -i

 

 


Comando  free 

El comando free nos muestra el consumo de memoria,  la cantidad total de memoria física y de intercambio swap (en caso de que tengamos creada la memoria swap o un swapfile), cuanto de ella tenemos libre y cuanto se encuentra en uso por el sistema e incluso el buffers y cachés utilizados por el kernel.

 

free

 

Usando la opción -h mostrará los valores en un formato legible para los humanos:

 

free -h



No hay un equivalente directo en ls mismo, pero está el less que formateará la salida de cualquier comando como páginas separadas, desplazables por línea o página:

ls -C | less

Dónde -C activa la visualización de la columna. Utilice lah como argumentos ( ls -lah ) para obtener un l ine por línea de visualización con a todos los archivos que se muestran (incluidos los ocultos), y h ón de archivos legibles para el ser humano.

  • Para que los colores aparezcan correctamente , es necesario añadir el --color=always argumento para ls y el -R argumento en menos*:

    ls -C --color=always | less -R



Fuente: https://www.enmimaquinafunciona.com/pregunta/29353/como-activar-la-paginacion-para-el-comando-ls

 

Comando  blkid 

El comando blkid nos muestra un listado de particiones con la siguiente información:

- Nombre de dispositivo de bloque

- UUID (Universally Unique IDentifier)

- Etiqueta

- Tipo de sistema de archivos

Esta información es muy útil en las distribuciones actuales, ya que hacen referencía a un dispositivo de bloque por UUID o LABEL. 

blkid

No hay un equivalente directo en ls mismo, pero está el less que formateará la salida de cualquier comando como páginas separadas, desplazables por línea o página:

ls -C | less

Dónde -C activa la visualización de la columna. Utilice lah como argumentos ( ls -lah ) para obtener un l ine por línea de visualización con a todos los archivos que se muestran (incluidos los ocultos), y h ón de archivos legibles para el ser humano.

  • Para que los colores aparezcan correctamente , es necesario añadir el --color=always argumento para ls y el -R argumento en menos*:

    ls -C --color=always | less -R



Fuente: https://www.enmimaquinafunciona.com/pregunta/29353/como-activar-la-paginacion-para-el-comando-ls

 

 

Comando  lsblk   

El comando lsblk nos muestra un listado de particiones con la siguiente información:

- Nombre de dispositivo de bloque

- UUID (Universally Unique IDentifier)

- Etiqueta

- Tipo de sistema de archivos

- Punto de montaje

Esta información es muy útil en las distribuciones actuales, ya que hacen referencía a un dispositivo de bloque por UUID o LABEL. 

lsblk

 

Comando  fdisk 
El propósito principal del comando fdisk es modificar las particiones del sistema de archivos, pero podemos utilizarlo para mostrar información de las particiones del sistema de archivos con la opción -l

fdisk -l

 

Comando  cfdisk 
cfdisk es un editor de particiones Linux con una interfaz de usuario interactiva. Puede ser utilizado hacer una lista de las particiones existentes, así como crear o modificar ellos.

 

cfdisk

 

Comando  parted 
parted es otra utilidad de línea de comando para crear particiones, enumerarlas y modificarlas. Si usamos el parámetro -l, muestra un listado de las particiones.

 

parted -l

 

 

 

 

 

 

 

 

 

 

 

 

martes, 29 de junio de 2021

Eliminando snap en Debian

Eliminando snap en Debian

Para eliminar completamente snap, hacemos lo siguiente.



Desinstalamos los programas snap instalados

Abrimos una terminal y usamos el siguiente comando:

snap list

Nos nuestra lo siguientes paquetes instalados


Name                      Version             Rev       Tracking          Publisher     Notes
acestreamplayer     3.1.49-snap3    11         latest/stable      vasilisc          -
core18                     20210128         1988    latest/stable      canonical      base
snapd                      2.49.1               11402  latest/stable       canonical     snapd


Ejecutamos el siguientes para eliminarlo, si tuvieramos mas programas instalado lo repetiriamos de uno en uno:

sudo snap remove acestreamplayer


Eliminamos el paquete snapd

A continuación, procedemos a eliminar el paquete snapd y todos sus servicios relacionados, ejecutamos.

apt-get --purge remove snapd
apt-get --purge remove snap-confine
apt-get --pruge remove ubuntu-core-launcher



Eliminar los directorios snap creados en la instalación

Por último eliminamos los directorios snap que se crearón solo durante la instalación. Lo normal es que después de desinstalarlo en el paso anterior  no tengamos existan algunos, otros pueden ser que no se borren durante la desinstalación.

Para ello usamos los siguientes comandos:

Como usuario normal:

rm -rf ~/snap

Como administrador:

rm -rf /snap
rm -rf /var/snap
rm -rf /var/lib/snapd


===================================================


Purgar ficheros de snap para liberar inodos


Liberar espacio en el disco duro ocupado por los paquetes snap.

Resulta que las actualizaciones de los programas instalados con snap, no actualizan los programas, lo que hace es instalar es una versión superior, pero dejando la versión anterior. 

Por ejemplo: 

Si tenemos instalado: acestreamplayer 10, la actualización a la versión 11 no es tal, lo que hace es instalar acestreamplayer 11 y tenemos dos versiones de acestreamplayer.

Por lo visto el programa snap, instala hasta 3 versiones de cada programa, asín es la chapuza que hace los paquetes snap. Cada programa que tengas instalado en snap y lo actualices, guardara las tres ultimas versiones con el consiguiente gasto de espacio y e inodo innecesario en el disco duro.



Liberar espacio e inodos en el disco duro ocupado por snap


Vamos borrar todas las versiones, y nos vamos a quedar con la última.

Encontre este script para bash  que lo hace todo por nosotros.

Abrimos una consola y ejecutamos el siguiente comando, para crear un archivo:

nano borrar-snaps.sh

Copiamos el siguiente contenido dentro del archivo: borrar-snaps.sh

#!/bin/bash
# Borrar revisiones snaps
set -eu
snap list --all | awk '/disabled/{print $1, $3}' |
while read snapname revision; do
snap remove "$snapname" --revision="$revision"
done

Guardamos el archivo usando la combinación de teclas: Control (Ctrl) + O
y salimos del editor nano, usando la combinación de teclas: Control (Ctrl) + X

Le damos permisos de ejecución al script


chmod +x borrar-snaps.sh

Ejecutamos el script.

sudo ./borrar-snaps.sh

Una vez ejecutado el script, ya solo tenemos instalada una sola versión de acestreamplayer







martes, 2 de marzo de 2021

A stop job is running for Session c2 of user ... (1min 30s)

Estoy usando Debian Testing Bullseye.


Cada vez que apago mi ordenador, aparece el siguiente mensaje:

A stop job is running for Session c2 of user ... (1min 30s)

Espera 1 minuto y 30 segundos y luego continúa el proceso de apagado.


Nota: Observo que cada vez que cierro la sesión y luego apago mi computadora desde la pantalla de inicio de sesión, no recibe el mensaje:

A stop job is running for Session c2 of user ... (1min 30s)

Cierro la sesión antes del apagado varias veces, y se apaga rápido así que creo que no ocurre por casualidad. 

Solución:
La solución me la dijeron el grupo de telegram de Debian_es.

tan simple como desinstalar:

apt-get --purge remove unattended-upgrades