PRIMER CORTE
Filosofía de Unix
Versiones
Historia GNU /Linux
Distribuciones GNU/Linux
Arquitectura de GNU/Linux
Licencia GPL
SEGUNDO CORTE
samba
laboratorio 1 operaciones aritmeticas
laboratorio 2 administracion de directorios y archivos
cuadro comparativo Linux
TERCER CORTE
CONFIGURACION DE DISPOSITIVOS - RED
Montaje de Discos
Configuración de impresoras
Configuración de otros dispositivos
Conectividad entre linux - windows
************************************************************************************
PRIMER CORTE
FILOSOFIA DE UNIX
- Modularidad: Escribe partes simples, conectadas por interfaces simples.
- Claridad: ser Claro es mejor que ser ingenioso.
- Composición: Diseña programas para que se conecten a otros programas.
- Separación: Separa las reglas del funcionamiento; separa los interfaces de los mecanismos.
- Simplicidad: Diseña para la simplicidad; añade complejidad sólo donde sea estrictamente necesario.
- Parsimonia: Escribe un programa complejo sólo cuando sea evidente que no existe otra solución posible.
- Transparencia: Diseña para la visibilidad, para hacer más fácil la inspección y la corrección de fallos.
- Robustez: la Robustez es hija de la transparencia y la simplicidad.
- Representación: Convierte el conocimiento en datos, para que la lógica de los programas pueda ser estúpida y robusta.
- Mínima Sorpresa: En diseño de interfaces, haz siempre lo menos sorprendente.
- Regla de Silencio: Cuando un programa no tenga nada sorprendente que decir, no debería decir nada.
- Reparación: Cuando tengas que mostrar un error, falla estridentemente y lo antes posible.
- Economía: el tiempo del programador es caro; consérvalo sobre el tiempo de la máquina.
- Generación: Evita hacer cosas a mano; escribe programas que escriban programas siempre que puedas.
- Optimización: Prototipa antes de pulir. Haz que funcione antes de optimizarlo.
- Diversidad: Desconfía de todo lo que diga “esta es la única forma correcta”.
- Extensibilidad: Diseña para el futuro, porque estará aquí antes de lo que piensas.
VERSIONES
La primera versión comercial del sistema operativo UNIX, fue Sistema III. mas tarde el AT&T introdujo el UNIX Sistema V versión 1, y Berkeley lanza una poderosa versión UNIX conocida como BSD versión 4.2 Entre sus características principales se encuentran la gestión de archivos muy sofisticada así como la posibilidad de trabajo en redes basadas en los protocolos TCP/IP, los mismos que hoy en día se utilizan en Internet. Esta versión de UNIX la adoptaron varios fabricantes, entre ellos Sun Microsystems, lo que dio lugar al conocido sistema SunOS.
SOLARIS: Es el nombre con el que se conoce el sistema operativo de Sun Microsystems. Originalmente se llamó SunOS, pero posteriormente, debido a la presentación de UNIX Sistema V se desarrolló una nueva versión a la que se le llamó Solaris. Existen versiones de Solaris para Power PC, Intel y Sparc.
AIX: La versión del sistema operativo UNIX para las máquinas IBM se llama AIX y está basada en Sistema V versión 3 y BSD 4.3.
A/UX: Implementación de UNIX de Apple
IRIX: Versión de UNIX desarrollada por Silicon Graphics para sus estaciones basada en UNIX Sistema V versión 4.
GNU/LINUX:Richard Stallman anunció el Proyecto GNU, un ambicioso esfuerzo para crear un sistema similar a Unix, que pudiese ser distribuido libremente. El software desarrollado por este proyecto -por ejemplo, GNU Emacs y GCC - también han sido parte fundamental de otros sistemas UNIX. En 1991, cuando Linus Torvalds empezó a proponer el kernel Linux y a reunir colaboradores, las herramientas GNU eran la elección perfecta. Al combinarse ambos elementos, conformaron la base del sistema operativo (basado en POSIX) que hoy conocemos como GNU/Linux o simplemente Linux.
HISTORIA GNU/LINUX
Linux nació gracias a la idea de Linus Torvalds de crear un sistema basado en Unix para máquinas i386. En más de una ocasión, Linus Torvalds ha afirmado que si hubiera sabido de la existencia de los sistemas BSD que ya cumplían lo que hacía Linux, no se habría molestado en modificar Minix . La historia de Linux está fuertemente vinculada a la del proyecto GNU . El proyecto GNU, iniciado en 1983 , tiene como objetivo el desarrollo de un sistema Unix completo compuesto enteramente de software libre . Hacia 1991 , cuando la primera versión del núcleo Linux fue liberada, el proyecto GNU había producido varios de los componentes del sistema operativo, incluyendo un intérprete de comandos , una biblioteca C y un compilador , pero aún no contaba con el núcleo que permitiera completar el sistema operativo .
el núcleo creado por Linus Torvalds , quien se encontraba por entonces estudiando en la Universidad de Helsinki , llenó el hueco final que el sistema operativo GNU exigía. Subsecuentemente, miles de programadores voluntarios alrededor del mundo han participado en el proyecto, mejorándolo continuamente. Torvalds y otros desarrolladores de los primeros días de Linux adaptaron los componentes de GNU y de BSD, así como de otros muchos proyectos como Perl, Apache, Python, etc. para trabajar con el núcleo Linux, creando un sistema operativo completamente funcional procedente de muchísimas fuentes diferentes, la mayoría libres.
DISTRIBUCIONES GNU/LINUX
BLAG Linux y GNU, una distribución GNU/Linux basada en Fedora.

