Bases del sistema operativo

1

Aviso de renovaci贸n del curso

2

Lo que aprender谩s sobre la administraci贸n de servidores linux

3

Distribuciones m谩s utilizadas de Linux

4

Instalaci贸n de Ubuntu Server

5

Instrucciones para instalar CentOS

6

Gesti贸n del 谩rbol de directorios

7

Diferencias entre LESS, CAT, HEAD y TAIL para lectura de archivos

8

Interacci贸n con archivos y permisos

9

Conociendo las terminales en linux

10

Manejo y monitoreo de procesos y recursos del sistema

11

Monitoreo de recursos del sistema

Instalaci贸n y manejo de software en Linux

12

An谩lisis de los par谩metros de red

13

Administraci贸n de paquetes acorde a la distribuci贸n

14

Manejo de paquetes en sistemas basados en Debian

15

Administraci贸n de software con YUM y RPM para CentOS

16

Nagios: Desempaquetado, descompresi贸n, compilaci贸n e instalaci贸n de paquetes

Administraci贸n de usuarios

17

Los usuarios, una tarea vital en el proceso de administraci贸n del sistema operativo

18

Creando y manejando cuentas de usuario en el sistema operativo

19

Entendiendo la membres铆a de los grupos

20

Usando PAM para el control de acceso de usuarios

Servicios en el sistema operativo

21

Autenticaci贸n de clientes y servidores sobre SSH

22

Configurando DNS con bind

23

Arranque, detenci贸n y recarga de servicios

24

NGINX y Apache en Ubuntu server

25

Instalaci贸n y configuraci贸n de NGINX

26

驴Qu茅 es NGINX Amplify?

27

NGINX Amplify: Instalaci贸n y configuraci贸n de un servidor para producci贸n

28

Monitoreo de MySQL con Nagios

29

Configuraci贸n de Nagios

30

Los logs, nuestros mejores amigos

31

Otros servicios de logs

Bash scripting

32

Las bases de bash

33

Las variables y su entorno de ejecuci贸n

34

Automatizando tareas desde la terminal

35

Automatizando la copia de seguridad

36

Crontab

Asegurando tu servidor

37

Entendiendo la gesti贸n de vulnerabilidades

38

驴Qu茅 es una superficie de ataque? Principio del menor privilegio

39

El firewall y sus reglas

40

Escaneo de puertos con NMAP y NIKTO desde Kali Linux

41

Lynis: Herramientas de auditoria de seguridad en Linux

Proyecto

42

Configuraci贸n de Node.js en un ambiente productivo

43

Configuraci贸n de NGINX para la aplicaci贸n de Node.js

Bonus: Linux en Azure

44

Aprende sobre Linux en Azure

45

Despliegue de una aplicaci贸n web MEAN

46

Crea una m谩quina virtual en la nube de Azure

Conclusiones

47

Lo que aprendiste sobre servidores linux

No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Aprende todo un fin de semana sin pagar una suscripci贸n 馃敟

Aprende todo un fin de semana sin pagar una suscripci贸n 馃敟

Reg铆strate

Comienza en:

5D
13H
17M
3S

Arranque, detenci贸n y recarga de servicios

23/47
Recursos

El comando systemctl nos permite manejar los procesos de nuestro sistema operativo. Nuestros servicios pueden estar activos (es decir, encendidos) o inactivos (apagados). Tambi茅n podemos configurar si est谩n habilitados o deshabilitados para correr autom谩ticamente con el arranque del sistema.

  • sudo systemctl status nombre-servicio: ver el estado de nuestros servicios.
  • sudo systemctl (enable, disable) nombre-servicio: activar o desactivar el arranque autom谩tico de nuestros servicios.
  • sudo systemctl (start, stop, restart) nombre-servicio: encender, apagar o reiniciar los servicios.
  • sudo systemctl list-units -t service --all: ver todos los servicios del sistema.

