Aprendiendo Linux Moderno de Michael Hausenblas
Aprendiendo Linux Moderno de Michael Hausenblas

Si usa Linux en el desarrollo o las operaciones y necesita un enfoque estructurado que lo ayude a profundizar más, este libro (en inglés) es para ti.

El autor Michael Hausenblas también brinda consejos y trucos para mejorar su flujo de trabajo con este sistema operativo de código abierto.

Ya seas desarrollador, arquitecto de software o ingeniero de confiabilidad del sitio, esta guía práctica se enfoca en las formas de usar Linux para sus necesidades diarias, desde el desarrollo hasta las tareas relacionadas con la oficina.

En el camino, obtendrás experiencia práctica con terminales y shells de Linux modernos y aprenderás a administrar sus cargas de trabajo.

Comprenderás cómo ejecutar aplicaciones de Linux mediante el uso de contenedores, systemd, sistemas de archivos modernos y distribuciones inmutables como Flatcar y Bottlerocket.

  • Uss Linux como un entorno de trabajo moderno, en lugar de solo desde una perspectiva administrativa.
  • Aprende componentes críticos como el kernel de Linux, el multiplexor de terminales, shells fáciles de usar y secuencias de comandos de shell portátiles.
  • Hazte con el control de acceso, desde los permisos de archivos hasta las capacidades, y comprenda el papel de los sistemas de archivos como un componente fundamental..
  • Más información sobre la administración de dependencias de aplicaciones y los contenedores.
  • Obtén experiencia práctica con la pila y las herramientas de red de Linux, incluido el DNS.
  • Aplica la observabilidad del sistema operativo moderno para administrar sus cargas de trabajo.
  • Hazte con la comunicación entre procesos, las máquinas virtuales y temas de seguridad seleccionados.

Índice del libro

Prefacio

  • Acerca de ti
  • Cómo usar el libro
  • Convenciones
  • Uso de ejemplos de código
  • Aprendizaje en línea de O’Reilly
  • Cómo contactarnos
  • Expresiones de gratitud
  1. Introducción a Linux
  • ¿Qué son los entornos modernos?
  • La historia de Linux (hasta ahora)
  • ¿Por qué un sistema operativo en absoluto?
  • Distribuciones de Linux
  • Visibilidad de recursos
  • Una vista de diez mil pies de Linux
  • Conclusión
  1. El núcleo de Linux
  • Arquitectura Linux
  • Arquitecturas de CPU
  • Arquitectura x86
  • Arquitectura BRAZO
  • Arquitectura RISC-V
  • Componentes del núcleo
  • Gestión de proceso
  • Gestión de la memoria
  • Redes
  • sistemas de archivos
  • Controladores de dispositivo
  • llamadas al sistema
  • Extensiones del núcleo
  • Módulos
  • Una forma moderna de extender el kernel: eBPF
  • Conclusión
  1. Conchas y secuencias de comandos
  • Lo esencial
  • Terminales
  • conchas
  • Comandos modernos
  • Tareas comunes
  • Conchas amigables con los humanos
  • concha de pescado
  • carcasa Z
  • Otras conchas modernas
  • ¿Qué carcasa debo usar?
  • Multiplexor de terminales
  • pantalla
  • tmux
  • Otros multiplexores
  • ¿Qué multiplexor debo usar?
  • secuencias de comandos
  • Conceptos básicos de secuencias de comandos
  • Escritura de scripts bash portátiles
  • Scripts de Linting y Testing
  • Ejemplo de extremo a extremo: secuencia de comandos de información de usuario de GitHub
  • Conclusión
  1. Control de acceso
  • Lo esencial
  • Recursos y propiedad
  • sandboxing
  • Tipos de control de acceso
  • Usuarios
  • Administrar usuarios localmente
  • Gestión de usuarios centralizada
  • permisos
  • Permisos de archivo
  • Permisos de proceso
  • Gestión avanzada de permisos
  • Capacidades
  • Perfiles seccomp
  • Listas de control de acceso
  • Buenas practicas
  • Conclusión
  1. Sistemas de archivos
  • Lo esencial
  • El sistema de archivos virtual
  • Administrador de volumen lógico
  • Operaciones del sistema de archivos
  • Diseños de sistemas de archivos comunes
  • Pseudosistemas de archivos
  • procfs
  • sistemas
  • desarrollos
  • Archivos regulares
  • Sistemas de archivos comunes
  • Sistemas de archivos en memoria
  • Sistemas de archivos de copia en escritura
  • Conclusión
  1. Aplicaciones, gestión de paquetes y contenedores
  • Lo esencial
  • El proceso de inicio de Linux
  • sistemad
  • Unidades
  • Gestión con systemctl
  • Seguimiento con journalctl
  • Ejemplo: programación de saludo
  • Cadenas de suministro de aplicaciones Linux
  • Paquetes y administradores de paquetes
  • Administrador de paquetes RPM
  • Versión preliminar de Debian
  • Administradores de paquetes específicos del idioma
  • Contenedores
  • Espacios de nombres de Linux
  • grupos c de linux
  • Sistemas de archivos de copia en escritura
  • Estibador
  • Otras herramientas para contenedores
  • Administradores de paquetes modernos
  • Conclusión
  1. Trabajo en red
  • Lo esencial
  • La pila TCP/IP
  • La capa de enlace
  • La capa de Internet
  • La capa de transporte
  • Enchufes
  • DNS
  • Registros DNS
  • Búsquedas de DNS
  • Redes de capa de aplicación
  • La web
  • Cubierta segura
  • Transferencia de archivos
  • Sistema de archivos de red
  • Compartir con Windows
  • Temas de red avanzados
  • quien es
  • protocolo de configuración huésped dinámico
  • Protocolo de tiempo de red
  • Wireshark y tshark
  • Otras herramientas avanzadas
  • Conclusión
  1. Observabilidad
  • Lo esencial
  • Estrategia de observabilidad
  • Terminología
  • Tipos de señal
  • Inicio sesión
  • registro del sistema
  • diarioctl
  • Vigilancia
  • E/S de dispositivos e interfaces de red
  • Monitores de rendimiento integrados
  • Instrumentación
  • Observabilidad avanzada
  • Trazado y perfilado
  • Prometeo y Grafana
  • Conclusión
  1. Temas avanzados
  • Comunicación entre procesos
  • Señales
  • Tuberías con nombre
  • Zócalos de dominio UNIX
  • Maquinas virtuales
  • Máquina virtual basada en kernel
  • Petardo
  • Distribuciones modernas de Linux
  • Red Hat Enterprise Linux CoreOS
  • Contenedor Flatcar Linux
  • Cohete de botella
  • Rancher OS
  • Temas de seguridad seleccionados
  • Kerberos
  • Módulos de autenticación enchufables
  • Otras ofertas modernas y futuras
  • Nix OS
  • Linux en el escritorio
  • Linux en sistemas integrados
  • Linux en la nube IDE
  • Conclusión

A. Recetas útiles

  • Recopilación de información del sistema
  • Trabajar con usuarios y procesos
  • Recopilación de información del archivo
  • Trabajar con archivos y directorios
  • Trabajar con redirección y tuberías
  • Trabajar con hora y fechas
  • Trabajando con Git
  • Rendimiento de sistema

B. Herramientas modernas de Linux

Índice
– Sobre el Autor