Dragora, una distribución independiente de GNU/Linux basada en el concepto de la simplicidad.

Dynebolic, una distribución de GNU/Linux que pone un énfasis especial en la edición de audio y vídeo.

Musix GNU+Linux, una distribución GNU/Linux basada en Knoppix, con un énfasis especial en la producción de audio.

Musix GNU+Linux, una distribución GNU/Linux basada en Knoppix, con un énfasis especial en la producción de audio.

Trisquel, una distribución GNU/Linux destinada a pequeñas empresas, usuarios domésticos y centros educativos.

UTUTO-e, una distribución GNU/Linux basada en Gentoo.Fue la primera distribución de GNU/Linux completamente libre reconocida por el Proyecto GNU.

Venenux, una distribución GNU/Linux construida alrededor de el escritorio KDE.
ARQUITECTURA GNU/LINUX

Linux es un núcleo monolítico híbrido, donde sus controladores de dispositivos y las extensiones del núcleo normalmente se ejecutan en un espacio privilegiado conocido como anillo, con acceso irrestricto al hardware, aunque algunos se ejecutan en espacio de usuario.
A diferencia de los núcleos monolíticos tradicionales, los controladores de dispositivos y las extensiones al sistema operativo se pueden cargar y descargar fácilmente como módulos, mientras el sistema continúa funcionando sin interrupciones.
Así mismo, a diferencia de los núcleos monolíticos tradicionales, los controladores pueden detenidos momentáneamente por actividades más importantes bajo ciertas condiciones.
Esta habilidad fue agregada para manejar correctamente interrupciones de hardware, y para mejorar el soporte de multiprocesamiento Simétrico.
A diferencia de los núcleos monolíticos tradicionales, los controladores de dispositivos son fácilmente configurables como Loadable Kernel Modules, y se pueden cargar o descargar mientras se está corriendo el sistema.
LICENCIA GPL

