Tabla de Contenidos

Utilidades Linux

APT

Repositorios

Operaciones sobre repositorio

#Actualizar repositorios: 
apt-get update
#Actualizar paquetes instalados:
apt-get upgrade
apt-get upgrade <paquete>
#Buscar paquetes: 
apt-cache search <cadena ó cadenas de búsqueda>
#Mostrar info de un paquete: 
apt-cache show <paquete>
#Mostrar paquetes instalados
apt list --installed | grep <paquete>

Instalar/desinstalar

#Instalar un paquete: 
apt-get install <paquete>
apt-get install <package_name>=<version_number>
#Reinstalar un paquete: 
apt-get install <paquete> --reinstall
#Desinstalar un paquete: 
apt-get remove <paquete>
#Desinstalar un paquete y toda su configuración: 
apt-get remove <paquete> --purge
#Corregir errores de instalación: 
apt-get install -f 
#Elimina el paquete y sus fichero de conf
apt-get purge <paquete>
#Elimina paquetes que ya no se usan por haber nuevas versiones
apt-get autoclean
#Elimina paquetes que eran dependencias de otro desinstalado
apt-get autoremove

dpkg (Debian Packaging System)

Para instalar paquetes .deb

#Paquetes instalados
dpgk -l | grep <nombre>
 
#Instalar un paquete: 
dpkg -i <paquete.deb>
#Instalar un paquete "a la fuerza":
dpkg -i --force-all <paquete.deb>
# Desinstalar un paquete: 
dpkg -r <paquete>
#Corregir errores de instalación
dpkg --configure -a <paquete>

Servicios

Comprobar estado, arrancar, reiniciar, parar

MariaDB

Para administrar, hay que loguearse como root en bash

Usuarios

#Crear usuario
mysql> CREATE USER 'user'@localhost IDENTIFIED BY 'pass';
 
#Ver los usuarios
SELECT User (ó *) FROM mysql.user;
 
#Crear base de datos
mysql> CREATE DATABASE `mibd`;
 
#Uso sin permisos para acceder desde local
mysql> GRANT USAGE ON *.* TO 'user'@localhost IDENTIFIED BY 'pass';
 
#Uso sin permisos para acceder desde remoto
mysql> GRANT USAGE ON *.* TO 'user'@'%' IDENTIFIED BY 'pass';

Privilegios

#Conceder todos los privilegios sobre una base de datos en local
mysql> GRANT ALL privileges ON `mibd`.* TO 'user'@localhost;
#Privilegios desde remoto
mysql> GRANT ALL privileges ON `mibd`.* TO 'user'@'%';
 
#Mostrar privilegios
mysql> SHOW GRANTS FOR 'user'@localhost; 
 
#Eliminar privilegios
REVOKE ALL PRIVILEGES on *.* from 'user'@localhost;
REVOKE USAGE on *.* from 'user'@localhost;
 
 
#Aplicar los cambios realizados
mysql> FLUSH PRIVILEGES;
 
#Verificar permisos
mysql> SHOW GRANTS FOR 'user'@localhost;     

PostgreSQL

#cambiar al usuario postgres (superusuario de postgresql) 
su - postgres
 
#conectarme mediante el cliente -> psql
psql 
 
create database mydb;
create user myuser with encrypted password 'mypass';
grant all privileges on database mydb to myuser;
revoke all on database mydb to myuser;
 
#Salir del cliente 
\q

Crear bases de datos y usuarios, desde el terminal a través del usuario postgres

#Cambio al usuario postgres
su - postgres
createuser <username>
createdb <dbname>
 
dropdb <db>
dropuser <user>

Apache

service apache2 status
 
service apache2 start/stop/restart
 
apachectl status
 
apache2 -v -> Muestra datos sobre la versión

Compresores

Archivos .tar.gz:

Archivos .tar:

Archivos .gz:

Archivos .zip:

Miscelanea

Gnome Desktop

Red

Nautilus

Rutas de Utilidad

Accesos directos al escritorio → /usr/share/applications

CertBot

Generar certificado SSL para dominio y wildcard para subdominios

$ certbot certonly --manual -d *.mydomain.com -d mydomain.com --agree-tos --manual-public-ip-logging-ok --preferred-challenges dns-01 --server https://acme-v02.api.letsencrypt.org/directory --register-unsafely-without-email --rsa-key-size 4096

Para añadir las entradas DNS Txt, no se debe incluir el nombre del dominio: TXT _acme-challenge “ku1k_n8q7fLah09qr6UDxk8Ot819PRI2kK_CfBdYwm8”

Renovar certificados

$ certbot renew