domingo, 30 de agosto de 2020

Algunos comandos básicos de Linux

 No son todos los que son pero...

...pero bien seguro que os serán de pequeña ayuda. Pues hay veces que lo más simple se nos olvida y parece lo más complicado. Otras veces buscamos hacer algo que debería ser sencillo y no lo encontramos. Esta es una recopilación de apuntes sobre Linux que me fue, y sigue siendo, de ayuda cada vez que navego en ese sistema. Espero os sean de ayuda.




Comprobar versión:
lsb_release -a


editores:

nano

vi

gedit

cat


Actualizar sistema:

1. refrescar lista de actualizaciones: 'apt update -y'

2. actualizar aplicaciones y paquetes instalados: 'apt upgrade -y'


Comprobar si hay un paquete instalado: apt-cache policy paquete ej:#apt-cache policy samba


Instalación de paquetes ya descargados:

dpkg es, sobre todo, la herramienta para instalar un paquete Debian ya disponible (porque no descarga nada). Para hacer esto utilizamos su opción -i o --install.

Ejemplo instalación de un paquete con dpkg  '# dpkg -i man-db_2.7.0.2-5_amd64.deb'


Instalación normal de paquetes: #apt install nombrePaquete

Reinstalación (pq a veces se quedan dañados):#apt reinstall nombrePaquete

Eliminar paquete: #apt remove nombrePaquete

Limpiar temporales: #apt autoremove


Cambiar nombre de ordenador: 'nano /etc/hostname'

Ver nombre del ordenador: 'hostname'


Crear usuario: 

#adduser nombreUsuario     o #useradd nombreUsuario

ejemplo de crear usuario con otra carpeta home diferente: #adduser --home /home/al-03-04/mgarcia mgarcia

#passwd nombreUsuario //el password del usuario

-Crear usuario sin acceso al shell (pero sí se podrá logear):

#useradd -m -s /sbin/nologin nombreUsuario


Borrar usuario:

#deluser nombreUsuario (opciones -f [fuerza aunque esté logeado, no recomendable] -r [borra home y mail])

-Borrar usuario y su home y su mail: #deluser --remove-home jperez

#userdel nombreUsuario


Crear grupo:


#addgroup nombreGrupo


Añadir usuario a grupo:

#usermod -a -G nombreGrupo nombreUsuario

 ejemplo: #usermod -a -G acceso jordi


Añadir usuario al grupo sudoers (administradores):

#usermod -aG sudo nombreUsuario


Bloquear usuario deshabilitándolo (no se podrá logear):

#usermod -L nombreUsuario


Desbloquear, habilitar, usuario:

#usermod -U nombreUsuario


Ver los datos relativos a un usuario: #id nombreUsuario

O también (sin que aparezcan los id): #groups nombreUsuario


Ver lista de usuarios:

#cat /etc/passwd

#more /etc/passwd

#less /etc/passwd


Ver lista grupos:

#cat /etc/group

#more /etc/group

#less /etc/group


Comprobar configuracion de red: 'ifconfig' o 'ip -a'

-Si no funciona ifconfig instalar las utilidades de red: 'apt install net-tools'


Configurar tarjeta de red:

--------------------------

SI TENEMOS LA CONFIGURACIÓN POR EL MÉTODO GRÁFICO DEBEMOS CONFIGURARLO CON ÉL. De lo contrario al reiniciar la máquina volverá a dominar el demonio network-manager. 

Si queremos hacerlo por el shell:

 A.- si funciona el servicio network-manager (el modo gráfico) hay que pararlo: 'service network-manager stop'

 B.- apagar el interface de red: 'ifconfig enp0s3 down' o 'ifdown enp0s3' (siendo enp0s3 el interface)

  1.- Configurar IPS y Gateway: 'nano /etc/network/interfaces'

  2.- Configurar DNS: 'nano /etc/resolv.conf' aunque hemos visto que tambien podemos añadirlos en el interfaces con 'dns-nameservers 192.168.x.x 8.8.8.8' y 'dns-search dominio.local'

  3.- activar el interface de red: 'ifconfig enp0s3 up' o 'ifup enp0s3'

