Sistema operativo GNU Linux: Un enfoque práctico
()
Información de este libro electrónico
El libro logra introducir teóricamente al usuario en el sistema operativo GNU Linux, y movitarlo para enfrentar la práctica. Además, mediante ejercicios, el lector-estudiante, podrá evaluar su capacidad de asimilación de los conocimientos técnicos, explotar su creatividad, y plantearse nuevas preguntas.
Relacionado con Sistema operativo GNU Linux
Libros electrónicos relacionados
Fundamentos de Programación y Bases de Datos Calificación: 0 de 5 estrellas0 calificacionesLinux Essentials: una guía para principiantes del sistema operativo Linux Calificación: 5 de 5 estrellas5/5DISEÑO Y GESTIÓN DE INTRANETS Calificación: 0 de 5 estrellas0 calificacionesAdministración de Sistemas Operativos. Un enfoque práctico. 2ª Edición: SISTEMAS OPERATIVOS Calificación: 5 de 5 estrellas5/5Android: Programación de dispositivos móviles a través de ejemplos Calificación: 0 de 5 estrellas0 calificacionesProgramación shell. Aprende a programar con más de 200 ejercicios resueltos: PROGRAMACIÓN INFORMÁTICA/DESARROLLO DE SOFTWARE Calificación: 5 de 5 estrellas5/5Aprende a Programar ASP .NET y C# - Segunda Edición Calificación: 0 de 5 estrellas0 calificacionesAprende a Programar con Ruby on Rails Calificación: 0 de 5 estrellas0 calificacionesAdministración de sistemas operativos Calificación: 4 de 5 estrellas4/5Conexión SQL SERVER & C# (Manual para principiantes) Calificación: 1 de 5 estrellas1/5Programación en Go Calificación: 5 de 5 estrellas5/5Aprende a Programar en ASP .NET y C# Calificación: 0 de 5 estrellas0 calificacionesApps HTML5 para móviles: Desarrollo de aplicaciones para smartphones y tablets basado en tecnología web Calificación: 0 de 5 estrellas0 calificacionesProgramación y Lógica Proposicional Calificación: 4 de 5 estrellas4/5Programación orientada a objetos en Java Calificación: 4 de 5 estrellas4/5Ingeniería y Arquitectura del Software Calificación: 0 de 5 estrellas0 calificacionesHackeado: Guía Definitiva De Kali Linux Y Hacking Inalámbrico Con Herramientas De Seguridad Y Pruebas Calificación: 5 de 5 estrellas5/5Aprenda a Programar con Lazarus: PROGRAMACIÓN INFORMÁTICA/DESARROLLO DE SOFTWARE Calificación: 5 de 5 estrellas5/5Programación en C++ Calificación: 2 de 5 estrellas2/5El Libro Práctico Del Programador Ágil Calificación: 5 de 5 estrellas5/5Iniciar con Lazarus y Free Pascal Calificación: 5 de 5 estrellas5/5Aprende programación de computadoras Calificación: 5 de 5 estrellas5/5Redes de Ordenadores - Tecnologias: Redes de Ordenadores - Fundamentos, #3 Calificación: 5 de 5 estrellas5/5Curso de programación Bash Shell Calificación: 0 de 5 estrellas0 calificacionesAprende a Programar en C++ Calificación: 5 de 5 estrellas5/5Curso de Programación con Java - 2ª Edición Calificación: 5 de 5 estrellas5/5Arquitectura de computadoras Calificación: 0 de 5 estrellas0 calificacionesPHP 8: Curso práctico de formación Calificación: 0 de 5 estrellas0 calificacionesUnix Programacion Avanzada, 3ª edicion.: PROGRAMACIÓN INFORMÁTICA/DESARROLLO DE SOFTWARE Calificación: 4 de 5 estrellas4/5Hacking ético de redes y comunicaciones: Curso práctico Calificación: 1 de 5 estrellas1/5
Tecnologías de la información para usted
Descubre los secretos de SAP Ventas y distribucion Calificación: 0 de 5 estrellas0 calificacionesLo esencial del hackeo Calificación: 5 de 5 estrellas5/5Aprende Python desde cero hasta avanzado: El libro completo de la programacion python para principiantes - Con ejercicios prácticos y contenido bonus Calificación: 0 de 5 estrellas0 calificacionesCurso de Consultoría TIC. Gestión, Software ERP y CRM Calificación: 5 de 5 estrellas5/5AutoCAD aplicado a topografía y vías Calificación: 0 de 5 estrellas0 calificacionesAdicción a los Smartphones, Tabletas o Computadoras: Cómo Evitar que los Móviles y Otros Aparatos Eléctronicos tengan Dominio Absoluto sobre Nuestras Vidas Calificación: 0 de 5 estrellas0 calificacionesBig Data para Ejecutivos y Profesionales: Big Data, #1 Calificación: 0 de 5 estrellas0 calificacionesUn Enfoque de la Arquitectura Empresarial Moderna Potenciada Calificación: 0 de 5 estrellas0 calificacionesCreación de componentes en JavaScript Curso practico Calificación: 0 de 5 estrellas0 calificacionesCiberdelitos: Análisis doctrinario y jurisprudencial Calificación: 0 de 5 estrellas0 calificacionesChatGPT Ingresos Secundarios del 2024 Desbloquea la mina de oro digital y haz que la Inteligencia Artificial trabaje para ti rápidamente. 85 ideas para aumentar tus ingresos pasivos. Calificación: 0 de 5 estrellas0 calificacionesTeoría de la información con ejercicios de aplicación Calificación: 0 de 5 estrellas0 calificacionesEl Compañero de Bolsillo de la Guía del PMBOK® Calificación: 0 de 5 estrellas0 calificacionesLa gestión de proyectos en el Perú: Análisis de madurez 2015-2016 Calificación: 0 de 5 estrellas0 calificacionesAnálisis forense informático Calificación: 0 de 5 estrellas0 calificacionesDescifrando la Mecánica Cuántica Calificación: 0 de 5 estrellas0 calificacionesTecnologías disruptivas Calificación: 0 de 5 estrellas0 calificacionesUso De La Tecnología En El Aula Calificación: 1 de 5 estrellas1/5La última selfie: Retos, riesgos y dilemas implícitos en el desarrollo de algunas nuevas tecnologías Calificación: 0 de 5 estrellas0 calificacionesC++ Soportado con Qt Calificación: 3 de 5 estrellas3/5Mundo 4.0 - El futuro de la sociedad tecnológica Calificación: 0 de 5 estrellas0 calificacionesTrabajar con sonido digital en un PC: Automatizar una emisora de radio Calificación: 0 de 5 estrellas0 calificacionesLibro Científico Investigaciones En Tecnologías De Información Informática Y Computación: Volumen Ii Calificación: 5 de 5 estrellas5/5Tratamiento informático de la información (GRADO MEDIO) Calificación: 1 de 5 estrellas1/5¡Socorro, quiero ser digital!: El libro aborda las nuevas tecnologías conocidas en conjunto como Web 2.0 y que sobre todo se refieren a blogs y a redes sociales. Calificación: 0 de 5 estrellas0 calificacionesManual de informática aplicada a la traducción Calificación: 0 de 5 estrellas0 calificacionesVida.exe: Desafíos y aventuras de la bioinformática Calificación: 0 de 5 estrellas0 calificacionesInfografía y visualización para no diseñadores Calificación: 0 de 5 estrellas0 calificacionesTeoría de la información y complejidad: La tercera revolución científica Calificación: 0 de 5 estrellas0 calificaciones
Comentarios para Sistema operativo GNU Linux
0 clasificaciones0 comentarios
Vista previa del libro
Sistema operativo GNU Linux - ManuelGuillermo Flórez
Portada
Sistema Operativo GNU/Linux
Un enfoque práctico
Manuel Guillermo Flórez Becerra
Universidad Industrial de Santander
Facultad de Ingenierías Fisicomecánicas
Escuela de Ingeniería de Sistemas e Informática
Bucaramanga, 2021
Página legal
Sistema Operativo GNU/Linux
Un enfoque práctico
Manuel Guillermo Flórez Becerra*
*Profesor, Universidad Industrial de Santander
© Universidad Industrial de Santander
Reservados todos los derechos
Primera edición: noviembre de 2021
ISBN: 978-958-8956-34-3
ISBN ePub: 978-958-5188-11-2
Diseño, diagramación e impresión:
División de Publicaciones UIS
Carrera 27 calle 9, ciudad universitaria
Bucaramanga, Colombia
Tel.: (7) 6344000, ext. 1602
Prohibida la reproducción parcial o total de esta obra,
por cualquier medio, sin autorización escrita de la UIS.
Impreso en Colombia
Dedicatoria
A mi esposa Jasmín, a mis hijos Manuel David y María Daniela
Agradecimientos
A la Universidad Industrial de Santander y a la Escuela de Ingeniería de Sistemas e Informática.
A los estudiantes del Grupo de Investigación CONUSS, Computación en la Nube Seguridad Servidores y Servicios, de la UIS.
A mis alumnos y exalumnos con los cuales he podido enseñar y aprender.
Al software libre y a todos los que comparten sus conocimientos a través de Internet.
Prólogo
Las ciencias e ingenierías de la computación y la información, lo que conocemos en Colombia como ciencias e ingeniería de sistemas, así como todas las áreas afines a lo computacional e informático, son un vasto conjunto de áreas y subáreas que entrelazan conocimientos científicos, que requieren unas fuertes competencias técnicas; capacidades cognitivas y creativas. Es por esta razón que el conocimiento de base cambia constantemente y nos exige un autoaprendizaje continuo.
Teniendo en cuenta la dinámica del cambio en el contexto y en el conocimiento, un libro de guía en computación, para apoyar procesos de aprendizaje, tanto de estudiantes de ingeniería como de ingenieros profesionales, que se preparan de manera más específica, es, sin duda, un gran reto, que solo puede asumirse desde la experiencia. Entonces, el autor de un libro con ese objetivo debe ser un instructor calificado o un profesor dedicado que pueda asumir exitosamente ese gran desafío.
El libro Sistema operativo GNU/Linux, un enfoque práctico, del profesor Manuel Guillermo Flórez Becerra, es una herramienta que ha sido construida a partir de una amplia experiencia. El profesor Flórez ha trabajado durante años con estudiantes del programa de Ingeniería de Sistemas e informática de la Universidad Industrial de Santander, tanto en los cursos regulares que él imparte como en el desarrollo de proyectos. De modo que no sorprende encontrar en su libro una excelente contribución al estudio de estas áreas, que tiene en cuenta la dinámica tecnológica, los avances en el conocimiento y la posibilidad de autoaprendizaje, tan necesaria en la actualidad.
En los catorce capítulos que contiene el libro no solo se logra introducir teóricamente al lector-estudiante en el sistema operativo GNU Linux, sino también motivarlo a la práctica, para enfrentarlo posteriormente a diferentes ejercicios. Mediante estos, el lector-estudiante podrá evaluar su capacidad de asimilación de los conocimientos técnicos, así como explotar su creatividad y plantearse nuevas preguntas. El enfoque práctico de este manual, que lo distingue de tantos otros, le permite constituirse también en material bibliográfico de apoyo para instructores. En ese sentido, el libro puede consultarse de manera salteada, por capítulos independientes, o puede ser un punto de partida para construir nuevos textos más avanzados, a fin de complementar los procesos de enseñanza-aprendizaje dirigidos a desarrollar conocimientos técnico-profesionales.
Finalmente, solo me queda agregar que el libro Sistema operativo GNU/Linux, un enfoque práctico es una notable contribución del profesor Flórez Becerra al fortalecimiento del conocimiento técnico necesario para abordar temas computacionales e informáticos. Todo el saber que ha adquirido en sus años de trabajo y en el desarrollo de proyectos específicos se comparte en este manual. Para mí, como exalumno de su curso de Sistemas Operativos, durante mis años de formación en pregrado, y hoy como colega, es un honor ser invitado por el profesor Flórez para escribir este prólogo.
Carlos Jaime Barrios Hernández, Ph.D.
Director de la Unidad de Supercomputación y Calculo Científico
Profesor asistente de la Escuela de Ingeniería de Sistemas e Informática
Universidad Industrial de Santander
Prefacio
El sistema operativo (SO) es el principal componente del software de un computador y se encarga de administrar los recursos del hardware de la máquina. Está compuesto por el núcleo (conocido como kernel en inglés) del sistema operativo, que contiene los módulos que administran el procesador, la memoria, los dispositivos de entrada/salida, el sistema de archivos y el software de red. Linux se originó del sistema operativo MINIX (versión de UNIX para PC), y fue creado por el finlandés Linus TORVALDS en 1991, con licencia GPL. Linux fue seleccionado como el kernel del proyecto GNU, liderado por Richard STALLMAN, y aunque su nombre es GNU/Linux, en la práctica se conoce como Linux.
Han existido diversas versiones del kernel Linux. La primera versión oficial 0.02 se lanzó en octubre de 1991. Otra como la 2.6.28 se lanzó en diciembre de 2008 y la última versión estable 4.10.12 se lanzó en abril de 2017. Esto confirma que es un software que evoluciona constantemente y con gran rapidez, mantenido por una comunidad mundial; entre los principales contribuyentes a este kernel se encuentran Google, Intel, Samsung, Red Hat y otros.
Linux se utiliza principalmente como el sistema operativo de máquinas servidores con gran confiabilidad y rendimiento, pero según la distro (distribución Linux) seleccionada puede servir para portátiles, tabletas, celulares, multimedia, entretenimiento, etc. Con este kernel se han desarrollado varias distribuciones. Entre las principales se encuentran la Debian, RedHat, CentOS, Fedora, Ubuntu, OpenSuse, Arch Linux (Rolling Release), Manjaro, Slackware, etc. Algunas tienen soporte comercial como Fedora (Red Hat) y Ubuntu (Canonical Ltda.); otras como Debian y Gentoo, son mantenidas por la comunidad mundial.
Las distribuciones contienen, además del kernel, el sistema de ventanas, el administrador de ventanas, el entorno gráfico de escritorio (Gnome o KDE), librerías, documentación, un sistema de empaquetamiento propio como DEB para Debian o RPM de Red Hat. La mayoría es software libre y dispone del lenguaje fuente, aunque hay algunas distribuciones que incluyen una parte de software privativo.
Objetivos
El propósito de este libro es presentar un material didáctico que incluya los principales temas del sistema operativo Linux, con énfasis en la parte práctica y pedagógica. Asimismo, se incluyen fundamentos teóricos que faciliten el aprendizaje, los cuales se han organizado en apartados de teoría, objetivos, autoevaluación, práctica y ejercicios; además, se refuerzan las temáticas con una amplia documentación en línea. Es un libro práctico de ayuda rápida para el aprendizaje, uso y administración del sistema operativo Linux.
¿A quiénes está dirigido?
El libro, cuya finalidad es facilitar el aprendizaje del sistema operativo Linux, es apropiado para estudiantes, docentes, administradores de servidores, ingenieros, profesionales y técnicos de la informática. En general, está dirigido a toda la comunidad que utiliza las TIC y que está interesada en aprender Linux
Organización
Este recurso didáctico está compuesto por catorce capítulos, cada uno de los cuales contiene una temática de Linux organizada en cinco partes: introducción y teoría del capitulo, objetivos, autoevaluación, práctica, ejercicios, anexos.
Las prácticas han sido probadas en su correcto funcionamiento con el uso de los últimos kernels sobre una distribución Debian. Las temáticas incluidas son:
I. Editores
Estudio del editor vim, prácticas con las principales funcionalidades, comandos, archivo de configuración, ejercicios, preguntas de evaluación; también se realizan ejemplos y ejercicios con el editor nano.
II. Entornos gráficos
Apartado orientado al entorno gráfico de Gnome, que es el estándar para la interfaz gráfica de los sistemas operativos Linux. Específicamente, se estudia Gnome 3.14, la vista de actividades, menús, ventanas, áreas de trabajo, barra de estado, múltiples entornos y la agilidad del uso del entorno mediante teclas rápidas shortcuts.
III. Máquinas virtuales
La virtualización es uno de los temas ineludibles en el área de la informática y uno de los componentes fundamentales en las arquitecturas de computación en la nube (cloud computing). Se presenta un enfoque teórico de los tipos de virtualización, además se realizan prácticas y ejercicios de instalación y configuración mediante el uso del monitor de máquinas virtuales VirtualBox.
IV. Instalación de Linux
Para su estudio en detalle se requiere de un curso completo, en este libro, el tema se enfoca en la instalación de una distribución Debian. Además, se hace énfasis en la configuración manual de las particiones del disco y en su organización como volúmenes lógicos o LVM (logical volume managment).
V. Comandos
Para los administradores es muy práctico usar comandos desde una terminal de caracteres, ya sea local o remota, por razones de velocidad, seguridad y agilidad para realizar tareas administrativas. Este capítulo se enfoca en la práctica de los principales comandos, tanto para usuarios como para administradores, entre los que se encuentran cd, mkdir, touch, ls, tar, chmod, chown, ps, psw, which, cron, find, adduser, vmstat, etc.
VI. Inicio del sistema y servicios
Aborda los diferentes niveles de ejecución, desde el single
o monousuario hasta el multiusuario y el modo de ejecución por defecto. También trata la estructura, el encendido y apagado de los diferentes servicios en cada nivel e incluye una simulación de la implementación de un servicio.
VII. Gestión e instalación de aplicaciones
Incluye el estudio de repositorios para acceder a las aplicaciones precompiladas y con código fuente, así como las herramientas para la manipulación de la instalación, mantenimiento y eliminación. Se realizan prácticas con las principales herramientas para las distribuciones Debian: apt, dpkg, aptitude. Asimismo, se practica con la instalación de aplicaciones desde el código fuente mediante el uso de la herramienta make.
VIII. Procesos
Los procesos son los programas en ejecución que consumen recursos del computador. Las prácticas usan las herramientas ps y top para administrar y conocer los atributos de un proceso, el porcentaje de RAM que ocupa, el porcentaje de CPU que consume, la carga total del sistema o el grado de ociosidad de la CPU, la eliminación de procesos que ralentizan el sistema, etc.
IX. Compilación de programas, automatización de proyectos
Incluye prácticas de compilación y enlace del código fuente mediante el uso del compilador gcc, así como la construcción de librerías estáticas y librerías dinámicas para organizar el código ejecutable. Igualmente, se estudia la automatización del proceso de compilación y enlace a través de la herramienta make.
X. Compilación del kernel
Se plantean las estrategias para compilar un kernel y el procedimiento que se lleva a cabo para conseguir la fuente del kernel, y se revisa su configuración de acuerdo con las necesidades e implementación.
XI. Shell parte I.
Se presenta la historia del Shell y sus principales características como intérprete de comandos y como lenguaje de programación. Además, se elaboran los primeros scripts con las sentencias básicas del lenguaje y sentencias condicionales, se definen variables globales y locales, las variables del entorno y las variables del Shell. Igualmente, se trata el uso de los diferentes tipos de entrecomillado.
XII. Shell parte II.
Los ejercicios utilizan sentencias iterativas o bucles y los parámetros posicionales. Se elaboran guiones con estructuras cíclicas y manejo de la recursividad.
XIII. Shell parte III
Uso de la estructura Case, arreglos y funciones. También se estudia la herramienta gawk con ejemplos prácticos.
XIV. Llamadas al sistema
Las llamadas al sistema permiten la comunicación del usuario programador con el sistema operacional desde un lenguaje de programación. Se presenta el menú de llamadas, desde el lenguaje C, agrupadas por procesos, tiempo, archivos, entre otros, con su respectivo código fuente.
Capítulos
Los nombres de los capítulos indican al lector de manera intuitiva sobre su contenido; sin embargo, algunos temas tienen un grado de extensión y profundización mayor que otros, y por su importancia y su relativa complejidad requieren de mayor tiempo de estudio y práctica. En temas como máquinas virtuales, instalación de Linux, instalación de aplicaciones, Shell y, en general, en todos los capítulos, el texto está reforzado con las principales referencias a los sitios web encargados de su publicación y mantenimiento. Además, para el uso de comandos se dan las instrucciones precisas de consulta en el manual de referencia incorporado en el sistema. Cada tema es tan amplio que podría convertirse en un nuevo texto, por lo cual el enfoque del libro consiste en extraer y sintetizar de este mar de conocimientos los aspectos fundamentales que faciliten el aprendizaje, de tal manera que, al finalizar el curso, el estudiante sienta la experiencia con el sistema operativo Linux y disponga de una bibliografía para profundizar sus conocimientos.
Lo que no se incluye