El comando journalctl nos permite ver los logs de los procesos de nuestro sistema operativo. Recuerda que todos ellos est谩n almacenados en la carpeta /var/log/.

  • sudo journalctl -fu nombre-servicio: ver los logs de nuestros servicios y hacer un seguimiento.
  • sudo journalctl --disk-usage: ver la cantidad de espacio que ocupan nuestros logs.
  • sudo journalctl --list-boots: muestra la lista de booteos de la computadora.
  • sudo journalctl -p (critic, info, warning, error): filtrar los logs por el tipo de mensaje.
  • sudo journalctl -o json: ver los logs en formato JSON.

Aportes 56

Preguntas 9

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

o inicia sesi贸n.

RESUMEN DE LA CLASE
|
Arranque, detenci贸n y recarga de servicios
|
|
Comandos
|

  • sudo systemctl status servicio: Estado de un servicio
  • sudo systemctl enable servicio: Habilita un servicio
  • sudo systemctl disable servicio: Deshabilita un servicio
  • sudo systemctl start servicio: Enciende un servicio
  • sudo systemctl stop servicio: Apaga un servicio
  • sudo systemctl restart servicio: Reinicia un servicio
  • sudo systemctl list-units -t service --all: Lista los servicios del sistema
  • sudo journalctl -fu servicio: Muestra el log de un servicio
  • sudo journalctl --disk-usage: Muestra cuanto pesan los logs en el sistema operativo
  • sudo journalctl --list-boots: Muestra los booteos de la computadora
  • sudo journalctl -p critic|notice|info|warning|error: Muestra mensajes de determinada categor铆a de nuestros logs
  • sudo journalctl -o json: Muestra los logs en formato json

Aun sigue funcionando la vieja confiable


service [nombre servicio] [accion]

service apache2 restart




O la otra Vieja confiable /etc/init.d/apache2 restart

驴Qu茅 son los Logs?
El sistema de logs de Linux (log = registro), es un mecanismo est谩ndar que se encarga de recoger los mensajes generados por los programas, aplicaciones y demonios y enviarlos a un destino predefinido.

Cual es la diferencia entre iniciar con init.d y systemctl

sudo journalctl -fu nombre-servicio: ver los logs de nuestros servicios y hacer un seguimiento.
sudo journalctl --disk-usage: ver la cantidad de espacio que ocupan nuestros logs.
sudo journalctl --list-boots: ver los logs desde el 煤ltimo arranque del sistema.
sudo journalctl -p (critic, info, warning, error): filtrar los logs por el tipo de mensaje.
sudo journalctl -o json: ver los logs en formato JSON.

Un comando que utilizamos para ver los servicios java que corren en nuestro servidores es el siguiente: https://docs.oracle.com/en/java/javase/13/docs/specs/man/jps.html

Para cuando tengas que depurar un servicio y necesites ver la traza con formato (utiliza -f)

  • sudo journalctl -u nombre-servicio -f
    Pero si necesitas ver las ultimas 100, 200 鈥 n l铆neas (utiliza -n)
  • sudo journalctl -u nombre-servicio -n cantidad-de-lineas
    O combina ambos para una mejor lectura:
  • sudo journalctl -u nombre-servicio -n cantidad-de-lineas -f

Los tipos de prioridad en ubuntu actualmente son:

鈥渆merg鈥 (0), 鈥渁lert鈥 (1), 鈥渃rit鈥 (2), 鈥渆rr鈥 (3), 鈥渨arning鈥 (4), 鈥渘otice鈥 (5), 鈥渋nfo鈥 (6), 鈥渄ebug鈥 (7)

Tengo el siguiente error al ejecutar systemctl en la terminal ubuntu de windows

System has not been booted with systemd as init system (PID 1). Can鈥檛 operate.
Failed to connect to bus: Host is down

Al momento de ver estatus de algun servicio me sale el siguiente error:

System has not been booted with systemd as init system (PID 1). Can鈥檛 operate.
Failed to connect to bus: Host is down

Uso ubuntu de windows 10

Alguna ayuda?? Saben por que puede ser?

Cuando emito el comando system status apache 2 me dice que:
Unit apache2.service count not be found
Que puedo hacer?

Entendido

sudo systemctl status apache2
sudo systemctl enable apache2
sudo systemctl start apache2
sudo systemctl stop apache2
sudo systemctl restart apache2
sudo systemctl list-units -t services --all 
sudo journalctl -fu apache2
sudo journalctl --disk-usage
sudo journalctl --list-boots
sudo journalctl --p crit
sudo jornalctl -o json

Cuando dijo con el siguiente comando sudo systemctl -o json, vamos a ver los logs de una forma mas amigable para programadores cre铆 que iba a salir una tabla con colores, id, etc. Pero de lo que sali贸 no entend铆 nada jajajaja

M谩s info sobre journalctl

Les dejo algunos otros comandos 煤tiles

Para recargar los archivos de configuraci贸n de un servicio SIN reiniciarlo

sudo systemctl reload <servicio>

Para reducir el tama帽o de los logs cierta cantidad

sudo journalctl --vacuum-size=100M

Para reducir el tama帽o de los logs a cierta cantidad de d铆as

sudo journalctl --vacuum-time=3days

Seria bueno que destacaran que el viejo sistema de arranque de servicios de linux es el esquema basado en los runlevels y el proceso raiz init

Para lo cual ser铆a bueno que explicaran que son los runlevels y como el proceso init permite cambiar de runlevel, y que un runlevel es un n煤mero entero

para saber en que runlevel estamos corriendo podemos correr el comando