PERO SI ESTÁ POR MÉTODO GRÁFICO HACERLO CON EL:

 1.- desactivas la interface con un clic de ratón.

 2.- entras en el administrador de red y configuras ips, gateway y dns

 3.- vuelves a activar la interface con otro clic.


Uso de nslookup:

en el shell escribes 'nslookup' y entras en el programa modo comando tras decirte el servidor dns que usa.

>dominio ->y te da nombre y dirección ip.

>ip ->y te da nombre del dominio y ip. (así sabremos que tiene la inversa configurada).

ejemplo: nslookup pc1.tudominio.org


Si no funciona nslookup-> instalacion de nslookup: 'apt install dnsutils'


Comprobar tamaño de directorios: comando 'du'

Tamaño total del disco de un directorio--> du -sh /directorio


Mostrar la utilización del disco: comando 'df'

df -h->en formato legible para los humanos

df -hT /etc->muestra la información de /etc en formato legible.


Ordenar líneas del archivo: comando 'sort'

-r: invierte orden

-n: valor alfabétrico convertido a número.

-f: no discrimina mayúsculas y minúsculas.

-t: separador de campo.

-k: busca según número de columna y la orden.


Ver paginando (por páginas): comando 'more'

-núm: número de líneas

-p: limpia pantalla al pasar página.


Para cortar, separar campos, carácteres y bytes: comando 'cut'

-b-> por bytes

-c-> por carácteres

-d->define el limitador

-f->indica los campos que queremos


Busca patrones dentro de archivos: comando 'grep'

-w ->busca las palabras

-n ->numera las líneas de salida

...


Indicar líneas, palabras y bytes: comando 'wc'

-l: cuenta las líneas.

-w: cuenta las palabras.

-c: cuenta los bytes

-m: cuenta los carácteres.


ejemplos: ls -l grep ^d | sort | more -18

cat /etc/group | cut -d: -f1,3,4 | sort -t: -k 2,2n | more -18



Volver a entorno gráfico:

startx

ctrol+alt+f7 Ubuntu

ctrol+alt+f8 kubuntu


Para pasar el teclado a español: setxkbmap es sundeadkeys


Luego para pasar el sistema a español:

apt-get update && apt-get -y full-upgrade

dpkg-reconfigure locales  ..y seleccionar es_ES.UTF-8

dpkg-reconfigure tzdata  ..y seleccionar europa/madrid para poner bien la zona horaria.


Problema de sudo su en Debian 10 solucionado:

 Escribir en el terminal "su -"->pide clave del root (aunque este esté deshabilitado) y entonces ya pasas a estar como root. ES IMPORTANTE EL GUIÓN DESPUÉS DE SU PUES SINO NO ES EL ROOT COMPLETO (sería sin el hyphen). Así luego ya puedes habilitar root e incluso meter el usuario en el grupo sudoers que no estaba antes:

#usermod -aG sudo usuario (y ya le funcionará el #sudo su)

#usermod -U root (y NO SIRVE PARA DESBLOQUEAR EL LOGIN DE root)

 Desbloquedo del login de root:

#nano etc/pam.d/gdm-autologin Y #nano etc/pam.d/gdm-password->y donde pone != root lo dejamos debemos poner simplemente # al principio de esas dos líneas dejándolas como comentario. 

Porque esta línea lo que indica es que el login es correcto si el usuario es distinto de root. Si cambiaramos != por = diriamos que solo root puede logear, impidiendo así que entren el resto de usuarios. Así lo mejor es dejarla comentada y sin funcionalidad y todos podrán entrar.


miércoles, 26 de agosto de 2020

Reparar ciertos USBs dañados

Un pequeño salvavidas de nuestra información.

Porque es una putada que aquello que tengamos en el USB se pierda si no hay otra copia. O que se pierda el mismo USB que tus euros te ha costado sin saber porque. Pues a veces tiene solución. Comprobemos los siguientes supuestos.

A -Al conectar el USB se escucha el sonido pero no aparece la memoria en el explorador:

Ponemos Admi en el buscador y ya aparece

O simplemente desde el explorador abrimos el menú de 'Este equipo'




  Vamos a administración de discos (dentro de administración de equipos). Lo buscamos pues aparecerá abajo; nos dice su partición y su sistema de archivos pero veremos que esta unidad no tiene letra alguna (H:, por ejemplo) debemos pulsar clic derecho sobre ella y pulsar, en el menú, "cambiar la letra y rutas de acceso de unidad". En la ventana que aparece pulsamos agregar y en la siguiente le ponemos la letra que deseemos o la que nos ponga por defecto: marcando (viene por defecto) "Agregar la letra de unidad siguiente" y pudiendo elegir a su derecha cual será. Pulsamos Aceptar.

Y ya aparece identificado en el explorador y se puede usar. Incluso si quiere volverlo a formatear.

Debo avisar que los métodos siguientes BORRAN TODOS LOS DATOS QUE TENGAN EN EL USB. 

B -Al conectar la memoria no muestra su capacidad real, aunque sí la letra de la unidad.

 Vamos a administración de discos que está en Administración de Equipos. Para acceder a él basta con poner en el buscador 'administra' y suele ser la primera opción. O desde el Explorador de Windows, botón derecho sobre Equipo y elegimos 'Administrar'. 

