Saltar al contenido
Consejos Linux

Cómo gestionar un servidor Ubuntu con systemctl y otros comandos esenciales

Por Bruno Hoinacki

Si desarrollas aplicaciones o mantienes servidores Linux en línea, dominar los comandos correctos en la terminal puede ahorrarte mucho tiempo y dolores de cabeza. En Ubuntu, uno de los sistemas operativos más populares para desarrollo, hay herramientas poderosas que facilitan el control y el monitoreo de servicios, paquetes y recursos del sistema.

En este artículo vamos a explorar systemctl (para gestionar servicios) y otros comandos indispensables para mantener un servidor Ubuntu saludable, actualizado y seguro.

🔧 systemctl: tu panel de control para los servicios en Ubuntu

systemctl es como el “panel de control” de los servicios en Linux que usan systemd (el sistema de inicio estándar en la mayoría de las distribuciones modernas, incluido Ubuntu). Con él, puedes iniciar, detener, reiniciar, activar o desactivar cualquier servicio de tu sistema, como MongoDB, NGINX, MySQL, Redis, entre otros.

📌 Comandos esenciales de systemctl:

Abre la terminal y escribe:

sudo systemctl status nome-do-serviço     # Verifica o status atual
sudo systemctl start nome-do-serviço      # Inicia o serviço
sudo systemctl stop nome-do-serviço       # Para o serviço
sudo systemctl restart nome-do-serviço    # Reinicia o serviço
sudo systemctl enable nome-do-serviço     # Ativa para iniciar no boot
sudo systemctl disable nome-do-serviço    # Desativa no boot

🔍 Ejemplo práctico:

sudo systemctl restart nginx # Reiniciar o servidor nginx

Este comando reinicia el servidor web NGINX, aplicando los cambios hechos en el archivo de configuración sin necesidad de reiniciar la máquina.

📜 journalctl: sigue los logs en tiempo real

¿Quieres entender por qué falló un servicio? ¿O ver qué pasó antes de un crash? journalctl es tu aliado para inspeccionar los logs de systemd.

📌 Ejemplos útiles:

journalctl                         # Mostra todos os logs do sistema
journalctl -u nginx                # Logs específicos do serviço nginx
journalctl -f -u mongod            # "Segue" os logs em tempo real (como tail -f)

💡 Consejo: usa CTRL + C para salir de la vista en vivo.

📦 apt: el gestor de paquetes que todo dev necesita conocer

Mantener tu servidor actualizado e instalar herramientas nuevas es tarea de apt.

📌 Comandos del día a día:

sudo apt update                    # Atualiza a lista de pacotes
sudo apt upgrade                   # Instala atualizações disponíveis
sudo apt install nome-do-pacote   # Instala novos pacotes
sudo apt remove nome-do-pacote    # Remove pacotes que não usa mais

🔍 Ejemplo:

sudo apt install htop # instala interface de monitoramento de recursos htop

htop es una versión más visual e interactiva de top, usada para monitorear procesos.

🌐 Comandos de red: entiende lo que está pasando

Saber lo que ocurre en la red de tu servidor es esencial, especialmente en entornos web.

📌 Comandos útiles:

ip addr                            # Mostra IPs e interfaces de rede
ip route                           # Exibe as rotas de rede
ss -tuln                           # Lista portas abertas e serviços escutando
ping google.com                    # Testa a conectividade com a internet

💡 Reemplaza el antiguo netstat por ss, que es más rápido y moderno.

🔍 top y htop: mira qué está consumiendo CPU y memoria

Si algo va lento, la culpa puede ser de un proceso hambriento de CPU o RAM.

📌 Usa:

top                                # Interface simples para monitoramento
htop                               # (se instalado) interface visual interativa
Interfaz de top
Interfaz de htop

Con htop, puedes navegar con el teclado, matar procesos y visualizar el consumo por núcleo. Es una herramienta indispensable para un diagnóstico rápido.

🛡️ ufw: firewall sin complicaciones en Ubuntu

ufw (Uncomplicated Firewall) es perfecto para bloquear o liberar puertos sin complicaciones.

📌 Ejemplos prácticos:

sudo ufw enable                    # Ativa o firewall
sudo ufw allow 22                  # Libera a porta 22 (SSH)
sudo ufw allow 80,443/tcp          # Libera HTTP e HTTPS
sudo ufw status                    # Exibe regras ativas

💡 Importante para servidores remotos: ¡recuerda liberar el puerto 22 antes de activar el firewall, o podrías quedarte fuera por SSH!

🧪 Comandos listos para servicios populares

# MongoDB
sudo systemctl status mongod
sudo systemctl restart mongod

# MySQL
sudo systemctl restart mysql

# NGINX
sudo systemctl restart nginx

Estos son los comandos que más vas a escribir en un entorno moderno de desarrollo web.

🧠 Extra: automatiza tareas comunes con Shell Script

Puedes crear un pequeño script .sh para actualizar el sistema o reiniciar servicios de forma automatizada.

Ejemplo: atualizar.sh

#!/bin/bash
echo "Atualizando o sistema e reiniciando serviços essenciais..."
sudo apt update && sudo apt upgrade -y
sudo systemctl restart nginx
sudo systemctl restart php8.2-fpm

Haz el script ejecutable:

chmod +x atualizar.sh

Ejecútalo con:

./atualizar.sh

Concluimos entonces que...

Dominar herramientas como systemctl, apt, ufw y journalctl te convierte en un desarrollador o administrador más eficiente y autónomo. Tener este conocimiento es especialmente valioso cuando se trabaja con servidores de staging, producción o incluso en contenedores y VPS.

Si gestionas aplicaciones web, APIs o bases de datos en Ubuntu, estos comandos son lo básico esencial para no depender siempre de alguien de DevOps.

Pero si necesitas ayuda, ¡no dudes en ponerte en contacto con Forcoder!

Sigue leyendo

Guía Linux Essentials: domine los comandos esenciales

Si está comenzando su camino en Linux o ya administra servidores y quiere repasar su base, esta guía es para usted. Dominar los comandos básicos no solo acelera su rutina, sino que también le da más confianza para resolver problemas, automatizar tareas y entender mejor lo que ocurre por debajo.

XDM, KDM, GDM y XINIT en Linux: diferencias y funciones

Si alguna vez usaste distribuciones Linux con interfaz gráfica, seguramente te topaste con siglas como XDM, KDM, GDM y XINIT. Para muchos, estos términos suenan técnicos y confusos, pero en la práctica son componentes esenciales para el funcionamiento y el arranque del entorno gráfico.

¿Tienes un proyecto en mente? Hagámoslo realidad.

Sitios web, sistemas e integraciones a la medida, enfocados en resultados. Cuéntanos qué necesitas y el equipo de Forcoder se pondrá en contacto.