Linux es un sistema operativo de código abierto basado en Unix. Es un software que actúa como una capa intermedia entre el hardware de una computadora y las aplicaciones que se ejecutan en ella. Un sistema operativo administra los recursos de la computadora, como el procesador, la memoria, el almacenamiento, y los dispositivos periféricos, permitiendo que otros programas se ejecuten y funcionen correctamente.
Características Clave de Linux
Código Abierto (Open Source): Linux es software de código abierto, lo que significa que su código fuente está disponible para cualquier persona que desee verlo, modificarlo o distribuirlo. Esto ha llevado a una gran comunidad de desarrolladores que contribuyen al desarrollo y mejora continua de Linux.
Multiprocesamiento y Multitarea: Linux puede ejecutar múltiples procesos simultáneamente (multiprocesamiento) y manejar varias tareas al mismo tiempo (multitarea), lo que lo hace eficiente y rápido en el uso de recursos.
Multiplataforma: Linux puede ejecutarse en una amplia variedad de hardware, desde servidores y computadoras de escritorio hasta dispositivos móviles y sistemas embebidos.
Seguridad: Linux es conocido por ser seguro, gracias a su arquitectura basada en permisos y su comunidad activa que detecta y corrige rápidamente vulnerabilidades.
Estabilidad y Confiabilidad: Linux es muy estable y rara vez necesita reiniciarse, lo que lo convierte en una opción popular para servidores y sistemas críticos.
Personalización: Los usuarios pueden personalizar prácticamente cualquier aspecto del sistema, desde la interfaz gráfica hasta el kernel, que es el núcleo del sistema operativo.
Distribuciones de Linux
Linux en sí mismo es solo el kernel (núcleo) del sistema operativo. Para ser utilizable, necesita de otros programas y aplicaciones, como administradores de ventanas, sistemas de archivos, y herramientas de desarrollo. Una distribución de Linux (a menudo llamada "distro") es un paquete que incluye el kernel de Linux, junto con una colección de software y herramientas adicionales.
Algunas de las distribuciones más populares incluyen:
- Ubuntu: Orientada a la facilidad de uso, es una de las distribuciones más populares, especialmente para usuarios nuevos.
- Debian: Conocida por su estabilidad y su fuerte comunidad de desarrollo.
- Fedora: Centrada en la innovación, a menudo incluye las últimas tecnologías.
- CentOS/RHEL: Muy utilizadas en servidores debido a su estabilidad y soporte a largo plazo.
- Arch Linux: Conocida por su simplicidad y su enfoque en la personalización por parte del usuario.
Usos Comunes de Linux
- Servidores: Linux es muy utilizado en servidores web, bases de datos, y otros tipos de servidores, debido a su estabilidad y seguridad.
- Computadoras de Escritorio: Aunque no es tan común como Windows o macOS en computadoras personales, Linux es utilizado por muchos usuarios que valoran la personalización y el software libre.
- Sistemas Embebidos: Linux es la base de muchos sistemas embebidos, como routers, dispositivos IoT, y automóviles.
- Supercomputadoras: La mayoría de las supercomputadoras en el mundo ejecutan Linux debido a su capacidad para manejar grandes cargas de trabajo.
Linux ha crecido hasta convertirse en uno de los sistemas operativos más importantes y ampliamente utilizados en el mundo, especialmente en entornos de servidores y desarrollo de software.
El sistema operativo Linux está compuesto por varias partes fundamentales que trabajan juntas para proporcionar un entorno completo y funcional. A continuación se describen las principales partes del sistema operativo Linux:
1. Kernel
El kernel es el núcleo de Linux y la parte más importante del sistema operativo. Es el componente que interactúa directamente con el hardware de la computadora y gestiona los recursos del sistema. Sus funciones principales incluyen:
- Gestión de Procesos: Administra la creación, ejecución y terminación de procesos.
- Gestión de Memoria: Controla la asignación y liberación de memoria para diferentes procesos.
- Gestión de Dispositivos: Controla el acceso a dispositivos de hardware como discos duros, impresoras, y otros periféricos.
- Sistema de Archivos: Maneja cómo los datos se almacenan, recuperan y organizan en los sistemas de almacenamiento.
2. Shell
El shell es una interfaz de usuario que permite a los usuarios interactuar con el sistema operativo mediante comandos. Es un intérprete de comandos que convierte las instrucciones del usuario en acciones que el kernel puede ejecutar. Existen diferentes tipos de shells en Linux, como:
- Bash (Bourne Again Shell): Es el shell más común y por defecto en muchas distribuciones de Linux.
- Zsh: Ofrece características avanzadas y una mayor capacidad de personalización.
- Sh (Bourne Shell): Un shell más simple, precursor de Bash.
3. Sistema de Archivos
El sistema de archivos es la estructura lógica que utiliza Linux para organizar y gestionar los archivos y directorios en los discos. Los sistemas de archivos más comunes en Linux incluyen:
- ext4 (Fourth Extended File System): Es el sistema de archivos predeterminado en muchas distribuciones de Linux.
- XFS: Conocido por su alta escalabilidad y rendimiento, especialmente en sistemas de alta demanda.
- Btrfs (B-tree File System): Ofrece características avanzadas como la captura de instantáneas (snapshots) y la verificación de datos.
4. Espacio de Usuario (User Space)
El espacio de usuario es la parte del sistema operativo donde se ejecutan las aplicaciones y procesos que no requieren acceso directo al hardware. Incluye:
- Bibliotecas (Libraries): Conjunto de funciones que las aplicaciones pueden utilizar para realizar tareas comunes sin interactuar directamente con el kernel. Un ejemplo común es la GNU C Library (glibc).
- Servicios de Sistema (System Services): Son procesos que se ejecutan en segundo plano para proporcionar servicios esenciales, como la administración de red, administración de usuarios, entre otros. En Linux, estos servicios se gestionan mediante "daemons" (por ejemplo,
cron
para tareas programadas).
5. Interfaz de Usuario
Linux ofrece diferentes tipos de interfaces de usuario:
- Interfaz de Línea de Comandos (CLI): Accesible a través de un shell, permite a los usuarios interactuar con el sistema operativo mediante comandos de texto.
- Entorno de Escritorio (GUI): Una interfaz gráfica que facilita la interacción con el sistema operativo a través de ventanas, iconos y menús. Algunos de los entornos de escritorio más populares en Linux son:
- GNOME: Un entorno de escritorio simple y moderno.
- KDE Plasma: Conocido por su alto nivel de personalización y características avanzadas.
- XFCE: Ligero y eficiente, ideal para sistemas con recursos limitados.
6. Utilidades y Aplicaciones
El sistema operativo Linux incluye una serie de utilidades y aplicaciones que permiten a los usuarios realizar diversas tareas. Estas incluyen:
- Utilidades de Sistema: Herramientas básicas como
ls
,cp
,mv
,rm
, que permiten la gestión de archivos y directorios. - Aplicaciones de Usuario: Programas instalados por el usuario para tareas específicas, como navegadores web, editores de texto, reproductores multimedia, etc.
7. Administrador de Paquetes
El administrador de paquetes es una herramienta que permite instalar, actualizar, y desinstalar software en Linux. Cada distribución de Linux tiene su propio administrador de paquetes, como:
- APT (Advanced Package Tool): Utilizado en distribuciones basadas en Debian como Ubuntu.
- YUM/DNF: Utilizado en distribuciones basadas en Red Hat como Fedora y CentOS.
- Pacman: Utilizado en Arch Linux y sus derivados.
8. Daemons
Los daemons son programas que se ejecutan en segundo plano para realizar tareas específicas sin intervención directa del usuario. Algunos ejemplos comunes son:
httpd
(Apache): Servidor web que maneja solicitudes HTTP.sshd
: Gestiona las conexiones SSH, permitiendo el acceso remoto al sistema.cron
: Administra la ejecución de tareas programadas.
Estas partes trabajan juntas para crear un sistema operativo robusto, flexible y personalizable que puede ser utilizado en una amplia gama de dispositivos y aplicaciones, desde servidores hasta computadoras de escritorio, sistemas embebidos y más.
¿Qué es Unix?
Unix es un sistema operativo de tiempo compartido, desarrollado en los años 60 y 70 por AT&T Bell Labs, principalmente por Ken Thompson, Dennis Ritchie, y otros. Fue uno de los primeros sistemas operativos escritos en lenguaje C, lo que permitió su portabilidad a diferentes tipos de hardware. Unix se diseñó para ser un sistema operativo multitarea y multiusuario, capaz de ser utilizado en diferentes entornos, desde estaciones de trabajo hasta servidores.
Características Clave de Unix
- Multitarea y Multiusuario: Unix puede manejar múltiples tareas a la vez y permite que varios usuarios trabajen simultáneamente en el mismo sistema.
- Portabilidad: Debido a que Unix fue escrito en C, es más fácil de portar a diferentes plataformas de hardware.
- Simplicidad y Modularidad: Unix se diseñó con la filosofía de que cada programa haga una cosa, pero lo haga bien. Los programas se pueden combinar para realizar tareas más complejas.
- Sistema de Archivos Jerárquico: Unix organiza los archivos en una estructura de directorios jerárquica, donde todo, incluidos los dispositivos, se representa como un archivo.
¿Qué es Linux?
Linux es un sistema operativo de código abierto basado en Unix. Fue creado por Linus Torvalds en 1991 como un proyecto personal, pero rápidamente se convirtió en un proyecto colaborativo global. Aunque comparte muchas características con Unix, Linux no es una copia directa de Unix, sino que es un clon desarrollado independientemente que se ajusta a los estándares POSIX (Portable Operating System Interface).
Características Clave de Linux
- Código Abierto: Linux es software libre y de código abierto, lo que permite a cualquiera ver, modificar, y distribuir su código fuente.
- Variedad de Distribuciones: Linux está disponible en muchas distribuciones (distros), cada una adaptada a diferentes necesidades, como Ubuntu, Debian, Fedora, Arch Linux, entre otras.
- Seguridad: Al igual que Unix, Linux tiene una estructura de permisos sólida, lo que lo hace seguro.
- Escalabilidad: Linux puede ejecutarse en una variedad de dispositivos, desde supercomputadoras hasta teléfonos móviles y dispositivos embebidos.
Función de Unix y Linux
Función de Unix:
- Servidores y Computadoras Mainframe: Unix es ampliamente utilizado en entornos empresariales para servidores, debido a su estabilidad y capacidad de manejar múltiples usuarios simultáneamente.
- Estaciones de Trabajo Científicas y de Ingeniería: Unix es popular en entornos científicos y de ingeniería, donde la estabilidad y la capacidad de ejecutar múltiples tareas de manera eficiente son cruciales.
- Desarrollo de Software: Unix ha sido una plataforma de referencia para el desarrollo de software, especialmente en entornos académicos y de investigación.
Función de Linux:
- Servidores Web y de Bases de Datos: Linux es la elección dominante para servidores web, gracias a su estabilidad, seguridad, y bajo costo.
- Computadoras Personales: Aunque no es tan común como Windows en computadoras de escritorio, Linux es utilizado por muchos usuarios que valoran la personalización y la libertad del software.
- Dispositivos Embebidos y IoT: Linux es ampliamente utilizado en dispositivos embebidos debido a su flexibilidad y escalabilidad.
- Supercomputadoras: La mayoría de las supercomputadoras del mundo utilizan Linux debido a su capacidad para manejar tareas de computación intensiva.
- Desarrollo de Software y DevOps: Linux es el sistema operativo preferido en entornos de desarrollo de software, especialmente para desarrolladores que trabajan con código abierto, servidores, o sistemas de alto rendimiento.
Relación entre Unix y Linux
Linux se inspiró en Unix y fue diseñado para ser compatible con sus principios y estándares. Sin embargo, mientras que Unix es más antiguo y ha sido desarrollado por varias empresas (con licencias propietarias o semi-abiertas), Linux fue creado desde cero como un proyecto independiente, y se distribuye bajo la Licencia Pública General de GNU (GPL), lo que garantiza que siga siendo libre y de código abierto.
En resumen, Unix es un sistema operativo pionero que ha sentado las bases para muchos otros sistemas, incluidos Linux. Linux, por su parte, ha tomado esos principios y los ha llevado a un nuevo nivel de accesibilidad y flexibilidad, siendo utilizado en una amplia gama de aplicaciones en todo el mundo.
Muchos comandos básicos de Unix son similares a los de Linux, dado que Linux está basado en Unix y ambos comparten muchas herramientas y filosofías de diseño. Aquí te presento una lista de comandos básicos de Unix:
1. Navegación por el sistema de archivos
pwd
: Muestra la ruta del directorio actual.ls
: Lista los archivos y directorios en el directorio actual.ls -l
: Lista en formato largo, mostrando permisos, propietario, tamaño, etc.ls -a
: Muestra todos los archivos, incluidos los ocultos.
cd [directorio]
: Cambia al directorio especificado.cd ..
: Sube un nivel en la jerarquía de directorios.cd ~
: Cambia al directorio home del usuario.
2. Manipulación de archivos y directorios
touch [archivo]
: Crea un archivo vacío o actualiza la fecha de modificación de un archivo existente.mkdir [directorio]
: Crea un nuevo directorio.cp [origen] [destino]
: Copia archivos o directorios.cp -r [directorio_origen] [directorio_destino]
: Copia un directorio y su contenido recursivamente.
mv [origen] [destino]
: Mueve o renombra archivos o directorios.rm [archivo]
: Elimina un archivo.rm -r [directorio]
: Elimina un directorio y su contenido recursivamente.
3. Visualización y edición de archivos
cat [archivo]
: Muestra el contenido de un archivo.more [archivo]
: Muestra el contenido de un archivo página por página.head [archivo]
: Muestra las primeras 10 líneas de un archivo.head -n [número] [archivo]
: Muestra las primerasn
líneas.
tail [archivo]
: Muestra las últimas 10 líneas de un archivo.tail -f [archivo]
: Muestra las últimas líneas de un archivo en tiempo real, útil para seguir logs.
vi [archivo]
: Abre el editor de textovi
para editar el archivo. (vi
es un editor de texto tradicional en Unix).
4. Gestión de procesos
ps
: Muestra una lista de procesos en ejecución.ps -ef
: Muestra todos los procesos en el sistema.
top
: Muestra los procesos en ejecución en tiempo real, ordenados por uso de CPU.kill [PID]
: Termina un proceso, donde[PID]
es el ID del proceso.kill -9 [PID]
: Fuerza la terminación de un proceso.
5. Permisos de archivos
chmod [permisos] [archivo]
: Cambia los permisos de un archivo o directorio.- Ejemplo:
chmod 755 [archivo]
otorga permisos de lectura y ejecución a todos, y permisos de escritura solo al propietario.
- Ejemplo:
chown [usuario]:[grupo] [archivo]
: Cambia el propietario y el grupo de un archivo o directorio.
6. Compresión y descompresión
tar -cvf [archivo.tar] [directorio]
: Crea un archivo tar (sin comprimir).tar -xvf [archivo.tar]
: Extrae un archivo tar.tar -czvf [archivo.tar.gz] [directorio]
: Crea un archivo tar comprimido con gzip.tar -xzvf [archivo.tar.gz]
: Extrae un archivo tar comprimido con gzip.compress [archivo]
: Comprime un archivo utilizando el formato.Z
.uncompress [archivo.Z]
: Descomprime un archivo.Z
.
7. Comandos de red
ping [dirección]
: Envía paquetes ICMP a una dirección para verificar la conectividad.ifconfig
: Muestra la configuración de la red (similar aip addr
en Linux).ftp [dirección]
: Inicia una sesión de FTP con un servidor especificado.telnet [dirección]
: Conecta a un servidor remoto a través del protocolo Telnet.
8. Utilidades del sistema
df -h
: Muestra el uso de espacio en disco en un formato legible.du -sh [directorio]
: Muestra el tamaño de un directorio.free
: Muestra el uso de memoria RAM.uname -a
: Muestra información sobre el sistema operativo.date
: Muestra o establece la fecha y hora del sistema.
9. Búsqueda y filtrado
grep [patrón] [archivo]
: Busca un patrón de texto en un archivo.find [directorio] -name [nombre_archivo]
: Busca archivos y directorios por nombre.awk '{print $n}' [archivo]
: Procesa y extrae datos de un archivo.sed 's/patrón/reemplazo/g' [archivo]
: Reemplaza texto en un archivo utilizando expresiones regulares.
10. Redirección y tuberías
>
: Redirige la salida de un comando a un archivo, sobrescribiendo el archivo.- Ejemplo:
ls > archivo.txt
- Ejemplo:
>>
: Redirige la salida de un comando a un archivo, añadiendo la salida al final del archivo.- Ejemplo:
ls >> archivo.txt
- Ejemplo:
|
: Pasa la salida de un comando como entrada de otro.- Ejemplo:
ps aux | grep root
- Ejemplo:
Estos comandos son fundamentales para interactuar con un sistema Unix, y aunque puede haber variaciones menores entre diferentes versiones de Unix, la mayoría de ellos funcionará en cualquier entorno Unix estándar.
Aquí tienes una lista de algunos comandos básicos de Linux:
1. Navegación por el sistema de archivos
pwd
: Muestra la ruta del directorio actual.ls
: Lista los archivos y directorios en el directorio actual.ls -l
: Lista en formato largo, mostrando permisos, propietario, tamaño, etc.ls -a
: Muestra todos los archivos, incluidos los ocultos (los que empiezan con.
).
cd [directorio]
: Cambia al directorio especificado.cd ..
: Sube un nivel en la jerarquía de directorios.cd ~
: Cambia al directorio home del usuario.
2. Manipulación de archivos y directorios
touch [archivo]
: Crea un archivo vacío o actualiza la fecha de modificación de un archivo existente.mkdir [directorio]
: Crea un nuevo directorio.cp [origen] [destino]
: Copia archivos o directorios.cp -r [directorio_origen] [directorio_destino]
: Copia un directorio y su contenido recursivamente.
mv [origen] [destino]
: Mueve o renombra archivos o directorios.rm [archivo]
: Elimina un archivo.rm -r [directorio]
: Elimina un directorio y su contenido recursivamente.
3. Visualización y edición de archivos
cat [archivo]
: Muestra el contenido de un archivo.less [archivo]
: Muestra el contenido de un archivo página por página.head [archivo]
: Muestra las primeras 10 líneas de un archivo.head -n [número] [archivo]
: Muestra las primerasn
líneas.
tail [archivo]
: Muestra las últimas 10 líneas de un archivo.tail -f [archivo]
: Muestra las últimas líneas de un archivo en tiempo real, útil para seguir logs.
nano [archivo]
: Abre el editor de texto Nano para editar el archivo.
4. Gestión de procesos
ps
: Muestra una lista de procesos en ejecución.ps aux
: Muestra todos los procesos en el sistema.
top
: Muestra los procesos en ejecución en tiempo real, ordenados por uso de CPU.kill [PID]
: Termina un proceso, donde[PID]
es el ID del proceso.kill -9 [PID]
: Fuerza la terminación de un proceso.
5. Permisos de archivos
chmod [permisos] [archivo]
: Cambia los permisos de un archivo o directorio.- Ejemplo:
chmod 755 [archivo]
otorga permisos de lectura y ejecución a todos, y permisos de escritura solo al propietario.
- Ejemplo:
chown [usuario]:[grupo] [archivo]
: Cambia el propietario y el grupo de un archivo o directorio.
6. Compresión y descompresión
tar -cvf [archivo.tar] [directorio]
: Crea un archivo tar (sin comprimir).tar -xvf [archivo.tar]
: Extrae un archivo tar.tar -czvf [archivo.tar.gz] [directorio]
: Crea un archivo tar comprimido con gzip.tar -xzvf [archivo.tar.gz]
: Extrae un archivo tar comprimido con gzip.
7. Comandos de red
ping [dirección]
: Envía paquetes ICMP a una dirección para verificar conectividad.ifconfig
: Muestra la configuración de la red (obsoleto en sistemas modernos, reemplazado porip
).ip addr
: Muestra la configuración de las interfaces de red.wget [URL]
: Descarga un archivo desde una URL.
8. Utilidades del sistema
df -h
: Muestra el uso de espacio en disco en un formato legible.du -sh [directorio]
: Muestra el tamaño de un directorio.free -h
: Muestra el uso de memoria RAM en un formato legible.uname -a
: Muestra información sobre el sistema operativo.
lista detallada de los comandos de Linux y Unix que se utilizan para monitorear y obtener información sobre el estado, uso y procesos relacionados con la memoria, disco y procesador (núcleo).
Comandos para el Procesador (CPU)
1. top
- Descripción: Muestra una vista en tiempo real de los procesos que están consumiendo recursos del sistema, incluyendo uso de CPU, memoria y tiempo de ejecución.
- Uso:top
- Opciones comunes:
-d
: Ajusta el intervalo de actualización.-u
: Filtra los procesos por un usuario específico.
2. htop
- Descripción: Una versión mejorada de
top
con una interfaz más amigable y colorida. Muestra la carga del CPU, memoria, procesos, y permite una fácil navegación. - Uso:htop
- Nota: Es posible que necesites instalarlo:
sudo apt install htop
.
3. mpstat
- Descripción: Muestra estadísticas de uso de CPU por procesador (núcleo).
- Uso:mpstat
- Opciones comunes:
-P ALL
: Muestra estadísticas para todos los núcleos.
- Ejemplo de uso:mpstat -P ALL 1
4. iostat
- Descripción: Muestra estadísticas de uso del CPU y del disco.
- Uso:iostat
- Opciones comunes:
-c
: Muestra solo estadísticas del CPU.-d
: Muestra estadísticas de dispositivos (discos).
- Ejemplo de uso:iostat -c 1
5. lscpu
- Descripción: Muestra información detallada sobre la arquitectura de la CPU.
- Uso:lscpu
6. sar
- Descripción: Recoge, reporta y guarda información sobre el uso de recursos del sistema, incluyendo CPU, memoria y dispositivos.
- Uso:sar -u 1
- Opciones comunes:
-u
: Muestra el uso del CPU.-r
: Muestra estadísticas de memoria.
- Ejemplo de uso:sar -u 1 5
Comandos para la Memoria
1. free
- Descripción: Muestra la cantidad de memoria libre y usada en el sistema.
- Uso:free
- Opciones comunes:
-h
: Muestra la memoria en un formato legible por humanos (KB, MB, GB).-m
: Muestra la memoria en MB.
- Ejemplo de uso:free -h
2. vmstat
- Descripción: Muestra estadísticas sobre procesos, memoria, paginación, bloqueos de E/S, interrupciones, CPU, y más.
- Uso:
vmstat
- Opciones comunes:
-s
: Muestra un resumen de la memoria.-d
: Muestra estadísticas de disco.
- Ejemplo de uso:vmstat 1 5
3. /proc/meminfo
- Descripción: Archivo especial que contiene información detallada sobre el uso de la memoria en el sistema.
- Uso:cat /proc/meminfo
4. ps
- Descripción: Muestra una instantánea de los procesos actuales, junto con la información sobre el uso de la memoria.
- Uso:ps aux
- Opciones comunes:
-u
: Muestra procesos de un usuario específico.
- Ejemplo de uso:ps aux --sort=-%mem | head
5. smem
- Descripción: Proporciona un informe de uso de memoria, incluyendo la memoria física, virtual y compartida.
- Uso:smem
- Opciones comunes:
-r
: Ordena por uso de memoria.
- Ejemplo de uso:smem -r -k
6. watch
- Descripción: Ejecución de un comando periódicamente mostrando el resultado de forma actualizada.
- Uso:watch free -h
Comandos para el Disco
1. df
- Descripción: Muestra el uso de espacio en disco por sistema de archivos.
- Uso:df
- Opciones comunes:
-h
: Muestra el uso de disco en un formato legible por humanos.-T
: Muestra el tipo de sistema de archivos.
- Ejemplo de uso:df -hT
2. du
- Descripción: Muestra el uso de espacio en disco de archivos y directorios.
- Uso:du
- Opciones comunes:
-h
: Muestra el tamaño de archivos en un formato legible por humanos.-s
: Muestra el total del uso de espacio en disco.
- Ejemplo de uso:du -sh /ruta/al/directorio
3. iotop
- Descripción: Muestra el uso de I/O del disco en tiempo real por proceso.
- Uso:sudo iotop
- Opciones comunes:
-o
: Muestra solo los procesos que están usando I/O activamente.
4. iostat
- Descripción: Muestra estadísticas de E/S de disco, incluyendo el tiempo de CPU y el uso del dispositivo.
- Uso:iostat
- Opciones comunes:
-x
: Muestra estadísticas detalladas por dispositivo.
- Ejemplo de uso:iostat -x 1
5. dstat
- Descripción: Combina muchas estadísticas del sistema en una sola vista, como CPU, memoria, disco, red, y más.
- Uso:dstat
- Opciones comunes:
--disk
: Muestra solo estadísticas del disco.
- Ejemplo de uso:dstat --disk
6. lsblk
- Descripción: Muestra información sobre los dispositivos de bloque (discos y particiones).
- Uso:lsblk
- Opciones comunes:
-f
: Muestra el tipo de sistema de archivos.
- Ejemplo de uso:lsblk -f
7. blkid
- Descripción: Muestra información sobre los identificadores de dispositivos de bloque.
- Uso:sudo blkid
8. mount
- Descripción: Muestra todos los sistemas de archivos montados.
- Uso:mount
9. hdparm
- Descripción: Muestra y configura parámetros de hardware de discos duros.
- Uso:sudo hdparm -I /dev/sda
10. smartctl
Descripción: Monitorea el estado de salud de los discos duros usando S.M.A.R.T.
Uso:
sudo smartctl -a /dev/sda
Nota: Este comando forma parte del paquete `smartmontools`.
Comandos para el Estado General del Sistema
1. uptime
- Descripción: Muestra cuánto tiempo ha estado encendido el sistema, junto con la carga promedio del sistema.
- Uso:
uptime
2. dmesg
- Descripción: Muestra mensajes del kernel, incluyendo información sobre el hardware, arranques, y más.
- Uso:dmesg
- Opciones comunes:
| grep keyword
: Filtra por palabras clave específicas.
3. uname
- Descripción: Muestra información sobre el sistema operativo.
- Uso:uname -a
4. sysctl
- Descripción: Muestra y modifica los parámetros del kernel en tiempo de ejecución.
- Uso:sysctl -a
5. watch
- Descripción: Ejecuta un comando periódicamente y muestra el resultado actualizado.
- Uso:watch -n 1 df -h
6. lsof
- Descripción: Lista los archivos abiertos y los procesos que los usan.
- Uso:lsof
- Opciones comunes:
-u username
: Filtra por usuario.-i
: Muestra solo archivos de red.
7. netstat
- Descripción: Muestra información sobre conexiones de red, tablas de enrutamiento, interfaces de red, etc.
- Uso:netstat -tuln
8. ss
- Descripción: Similar a
netstat
, pero más rápido y con más opciones. - Uso:ss -tuln
Estos comandos te permitirán obtener una visión integral del estado del sistema en términos de CPU, memoria, disco y otros recursos. Según las necesidades específicas, algunos comandos y opciones serán más útiles que otros.