Se nos abre el programa y seleccionamos Administración de discos y en la parte inferior de la columna central nos da la información del disco que corresponde al usb.

 

 Vemos que el disco que corresponde aparece particionado -es decir, una unidad física está dividida en varias unidades lógicas y una de ellas está sin formato (ahí, perdida)-. Le damos clic derecho/eliminar volumen OJO PORQUE ESTO ELEMINARÁ TODOS LOS DATOS QUE TENGAMOS EN EL USB. 

 También es posible eliminar directamente la partición (ver https://sarlaukajop.blogspot.com/2020/03/eliminar-particiones-usb.html) y después extender la partición activa (desde el adminitrador de equipos)

Ya podemos formatearlo, pero no directamente en explorador pues no nos dejará.

A- Usamos Rufus, que es un programa creado para crear usbs autoejecutables para instalaciones de sistemas operativos: seleccionamos el dispositivo. En elección de arranque seleccionamos 'No auto-ejecutable'. Elegimos el sistema de archivos (NTFS, por ejemplo); y pulsamos 'Empezar'.

Ahora ya podemos formatearla desde el sistema de windows, cosa que antes no podíamos. Y así le quitamos también los archivos de autoarranque que se crearon con Rufus.




B-  Usamos la consola CMD.

Escribimos diskpart y pulsamos enter. Aparece una nueva pantalla terminal en la que estamos dentro de la aplicación diskpart.

Vamos a ver cuantos dispositivos de almacenamiento hay conectados al PC->escribimos 'list volume'

Aparecen todos en una tabla con el número de columen, letra, etiqueta, tipo de sistema de archivos, etc.

Escribimos 'select volume 5' siendo el 5 el volumen del usb problemático. Así actuaremos sobre ese volumen.

Escribimos 'format fs=ntfs quick', para formatearlo en NTFS de forma rápida.

Y en unos segundos podremos verla en el explorador e incluso formatearla desde él.





--Conectamos el USB y, tras el sonido, nos avisa una pantalla que formateemos el disco para poder usarlo:


No podremos directamente en explorador pues no nos dejará. Deberemos usar el método A o B anterior.


--Cuando pasamos el número de escritura en la memoria aparece protección contra escritura.

Desde Ubuntu sin problema para formatearla.


--Al final debemos reparar algunos sectores dañados de la memoria. Lo hacemos con chkdsk, desde CMD.

Escribiremos en el terminal 'chkdsk H: /f', siendo H la letra de la unidad del usb.

miércoles, 5 de agosto de 2020

Arreglando el problema del superusuario (root) en Debian 10

¿De verdad era necesario ocultar así el root?


Si estás aquí ya sabes usar Linux. En mayor o menor medida has usado alguna de sus versiones ubuntu, xubunto, debian, etc.. y sabrás de la existencia de una cuenta de superusuario cuyo nombre es root. Estarás acostumbrado a que "este usuario no se usa más que para cosas muy importantes y puntuales" dejándolo relegado a un administrador cuyo login es mejor no usar. Es decir, que no inicias sesión directamente con él. ¿no? Ni de coña: yo personalmente casi siempre inicio sesión con root y me olvido del resto de usuarios. Quizás porque yo lo hago en máquinas virtuales con interés más didáctico que práctico, todo puede ser.


Pero os habréis dado cuenta que en el Debian 10 (si pasaba en los anteriores a mí no me pasó) el root está con el login deshabilitado. Al instalar el sistema debes configurar su password pero luego no hay forma de logearte con él. 

Además existe otro pequeño problema, que es que el usuario que creas no está dentro de grupo sudoers (no está dentro del grupo de administradores, para los que vienen de Windows) por lo que no puede ejecutar instrucciones que requieran de ese perfil (pj: sudo apt install net-tools) ni tampoco puede hacer su "sudo su" para dejarle el perfil sudo activo. Así pues ¿cómo podemos ejercer de root o sudoer?


-Problema de sudo su en Debian 10 solucionado


Escribir en el terminal "su -"->pide clave del root (aunque este esté deshabilitado) y entonces ya pasas a estar como root. 

ES IMPORTANTE EL GUIÓN DESPUÉS DE "SU" PUES SINO NO ES EL ROOT COMPLETO (sería sin el hyphen, tilde o virgulilla). Estarías como root pero sin tener acceso permanente al directorio bash (donde están las instrucciones que sueles ejecutar como root) y no podrías ejecutarlas donde quisieras.


Así luego ya puedes meter el usuario en el grupo sudoers que no estaba antes:

#usermod -aG sudo nombreDeUsuario (y ya le funcionará el #sudo su, porque así lo incluimos en el grupo sudoers)


Y ya que estamos en modo sudo podríamos desbloquear el login del root, ¿no? Se haría con esto:

#usermod -U root (que así desbloquearíamos al usuario root pero NO SIRVE PARA DESBLOQUEAR EL LOGIN DE root)


En rojo las órdenes indicadas y en azul las que se pueden usar para ver los grupos a los que pertenece el usuario sark



Así pues, tras mucho buscar, nos damos cuenta que no es que la cuenta root esté deshabilitada para el login si no que la configuración de la autenticación y passwords es la que lo impide...


-Desbloqueo del login de root en Debian 10


En la carpeta etc/pamd.d existen varios archivos que debemos modificar manualmente. Esto lo podemos hacer con el comando nano o gedit. Son los archivos gdm-autologin y gdm-password. Que deberíamos hacer así:



 #nano etc/pam.d/gdm-autologin o nano gdm-autologin (si ya estamos en la carpeta pam.d) -> y donde pone != root lo dejamos como = root.


Y #nano etc/pam.d/gdm-password->y donde pone != root lo dejamos como = root (lo mismo que en el otro, vaya).



Así aparece.

Así debe quedar




pero ¡ERROR---SI LO HACEMOS ASÍ! porque lo que indicamos es que el login es correcto si el usuario es root. Impidiendo así que entren el resto de usuarios. Probarlo y veréis.


Debemos poner simplemente # al principio de esas dos líneas dejándolas como comentario. Tal y como muestra la imagen siguiente.



De esta forma la línea queda 'comentada', sin efecto, y no requiere ni que sea root ni que no lo sea para que el login sea correcto. 


Y así es como solucionamos el 'problema' de no poder entrar con root directamente en Debian 10.


Fuentes:

https://wiki.debian.org/es/sudo

https://www.comoinstalarlinux.com/que-hacer-despues-de-instalar-debian-10/

https://www.youtube.com/watch?v=L5FM9xnVKEs