La licencia GPL o General Public License, desarrollada por la FSF o Free Software Foundation, es completamente diferente. Puedes instalar y usar un programa GPL en un ordenador o en tantos como te apetezca, sin limitación. También puedes modificar el programa para adaptarlo a lo que tu quieras que haga. Además, podrás distribuir el programa GPL tal cual o después de haberlo modificado.
Puedes hacer esto, regalando el programa o vendiéndolo, tu única obligación, es facilitar siempre con el programa binario el código fuente, es decir, el programa de forma que pueda ser leido por un programador.Los programas propietarios o cerrados, solo se distribuyen en binario, listos para ejecutarse en el ordenador.
Un programa GPL es libre, es decir, no es \"shareware\" o \"freeware\", éstos también puedes conseguirlos en un cd-rom al comprar un revista o descargarlos de internet, pero no incluyen el código fuente y no tienes permiso para modificarlos, es decir, no son libres.Los programas distribuidos con licencia GPL tampoco son piratas, utiliza otra licencia para atacar barcos.
SEGUNDO CORTE
SAMBA
Samba es un software libre, reimplementación del protocolo de red Microsoft Windows Network (antes llamado SMB/CIFS), realizado bajo licencia GNU GPL. El nombre "samba", proviene de la inserción de dos vocales en el nombre original del protocolo "SMB".
Para la versión 3, Samba, además proveer servicios de archivo e impresión, también puede integrarse al dominio Windows Server. También puede ser parte de dominio Active Directory.
Samba permite que un servidor no-Windows se comunique con los mismos protocolos de red que los productos para Windows.
Samba se ejecuta en la mayoría de los sistemas Unix y basados en Unix, como Linux, Solaris y los BSD, incluyendo el Mac OS X Server de Apple.
2. Samba, era el nombre de un navegador web para Macintosh escrito por Robert Cailliau en el CERN, lanzado en el año 1993.
Samba es una idea de Andrew Tridgell, quien actualmente lidera el equipo de desarrollo de Samba desde su casa de Canberra, Australia. El proyecto nació en 1991 cuando Andrew creó un programa servidor de ficheros para su red local, que soportaba un raro protocolo DEC de Digital Pathworks. Aunque él no lo supo en ese momento, aquel protocolo más tarde se convertiría en SMB. Unos cuantos años después, él lo llevó más allá de su servidor SMB particular y comenzó a distribuírlo como producto por Internet bajo ese mismo nombre (servidor SMB). Sin embargo, Andrew no pudo mantener ese nombre (ya estaba registrado por otra compañía), así que intentó lo siguiente para buscarle un nuevo nombre desde Unix:
grep -i ‘s.*m.*b’ /usr/dict/words
y la respuesta fue:
salmonberry samba sawtimber scramble
De ésta manera nació el nombre de Samba. Hoy, la suite Samba implica un par de demonios que proporcionan recursos compartidos a clientes SMB sobre la red. Estos demonios son:
smbd
Un demonio que permite compartir archivos e impresoras sobre una red SMB y proporciona autenticación y autorización de acceso para clientes SMB.
nmbd
Un demonio que busca a través del Windows Internet Name Service (WINS) , y ayuda mediante un visualizador.
Samba se encuentra actualmente mantenido y es ampliado por un grupo de voluntarios bajo la supervisión activa de Andrew Tridgell. Al igual que el sistema operativo Linux, Samba es Open Source y es distribuído bajo la GNU General Public License (GPL). Desde su concepción, el desarrollo de Samba ha sido patrocinado en parte por la Australian National University, donde Andrew Tridgell hizo su doctorado. En adición, algunas partes del desarrollo han sido patrocinadas por distribuidores independientes como Whistle y SGI. Es algo verdaderamente testimonial el que entidades tanto comerciales como no comerciales estén dispuestas a gastar dinero para dar soporte a un esfuerzo Open Source.
LABORATORIO 1 OPERACIONES ARITMETICAS
Nuestra consola o terminal de comando siempre la hemos ocupado para realizar ejecución de comando hacia alguna aplicación. Pero también tenemos la posibilidad de realizar operaciones matemáticas desde línea de comandos, por medio de varios comandos como:-----echo-----expr-----bc
Para que nos sirve esto para resolver algún problema por medio de un script que hayamos realizado o si necesitamos resolver alguna operación y no tenemos alguna calculadora a la mano.
COMANDO ECHO
El primer comando que usaremos se llama echo, este nos permite realizar operaciones básica de aritmética como:
CUADRO COMPARATIVO WINS,NET BIOS ,DHCP, DNS, SAMBA
WINS | Proporciona una base de datos distribuida registran y consultan asignaciones dinámicas de nombres NetBIOS para los equipos y grupos usados en la red. WINS asigna direcciones IP a los nombres NetBIOS y se diseñó para solucionar los problemas que ocasiona la resolución de nombres NetBIOS en entornos con rutas. WINS es la mejor alternativa para la resolución de nombres NetBIOS en entornos con rutas que utilicen NetBIOS sobre TCP/IP. |
NET BIOS | permite a las aplicaciones con la red. Su intención es conseguir aislar los programas de aplicación de cualquier tipo de dependencia del hardware. También evita que los desarrolladores de software tengan que desarrollar rutinas de recuperación ante errores o de enrutamiento o direccionamiento de mensajes a bajo nivel. las computadoras son conocidas e identificadas con un nombre. Cada PC de una red local NetBIOS se comunica con los otros bien sea estableciendo una conexión , usando datagramas o mediante broadcast. La comunicación será punto a punto. Por otro lado, los métodos de datagramas y broadcast permiten a un ordenador comunicarse con otros cuantos al mismo tiempo, pero estando limitados en el tamaño del mensaje. |
DHCP | DHCP funciona sobre un servidor central el cual asigna direcciones IP a otras máquinas de la red. Este protocolo puede entregar información IP en una LAN o entre varias VLAN. Esta tecnología reduce el trabajo de un administrador, que de otra manera tendría que visitar todos los ordenadores o estaciones de trabajo uno por uno. Para introducir la configuración IP consistente en IP, máscara, gateway, DNS, etc. |
DNS
| La principal tarea de DNS es traducir tu nombre de dominio en una dirección IP. El servicio de DNS permite, una vez configurado, que tu web y tu correo electrónico sean localizados desde cualquier lugar del mundo mediante tu nombre de dominio. |
SAMBA | Samba permite a los servidores Unix entrar en acción, comunicando con el mismo protocolo de red que los productos de Microsoft Windows. una máquina Unix con Samba puede enmascararse como servidor y Compartir uno o más sistemas de archivos, Compartir impresoras, Ayudar a los clientes, Autentificar clientes logeándose contra un dominio Windows. |
TERCER CORTE
CONFIGURACION DE DISPOSITIVOS - RED
Montaje de Discos
Configuración de impresoras
Configuración de otros dispositivos
Conectividad entre linux - windows
MONTAJE DE DISCOS
1. Tenemos un Disco Duro 1 con el S.O Unix/Linux conectado al Bus IDE 1 como Primary (primario), y ocupando una partición todo el Disco.
2. Tenemos un Disco Duro 2 con 2 particiones, una partición FAT y una NTFS Y lo tenemos colocado en el Bus IDE 1 como Slave (secundario).
Del mismo modo, nuestro Disco Duro 2 será reconocido en Unix/Linux como: /dev/hdb y las particiones como: /dev/hdb1 (fat) y /dev/hdb2 (ntfs).
Disco Duro 1
Bus IDE 1 Primary.
En posición: /dev/hda
Partición 1 (es la partición SWAP), como: /dev/hda1
Partición 2 (ocupa todo el Disco Duro), como: /dev/hda2
Disco Duro 2 (recuerda que este Disco Duro es el que montaremos)
Bus IDE 1 Slave.
En posición: [b]/dev/hdb[/b]
Partición 1 (FAT), como: /dev/hdb1
Partición 2 (NTFS), como: /dev/hdb2
$ man mount
En este caso, las particiones FAT se utiliza como: vfat.
En este caso, las particiones NTFS se utiliza como: ntfs.
El fichero /etc/fstab.
El fichero /etc/fstab
contiene los dispositivos de almacenamiento montados en el sistema como son: cdrom, memorias flash, floppy, discos duros, etc. Del mismo modo, los dispositivos descritos en este fichero, se especifican aquí mismo para que el Ordenador siempre tenga presente este Dispositivo, así que NO es necesario tenerlo puesto.
Ejemplo:
Las Memorias USB Flash, se pueden especificar en /etc/fstab la dirección de tu puerto USB, y NO tener puesto la Flash. cuando sea necesario, la colocas en el puerto USB previamente establecido en /etc/fstab, realizas su montaje y listo, funcionando.
Si en ves de especificar el montaje dentro del fichero /etc/fstab, lo realizamos por medio de la llamada a mount con sus respectivas OPCIONES, pues el dispositivo funcionara CORRECTAMENTE, pero solo funcionara en ese momento que se MONTO, ya que cuando se reinicie el sistema se tiene que volver a realizar su montaje manual como se había echo anteriormente.
Así que, mejor escribelo en /etc/fstab, así no escribes TODO el comando, del mismo modo ya sabes que si el Dispositivo NO está puesto, pues NO corrompes nada de Sistema.
El fichero /etc/fstab tiene este orden:
- Fichero especial que representa el dispositivo.
Un Fichero Especial es el que utiliza el S.O para poder comunicarse con el Dispositivo o algún Puerto.
- Carpeta de montaje.
Pues la carpeta que nos enlazara al Dispositivo de Almacenamiento
- Sistema de Ficheros (osea tipo de partición… para los extremos novatos).
Es el sistema de ficheros que contiene el Disco Duro a montar, puede ser: ext3, ntfs, vfat, etc.
- Privilegios.
Es el tipo de usuario que puede observar/interactuar con el Dispositivo de Almacenamiento, sus valores posibles son: owner, user, defaults
- Permiso escritura o lectura (no recuerdo, pero es 1 u otro).
Representa el Bit de Permiso de Lectura/Escritura para el Dispositivo de Almacenamiento.
- Permiso escritura o lectura (no recuerdo, pero es 1 u otro).
Representa el Bit de Permiso de Lectura/Escritura para el Dispositivo de Almacenamiento.
En el siguiente punto, veremos un ejemplo del fichero, y podremos observar el orden según mencionado aquí.
Editando /etc/fstab.
$ su
Password:
# vi /etc/fstab /*y se abrirá el fichero con el editor VI*/
------------- Nuestro Fichero /etc/fstab -------------
/dev/hda1 swap swap defaults 0 0
/dev/hda2 / ext3 defaults 1 1
/dev/cdrom /mnt/cdrom iso9660 noauto,owner,ro 0 0
/dev/fd0 /mnt/floppy auto noauto,owner 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
proc /proc proc defaults 0 0
Ahora Según nuestro Disco Duro 2, el fichero quedaría así:
------------- Nuestro Fichero /etc/fstab -------------
/dev/hda1 swap swap defaults 0 0
/dev/hda2 / ext3 defaults 1 1
/dev/hdb1 /mnt/hdd_fat vfat defaults 1 1
/dev/hdb2 /mnt/hdd_ntfs ntfs defaults 1 1
/dev/cdrom /mnt/cdrom iso9660 noauto,owner,ro 0 0
/dev/fd0 /mnt/floppy auto noauto,owner 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
proc /proc proc defaults 0 0
Creamos ahora 2 carpetas dentro del directorio: /mnt, y serian así:
# cd /mnt
# mkdir hdd_ntfs
# mkdir hdd_fat
Bueno, ahora sólo queda montarlos (activarlos)… y sería así:
# mount /dev/hdb1
# mount /dev/hdb2
veremos que las carpetas /mnt/hdd_ntfs y /mnt/hdd_fat contendrán la info del Disco Duro respectivo.
CONECTIVIDAD ENTRE LINUX Y WINDOWS
La red de Microsoft está gobernada por el protocolo NetBios o Network Basic Input Output System y los archivos de los equipos pueden ser compartidos gracias al protocolo SMB. El usuario percibe todo esto a través de la aplicación del Entorno de Red que le permite acceder a los pc’s e impresoras de la red y compartir archivos y servicios de impresión.
Samba es un desarrollo de software libre que se instala en el servidor Unix o Linux que va a interactuar entre los protocolos TCP/IP y NetBios para convertir al servidor en un sistema que permite compartir archivos e impresoras de manera tal que el servidor se vincula a la red sin notarlo. Pero hay más. Samba permite configurar al servidor como un servidor de dominios NT prestando los mismos servicios pero con la seguridad que ofrece Unís Linux. SAMBA no requiere que se instale nada en los pc’s de la red.
El efecto de Samba hace que en el entorno de red aparezca el servidor Linux o Uníx como si fuera un equipo más de la red Windows, permitiendo entrar a los directorios autorizados, servir como repositorio de datos sin importar si son de Windows o de Unís/Linux y compartir la impresora del servidor por los demás usuarios.