**runlevel**```

El runlevel de operaci贸n normal es el 5

No es lo mismo saber que el comando init 6 reinicia el sistema operativo, que entender que son los runlevels, y que estamos cambiando de runlevel, y entendemos la evoluci贸n de systemVinit hacia systemd y saber porque se dio y cuales eran las necesidades insatisfechas.

Eso es lo que le falta a estas clases, el enfoque hist贸rico, holistico y trascendental de saber porque estamos haciendo las cosas y como funcionan y no solo hacerlas como pericos.

Para eliminar los logs

sudo journalctl --vacuum-time=((time))

ejemplos de time = 2m (dos minutos), 5h (cinco horas), 3weeks (tres semanas), 5months (cinco meses).

Excelente!

# Systemd command   |   Sysvinit command (alternative for WSL)
systemctl start service_name	service service_name start
systemctl stop service_name	    service service_name stop
systemctl restart service_name	service service_name restart
systemctl status service_name	service service_name status
systemctl enable service_name	chkconfig service_name on
systemctl disable service_name	chkconfig service_name off

# Monitoring OS services
sudo systemctl
## List OS units
systemctl list-unit-files --type service
sudo systemctl list-units -t services --all

# Status
- sudo systemctl status <service_name>
    enable/disable: indicates if the service will start with the server boot

# Enable/disable a service
- sudo systemctl <enable|disable> <service_name>

# General commands
- sudo systemctl stop <service_name>
- sudo systemctl start <service_name>
- sudo systemctl restart <service_name>

# Notes
- If a service config is modified, it must be restarted

# Search logs of a service
Logs Folder: /var/log/
sudo journalctl -fu <service_name>                              # Debugger for services that does not start
sudo journalctl --disk-usage                                    # Verify how much memory does the logs take up
sudo journalctl --list-reboots                                  # List reboots
sudo journalctl -p <info|notice|warning|error|crit>             # Check service failures
sudo journalctl -p <info|notice|warning|error|crit> -o json     # Output in JSON format

# Delete logs
sudo journalctl --vacuum-time=((<time>))              # time: 2m | 5h | 3weeks | 5months

Arranque, detenci贸n y recarga de servicios
https://platzi.com/clases/1667-linux/22842-arranque-detencion-y-recarga-de-servicios/

El comando systemctl nos permite manejar los procesos de nuestro sistema operativo. Nuestros servicios pueden estar activos (es decir, encendidos) o inactivos (apagados). Tambi茅n podemos configurar si est谩n habilitados o deshabilitados para correr autom谩ticamente con el arranque del sistema.

$ sudo systemctl status nombre-servicio: ver el estado de nuestros servicios.
$ sudo systemctl (enable, disable) nombre-servicio: activar o desactivar el arranque autom谩tico de nuestros servicios.
$ sudo systemctl (start, stop, restart) nombre-servicio: encender, apagar o reiniciar los servicios.
$ sudo systemctl list-units -t service --all: ver todos los servicios del sistema.
El comando journalctl nos permite ver los logs de los procesos de nuestro sistema operativo. Recuerda que todos ellos est谩n almacenados en la carpeta /var/log/.

$ sudo journalctl -fu nombre-servicio: ver los logs de nuestros servicios y hacer un seguimiento.
$ sudo journalctl --disk-usage: ver la cantidad de espacio que ocupan nuestros logs.
$ sudo journalctl --list-boots: muestra la lista de booteos de la computadora.
$ sudo journalctl -p (critic, info, warning, error): filtrar los logs por el tipo de mensaje.
$ sudo journalctl -o json: ver los logs en formato JSON.

Peque帽a introducci贸n a los servicios.

Un servicio (o demonio) es un programa que corre en background que tiene el prop贸sito de ejecutar tareas espec铆ficas del sistema, como por ejemplo; el servidor SSH para conexiones remotas; un servidor de correo electr贸nico; varios servidores web; la transferencia de archivos por FTP; la resoluci贸n de direcci贸n IP con DHCP, entre otros. T铆picamente, Linux ofrece un gestor de servicios llamado systemd.

con el comando service tambien se puede hacer casi lo mismo que con el comando systemctl

Interesante, sab铆a lo de systemctl, pero no lo de journalctl, necesito darle una revisada a mis servidores para ver esto

Para tener en cuenta, en caso en alg煤n momento necesites visualizar las ultimas 10, 20,鈥, n l铆neas del log del alg煤n servicio, puedes usar el par谩metro -n

  • sudo systemctl -u nombre-servicio -n 100 (este te mostrara las ultimas 100 l铆neas del log)
    Si deseas con formato la traza del log puedes usar el par谩metro -f
  • sudo systemctl -u nombre-servicio -f (esto te mostrara en tiempo real la traza mas reciente del log)
    O puedes combinarlas ambas opciones -n -f te mostrara las ultimas l铆neas que le pases al par谩metro -n y seguir谩 present谩ndote la informaci贸n que llegue a la traza del servicio, con formato.

Excelentes comando, corto y directo al grano!. Clase magistral. B谩sico y con mucha preguntas, pero poco a poco.

sudo systemctl status nombre-servicio: ver el estado de nuestros servicios.
sudo systemctl (enable, disable) nombre-servicio: activar o desactivar el arranque autom谩tico de nuestros servicios.
sudo systemctl (start, stop, restart) nombre-servicio: encender, apagar o reiniciar los servicios.
sudo systemctl list-units -t service --all: ver todos los servicios del sistema.

l comando systemctl nos permite manejar los procesos de nuestro sistema operativo. Nuestros servicios pueden estar activos (es decir, encendidos) o inactivos (apagados). Tambi茅n podemos configurar si est谩n habilitados o deshabilitados para correr autom谩ticamente con el arranque del sistema.

El comando journalctl nos permite ver los logs de los procesos de nuestro sistema operativo. Recuerda que todos ellos est谩n almacenados en la carpeta /var/log/.

Saludos compa帽eros

me tira este error alguien sabe que puedo hacer?

[email protected]:~$ sudo systemctl status apache2
System has not been booted with systemd as init system (PID 1). Can鈥檛 operate.

Para aquellos que a pesar de la clase anterior continuaron viendo el curso

隆Felicitaciones cracks!
Nunca pararemos de aprender (aunque a veces sea dif铆cil)

Es tanta informacion, ya llevo 3 veces repitiendo esta clase.

Para las personas que estan desarrollando el curso con la WSL pueden usar los siguientes comandos.

  • sudo service apache2 status
  • sudo service apache2 start
  • sudo service apache2 restart
  • sudo service apache2 stop
  • sudo service apache2 enable

De igual forma para cualquier servicio, como lo es nagios o ssh.

Les dejo esta paguina para los que usen wsl ami me sirvio porque no podia usar systemd y averiguando un poco encontre la falla

me encanta aprendemos mucho

es un curso muy explicado

anda muy lento. tengo 50mb de bajada y las clases se traban, podrian ver que pasa?

journalct

Si haz intentado

sudo systemctl status apache2

Y el terminal te ha devuelto un 鈥淣ot find鈥 necesitas instalar apache2 ejecutando el siguiente comando

sudo apt install apache2

Tambien puedes seguir esta guia que he encontrado en internet. Estoy seguro que les ayudara bastante:

https://www.digitalocean.com/community/tutorials/como-instalar-el-servidor-web-apache-en-ubuntu-18-04-es

Para limpiar los logs de journalctl ejecutamos el comando

journalctl --vacuum-time=7d

donde 7d es el n煤mero de d铆as que queremos dejar. En este caso, quiero dejar los logs de la 煤ltima semana.

Nota al pie de p谩gina que no tiene que ver con la clase pero que s铆 tiene que ver con la administraci贸n: estaba haciendo la pr谩ctica con sshd y me di cuenta que meterse con el servicio no afecta las conexiones activas. Investigu茅 un poco y resulta que si afectas el servicio sshd es s贸lo el server en escucha, pero quienes ya se encuentran loggeados por ssh no sufren desconexi贸n, ya que dichas sesiones encuentran ligadas en procesos hijos que operan aparte del daemon. No s茅 qu茅 otros servicios pudieran tener este mismo comportamiento, pero es algo a destacar, ya que en ESTE CASO, el reiniciar un servicio no causar谩 impacto en los usuarios. Y yo me pregunto, 驴eso es bueno o malo?

En mi caso tuve que escribir el siguiente comando para que funcionara
systemctl list-unit-files --type service

Que belleza de comando:

sudo systemctl list-units -t service --all

Arranque, detenci贸n y recarga de servicios.

.
sudo systemctl status (server) Verificamos si el servidor est谩 funcionando.
sudo systemctl enable (server) Nos sirve para activar el server.
sudo systemctl list-units -t service --all Lista todas las unidades de todos los servicios.
.
sudo journalctl -fu (server) Nos permite administrar todos los 鈥渓ogs鈥.
sudo journalctl --disk-usage Nos muestra el espacio ocupado por logs
sudo journalctl --list-boots Nos muestra las veces que hemos reiniciado el PC
sudo journalctl -p crit Nos muestra la informaci贸n de los errores que se han experimentado en el OS.

Arranque , detencion y recarga de servicios:

sudo systemctl status apache2 ---->  verifica status de apache
sudo systemctl stop apache2  ---> detiene servicio
sudo systemctl start apache2 ---> inicia servicio
sudo systemctl enable apache2 ---> activa apache desde inicio del server , disable si no lo quiere desde el inicio

nota: dos servicios no pueden correr en el mismo puerto y mismo server.

sudo systemctl list-units  -t service --all      -----> ver todos los servicios
sudo journalctl -fu apache2 ---> ver los logs de un servicio , el -f es para quedarse pegado viendolos 
sudo journalctl --disk-usage  -----> ver espacio que estan ocupando los logs hasta ahora 
sudo journalctl --list-boots ---> ver todos los boots que ha tenido la maquina
sudo journalctl -p crit  ---> ver los log filtrados por tipo, en ese caso esta filtrado  por crit, pero puede ser info, notice

sudo journalctl -o json -p crit ----> igual que el otro, pero le agrego el -o json, para que el formato de saldia sea un json

systemctl
saber que servicio esta activo o en que status esta

super 馃槂 probado 馃槂

sudo systemctl <stop-start-enable-restart-status> <aplicaicon>

Hola, como hago para borrar los log麓s???

Gracias

Excelente el contenido del v铆deo.

gracias

bastante 煤til gracias

muy bien!