Introducción A Linux

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 7

1.

Introducción a Linux ,

Elaborado por: Ricardo Garvin

Fecha: 17 de marzo de 2022

Aviso importante: cuando usemos letra cursiva nos estaremos refiriendo a un comando que se lanza por
terminal, por ejemplo: cd /home/usuario es un comando para ubicarse dentro del directorio usuario que
está dentro del directorio home.

¿Qué es el software libre?

Software libre significa que los usuarios tienen la libertad de ejecutar, copiar, estudiar, distribuir,
modificar y mejorar el software. Existen cuatro libertades fundamentales definidas que van de la 0 a la
3. Aquí puedes ver la página oficial de la organización que promueve el software libre y hasta colaborar
participando en proyectos con ellos de forma voluntaria, cualquier persona puede hacerlo, sin importar
su nivel de conocimiento. Front Page — Free Software Foundation — working together for free software
(fsf.org)

¿Que es un mainframe?

Un mainframe o también conocido como una unidad central, siendo esta una computadora que es
usada principalmente para el procesamiento de una gran cantidad de datos a gran velocidad o
velocidades cercanas a la mayor velocidad que es posible en su tiempo. En la antigüedad se les llamaba
así porque ocupaban gabinetes y cuartos enteros. Unidad central - Wikipedia, la enciclopedia libre.

¿Qué es una consola?

En los inicios de la computación las que consolas eran unidades de hardware que se conectaban a los
mainframes para poder introducir datos o enviar órdenes. Hoy en día, las consolas pueden ser
completamente en software. Las consolas van de la mano con las terminales. Con respecto a un
mainframe, una consola era a la vez el puerto, la conexión digital y una terminal física conectada
directamente a una unidad central.Terminal (informática) - Wikipedia, la enciclopedia libre.

¿Qué es una terminal?

En los inicios del sistema operativo Unix (es lo que GNU quiso remplazar ya que era un sistema propietario
que requería licencia), se utilizaba un dispositivo físico que se parecía a una máquina de escribir y a veces
llamada teletipo o tty. El nombre “terminal” vino desde el punto de vista electrónico.

Terminal (informática) - Wikipedia, la enciclopedia libre

¿Qué es Linux?

Es un Kernel, el Kernel es el software principal que se encarga de comunicarse con el hardware y


gestionarlo. El Kernel para describirlo de una forma simplificada es el conjunto de rutinas que permiten a
todo el software interactuar con el hardware, la mayoría de sus líneas de código que son millones son los
llamados drivers, todos los sistemas operativos tienen un Kernel (núcleo), y por eso Linux es tan
importante ya que inicialmente el proyecto GNU de software libre, iniciado por Richard Stallman (Richard
Stallman - Wikipedia), tenía ya adelantadas muchas herramientas necesarias para conformar un sistema
operativo, pero faltaba el Kernel que es la parte más importante, el núcleo del sistema, el programa o los
conjuntos de programas para gestión y planificación del uso de los recursos de Hardware y esto fue lo que
Linus Torval (Linus Torvalds - Wikipedia, la enciclopedia libre ) aportó. Para comprender mejor lo que
significa Linux y el gran impacto que ha tenido para el desarrollo de la tecnología les recomiendo ver este
documental The Code Story of Linux - Español | Código Linux - 2001 - HD - YouTube.

Arquitectura de tres capas GNU/LINUX simplificada

Fuente: 3.1 Introducción a GNU/Linux – Ricardo Carrera Hernández (uv.mx)


¿Qué es la terminal CLI (Command Line Interface)?

La terminal CLI es el método más directo usado para administrar todo tipo de dispositivos
basados en el kernel Linux. Un entendimiento básico del terminal es esencial para trabajar con la
mayoría de los sistemas basados en Linux.

¿Qué es una Shell?

La shell es la interfaz de línea de comandos. Algunos ejemplos de Shell son BASH, CSH, KSH,
ZSH. Es muy importante saber con cual Shell estamos trabajando ya que los comandos se pueden
llamar igual, pero comportarse diferente. Estas Shell toman comandos escritos a mano y le dicen
al sistema operativo como ejecutarlos, o puede tomar secuencias de comandos e interpretar la
lógica dentro de ellos, además da instrucciones al sistema operativo para ejecutar los comandos
contenidos en un archivo que generalmente se conoce como script o algunas veces también a
este archivo lo llaman Shell, aunque eso es incorrecto,

Actualmente muchos de los términos básicos descritos ya se han virtualizado y son también considerados
programas o aplicaciones que cumplen la misma función por esta razón vamos a definir estos mismos
términos, pero ya como los encontramos en el día a día de nuestro trabajo.

Terminal: Un terminal se refiere a un programa contenedor que ejecuta un Shell, hoy en día se
habla ya no de teclados y pantallas que se conectan por puertos a un sistema más grande sino
de emuladores de terminal que inician un entorno donde se ejecutará un shell en el que puede
ingresar comandos. La consola es un tipo especial de terminal para la comunicación directa a un
nivel bajo con el sistema operativo. Los sistemas GNU/Linux modernos ofrecen consolas virtuales.
Se accede a ellos mediante combinaciones de teclas (por ejemplo, con la combinación de teclas
Ctrl+ Alt+ F12). La interacción con la consola también se realiza mediante un programa de shell.
Las consolas se enumeran utilizando TTYx (por ejemplo: TTY1, TTY2, etc), esto históricamente
viene de las siglas de abreviatura de los terminales teletipos. El termino shell está más orientado
a interactuar con usuarios programadores y personas que no necesitan conocimientos profundos
de ciencias de la computación, como tal vez si lo requieren los que usan consolas donde se
realizan configuraciones vitales para el funcionamiento del sistema de cómputo. El shell es el
programa que procesa comandos y devuelve resultados. Los principales shells también gestionan
procesos en primer plano y en segundo plano, historial de comandos y edición de línea de
comandos.

Ejercicio 1 Conociendo el entorno de trabajo:

Digite en su terminal GNU/Linux de la distribución xxxx (la distribución es el sabor o la marca del
Linux que usted está usando, por citar ejemplos puede ser Ubuntu, xubuntu, redhat, fedora,
centos, suse. La mayoría de distribuciones Linux corporativas robustas siguen un estándar o tratan
de compatibilizar con POSIX si quiere conocer un poco más de este estándar consultar estos links
¿Qué es POSIX? Conceptos fundamentales - El Camino del Sysadmin (carreralinux.com.ar) POSIX -
Wikipedia
El ejercicio consiste en digitar estos comandos y explorar cual es la interpretación de la respuesta recibida:

echo $TERM (tipo de terminal de texto que está utilizando)

tty (número de la terminal de texto que está utilizando)

echo $SHELL (nombre del programa shell que está definido por default para su usuario)

uname -r (Versión del Kernel de Linux de su distribución)

hostnamectl (Información más detallada de sistema operativo)

cat /etc/os-release (Información detallada de sistema operativo)

cat /proc/version (información del Kernel y del compilador de c)

¿cómo solicitamos ayuda acerca del sistema operativo?

man

help

apropos

info

whatis

Comandos muy utilizados:

clear

history

cd

ls

mkdir

pwd

rmdir

whoami

cat

cmp

cp

cut
diff

dirname

basename

ln

lsof

mv

ldd

rm

grep

sort

touch

uniq

wc

du

df

id

date

time

¿Qué son los streams en Linux?

Linux maneja tres canales o streams para interactuar con programas estos son:

Standard input STDIN es cualquier comando que se teclee.

Standard output STDOUT la salida o resultado del comando que se tecleó.

Standard error STDERROR si se producen mensajes de advertencia o errores salen por default en
la terminal.

Para mayor información consultar este link Viernes de Terminal: Standard Stream | Desde Linux
¿Qué son los pipes?

El pipe cuyo símbolo es | sirve para encadenar comandos de tal manera que nos permite
encadenar secuencias de comandos haciendo que la salida de un comando sea la entrada del
siguiente, produciendo efectos de transformación complejos en una sola entrada de la línea de
comandos (CLI)

¿Qué son los redireccionadores?

Cuando necesitamos que los streams de Linux se guarden en archivos o sirvan como entradas o
salidas a otros archivos, programas o comandos utilizamos la redirección I/O o también llamada
I/O o standard I/O. Cada Stream tiene un FD o File descriptor:

STDIN FD=0

STDOUT FD=1

STDERROR FD=2

Por esta razón se dice que todo en Linux es un archivo, por cierto cada dispositivo físico
internamente se maneja como un archivo con su FD.

Para comprobar esto digitemos el comando ls -l /dev/std* .

A continuación un resumen de los redireccionamientos posibles:

Símbolo Descripción
Redirecciona stdout hacía un archivo. Lo crea si no existe, si existe lo sobreescribe.
> ls -l > lista.txt (La salida del comando se envía a un archivo en vez de la
terminal.)
Redirecciona stdout hacía un archivo. Lo crea si no existe, si existe concatena la salida
>> al final de este.
ps -ef >> procesos.txt (Concatena al archivo procesos.txt la salida del comando.)
Redirecciona stdin desde un archivo. El contenido de un archivo es la entrada o input
del comando.
<
mail user < texto.txt (El cuerpo del correo a enviar proviene desde un archivo, en
vez del teclado).)
2> Redirecciona stderr hacía un archivo. Crea (>) o concatena (>>) la salida de errores a
2>> un archivo. (ver ejemplos)
1>&2 Redirecciona stdout hacía donde stderr apunte. (ver ejemplos)
2>&1 Redirecciona stderr hacía donde stdout apunte. (ver ejemplos)
Laboratorio #1

1) Utilice un comando de sistema para obtener la ayuda del comando pwd.


2) Cámbiese a la ruta /cursolinux/practicas y dentro de ese directorio cree un directorio con
su nombre de usuario Linux, a partir del punto 3 todo lo trabajará en ese archivo.
3) Verifique si el directorio se creó guarde la salida en un archivo de nombre tarea3.txt.
4) Ahora saque una copia de respaldo de su archivo tarea.txt llamelo tarea.txt.bck.
5) Compare si el contenido de los dos archivos es igual utilice un comando.
6) Busque los datos de su sistema operativo y almacénelos en tarea.txt sin borrar el contenido
de ese archivo.
7) Cuente el número de líneas de ese archivo tarea.txt
8) Filtre la versión del kernel del archivo tarea.txt y muéstrelo en pantalla.
9) Almacene el historial de comandos en un archivo de nombre mihistoria.dat
10) Cree un archivo de nombre frutas.txt con el siguiente contenido
Manzana
Pera
Banano
Uva
Mango
Tomate
Manzana
Pera
Banano
Manzana
Fresa
Cereza
Utilizando las técnicas de pipe o redireccionamiento ordene el contenido de forma
ascendente A-Z, elimine los duplicados creando otro archivo de nombre
frutasordensindup.txt

También podría gustarte