Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
HISTORIA DE UNIX
Unix es un sistema operativo portable, multitarea y multiusuario; desarrollado en principio por un grupo de empleados de los laboratorios Bell de AT&T, entre los que figuran Ken Thompson, Dennis Ritchie y Douglas McIlroy. El sistema operativo UNIX comienza en 1969 como un proyecto de investigacin de AT&T Bell Labs. Es descendiente de MULTICS, un proyecto de sistema operativo sumamente ambicioso iniciado por un conjunto de empresas que nunca vio la luz. En 1976 aparece la Versin 6 , disponible en forma gratuita para las Universidades. La versin 7, ampliamente distribuida, aparece en 1979; es la base de la mayora de las versiones de UNIX. costaba $100 dlls. para universidades y $21000 dlls. para otros. Luego de esta versin AT&T cre el grupo USG (UNIX Support Group), luego este grupo se separ de AT&T con el nombre USL (UNIX System Laboratories) para desarrollar UNIX como producto comercial. Los grupos Bell Labs y USG continuaron desarrollando UNIX en direcciones divergentes. USL sac al mercado las versiones System III y System V, ampliamente difundidas. En 1992 AT&T vendi sus operaciones en UNIX a Novell quien sac un producto llamado UnixWare, el cual no result muy popular. El UNIX de Berkeley comenz en 1977, cuando el CSRG (Computer Systems Research Group) de la Universidad de California en Berkeley licenci el cdigo de la versin V6 de AT&T. Las versiones de Berkeley llamadas BSD (Berkeley Software Distribution) comenzaron en 1977 con 1BSD (para PDP-11) y culminaron en 1993 con la versin 4.4 BSD. El propsito ltimo de Berkeley era eliminar todo el cdigo original de AT&T, pero perdi sus fuentes de financiamiento antes de culminar su propsito. Al disolverse, el CSRG lanz su ltima versin de cdigo propio, llamada 4.4BSD-Lite (liviana). La mayora de los UNIX de la rama BSD tienen como antecedente esta versin.
Superadas varias querellas de licencias entre BSD y AT&T, desde hace unos aos los fabricantes pueden tomar el cdigo fuente pblico de AT&T, BSD o ambos para comenzar a partir de ellos sus propios desarrollos. Esto ha originado un sin nmero de variantes. La clasificacin por el origen, AT&T o BSD, se va perdiendo al combinar los fabricantes lo mejor de ambas. Si bien esto ha originado bastante confusin, en el correr de los aos la variedad de lneas de investigacin ha permitido decantar soluciones eficientes, robustas y elegantes, a ms de asegurar la permanencia del sistema operativo sin riesgo alguno de monopolio o propiedad. El desarrollo ms reciente ha sido el advenimiento de Linux, a partir de un ncleo (kernel) diseado por Linus Torvalds, un estudiante graduado de la Universidad de Helsinki, Finlandia, en 1991. A este ncleo se agregan una cantidad de productos complementarios, fundamentalmente de GNU, un proyecto de desarrollo de UNIX libre de costo. Sostenido por una extensa comunidad de empresas, desarrolladores, voluntarios y entusiastas, Linux es hoy un sistema operativo completo, de calidad profesional, usado en produccin y soportado como sistema operativo primario por muchos proveedores. Muchas empresas grandes como Oracle han portado sus productos a Linux.
Ahora que ya sabemos que es Unix y su historia, estamos preparados para denir a GNU/Linux. Que es GNU/Linux? GNU/Linux es un clon del sistema operativo Unix, escrito desde cero por el nlandes Linus Torvalds con la asistencia de un pequeno grupo de hackers esparcidos por la red1 . Entre sus principales caractersticas se encuentra la implantacin del estardar POSIX. Estrictamente, GNU/Linux se reere al nucleo o kernel. En un sentido ms amplio, comprende el nucleo del sistema operativo ms un conjunto de programas que permiten compilar lenguajes de programacion,editar texto, interpretar comandos, manejar archivos y discos, acceder a otras maquinas, establecer co municaciones telefonicas, enviar y recibir correo electronico, manejar las colas de impresion y un sinfi de tareas ms. Algunos de estos programas pueden haber sido desarrollados por los propios usuarios. Lo que en un principio no era ms que un proyecto personal de un joven que se crea el mejor programador del mundo , termino siendo uno de los mejores sistemas operativos; usado ampliamente en todo el mundo, desde instituciones educativas hasta comerciales, pasando por gubernamentales. Las versiones iniciales fueron distribuidas en cdigo fuente por el propio Linus, para que otras personas pudieran entender su proyecto y sobretodo para que lo ayudaran. Linus trabajo activamente hasta la version 0.96, tras ello, se sumaron al proyecto ms programadores y se formo un grupo de desarrollo amplio (Linux Developers) que continua siendo dirigido por el; pero como el mismo lo reconoce, su labor es ms la de un router del grupo que la del desarrollo en si.
Procesos
Todo el software ejecutable de la computadora se organiza en varios procesos. Un proceso es tan solo un programa en ejecucin , consta del programa ejecutable, sus datos y pila. Los estados en los que un proceso se puede encontrar son:
Listo (no existe cpu disponible para el) Bloqueado (proceso detenido).
Llamadas al Sistema
Las llamadas al sistema son el conjunto de operaciones o servicios que el sistema operativo ofrece a los procesos que se ejecutan en modo usuario para que puedan acceder a sus recursos. Estas llamadas permiten realizar operaciones sobre los archivos tales como (apertura, lectura, escritura), sobre los procesos (creacin, comunicacin, eliminacin), o sobre la red (envo y recepcin de mensajes).
Archivos
Concepto: Un archivo es un conjunto de caracteres o bytes. La estructura del sistema de archivos es jerrquica, es decir una grfica dirigida o, vista de otro modo, una estructura arbrea. Los tipos de Archivos que tenemos en GNU/Linux son:
Archivos Regulares: contienen una secuencia de bytes que corresponden generalmente a cdigo o datos. Ellos pueden ser accedidos utilizando las llamadas al sistema estndares de E/S. Archivos Tipo Directorios: estn almacenados en el disco con un formato especial y forman la columna vertebral del sistema de archivos. Este tipo de archivo solamente puede ser referenciado a travs de las llamadas al sistema especficas para directorios. Archivos Especiales: son archivos asociados con dispositivos perifricos, tales como impresoras o discos; o con mecanismos de comunicacin entre procesos, tales como pipes o sockets. Este tipo de archivo puede ser tambin accedido mediante las llamadas al sistema estndares de E/S.
Administrador de procesos. (scheduler) Administrador de E/S. Administrador de la Memoria. Manejo del Sistema de Archivos.
Comandos cortos, simples, especficos y muy eficientes, que "hacen una sola cosa pero la hacen muy bien". Entrada y salida estandarizadas que permiten la interconexin de comandos. Esto se llama entubamiento ("pipelining"): la salida de un comando es tomada por el siguiente como entrada.
Ventajas de GNU/Linux
Multiusuario. Multitarea. Soporta acceso remoto. Soporte nativo de TCP/IP (Fcil conexin a Internet y otras redes). Contiene xFree86, que es una interfaz grfica de usuario basada en los estndares de X-Windows, y tambin es gratuita. Al instalar el sistema operativo, tambin se tiene la posibilidad de instalar varios programas, tales como: hojas de clculo, bases de datos, procesadores de texto, varios lenguajes de programacin, paquetes de telecomunicaciones y juegos. Cumple los estndares POSIX y de Sistemas Abiertos, esto es que tiene la capacidad de comunicarse con sistemas distintos a l. Existe mucha documentacin sobre ste.
Desventajas de GNU/Linux
Carencia de soporte tcnico. No ofrece mucha seguridad. Problemas de hardware, no soporta todas las plataformas, y no es compatible con algunas marcas especficas. No existe un control de calidad al momento de elaborar software para GNU/Linux, pues muchas veces las aplicaciones se hacen y se liberan sin control alguno. Es poco probable que aplicaciones para DOS y OS/2, se ejecuten correctamente bajo GNU/Linux. No hay forma segura de instalarlo sin reparticionar el disco duro. El reparticionar el disco duro, implica borrar toda la informacin del mismo y despus restablecerla. Se requiere experiencia y conocimiento del sistema para administrarlo, pues como es un sistema por lnea de comandos, estos poseen muchas opciones y en ocasiones es difcil realizar algunas tareas, que en otros sistemas operativos de red son triviales.
Nombre: Identificacin del usuario cuando entra en la mquina (login). Clave: Palabra oculta que solo conoce el usuario. UID, GID: Nmeros de identificacin de usuario y grupo, respectivamente. Directorio propio (home): Directorio inicial donde se situara el usuario al entrar en el sistema. Shell de inicio: Primer proceso que se arranca una vez dentro del sistema.
Superusuario o root (UID=0): Es el administrador del sistema. Tiene todos los privilegios. Usuarios normales: El resto de usuarios que pertenecen a distintos grupos, los cuales pueden tener una serie de propiedades comunes. Usuarios especiales: Asignados a tareas especificas por el sistema, generalmente de informacin o manejo de aplicaciones ya instaladas de uso comn a usuarios externos o internos.
ls.-lista archivos del directorio actual. Sintaxis: ls [opciones] [archivo...] Opciones: -a Lista todos los archivos, incluyendo aquellos que comienzan con un .. -d Lista el nombre del directorio en vez de los archivos contenidos en l. -l Lista los archivos con mucho mas detalle, especificando para cada archivo sus permisos, el nmero de enlaces rgidos, el nombre del propietario, el grupo al que pertenece, el tamao en bytes, y la fecha de modificacin. -r Invierte el orden de listado de los archivos. -s Muestra el tamao de cada archivo en bloques de 1024 bytes a la izquierda del nombre. -t Lista los archivos ordenados por el tiempo de modificacin en vez de ordenarlos alfabticamente. -A Lista todos los archivos excepto el . y el ... -R Lista los contenidos de todos los directorios recursivamente. -S Ordena el listado por el tamao de los archivos.
Uname.- Indica nombre y versin del sistema operativo. Usado con la opcin -a muestra toda la informacin. Sintaxis: uname [opcion] Opciones: -r Muestra la versin completa del kernel del sistema. Hostname.-Es un alias o nombre que un administrador asigna a un equipo para identificarlo. TTY Sirve para comprobar el estado actual de la terminal y para cambiar la configuracin de la misma. Al ejecutarlo nos aparecer algo como esto: /dev/pts/0 STTY Permite fijar las opciones de una terminal. Sintaxis: stty [opciones]
nombre.- Es el nombre del comando. opciones o banderas.- controlan la forma en que acta el comando; van precedidas por el signo - (menos). argumentos son comnmente nombres de archivos o nombres de login de usuarios.
3.2 COMANDO ls
Este comando sirve para listar archivos. Su sintaxis es: ls [opciones] [archivo...]
Si se ejecuta ls sin argumentos, dar como resultado un listado de todos los archivos (incluyendo directorios) del directorio donde el usuario est posicionado. Sus opciones son: -a -d Lista todos los archivos, incluyendo aquellos que comienzan con un .. Lista el nombre del directorio en vez de los archivos contenidos en l.
-l Lista los archivos con mucho mas detalle, especificando para cada archivo sus permisos, el nmero de enlaces rgidos, el nombre del propietario, el grupo al que pertenece, el tamao en bytes, y la fecha de modificacin. -r -s -t -A -R -S Invierte el orden de listado de los archivos. Muestra el tamao de cada archivo en bloques de 1024 bytes a la izquierda del nombre. Lista los archivos ordenados por el tiempo de modificacin en vez de ordenarlos alfabticamente. Lista todos los archivos excepto el . y el ... Lista los contenidos de todos los directorios recursivamente. Ordena el listado por el tamao de los archivos.
Ejemplos: ls -la lista todos los archivos (ocultos y visibles) del directorio actual de manera detallada. ls -R lista todos los archivos de los directorios contenidos en el directorio actual recursivamente.
3.3 COMANDO cd
Este comando se usa para cambiar de directorio. Generalmente cuando el usuario inicia una sesin, el directorio donde comienza es su directorio personal. De ah uno puede moverse a los diferentes directorios donde se tenga acceso usando este comando. Su sintaxis es la siguiente: cd directorio
Ejemplos:
3.4 COMANDO cp
Este comando se utiliza para copiar archivos. Su sintaxis es la siguiente: cp [opciones] archivo-origen camino-destino cp [opciones] archivos-origen... directorio-destino
Entre las opciones ms relevantes, se tiene: -f -p -R -v -i Borrar los archivos de destino ya existentes. Preservar los permisos, el usuario y el grupo del archivo a copiar. Copia directorios recursivamente. Da informacin en pantalla sobre los archivos que se van copiando. Pregunta si sobreescribir archivos regulares destino existentes.
Ejemplos: cp archivo1 archivo2 copia el archivo1 al archivo2 cp -R directorio1 directorio2 copia un directorio y todo su contenido del directorio1 al directorio2
3.6 COMANDO rm
El comando rm sirve para eliminar o borrar archivos. rm [opciones] archivo... Opciones: -f -r -v (No imprimir mensajes de error, ni pedir al usuario una confirmacin por cada archivo que se vaya a borrar.). (Borrar los contenidos de directorios recursivamente.) (Muestra el nombre de cada archivo eliminado.)
COMANDO rmdir
El comando rmdir (remove directory) se utiliza para borrar un directorio; pero antes de utilizar este comando se deben de borrar todos los ficheros que contenga (incluidos los ficheros invisibles), es decir, el directorio que se va a borrar tiene que estar vaco.
Algunas de sus opciones son: -num especifica el nmero de lneas mostradas por pantalla
-d mostar un prompt al usuario con el siguiente mensaje [Presiona la barra espaciadora para continuar, 'q' para salir.] y desplegar [Presiona 'h' para instrucciones]. Sonar una campana cada que se presione un tecla desconocida. -f +/ +num muestra el contenido por pginas. especifica una cadena que ser buscada antes de que el archivo ser desplegado. comienza en la linea especificada
Ejemplos: more +2000 /var/spool/mail/root muestra el conternido del archivo '/var/spool/mail/root' a partir de la lnea 2000. ps -fea | grep more muestra la salida del comando ps listando los procesos actuales del sistema por pgina. more -30 /var/spool/mail/root muestra el contenido del archivo '/var/spool/mail/root' por pgina de 30 lneas cada una.
FORMAT controla el formato con que se mostrar la fecha, algunas de las opciones de este argumento son:
%a (Da de la semana abreviado) %A (Da de la semana completo) %b (Nombre del mes abreviado) %B (Nombre del mes completo) %d (Da del mes) %m (Nmero de mes) %H (Hora, en formato 24h) %M (Minutos) %S (Segundos).
Ejemplos: date +%d muestra el dia del mes actual date +%a-%b muestra el dia de la semana y el mes actual abreviados y separados por un guin.
3.9 COMANDO mv
El comando mv mueve o renombra archivos o directorios. Su sintaxis es: mv [opciones] origen destino
Llamemos destino al archivo o directorio al cual se va a mover un archivo o directorio especificado. Si destino existe, mv pregunta al usuario si quiere reemplazar el archivo o directorio. Cuando tanto origen como destino estn en el mismo sistema de archivos, slo el nombre se cambia; el propietario, permisos y marcas de tiempo permanecen intactos. Cuando estn en sistemas de archivos diferentes, el archivo origen se copia con el nuevo nombre (destino) y luego se borra. mv copiar el tiempo de modificacin, el tiempo de acceso, el identificador del propietario y del grupo y los permisos. Sus opciones son: -f, --force Borra los archivos de destino existentes sin preguntar nunca al usuario. -i, --interactive Pregunta si se desean sobreescribir archivos de destino regulares existentes. Si la respuesta no es afirmativa, se pasa al siguiente archivo sin efectuar la operacin. -u, --update No mueve un archivo que tenga un destino existente con el mismo tiempo de modificacin o ms reciente. -v, --verbose Muestra el nombre de cada archivo antes de moverlo.
Ejemplos: mv bitacora instalacion renombra el archivo llamado bitacora a instalacion dentro del directorio actual. mv -i bitacora instalacion renombra el archivo llamado bitacora al archivo existente instalacion preguntando si se desea sobreescribir el archivo.
Llamemos destino al archivo o directorio en el cual se comprimiran los archivos (origen) especificados. Las opciones mas usadas son: -c --create crea un nuevo archivo empaquetado -t list lista el contenido del archivo empaquetado -x --extract --get extrae los arhivos de un archivo empaquetado -f, --file F usa un archivo para empaquetar -j, --bzip2 usa un archivo para empaquetar con formato bz2 -v, --verbose lista el proceso de empaquetado en pantalla -z, --gzip, --gunzip comprime los archivos especificados
Ejemplos: tar -cvf empaquetado.tar archivo1 archivo 2 directorio1 empaqueta los archivos archivo1, archivo2 y el directorio1 en un archivo empaquetado llamado empaquetado.tar tar -xvf empaquetado.tar desempaqueta el contenido del archivo empaquetado.tar tar -cvzf empaquetado.tar.gz archivo1 archivo 2 empaqueta y comprime los archivos archivo1 y archivo2 en un archivo llamado empaquetado.tar.gz tar -xvzf empaquetado.tar.gz desempaqueta y descomprime el contenido del archivo llamado empaquetado.tar.gz
Algunas de sus opciones son: -A, --show-all equivalente al la combinacin de -vET -b, --number-nonblank numera las lneas del archivo sin contar saltos de lnea. -e equivalente a la combinacin de -vE
-E, --show-ends muestra el signo de '$' al final de cada lnea -n, --number numera todas las lineas del archivo -t equivalente a la combinacin de -vT
--help muestra la ayuda del comando y sale --version muestra informacin de la version del comando y sale
Ejemplos: cat -A /var/spool/mail/root muestra el contenido del archivo '/var/spool/mail/root' colocando el signo de '$' al final de cada linea. cat -nb /var/spool/mail/root muestra el contenido del archivo '/var/spool/mail/root' numerando solamente las lneas que no contienen saltos de lnea.
3.12 COMANDO ps
El comando ps muestra los procesos que se encuentran activos. Por default, ps selecciona todos los procesos activos asociados al identificador del usuario actual (EUID) y asociado a la misma terminal que invoc. Despliega el identificador del proceso (PID), la terminal asocia con el proceso (TTY), el tiempo de CPU acumulado en el fomato [dd-]hh:mm:ss y el nombre ejecutable del proceso (CMD) . Su sintaxis es: ps [opciones]
Algunas de sus opciones son: -A -a seleciona todos los procesos. Identico a la opcin -e. selecciona y muestra todos los procesos excepto los no asociados con la terminal
-C cmdlist selecciona los procesos dados por el nombre del proceso ejecutable. -G grplist selecciona los procesos de acuerdo al identicador de grupo (RGID) indicado. Identifica el grupo del usuario quien cre el proceso. -U userlist selecciona los procesos de acuerdo al identificador del usuario (EUID)quien hace uso del proceso.
Ejemplos: ps -U admin muestra los procesos asociados al usuario admin ps -fea muestra todos los procesos actuales con todas sus caractersticas: UID,PID,TTY,TIME,etc.
-e PATTERN, --regexp=PATTERN muestra las lineas que contienen el patrn especificado. Esta opcion se usa especialmente para patrones que comienzan con un guin '-'. -R, -r, --recursive lee todos los archivos bajo los directorios de manera recursiva. Ejemplos: grep -e -mail /var/spool/mail/root muestra todas las lneas contenidas en el archivo '/var/spool/mail/root' que contengan el patrn -mail grep mail* /var/spool/mail/root muestra todas las lneas contenidas en el archivo '/var/spool/mail/root' que contengan una palabra que comience con mail.
Algunos de los tests son: -amin n archivos que han sido accesados n minutos atrs. -atime n archivos que fueron accesados n-24 horas atrs. -cmin n archivos que cambiaron su estado n minutos atrs -ctime n archivos que cambiaron n-24 horas atrs. -mmin n archivos que moficaron su contenido n minutos atrs. -mtime n archivos que fueron modificados n*24 horas atrs. -name patron archivos cuyo nombre coincide con el patrn especificado. -size n[cwbkMG] archivos con n unidades de espacio ocupados. Los siguientes sufijos pueden ser usados: b c w k M G por bloques de 512-bytes (opcion por default) por bytes por palabras de 2 bytes por Kilobytes (unidades de 1024 bytes) por Megabytes (unidades de 1048576 bytes) por Gigabytes (unidades de 1073741824 bytes)
Ejemplos: find -size 6M lista todos los archivos a partir del directorio actual con un peso aproximado de 6 Megas. find / -name calificaciones -print lista todos los archivos encontrados en el sistema que se llamen calificaciones.
Algunos de sus comandos son: -b path usa la ruta especificada para crear el archivo zip -d borra los archivos especificados desde el archivo zip.
borrar el achivo alumnos/calificaciones/juan y todos los archivos dentro de alumnos/fotos contenidos en el archivo comprimido alumnos.zip. -r comprime todos los archivos y caperta recursivamente.
Ejemplos: zip -r cursos.zip cursos comprime todos los archivos y directorios contenidos en cursos dentro de un archivo llamado cursos.zip zip pruebas.zip examen1.doc usuarios.txt promedios.xls comprime los archivos examen1.doc usuarios.txt promedios.xls dentro del archivo pruebas.zip
archivo[.zip] nombre del archivo que contendr los archivos comprimidos en zip. [archivo(s)] parmetro opcional que especifica una lista de archivos a comprimir [-x xarchivo(s)] parmetro opcional que especifica una lista de archivo a ser excluidos de la compresion. [-d exdir] parmetro opcional que especifica el directorio donde se extraern los archivos comprimidos. -f actualiza los archivos existentes, por ejemplo, extrae aquellos archivos que existen en disco y que son ms recientes que la copia en disco. -l -v lista los archivos contenidos el en zip. lista los archivos contenidos en el zip de forma detallada.
Ejemplos: unzip Bitacoras.zip -d /tmp extrae los archivos contenidos en Bitacoras.zip dentro de la ruta /tmp unzip Bitacoras.zip extrae los archivos contenidos en Bitacoras.zip dentro del directorio actual
Comando du.
Funcin: Informa el espacio que ocupa un archivo. Sintaxis: du [-opciones] [argumentos]
Opciones: -h (Formato humano) convierte los valores obtenidos a megabytes. -s Genera un total por cada argumento.
Ejemplos: Para calcular el espacio que ocupan dos directorios: du -hs directorio1 directorio2 Calculo del espacio que ocupa el directorio actual: du -hs Identificacin de archivos en el direcotrio actual ordenndolos de menor a mayor por tamao: du -hs * | sort n
Comando man.
Funcin: muestra el manual, paginado con el comando more, para el comando que se le indique como argumento, est ordenado por secciones: funcin del comando, sintaxis, opciones, ejemplos, comando relacionados. Sintaxis: man [comando]
Comando df.
Funcin: Informa el uso de disco. Sintaxis: df [-opciones] [sistema de archivos]
Primera columna: Sistema de archivos, dispositivo asociado al sistema de archivos. Segunda columna: Tamao del sistema de archivos. Tercera columna: Espacio ocupado del sistema de archivos. Cuarta columna: Espacio disponible en el sistema de archivos. Quinta columna: Nivel de saturacin del sistema de archivos expresado procentualmente. ltima columna: Punto de montaje para el dispositivo asociado al sistema de archivos.
Comando su.
Funcin: Permite el acceso a un shell con privilegios de otro usuario. Idealmente, los permisos en el sistema se configuran de modo que este comando solicite autentificacin a travs de contrasea. Sintaxis: su [-opcin] [-usuario] [argumento]...
Opciones: -c permite invocar un comando con privilegios de otro usuario. -l, - invoca un shell para el nuevo usuario indicado como argumento. Ejemplos: Para invocar un shell con privilegios del usuario administrador su administrador Para ejecutar un comando con privilegios de otro usuario: su - root -c df
Comando tail.
Funcin: Por omisin muestra las ltimas 10 lneas del archivo que recibe de la entrada estndar. Sintaxis: tail [-#] archivo
Opciones:
-c, -bytes=n
-n
-f
Abre en forma interactiva un archivo, muestra las ltimas 10 lneas y mantiene abierto el archivo, imprimiendo cada nueva lnea que se le agrega.
Ejemplos: Anlisis interactivo de una bitcora de aplicacin: tail -f /var/log/apache.log Revisin de las ltimas 5000 lneas de un archivo: tail -5000 archivo | more
Comando useradd.
Funcin: Crea un nuevo usuario en el sistema. Sintaxis: useradd [-opciones] login
Opciones: -d Permite indicar el directorio hogar para el nuevo usuario. -m Crea el directorio hogar para el usuario. -s Define el shell que atender por omisin al usuario. -u Indica el nmero identificador del usuario en el sistema. -g Indica el nmero identificador del grupo del usuario en el sistema. Combinacin de opciones: useradd -d /home/usuario1 -m -s /bin/bash -u 504 -g 503 usuario1
Comando adduser
Funcin: Crea un nuevo usuario en el sistema de forma interactiva.
Comando uname.
Funcin: Informa sobre las caractersticas del sistema. Sintaxis: uname [-opciones]
Opciones: -s Sistema operativo. -p Tipo de procesador. -r Versin del kernel. -a Imprime toda la informacin.
Comando wall.
Funcin: Enva mensajes a todas las terminales del sistema. Sintaxis: wall mensaje
Para enviar el mensaje usamos la combinacin de teclas ^D Ejemplo: wall El sistema se apagar en 10 minutos ^D
4.1 SISTEMAS DE ARCHIVOS (/etc, /var, /bin, /sbin, /tmp, /lib, /dev, etc)
GNU/Linux es un sistema operativo en el que la organizacin de los archivos es jerrquica, organizada en directorios, presentando una estructura en forma de rbol, en donde los directorios son ramas y los archivos hojas. El directorio raz (/) es el directorio principal, del que cuelgan subdirectorios, de los que a su vez cuelgan otros directorios o subdirectorios. Un sistema de archivos es equivalente a una unidad lgica en MSDOS, pero mientras en DOS se referencia automticamente con una unidad (por ejemplo c: ), en GNU/Linux es necesario montarla (hacerla accesible).
Montar un sistema de archivos consiste en asignar un directorio, o punto de montaje, a la unidad lgica. El montaje de un sistema de archivos se realiza con el comando mount, y el desmontaje con el comando umount. Ambas tareas solo son realizables, en principio, por root.
mount Dispositivo Directorio Monta el Dispositivo en el directorio especificado. mount Muestra los dispositivos montados. umount Directorio Desmonta el Directorio especificado.
/home : Sistema de archivos para ubicacin de los directorios de usuario. /tmp : Sistema de archivos para temporales. Puede estar ubicado en memoria RAM (disco RAM), con lo que el acceso ser ms rpido. /usr : Sistema de archivos para archivos ejecutables, documentacin, referencia. /var : Sistema de archivos para logs, auxiliares, archivos que crecen.
/ : directorio raz. De l cuelgan todos los dems directorios. /bin : archivos ejecutables, comandos de usuario. /cdrom : punto de montaje de CD. /dev : archivos de dispositivos (discos, terminales, etc.). /etc : archivos de configuracin, administracin e informacin del sistema. /floppy : punto de montaje de disquetes. /home : archivos de usuarios. /lib : archivos de bibliotecas de desarrollo y material de apoyo. /lost+found : archivos perdidos. /mnt : punto de montaje de dispositivos externos. /sbin: archivos ejecutables de administracin. /tmp : Archivos temporales o zona de trabajo de algunos programas GNU/Linux. /usr : archivos ejecutables, documentacin, referencia. /var : archivos logs y auxiliares.
Para saber en que lugar del rbol de directorios estamos utilizamos el comando: pwd
Trayectoria
La trayectoria (path) de un archivo o directorio indica cmo llegar a ste a partir de un directorio dado. Ruta Absoluta: es el camino absoluto que muestra toda la ruta para llegar a un archivo o directorio
Ejemplo: /home/documentos/Carta.txt Aqu tenemos toda la ruta para llegar a nuestro archivo Carta.txt, que est dentro del directorio documentos, el cual a su vez esta dentro del directorio home. Ruta Relativa: es el camino relativo que muestra solo parte de la ruta para llegar a un archivo o directorio.
Ejemplo: /documentos/Carta.txt
Directorios Especiales: Todos los directorios contienen dos directorios especiales en GNU/Linux:
Un ejemplo en donde utilizamos los directorios especiales es el siguiente: Estando en el directorio /home/alumnos se puede acceder a Carta.txt con solo teclear /home/documentos/Carta.txt (path absoluto) o bien tecleando ../documentos/Carta.txt (path relativo). Directorio Hogar y Directorio de Trabajo de los Usuarios en GNU/Linux: Cada vez que se crea una cuenta para un usuario nuevo, se le asigna un directorio (el directorio hogar). El directorio hogar (home directory o login directory) es el directorio donde est el usuario cuando se conecta al sistema. /home Al directorio donde en un momento dado se encuentra el usuario se le llama el directorio de trabajo (working directory o current directory). Cmo regresarse al directorio home? La manera ms sencilla para regresar al directorio home es simplemente usando el comando cd sin ningn argumento.
PRCTICA
1. Conectarse al servidor y crear los siguientes directorios: RutaRelativa
RutaAbsoluta
4. Verifica la salida del comando. Lo que ves es la ruta absoluta del directorio.
6. Ahora te encuentras dentro del directorio RutaRelativa y te cambiaste a l haciendo uso de una ruta relativa (../RutaRelativa).
7. Puedes verificar el contenido del directorio padre haciendo uso de rutas relativas. Ejecuta el siguiente comando: ls l ..
Archivos Ordinarios: Son un conjunto de datos almacenados en memoria secundaria. Directorios (o carpetas), es un archivo especial que agrupa otros archivos de una forma estructurada. Archivos especiales: Son la base sobre la que se asienta LINUX, puesto que representan los dispositivos conectados a un computadora (Impresoras, Discos magnticos, Disquetes Cintas magnticas, Terminales, etc.). Hay dos tipos de archivos especiales:
o o
En Modo Bloque: aquellos que contienen bloques de bytes. Por ejemplo los discos duros o los disquetes. En Modo Carcter: aquellos que permiten el acceso a los dispositivos como secuencias o flujos continuos de bytes. Por ejemplo una terminal o una impresora.
FIFO o PIPES Es similar a un archivo ordinario. La diferencia es que cuando se lee un dato de el, se borra y ya no podr ser ledo. Tambin se conocen como tuberas con nombre (named pipes). Enlaces o Ligas (Rgidos y Simblicos)
o o
Enlace rgido: No es una clase de archivo, slo un segundo nombre. Se usa generalmente cuando dos usuarios necesitan compartir la informacin de un archivo de forma consistente. Enlace simblico: Un enlace simblico es un archivo que slo contiene el nombre de otro archivo, de tal modo que pueden emplearse para asignar mas de un nombre a un archivo o directorio.
Los enlaces o ligas de ambos tipos finalmente son archivos y se pueden tratar como tal, borrarlos, cambiarles los permisos, etc. Sin embargo, es conveniente aclarar que si se crea y despus borra una liga tanto rgida como simblica el archivo origen no ser afectado; para el caso de que se borre el archivo origen la liga dura sigue existiendo, pero en el caso de la liga simblica si se borra el archivo origen esta tambin deja de existir.
5.2 COMANDOS PARA CONOCER Y CAMBIAR LOS ATRIBUTOS DE UN ARCHIVO 5.2.1 COMANDO ls
$ ls [opciones][archivo(s)] : permite ver los archivos que hay en un directorio. Opciones:
-a (para ver archivos ocultos). -F (se identifican los tipos de archivos menos los de dispositivos). -R (muestra el contenido de los directorios recursivamente). -l (indica los archivos que se quieren visualizar en formato largo: una lnea completa por cada archivo).
Ejemplo de la utilizacin del comando ls con la opcin l: $ ls l total 1 -rw-r--r-- 1 prueba usuarios 170 mar 26 18:17 README
El formato de esta opcin es el siguiente: <-rw-r--r-->< 1>< prueba>< usuarios>< 170>< mar 26 18:17>< README> < modo>< enlaces>< propietario>< grupo>< tamao>< fecha>< nombre>
< modo>Es un conjunto de 10 caracteres, el primero de ellos indican el tipo de archivo del que se trata y los siguientes 9 los permisos del archivo. Los permisos se explicn ms adelante, el tipo de archivo puede ser:
- archivo regular d directorio l enlace simblico b dispositivos de modo bloque e dispositivos de modo carcter
< enlaces> indica el nmero de enlaces de tipo Liga Dura que tiene el archivo. Indica por tanto desde cuantos sitios se puede acceder a ese archivo. Si el archivo es de tipo directorio, este campo es el nmero de subdirectorios+2. < propietario> contiene el nombre del dueo del archivo. < grupo> indica el grupo al que pertenece el propietario. < tamao> indica el tamao del archivo en bytes. < fecha> indica la fecha y hora de creacin o de ltima actualizacin del archivo. < nombre> indica el nombre del archivo por el que le identificamos en el sistema.
5.2.2 Comando ln
Este comando sirve para establecer enlaces entre archivos. Un enlace puede ser rgido o simblico
Enlace rgido es aquel en el cual se puede dar otro nombre a un mismo archivo (nicamente para el mismo sistema de archivos, por ejemplo en /home). Enlace simblico es aquel en el cual se pueden enlazar directorios y archivos an de diferentes sistemas de archivos.
La sintaxis del comando ln es: ln [opciones] origen [destino] ln [opciones] origen... directorio Sus opciones son: -d (Permite al super-usuario hacer enlaces rgidos a directorios). -s (Crear enlace simblico). -f (Borrar los archivos de destino que ya existen).
Ejemplo de la utilizacin del comando ln para crear un enlace simblico: $ ln -s mbox correo Si hacemos un listado largo a travs del comando ls l veremos algo como lo siguiente: lrwxrwxrwx 1 usuario grupo 4 abr 1 14:07 correo -> mbox la liga correo est apuntando al archivo mbox
Usuario (u): El propietario del fichero. Grupo (g): El grupo al que pertenece el fichero. Otros (o): El resto de los usuarios del sistema
Acceso
Archivo
Directorio
Ver el contenido
Listar el contenido
Modificar el contenido
Crear/eliminar archivos
Ejecutar
Entrar en el directorio
Modo Octal Existe otra manera en que se pueden especificar los permisos de archivos: los bits r, w y x tienen asignados un numero, proveniente de la notacin binaria que se utiliza para almacenarlos como bits propiamente tal:
Read=
Write=
eXecute=
Ahora es posible utilizar nmeros, que son la suma de los distintos bits de permisos. La combinacin de bits encendidos o apagados en cada grupo da ocho posibles combinaciones de valores, es decir la suma de los bits encendidos:
---
=0
--x
=1
-w-
=2
-wx
=3
r--
=4
r-x
=5
rw-
=6
rwx
=7
Cuando se combinan los permisos del usuario, grupo y otros, se obtienen un nmero de tres cifras que conforman los permisos del archivo o del directorio. Ejemplo: Si deseamos otorgar slo permiso de lectura, el cdigo a utilizar es el 4. Si deseamos otorgar slo permiso de lectura y ejecucin, el cdigo es el 5. Si deseamos otorgar slo permiso de lectura y escritura, el cdigo es el 6. Si deseamos otorgar todos los permisos, el cdigo es el 7. Si deseamos quitar todos los permisos, el cdigo es el 0.
Usuario: leer, escribir y ejecutar Grupo: leer y ejecutar Otros: leer y ejecutar
Opciones: -R cambiar los permisos a los archivos y directorios de manera recursiva. Un ejemplo de chmod se muestra a continuacion: # chmod u-x,g+w,o+rw archivo Este comando elimina el permiso de ejecucin para el usuario, coloca el bit de acceso a escritura para el grupo y da a todos los dems acceso de lectura y escritura. Con el modo octal, es posible utilizar nmeros, que son la suma de los distintos bits de permisos. Por lo tanto el comando chmod ahora se convierte en: chmod xyz archivo
donde x, y y z son nmeros que representan los permisos del usuario, grupo y otros, respectivamente. Cada nmero es la suma de los permisos a colocar y se calculan como se indic anteriormente. Ejemplo de chmod con modo octal: # chmod 644 archivo 6 = 4 + 2 = rw 4=r 4=r
# chown jperez constancia Lo que asigna a jperez como propietario del archivo constancia. Para cambiar el grupo, se utiliza el comando chgrp (CHange GRouP, cambiar grupo); igual, es necesario ser el propietario del archivo, o ser root. Sintaxis: # chgrp [opciones] nuevo_grupo [archivo1][archivo2]
Opciones: -R -v -c cambia de forma recursiva la propiedad de los directorios y sus contenidos describe en detalle los cambios de propiedad. describe con detalle slo los cambios cuya propiedad cambia.
Ejemplo de la utilizacin del comando chgrp: # chgrp usuarios constancia Esto coloca al grupo usuarios como el perteneciente al archivo constancia. Tambin es posible cambiar simultneamente el usuario propietario y el grupo de un archivo a travs del comando chown, separndolos por uno o dos puntos: # chown jperez.usuarios constancia # chown jperez:usuarios constancia Lo que asigna a jperez como propietario y a usuarios como grupo del archivo constancia.
6. EDITORES.
r (Cada cierto tiempo 'vi' salva el buffer de edicin en disco. De forma que si se produce cualquier fallo en el sistema, siempre se encontrar una copia reciente del fichero que se editaba). R (Indica que solo se editar el archivo para consulta. No permitindose realizar cambio alguno sobre la informacin.). wn (Normalmente 'vi' utiliza la pantalla completa como ventana de edicin. Mediante esta opcin se podr alterar el tamao de la ventana de edicin a un nmero de lneas determinado por n).
Podemos utilizar la opcin + , que permite entrar en el vi en la lnea que le indiquemos. Por ejemplo: Vi +7 fichero Editar el fichero indicado y tomar como lnea actual la 7. Vi +$ fichero Editar el fichero indicado y tomar como lnea actual la ltima lnea del fichero. Vi +/cadena fichero Editar el fichero indicado y tomar como lnea actual la primera lnea que contenga la cadena indicada.
El editor vi tiene tres modos de trabajo diferente: El modo de insercin, el de edicin y el de comandos. Modo de Insercin. En el modo de insercin, toda la entrada que demos en el teclado se inserta en el archivo en el punto donde se encuentre el cursor. Modo de Edicin. En el modo de edicin daremos instrucciones que alteran el contenido, como por ejemplo para posicionarse en determinado punto, hacer reemplazos de texto, copiar o mover, bloques de texto, etc. Modo de Comandos. En el modo comandos se dan instrucciones para salvar el archivo, traer a edicin otro, insertar otro archivo en el punto donde se est, terminar la edicin, etc.
Instrucciones Suplementarias:
ndd
nyy
P (mayscula)
ZZ (maysculas)
ESC
o (minscula)
cambia a modo insercin e inserta una lnea en blanco abajo de la posicin del cursor.
cambia a modo insercin e inserta una lnea en blanco arriba de la posicin del cursor.
a (minscula)
cambia a modo insercin y se coloca una posicin despus donde se encuentra el cursor.
-H nos muestra las cabeceras de las columnas: -u nos muestra el tiempo que estuvo inactivo el terminal. -q muestra el nmero total de usuarios conectados.
7.2 COMANDO w
El comando w nos indica lo que est haciendo cada usuario. Sintaxis: $ w La informacin que aparece al ejecutar este comando es:
USER usuario. TTY terminal en el que est conectado el usuario. FROM desde donde est conectado el usuario.
LOGIN@ hora en la que empez la sesin. IDLE tiempo que el usuario ha permanecido inactivo. JCPU tiempo total de CPU para todos los procesos en el terminal. PCPU tiempo total de CPU para todos los procesos activos en el terminal. WHAT comando que est siendo ejecutado en el terminal.
Sintaxis: [admin@aldebaran ~]$ nslookup [IP Nombre de dominio] Ejemplo: [admin@aldebaran ~]$ nslookup www.hotmail.com Server: 132.248.204.1 Address: 132.248.204.1#53 Non-authoritative answer: www.hotmail.com canonical name = www.hotmail.com.nsatc.net. www.hotmail.com.nsatc.net canonical name = www.hotmail.aate.nsatc.net. Name: www.hotmail.aate.nsatc.net Address: 165.193.120.166
Cc: Esta es una lista de las direcciones de correo que recibirn una copia de carbn del mensaje. Si hay varias direcciones, se separan por comas. Bcc: Esta es una lista de las direcciones de correo que recibirn una copia de carbn ciega del mensaje. La diferencia principal entre Cc: y Bcc: es que las direcciones listadas en el Bcc: no aparecern en la cabecera del mensaje que se enva a cada destinatario. Es una forma de avisar a los destinatarios de que usted ha enviado copias del mensaje a otras personas, sin decir quines son. Si hay varias direcciones, se separan por comas. Subject: Describe el contenido del mensaje en pocas palabras. Date: Indica la fecha y hora en que se envi el mensaje.
Reply-To: Especifica la direccin a la que el remitente desea que el destinatario le conteste. Esto puede ser til si se tienen varias direcciones, pero se desea recibir la mayor parte del correo slo en aquella que se usa ms a menudo. Este campo es opcional. Organization: La organizacin que posee la mquina desde la que se ha enviado el mensaje. Si la mquina usada es la suya propia no incluya este campo, o bien indique privado o cualquier trivialidad sin sentido. Este campo no est descrito en ningn RFC y es completamente opcional. Algunos programas de correo lo soportan directamente, pero la mayora no. Message-ID: Una cadena generada por el transporte de correo en el sistema remitente. Es nica para cada mensaje. Received: Cada anfitrin que procesa su correo (incluyendo las mquinas del remitente y el destinatario) insertan este campo en el encabezado, dando el nombre del anfitrin, una identificacin de mensaje, hora y fecha a la que lo recibieron, de qu anfitrin procede, y qu software de transporte ha sido usado. Esto se hace as para que usted pueda conocer la ruta que su mensaje ha seguido, y pueda protestar a la persona responsable si algo ha ido mal.
Asignan formato a los mensajes salientes con informacin de cabecera apropiada y, si es necesario, codifican los mensajes salientes para que los Agentes de entrega de correo utilicen la codificacin durante el enrutamiento de los mensajes. Permiten que los usuarios lean, guarden y eliminen los mensajes de correo electrnico entrantes. Programan aplicaciones de Extensiones multipropsito de correo Internet (MIME), si es necesario, para que el usuario pueda experimentar la informacin no textual adjunta al correo electrnico entrante, por ejemplo, para ver archivos de grficos o clips de video, o para escuchar datos de audio.
Agentes de entrega de correo Los Agentes de entrega de correo (MDA - Mail Delivery Agents) forman el ncleo del sistema de correo electrnico. Estos programas, que por regla general se ejecutan en segundo plano, son responsables de enrutar y entregar el correo electrnico. Aunque sendmail se puede ejecutar directamente desde una lnea de comandos de shell para enviar un mensaje, no suele utilizarse de esa forma. Los Agentes de usuario de correo se utilizan, en general, como clientes para sendmail a fin de enviar correo. Funciones de los agentes de entrega de correo :
Entregan el correo a los usuarios locales (los usuarios que reciben correo electrnico en el equipo en que se ejecuta el Agente de entrega de correo) programando el programa /bin/mail o reenviando el correo a los usuarios de los equipos cliente locales. Reenvan, por medio del mecanismo de transporte apropiado, el correo electrnico que no est dirigido a los usuarios locales a otros equipos/redes para realizar su entrega. Modifican el formato de la informacin de direccin en las cabeceras de mensaje para tener cabida para las necesidades del siguiente equipo/red de la ruta de entrada de un mensaje y para acoger el mtodo de entrega que se utiliza para enrutar el mensaje.
Comandos de Correo Electrnico en LINUX: COMANDO mail Este comando sirve para mandar mails a un destinatrio. Sintaxis: mail [opciones] [destino] Opciones:
-v verboso muestra detalles de entrega. -s TEMA especifica el tema (subject) del mensaje. -c LISTA enva copias a LISTA de usuarios, separados por coma. -b LISTA enva copia ciega a LISTA de usuarios. -f [ARCH] lee contenido de archivo propio mbox o el indicado. -u USUARIO equivale a mail -f /var/spool/mail/USUARIO
& indicador de comandos de mail. ? muestra lista de comandos para manejo de mensajes. d borra mensaje corriente, marcado con '>' N muestra el mensaje nmero N q sale del programa de correo
9.1. REDIRECCIONAMIENTOS
En linux, a cada dispositivo corresponde un archivo de configuracin, aunque puede requerir de otros archivos que le sirvan para
realizar sus procesos de lectura, escritura y almacenamiento temporal de informacin. De esta manera, deducimos que a cada proceso estn asociados, al menos, 3 archivos abiertos y a cada uno se le asigna un nmero consecutivo conocido como descriptor de archivo. Primero: Corresponde al dispositivo que inicia el proceso, normalmente tecleamos los comandos o ejecutamos los programas, as que el primer archivo asociado y abierto es el correspondiente al teclado. Este archivo de donde provienen los datos o las instruciones de entrada se conoce como entrada estndar (standard input). Su descriptor (como archivo asociado al proceso) es el 0. Segundo: Este archivo es el asociado al dispositivo al cual se enviar el resultado del proceso, tpicamente es el monitor, aunque podra ser un archivo u otro proceso. A este archivo se le conoce como salida estndar (standard output) y su descriptor de archivo es el 1. Tercero: Las posibles salidas de error son separadas de la salida estndar, aunque para la ejecucin de un comando normalmente la vemos tambin en la pantalla, se le conoce como salida de error y su descriptor de archivo es el 2.
Mediante el uso de redireccionamientos, se pueden modificar los archivos de donde proviene la entrada estndar o al/los que se dirigen las salidas.
9.2.SIMBOLOGA.
> < >> << Direcciona de forma destructiva a un archivo, si no existe lo crea y si existe lo sobreescribe. Toma la entrada de un archivo. Agrega a un archivo, si este no existe lo crea, si existe, agrega la informacin redirigida. Agrega desde la entrada estndar y requiere un indicador de finalizacin.
Ejemplos: Para enviar el contenido del archivo /etc/passwd a otro archivo. Cat /etc/passwd > /home/usuario/passwd_bckp Para recibir la entrada estndar de un archivo: mail -s Correo de prueba usuario@cuaed.unam.mx < mensaje_de_bienvenida.txt Para agregar a un archivo el contenido de /etc/hosts: cat /etc/hosts >> configuracion_red.txt Para tomar la entrada estndar del teclado en forma interactiva: cat << FIN *Aqu recibe la entrada del teclado hasta que encuentra el patrn FIN Para tomar la entrada estndar del teclado en forma interactiva y direccionarla a un archivo: cat << FIN > otra_forma_de_editar.txt Esta es una prueba de direccionamientos FIN Ordenamiento numrico del contenido de un archivo: sort < archivo Para direccionar la salida de error a un archivo: $ find / -name apache.log 2> /dev/null Desecha las salidas de error direccionndolas a un dispositivo de salida. Direccionamiento de salida de error y estndar a un mismo archivo: find / -name apache.log 2>1& busqueda
9.3. TUBERAS
Las tuberas permiten enviar la salida de un proceso a otro proceso, el cual la puede usar como entrada estndar, de manera que se puede procesar mediante la ejecucin consecutiva de comandos una salida original.
Ejemplo: cat /etc/passwd | cut -d: -f1 | grep curso | wc -l *En este caso el segundo comando selecciona solo el campo de nombre de usuario de la tabla de usuarios del sistema, el tercero busca los que contengan el patrn curso y el ltimo los cuenta.
10.1 QU ES UN PROCESO?
Proceso: Conjunto de comandos o instrucciones que se encuentran en ejecucin en el sistema. Un comando por si solo representa un proceso. Hay 2 tipos de procesos:
Procesos en primer plano (foreground): Estn asociados a una terminal, es decir, requieren la atencin de un shell, de manera que no se puede ejecutar otro comando hasta que terminan (no hay prompt). Procesos en segundo plano (background): Se puede ejecutar otro proceso sin esperar a que terminen, no se asocian a una terminal y regresan inmediatamente el prompt.
Sintaxis: ps [-opciones] Sin opciones muestra los procesos asociados a la sesin (Nmero identificador de proceso, terminal asociada, tiempo de cpu y comando). Opciones:
-e
-f
-a
Procesos ms frecuentes.
Combinando las opciones disponibles podemos obtener toda la informacin referente a un proceso:
PID: Nmero identificador del proceso en el sistema. PPID: Identificador del proceso padre en el sistema. UID: Nmero identificador del dueo del proceso en el sistema. S: Estado del proceso: R En ejecucin. S Durmiendo. I Ocioso. Z Zombie. X En espera de recursos. PRI: SZ: RSS: TTY: Prioridad. Tamao calculado en memoria para el proceso. Cantidad de memoria que ocupa el proceso mientras est corriendo. Terminal asociada tiempo de cpu.
Seales.
Identificador numrico
Significado.
TERM
15
Terminacin.
KILL
Muerte.
HUP
Reinicio.
Identificacin de trabajos en el sistema: El comando jobs into su nmero informa los procesos asociados a la terminal, regresando identificador como el comando asociado. Para enviar seales a los trabajo cambia la sintaxis del comando kill: Kill % ID_job
Envo de un proceso de 1er a segundo plano. Cuando un proceso se encuentra en ejecucin en primer plano se puede detener momentneamente con la combinacin de teclas ^Z (control + z), en estado detenido o stopped se puede volver a ejecutar en segundo plano usando el comando: $ bg % id_job Regreso de un proceso de segundo a primer plano. Usamos el comando: $ fg % id_job
11.2 FUNCIONES
Control del ambiente en las sesiones. Es el medio para transferir y redireccionar la salida entre archivos y procesos. Acepta y procesa programas de los usuarios. Sustitucin de variables y cadenas (metacaracteres). El shell asigna una prioridad u orden para interpretar las lneas de comandos: o Sustitucin de history (csh y bash). o Separacin de palabras: Se separan por blancos o tabuladores. Para poner blancos se deben delimitar con comillas, aunque ignora el nmero de blancos entre palabras. Actualizacin de la lista history (csh y bash: Registro de rdenes que se dan en una sesin). Interpreta las comillas simples ('), dobles () e invertidas (`). Sustitucin de alias. Prioridad en los componentes de una lnea de comandos: o Redireccionamiento de entradas y salidas. o Sustitucin de variables. o Sustitucin de comandos. o Expande los nombres de archivos. o Ejecuta el comando.
Las variables locales se asocian con el shell que las genera y no se pasan a los procesos descendientes de este, ni a otros shells o subshells. Tradicionalmente en su nombre solo se usan minsculas. Las variables de ambiente permanecen durante nuestra sesin y pueden ser usadas por las aplicaciones. Sus nombres se definen preferentemente en maysculas.
.login y .cshrc para csh. .profile para sh. .bash_profile para bash.
11.5 VARIABLES DE AMBIENTE Son variables definidas en shell que van a permanecer durante nuestra sesin. Las utilizan las aplicaciones en determinado momento y por convencin se usan maysculas para definir sus nombre. Ejemplos:
VARIABLE FUNCIN
PATH
TERM
HOME
SHELL
Funcin: informa los valores de las variables de ambiente. stty -a Visualiza la configuracin de la terminal, es decir, nmero de filas y columnas, color de fondo, de letra y para los diferentes tipos de archivos, velocidad de tranferencia hacia la terminal, tipo de terminal, funciones para el teclado, apariencia, etc.