PDF de programación - Historia y trucos de la Consola GNU+Linux

Imágen de pdf Historia y trucos de la Consola GNU+Linux

Historia y trucos de la Consola GNU+Linuxgráfica de visualizaciones

Publicado el 7 de Febrero del 2017
669 visualizaciones desde el 7 de Febrero del 2017
109,7 KB
14 paginas
Creado hace 19a (17/02/2005)
Historia y trucos de la Consola GNU+Linux

Autor: Arturo 'Buanzo' Busleiman <[email protected]>

Ante todo quiero mencionar el orgullo que representa para mi el escribir un artículo
para una revista Española, especialmente SoloLinux, la cual es reconocida en mi
país de origen, Argentina. Adicionalmente, deseo dedicar este artículo a mi hermano
del alma, Matias, quien llegó a vuestro país en Octubre. Y ahora, los invito a
continuar leyendo esta reseña de la história de GNU+Linux, sus conceptos clave y,
por supuesto, comandos. Esta guía no intenta ser la típica guía sobre comandos en
GNU+Linux, resumiendo nombre y descripción del comando, sino que trataré de
transmitirles conceptos importantes de todo Unix junto con algunos comandos de
ejemplo. Por supuesto, agregaré una tabla de comandos y su descripción... pero
luego de aclarar todos los conceptos. Que la disfruten!

Un poco de historia...

Corría el año 1965, y en los Laboratorios Bell se utilizaba el sistema operativo
Multics, siglas de Multiplexed Information and Computing Service (Servicio
Multiplexado de Información y Computación). Decidieron descartarlo en 1969, para
reemplazarlo por GECOS. Alli aparecen nuestros héroes Ken Thompson y Dennis
Ritchie, que deseaban fervientemente poder jugar al Space Travel en una PDP-7 por
DEC. Tuvieron que reescribir un sistema operativo completo para este ordenador tan
pequeño. Lo denominaron UNICS, siglas de Uniplexed Information and Computing
Service. Claro está, el nombre es un chiste, como lo fue el desarrollo del sistema
operativo, tan solo para jugar un juego en una DEC PDP-7. Unix, finalmente, fue
desarrollado durante el verano norte-americano de 1969.

Finalmente, en 1971 se libera la primera versión de Unix! Entre sus comandos
básicos se encuentran: b, utilizado para compilar programas escritos en dicho
Lenguaje B. Entre los clásicos, se podían encontrar a cat, chdir, chmod, chown, cp,
ls, mv, wc, who. Es muy interesante destacar un detalle curioso: La mayoría de los
comandos son abreviaciones de palabras en idioma Inglés: cp, por CoPy (copiar), mv
por MoVe (mover), ls por LiSt (listar), wc por Word Count (contar palabras). ¿Y
saben por qué esto es así? Ubiquense en la época! Los sistemas de transmisión de
datos eran terriblemente lentos, la respuesta de los sistemas al 'input' de un usuario
era aún mas lenta. Imagínense tener que tipear comandos con nombres, por ejemplo,
como "changemode", "changeowner", o "connectedusers". Si más de una vez nos
equivocamos al tipear comandos cortos, imagínense tipear confiados, y presionar
ENTER al finalizar una secuencia que aún no aparecía en nuestra terminal... para
dárnos cuenta de que hemos cometido un error de sintáxis! De esta forma, hasta el
día de hoy se mantiene el concepto de utilizar acrónimos o abreviaciones para
comandos típicamente tipeados en una consola o xterm, como por ejemplo 'joe' por
"Joe's Own Editor", un excelente editor de texto para la consola. Una excepción
claramente vinculada con el entorno gráfico puede ser KDE: Comandos como
'konqueror', 'korganizer', 'kontact' y 'konsole' nos dan una idea.

Continuando con nuestra história, año y medio después de la publicación del GNU
Manifesto en 1985 comienza el Proyecto GNU, liderado por Richard Mathew
Stallman, a quien probablemente ya conozcan. El objetivo del GNU Project era el de
desarrollar un sistema operativo Libre, que respetara las 4 libertades básicas: La
libertad 0, de ejecutar un programa, por el propósito que sea. La libertad 1, de
estudiar y/o analizar cómo funciona un programa, dónde el acceso al código fuente
es una condición previa. La libertad 2, de redistribuir copias para ayudar a quienes
no puedan obtenerlas y por último la libertad 3, de poder mejorar el programa y

redistribuirlo para el beneficio de la comunidad. Otra vez, el acceso al código fuente
es una condición previa.

Este sistema operativo libre estaría basado en Unix. El único problema es que el
Proyecto GNU no empezó por un Kernel, núcleo de un sistema operativo, y en 1991
Linus Torvalds presentó un kernel propio, denominado Linux. Los hackers
comenzaron a vincular las aplicaciones del proyecto GNU (compiladores, editores de
texto, herramientas de administracion de archivos, etc) junto con este Kernel Linux,
y así comenzó la vida de la pareja más famosa de la historia... al menos de la história
que nos interesa en esta revista!

De esta forma llegamos al sistema operativo GNU+Linux de nuestros amores:
Comencemos ahora a conocer mejor su consola, comandos y al shell Bourne Again!

Características de Linux

Linux, como todo Unix que se precie, es Multitarea, Multiusuario y es implementado
bajo el concepto primordial de que "Todo es un Archivo". De esta forma, los
dispositivos de entrada/salida, almacenamiento y las conecciones de red son tratados
como archivos. Linux, a su vez, extiende el concepto presentando a ciertas
estructuras y variables internas del Kernel como archivos y directorios. De esta
forma se pueden modificar o accesar parámetros de funcionamiento del sistema,
tanto en forma manual como programática. Estoy hablando del directorio "/proc",
que utiliza el pseudo-sistema de archivos "procfs". Una vez que les presente los
comandos básicos para navegar la estructura de directorios y leer archivos del
sistema podrán descubrir una gran cantidad de información muy útil, tal vez no tanto
en sus primeros pasos con el sistema a bajo nivel, pero que si deciden orientarse a la
seguridad informática o la programación en Linux les serán de gran utilidad.

Todo sistema operativo multitarea debe incluir herramientas que faciliten la
administracion y ejecución de los programas a ser ejecutados. De la misma forma, el
hecho de que sea multiusuario no solamente indica de que varios usuarios pueden
utilizar simultaneamente (o en forma controlada, como el caso de un dispositivo
como una impresora) los recursos del sistema, sino de que los programas también
funcionarán bajo una identidad concreta: la del usuario que los ejecutó, o la que el
administrador (aquí denominado root o superusuario) designe.

Llendo un poco más en detalle, en Linux los usuarios obtienen un código de
identificación único cuando son creados, es el llamado UID (User ID). Este UID se
utiliza todo el tiempo: para establecer privilegios, para controlar el acceso a
recursos, para definir la membresía de archivos y directorios, etc. A su vez, un UID
está vínculado con uno o más GIDs, que son Group IDs, Identificadores de Grupo.
Cuando un usuario es creado, se le otorga un UID y se lo hace pertenecer al menos a
ún grupo. Los grupos también tienen nombres simbólicos, y son definidos en el
archivo /etc/group. Los usuarios se encuentran definidos, a su vez, en el archivo /
etc/passwd, dónde se lista su nombre simbólico, UID, GID primario, shell o
intérprete de comandos por defecto, entre otros datos.

En /etc/group también se especifican los grupos adicionales a los cuales un usuario
pertenece, más allá del primario. De esta forma, el primer comando que yo
considero que un usuario debe conocer, es el comando id, proveniente de la palabra
inglesa para "identificación". Ejecútenlo, sin parámetros, en su consola y verán que
les entrega la información de qué usuario son y a que grupo[s] pertenecen. En el
caso del usuario root el UID y el GID equivalen a cero. Si desean obtener los

detalles de identificación de otro usuario, tan solo agréguenlo como primer
parámetro, por ejemplo id root o id noelia.

La salida de este comando, es similar a la siguiente (tomado de un usuario agregado
según la documentación de instalación de Gentoo Linux):

buanzo@murray ~ $ id buanzo
uid=1000(buanzo)
(games)

gid=100(users)

groups=100(users),10(wheel),18(audio),35

Aquí podemos ver que el usuario "buanzo" pertenece en forma primaria al grupo
cuyo gid es 100, nombre simbólico "users". Su UID es 1000, y adicionalmente
pertenece a los grupos wheel,audio y games. El pertenecer al grupo wheel tiene sus
privilegios: los que pertenezcan al mismo podrán utilizar el comando su,
correspondiente a "sustituir usuario", el cual permite al usuario que lo invoca, iniciar
sesión como otro usuario, sin abandonar la actual. Generalmente, se lo utiliza para
pasar al usuario root, sin tener que cambiar de terminal.

DATO UTIL: Si quieren conocer el formato y/o estructura de un archivo de /etc,
directorio donde reside la mayoría de los archivos de configuración, pueden hacer
uso del comando man. Este comando presenta las páginas del manual del sistema, el
cual está dividido en secciones. En el recuadro número uno pueden ver un listado de
las secciones comunes. Para ahorrar tiempo, la sección 5 contiene la descripción de
las estructuras de los archivos de configuración ubicados en /etc. Por ejemplo, man
5 passwd les presentará un informe con la estructura del archivo /etc/passwd. Vean
que la sintaxis de man es "man sección página".

Terminales Virtuales y Físicas

Antes de conocer más comandos y conceptos, aprendamos acerca de las terminales.
En el principio se utilizaban, y se siguen utilizando, aunque en menor medida,
servidores de gran capacidad (mainframes), a los cuales, para utilizarlos, se les
conectaban terminales que constaban, en su mínima configuración, de un monitor y
teclado. No poseían inteligencia propia, ya que e
  • Links de descarga
http://lwp-l.com/pdf2326

Comentarios de: Historia y trucos de la Consola GNU+Linux (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad