• No se han encontrado resultados

Descripción general del Kernel

N/A
N/A
Protected

Academic year: 2022

Share "Descripción general del Kernel"

Copied!
44
0
0

Texto completo

(1)

1 Introducción ... 3

1.1 Descripción General del Sistema Operativo UNIX ... 3

1.2 El Entorno Operativo UNIX ... 4

2 Acceso al sistema e Interfases gráficas ... 6

2.1 Cuentas de los Usuarios ... 6

2.2 Uso del GNOME y del KDE en Linux ... 7

2.3 Personalización de GNOME ... 7

3 Aplicaciones de usuario gráficas ... 8

3.1 Aplicaciones de GNOME y KDE ... 8

4 Ayuda en Linux ... 8

4.1 Manuales "How-To"... 8

4.2 Ayuda de la Línea de Comandos ... 9

4.3 El Comando Info... 9

4.4 Comparación de Comandos DOS/UNIX ... 10

5 Archivos y directorios... 10

5.1 El Sistema de Archivos ... 10

5.2 Rutas de Directorios ... 11

5.3 Navegación por el Sistema de Archivos ... 11

5.4 Listado de los Contenidos de un Directorio ... 12

5.5 Identificación y Uso de los Metacaracteres... 14

6 Administración de archivos y directorios ... 15

6.1 Administración de Directorios y Archivos Utilizando la Línea de Comandos ... 15

6.2 Administración de Directorios y Archivos Utilizando GNOME ... 16

6.3 Administración Avanzada de Directorios y Archivos Utilizando la Línea de Comandos 17 6.4 Administración Avanzada de Directorios y Archivos Utilizando GNOME ... 19

7 Sistema de archivos y utilidades ... 19

7.1 Discos y Sistemas de Archivos ... 19

7.2 Búsqueda de Archivos Mediante el Uso de la Línea de Comandos... 20

7.3 Búsqueda de Cadenas de Texto en Archivos y Resultados de Comandos ... 21

7.4 Ordenamiento de Archivos y Resultados de Comandos ... 21

7.5 Búsqueda de Archivos Mediante Herramientas Gráficas ... 21

8 Editores de texto ... 22

8.1 El editor Vi ... 22

8.2 El editor Emacs ... 23

8.3 Editores Gráficos y Procesadores de Texto... 25

9 Protección del sistema de archivos ... 26

9.1 Descripción General de la Seguridad ... 26

9.2 Permisos del Sistema de Archivos... 26

9.3 Cambio de Permisos desde la Línea de Comandos... 28

9.4 Cambio de Permisos por medio de Herramientas Gráficas... 29

9.5 Identificación y Cambio de Usuarios ... 29

10 Impresión ... 30

10.1 El Entorno de Impresión UNIX... 30

10.2 Impresión desde la Línea de Comandos ... 31

10.3 Administración de Colas de Impresora... 31

10.4 Uso de las Herramientas de Impresión Gráficas ... 32

11 Copias de seguridad... 32

(2)

11.1 Estrategias de Copiado de Seguridad ... 32

11.2 Medios de Copiado de Seguridad... 33

11.3 Acceso a Diskettes y Dispositivos de CD ... 33

11.4 Copiado de Seguridad, Compresión y Restauración de Archivos... 34

11.5 Programas de Copiado de Seguridad y Compresión Alternativos ... 35

12 Procesos ... 35

12.1 Procesos del Sistema UNIX... 35

12.2 Exposición de Procesos... 35

12.3 Terminación de Procesos ... 36

12.4 Procesos en Primer y Segundo Plano ... 36

12.5 Planificación de Procesos... 37

13 Interfaz de usuario principal: Shell ... 38

13.1 Revisión del Shell... 38

13.2 Funcionalidades Adicionales del Shell ... 38

13.3 Variables del Shell y Prompts Personalizados ... 39

13.4 Archivos de Inicialización del Shell ... 39

14 Shell Scripts ... 39

14.1 Conceptos Básicos sobre los Scripts del Shell... 39

14.2 Scripts de Shell Avanzados ... 40

15 Redes... 41

15.1 Informática Cliente/Servidor... 41

15.2 Utilidades de Red y Acceso Remoto ... 42

15.3 Servicios de Nombrado y Resolución de Nombres de Host... 42

15.4 Cómo Compartir Recursos de Red... 43

(3)

Introducción

Descripción General del Sistema Operativo UNIX

UNIX se escribió por primera vez en lenguaje de ensamblaje, un conjunto primitivo de instrucciones que controlan a las instrucciones internas de la computadora. No

obstante, UNIX sólo podía ejecutarse en una computadora específica. En 1971, Ritchie creó el lenguaje C. En 1973, él y Thompson volvieron a escribir los programas del sistema UNIX en lenguaje C. Puesto que C es un lenguaje más sofisticado, UNIX podía moverse (o portarse) a otra computadora con un mucho menor esfuerzo de programación. La decisión de desarrollar este sistema operativo portátil resultó ser la clave del éxito de UNIX.

El primer código fuente de UNIX se hizo disponible para las universidades de todo Estados Unidos. Los programadores de la Universidad de California en Berkeley hicieron modificaciones significativas al código fuente original y lo llamaron UNIX Distribución de Software de Berkeley [Berkeley Software Distribution] (BSD). Enviaron esta nueva versión del entorno UNIX a otros programadores de Estados Unidos. Estos programadores agregaron herramientas y códigos según lo creyeron conveniente.

Posiblemente el avance más importante que efectuaron en el software los

programadores de Berkeley fue la adición de software de networking. Éste permitía al OS funcionar en una red de área local (LAN). UNIX BSD se hizo popular entre

fabricantes de computadoras tales como Hewlett-Packard, Digital Equipment Corporation y Sun Microsystems.

UNIX es ahora una marca registrada cuyo propietario es The Open Group, de modo que cada fabricante llamó a su versión de UNIX con un nombre único. La versión de Sun de UNIX se denomina Solaris y es la versión más ampliamente utilizada en el networking de hoy en día. La versión de AT&T se denomina UNIX, la versión de IBM es AIX, y la versión de Hewlett-Packard es HP-UX. Digital Equipment, que ahora es Compaq, tiene una versión llamada Tru64 que anteriormente se llamaba Digital Unix.

Estas versiones de UNIX están diseñadas para ejecutarse en el hardware y en las CPUs del fabricante específico. Solaris se ejecuta no sólo en las computadoras Sun, sino también en máquinas basadas en Intel. Linux, otra versión de UNIX que se está haciendo cada vez más popular, también se ejecuta en diferentes CPUs. Habiendo aprendido cualquiera de estas variedades de UNIX, es muy fácil trasladarse a una de las otras. La Figura muestra a algunos de los fabricantes de CPUs, y las diversas versiones de UNIX y sistemas operativos que pueden ejecutar.

La última versión en emerger de UNIX se denomina Linux. Linux fue desarrollado en 1991 por Linus Torvalds en la Universidad de Helsinki, Finlandia. Torvalds la subió a Internet y alentó a otros a contribuir a su desarrollo. Tiene características tanto de SVR4 como de BSD. Linux se ha popularizado mucho entre los entusiastas de la informática, aquéllos que buscan una alternativa a los sistemas operativos para PC tradicionales, y las compañías que buscan un OS estable y de bajo costo.

Linux fue desarrollado originalmente para ejecutarse en el microprocesador Intel x86 (a partir del 80386) como estación de trabajo o servidor. El kernel Linux ha sido modificado desde entonces para ser ejecutado en diferentes CPUs además de Intel x86. Estas CPUs incluyen los siguientes: Intel IA-64, DEC Alpha, SUN

SPARC/UltraSPARC, Motorola 68000, MIPS, PowerPC, e incluso el mainframe IBM S/390. De hecho, actualmente Linux se ejecuta en CPUs de una más amplia variedad de fabricantes que la de cualquier OS.

(4)

GNU/Linux

Muchos otros componentes del OS han sido agregados a través de los esfuerzos de desarrolladores independientes y del proyecto GNU de Free Software Foundation (GNU no es UNIX) (www.gnu.org). El sistema operativo GNU utiliza el kernel Linux. El kernel es el corazón del OS que controla la interacción entre el hardware y las

aplicaciones. El proyecto GNU se refiere a Linux como GNU/Linux, ya que muchos componentes del OS son aplicaciones GNU. Una buena fuente de información y recursos es el sitio web de documentación sobre Linux: www.linuxdoc.org.

Software de Fuente Abierta

Linux está disponible sin gastos bajo la Licencia Pública General [General Public License] (GPL) GNU, así como lo están otras versiones de UNIX tales como FreeBSD y NetBSD. Linux es software de fuente abierta, lo cual significa que el código fuente está disponible públicamente y puede modificarse para adaptarlo a necesidades específicas. También puede distribuirse entre los usuarios gratuitamente. Este concepto es lo opuesto al software comercial, donde el código fuente no está

disponible públicamente y cada usuario debe pagar una tarifa de licencia. El software comercial se basa en las leyes de derecho de autor, que buscan limitar lo que el usuario puede hacer con respecto al código fuente y a la distribución. Linux puede descargarse sin costo desde diversos sitios web.

Distribuciones de Linux

Una cierta cantidad de compañías con y sin fines de lucro hacen disponible a Linux con diversas combinaciones de aplicaciones, utilidades y otro software. Estas combinaciones de OS y software se denominan distribuciones. Como ejemplo, Red Hat, Inc. combina en un solo paquete los CDs de Linux, el código fuente, y los manuales junto con una colección de aplicaciones y otros productos por una tarifa modesta. Estos productos adicionales incluyen una suite de oficina, una colección de escritorios gráficos, software para servidores de la Web, etcétera. También se

proporciona un cierto nivel de soporte al cliente. Red Hat incluye la suite de software de productividad StarOffice.

El componente principal de cualquier distribución es el mismo kernel Linux. Además del kernel y las aplicaciones, otros componentes de una distribución incluyen las herramientas de instalación, el boot loader y programas de utilidades. Algunas

distribuciones son más gráficas y orientadas hacia los usuarios nuevos. Otras son más básicas y se concentran en los desarrolladores y en la gente que ya está familiarizada con UNIX.

 Caldera OpenLinux http://www.caldera.com

 Corel Linux http://linux.corel.com

 Debian GNU/Linux http://www.debian.org

 Linux Mandrake http://linux-mandrake.com/en

 Red Hat Linux http://www.redhat.com

 Slackware Linux http://www.slackware.com

 SuSE Linux http://www.suse.com

 Turbo Linux http://www.turbolinux.com El Entorno Operativo UNIX

UNIX es una colección de componentes que juntos hacen a un entorno operativo.

Cada versión de UNIX varía un tanto respecto de las otras pero todas comparten las mismas características básicas.

(5)

El entorno Unix consiste en el sistema operativo, los protocolos de red y una interfaz gráfica del usuario (GUI).

El OS es un conjunto de programas que gestiona todas las operaciones informáticas.

También proporciona un enlace entre el usuario y los recursos del sistema,

convirtiendo las solicitudes que provienen del mouse o del teclado en operaciones informáticas. La mayoría de los sistemas operativos, incluyendo a UNIX, poseen cuatro componentes principales:

 El kernel gestiona la operación de la computadora.

 El shell proporciona una interacción entre el usuario y la computadora.

 El sistema de archivos proporciona una forma de organizar y gestionar la información en el o los disco(s) duro(s) de la computadora.

 Los comandos, o utilidades, se utilizan para instruir a la computadora para que lleve a cabo tareas.

Descripción general del Kernel

El kernel es el núcleo del OS y posee las capacidades básicas necesarias para ejecutar la computadora. El kernel es lo más cercano a la CPU y al hardware.

El proceso de desarrollo para el kernel Linux es interesante y en gran medida único.

Linus Torvalds mantiene un control respecto a cómo evoluciona el kernel Linux, con contribuciones de personas a lo largo de toda la Internet. Periódicamente, un grupo de desarrolladores revisa y prueba las últimas contribuciones y lanza una versión estable del kernel del OS.

Después de que se carga el kernel, éste lleva a cabo las siguientes funciones:

 Gestiona dispositivos, memoria y procesos

 Controla las funciones, o transmisión de la información, entre los programas del sistema y el hardware del sistema

 Gestiona funciones tales como el espacio de intercambio, los daemons y los sistemas de archivos

Descripción general del shell

Un shell es una interfaz entre el usuario y el kernel. Actúa como intérprete o traductor.

En otras palabras, el shell acepta comandos emitidos por el usuario, interpreta dichos comandos, y ejecuta los programas apropiados. Los shells pueden ser manejados por medio de una línea de comandos o gráficos. Es posible iniciar o alternar entre estos shells al trabajar en la computadora. Los comandos estado del proceso [process status] (ps) o echo $SHELL se utilizan para determinar qué shell se encuentra en uso.

El shell BASH es el shell por defecto para la mayoría de las distribuciones de Linux, aunque también se soportan otros. CDE, GNOME y KDE se consideran en ocasiones shells gráficos.

Descripción general del sistema de archivos

El sistema de archivos proporciona una forma de separar y rastrear la información en un disco duro. Determina el tipo, las características y la disposición de los archivos que pueden almacenarse en el disco. Un sistema de archivos se crea en una partición del disco utilizando el proceso de formateo. Una partición puede ocupar todo el disco duro o puede ser una subdivisión del disco.

El sistema de archivos proporciona la definición de una estructura de archivos. La estructura de archivos es una jerarquía de directorios, subdirectorios, y archivos que se agrupan con un propósito específico. El soporte al sistema de archivos se integra con el kernel para proporcionar una estructura organizativa para el software y los datos. La estructura de archivos organiza la información en los discos duros para

(6)

hacerlos más gestionables, y permite a los usuarios localizar archivos. Los discos duros pueden dividirse en particiones con sistemas de archivos, directorios, subdirectorios y archivos.

Una jerarquía de directorios tiene el aspecto de un árbol invertido, con la raíz en la parte superior. La siguiente es la jerarquía del sistema de archivos UNIX:

Descripción general de comandos y utilidades

Los comandos Unix son clave para mantener el sistema de archivos. El sistema operativo UNIX incluye más de 350 comandos y programas de utilidades. Estos comandos y programas de utilidades UNIX se utilizan para desempeñar las siguientes funciones:

 Mantenimiento de archivos, como creación, edición, copiado, borrado, etcétera

 Administración, como el agregado de nuevos usuarios, impresoras, discos, etcétera

 Impresión

 Networking y comunicación

 Programación

 Obtención de ayuda

Los comandos le dicen al shell qué hacer, como por ejemplo presentar una lista de los contenidos de un directorio o copiar un archivo.

Acceso al sistema e Interfases gráficas

Cuentas de los Usuarios

Los usuarios deben tener una cuenta para acceder a los recursos en un sistema UNIX.

Las cuentas de usuarios identifican a un usuario del sistema. Las cuentas también determinan qué actividades puede llevar a cabo un usuario y a qué archivos puede acceder. En una computadora UNIX existen dos tipos de cuentas. Éstas son la cuenta raíz o superusuario y las cuentas de los usuarios.

La Cuenta “root”

La cuenta root es la cuenta de administración del sistema y se crea automáticamente durante el proceso de instalación del sistema operativo. La cuenta raíz es la única cuenta del sistema cuando se lo instala por primera vez. La cuenta raíz de login posee todos los sistemas de archivos y tiene acceso a todos los archivos. Es similar a la cuenta del Administrador del Windows NT/2000 y a la cuenta Admin de Novell NetWare.

La cuenta raíz crea nuevos usuarios, gestiona sistemas de archivo, instala software, y lleva a cabo otras tareas de administración del sistema sofisticadas. La cuenta raíz puede acceder a y modificar cualquier archivo o directorio del sistema. Puesto que es

"todopoderosa," la cuenta raíz deberá utilizarse con cuidado. La mayoría de los administradores de UNIX tienen una cuenta de usuario con privilegios administrativos especiales que utilizan diariamente y se loggean como raíz sólo cuando es necesario.

Esto minimiza el riesgo de dejar la cuenta raíz expuesta accidentalmente al alejarse físicamente del sistema mientras se está loggeado como raíz y así comprometer potencialmente al sistema.

(7)

Cuentas de los Usuarios

Las cuentas de los usuarios son creadas y mantenidas por el administrador del sistema cuando está loggeado como root. Cada usuario que necesite acceder al sistema debe tener una cuenta de usuario para loggearse y utilizar la computadora.

Los usuarios regulares pueden ejecutar aplicaciones y personalizar su entorno de trabajo. También pueden crear y modificar archivos de su directorio home y de los subdirectorios que se encuentran por debajo de él. (Véase la Figura).

Requisitos de ID de login y contraseña

Para que los usuarios puedan hacer log in, deben tener una cuenta de usuario que incluya una identificación (ID) de login y una contraseña. La ID de login es el nombre público del usuario y se lo denomina comúnmente nombre de usuario.

La contraseña del usuario protege a la cuenta de un acceso no autorizado.

Acceso local y remoto

La mayor parte de los sistemas UNIX proporcionan dos maneras de acceder

localmente a un sistema. El usuario puede hacer login utilizando una interfaz gráfica tal como el GNOME, o el login estándar basado en caracteres.

Un usuario también puede acceder a un sistema UNIX desde otra computadora tal como una PC Windows, una Macintosh de Apple o incluso desde otro sistema UNIX.

Para hacer login a una estación de trabajo o servidor UNIX remoto se utiliza el programa Telnet (o SSH) basado en caracteres o un emulador de terminal gráfica.

Uso del GNOME y del KDE en Linux

La mayor parte de las distribuciones del sistema operativo Linux ofrecen una opción de interfaces gráficas del usuario. Los dos administradores de escritorio más populares son GNOME (Entorno de Modelo de Objetos de Redes GNU - GNU Network Object Model Environment) y KDE (Entorno de Escritorio K - K Desktop Environment). Cada uno de ellos ofrece un conjunto de aplicaciones y herramientas de software que han sido personalizadas para trabajar con las funcionalidades de control del escritorio respectivas. Tanto GNOME como KDE son fáciles de utilizar y configurables.

La mayor parte del software para GNOME y para KDE, que se lanza normalmente desde los menúes y botones de los paneles, puede ejecutarse aparte de su

administrador de escritorio. En GNOME existe un submenú que conduce a los menúes KDE. Seleccione ítems a partir de este menú para iniciarlos bajo GNOME. Los ítems funcionan bien, pero sin algunas de las funcionalidades más sutilmente integradoras.

También es posible acceder a la mayoría de las aplicaciones GNOME desde el menú KDE.

La pregunta respecto a qué administrador de escritorio utilizar es una cuestión de preferencia personal. El usuario puede instalar ambos administradores de escritorio si tiene disponible el suficiente espacio en disco. El usuario tendría la opción de elegir cualquiera de ellos al hacer login. Tanto GNOME como KDE son ampliamente soportados.

Personalización de GNOME

GNOME y sus administradores de ventanas son infinitamente configurables.

Personalizar los elementos más visibles del entorno de GNOME es simple y funciona de manera muy similar a otras interfaces gráficas del usuario, tales como Windows o CDE. Estos elementos incluyen fondos de pantalla, opciones de colores y fuentes, temas y comportamiento del salvapantallas. Inicie Nautilus desde el ícono Start Here (Inicie Aquí), seleccione el ícono Preferences (Preferencias), seguido del subgrupo de opciones que el usuario deseara cambiar.

(8)

Aplicaciones de usuario gráficas

Aplicaciones de GNOME y KDE

Estas aplicaciones incluyen clientes de correo, exploradores, planificadores,

administradores de archivos, editores de texto, y aplicaciones de utilidades conocidas como applets. Muchas applets de fuente abierta se incluyen con GNOME y KDE. En algunos casos son comunes a ambos entornos por lo que se comentarán sólo las incluidas en GNOME

GNOME trae los siguientes tres exploradores de la web:

 Galeon

 Mozilla

 Netscape

GNOME incluye una herramienta administradora de calendario llamada Gnome Calendar y una herramienta marcadora de la hora denominada GTimeTracker.

Muchas otras aplicaciones y utilidades de fuente abierta están disponibles desde el menú principal Programs (Programas):

 El Calendario

 Una Libreta de direcciones

 El editor de textos Gedit

 Una herramienta Marcadora de la hora

 El administrador de archivos Nautilus

 Una planilla de cálculos Gnumeric

 El editor Emacs

 Un editor de diagramas

StarOffice de Sun es una suite de aplicaciones, que incluye un Procesador de Texto, una Planilla de Cálculo y software de presentaciones, etcétera, compatibles con Windows, similar a MS Office. StarOffice se incluye sin costo con algunas distribuciones de Linux

Ayuda en Linux

Manuales "How-To"

Los HOWTOs no se instalan por defecto en la mayoría de las distribuciones de Linux.

Red Hat reúne los HOWTOs con ciertos extras específicos de Red Hat en un CD que se incluye con la versión empaquetada del sistema operativo. Éstos pueden

visualizarse directamente desde el CD de Documentación utilizando Nautilus, un explorador de Web, o incluso un editor de texto como Emacs. También pueden instalarse en el sistema del usuario para tenerlos siempre a mano.

Los HOWTOs existen independientemente de cualquier distribución. La más valiosa fuente de documentación, (véase la figura), acerca de Linux es Linux Documentation Project, que puede encontrarse en Internet enhttp://www.tldp.org. Nótese que un enlace a los HOWTOs se muestra prominentemente en la parte superior. Es desde aquí desde donde puede visualizarse o descargarse la última versión de los archivos HOWTO.

Desde la página web, siga los enlaces hasta una cierta cantidad de índices,

organizados por título y categoría. Esto conducirá en última instancia a los mismos HOWTOs. Por ejemplo, es probable que el HOWTO denominado CD-Writing-HOWTO

(9)

(HOWTO para la Escritura de CDs) proporcione toda la información que podría necesitarse para comenzar a crear CD-ROMs. El Mail-Administrator-HOWTO (HOWTO para el Administrador de Correo) proporciona una extensa información acerca de todas las funciones para administrar un servidor de e-mail.

Además de los HOWTOs, hay enlaces en Linux Documentation Project que conducen a Guías, FAQs, e incluso las páginas man principales. Las Guías son breves libros sobre temas tales como la escritura de scripts del shell bash avanzadas, una guía para el administrador de sistemas Linux, y temas internos sobre el kernel. Las FAQs son colecciones de Preguntas Más Frecuentes acerca de una variedad de temas.

Ayuda de la Línea de Comandos

Para obtener ayuda desde la línea de comandos se puede recurrir principalmente al uso de las páginas del manual del programador. El Manual del Programador UNIX, también denominado páginas man, describe la información que el usuario necesitará saber acerca de los comandos, las llamadas del sistema, los formatos de los archivos, y el mantenimiento del sistema. Las páginas man online son parte de los entornos informáticos Unix y Linux. Estas páginas man se instalan por defecto. Las páginas man presentan la forma de pantallas basadas en caracteres simples y no son gráficas.

No obstante, son accesibles a través de la interfaz de Ayuda GUI en GNOME y KDE.

La figura resume las características de las páginas man.

Para acceder a las páginas man, es necesario que el usuario se encuentre en un prompt del shell, tal como el que se encuentra en una ventana de Terminal. Las páginas man son de gran ayuda cuando se desea utilizar un comando o una utilidad y ha olvidado la sintaxis o la información acerca de cómo utilizarlos. Las páginas man proporcionan información acerca de cómo introducir el comando, una descripción de su propósito, y qué opciones o argumentos están disponibles. Además, las páginas man proporcionan una lista de "see also" ("véase también") con comandos adicionales que podrían resultar relevantes. Algunos comandos no funcionan con todos los shells de UNIX.

A continuación se presenta una forma de utilizar el comando man:

man name: proporciona ayuda sobre un comando en particular, donde name es el nombre del comando acerca del cual el usuario necesita ayuda, tales como ls,cat, o mkdir.

El Comando Info

Otra forma de leer documentación es por medio del comando Info. El comando Info se ejecuta en modo de texto en una ventana de terminal. El usuario no necesita saber exactamente qué se está buscando al iniciar Info.

El usuario verá una ventana de inicio con instrucciones básicas en la parte superior y un menú que consiste en una catálogo de tópicos, cuando se ejecuta Info sin opciones ni argumentos de línea de comandos, como:

info

Al igual que muchos comandos Linux, Info tiene una opción de ayuda que proporciona instrucciones de inicio. El comando Info también puede iniciarse con un asunto como argumento. Existe información acerca del mismo comando Info:

info info

Dentro de Info abundantes comandos simples permiten al usuario navegar dentro de la página actual, hacia las páginas siguiente o anterior dentro del mismo documento, o a documentación de Info sobre tópicos diferentes. Presione el signo de interrogación para invocar una guía de referencia respecto a comandos básicos en ventanas de Info

(10)

Comparación de Comandos DOS/UNIX

El conocimiento de la línea de comandos y de la sintaxis de comandos para cualquier sistema operativo aún es útil en el mundo de la la tecnología de la información de hoy en día. En ocasiones la línea de comandos es todo lo que hay disponible para llevar a cabo tareas críticas del sistema y resolución de problemas

Comando DOS

Comando Unix

Descripción

dir ls Lista el contenido de un directorio

cd pwd Muestra el directorio actual de

trabajo

cd cd Cambia la ubicación a otro

directorio

md mkdir Crea un directorio nuevo

del rm Elimina un archivo

copy cp Copia un archivo

type cat Muestra archivos

ren mv Renombra archivos

ver uname –rs Muestra la version del S.O.

sort sort Ordena

more more Pagina

cls clear Limpia la pantalla

date date Muestra la fecha actual

edit vi Editor de texto

print lp Imprime un archivo

help man Muestra ayuda

Las capacidades de la línea de comandos son generalmente más potentes y flexibles que las de las interfaces GUI, especialmente en el entorno UNIX. Los administradores del sistema frecuentemente construyen scripts similares a los archivos batch (por lotes) en DOS o a los archivos CMD (de comandos) en NT/2000. No obstante no es estrictamente necesario el conocimiento de todos los comandos disponibles en Linux, generalmente se puede hacer el 80 por ciento de lo que normalmente necesita hacer diariamente con un 20 por ciento de las herramientas o comandos disponibles.

Archivos y directorios

El Sistema de Archivos

Un sistema de archivos es una jerarquía de directorios, subdirectorios, y archivos que organizan y administran la información de los discos duros. Conocer la estructura de directorios de un sistema de archivos y cómo navegar por el sistema de archivos es esencial para trabajar con UNIX.

Los directorios que componen un sistema de archivos forman una estructura

jerárquica. Esta estructura jerárquica tiene el aspecto de un árbol invertido con la raíz

(11)

en la parte superior. Todos los sistemas operativos tienen alguna clase de estructura de directorios para organizar la información en sus discos duros. En algunos sistemas operativos, como Windows y MacOS, los directorios se denominan carpetas. En el sistema de archivos UNIX, se denominan directorios pero se utilizan de la misma manera.

La estructura de directorios del sistema de archivos es similar a un árbol genealógico.

A excepción del directorio raíz, cada directorio de la jerarquía tiene un directorio padre, y la mayoría tiene directorios hijos, que se denominan subdirectorios. El directorio raíz se encuentra siempre en la parte superior de la jerarquía y se designa por medio de una barra (/). En un sistema de archivos UNIX sólo puede existir un único directorio raíz.

Rutas de Directorios

Un nombre de ruta define de manera única a un archivo o directorio en particular especificando su ubicación.

Observe los componentes individuales de la ruta hasta el subdirectorio:

/home/user2/dir1/coffees

Las barras dentro del nombre de ruta son delimitadores entre nombres de objetos. Las barras actúan como separadores. Los nombres de objetos pueden ser directorios, subdirectorios o archivos. DOS y Windows indican los directorios utilizando una barra invertida (\). Todos los sistemas de archivos UNIX utilizan una barra (/) en los nombres de ruta. La barra se encuentra por lo general cerca de la tecla Shift derecha en la mayoría de los teclados. Una barra (/) en la primera posición de cualquier nombre de ruta representa al directorio raíz.

En UNIX y otros sistemas operativos se utilizan dos tipos de nombres de ruta, absolutos y relativos. Cada uno de estos métodos puede utilizarse en cualquier momento.

 Ruta absoluta: Un nombre de ruta absoluto especifica un archivo o directorio en relación con la totalidad de la jerarquía de archivos UNIX. La jerarquía

comienza en el directorio / (raíz). Si el alumno se refiere a un directorio utilizando su nombre de ruta absoluto, siempre puede estar seguro de que se llegará al directorio correcto porque siempre tendrá el punto de partida común del directorio raíz.

 Ruta relativa: Un nombre de ruta relativo describe la ubicación de un archivo o directorio en relación con el directorio actual, aquél en el cual se encuentra el alumno actualmente. Si el alumno se encuentra en un directorio y desea bajar en el árbol de directorios, no es necesario tipear el nombre de ruta absoluto a partir del directorio raíz (/). Tipee la ruta a partir del nombre del siguiente directorio hacia abajo en la estructura de directorios. Si una ruta no comienza con una barra, es un nombre de ruta relativo. Los nombres de ruta relativos son útiles. Por lo general son más cortos que los nombres de ruta absolutos

Navegación por el Sistema de Archivos

Para navegar por el sistema de archivos, el usuario debe conocer el comando que muestra la ubicación de su directorio actual dentro del sistema de archivos y el comando que se utiliza para cambiarse a un directorio diferente. En primer lugar, no obstante, es necesario conocer la sintaxis apropiada para utilizar los comandos UNIX.

Al loggearse en la línea de comandos o al utilizar una ventana de Terminal, aparece un prompt del shell en la pantalla. En el prompt del shell se tipean los comandos. Los comandos son instrucciones que le indican al sistema que ejecute una acción. La sintaxis se refiere a la estructura del comando y especifica opciones y argumentos disponibles.

(12)

El formato general para los comandos UNIX se muestra a continuación:

$comando [opción(es)] [argumento(s)]

Nota: los elementos entre corchetes son opcionales, lo cual significa que no siempre se los requiere.

Debe utilizarse un espacio como delimitador entre cada parte del comando introducido.

En una única línea de comandos pueden introducirse hasta 256 caracteres, aunque esto no es lo común. Los comandos UNIX se escriben siempre en minúscula. Las opciones suelen ser una única letra precedida por un guión (-), también denominado raya o signo menos. Pueden combinarse varias opciones utilizando un único guión. La opción podría escribirse en mayúscula o minúscula, dependiendo del comando.

Muchos comandos no requieren las tres partes. Pueden introducirse varios comandos en una línea separándolos por medio de punto y coma (;).

Mostrando el directorio actual

Suele suceder que sea difícil recordar en qué directorio se encuentra trabajando actualmente. Utilice el comando pwd (print working directory - imprimir directorio de trabajo) para mostrar el nombre de ruta absoluto del directorio actual. El comando pwd se utiliza con frecuencia para verificar la ubicación actual en el árbol o jerarquía de directorios. Cuando conoce su ubicación en el árbol, puede desplazarse de un directorio a otro por medio del comando cd (change directory - cambiar directorio).

Nótese que el comando pwd no tiene opciones ni argumentos. Simplemente muestra el directorio en que se encuentra el alumno utilizando el nombre de ruta absoluto, para que no haya ninguna duda.

Cambiando de directorio de trabajo

Los archivos a los cuales necesita acceder a menudo se almacenan en subdirectorios que se encuentran por debajo de su directorio home. Muchas veces es deseable cambiar las ubicaciones de los directorios a causa de la forma en la cual se configura el sistema de archivos UNIX. El comando cd (cambiar directorio) se utiliza para que sea otro el directorio actual. Este comando, como todos los comandos UNIX, acepta nombres de ruta tanto absolutos como relativos. Sigue un ejemplo del comando cd:

cd [nombre_del_directorio]

El alumno puede desplazarse por la jerarquía de directorios utilizando el comandocd junto con un nombre de ruta absoluto o relativo. También puede utilizar algunos de los siguientes atajos:

 El punto (.), que es un único punto: referencia el directorio actual

 El punto/punto (..), o dos puntos: referencia el directorio padre

 El tilde (~): representa al directorio home del usuario Listado de los Contenidos de un Directorio

Para determinar los contenidos de un directorio, utilice el comando ls (lista). Este comando muestra un listado de todos los archivos y directorios dentro del directorio actual o de un directorio especificado. Si no se da ningún nombre de ruta como argumento, ls muestra los contenidos del directorio actual. El comando ls presenta en la lista cualquier subdirectorio y archivo que se encuentre en el directorio de trabajo actual si se especifica un nombre de ruta. También pasa por defecto a una lista amplia. Con el comando ls pueden utilizarse muchas opciones, lo cual lo convierte en uno de los comandos UNIX más flexibles y útiles.

Formato del Comando:

(13)

ls [-opción(es)] [nombre(s)_de_ruta]

Los nombres de archivo que comienzan con un punto (.) se denominan archivos de punto u ocultos. Los archivos ocultos frecuentemente se utilizan para personalizar el entorno de trabajo de un usuario. . El uso del comandols con la opción-a (all - todos) muestra una lista de todos los archivos de un directorio, incluyendo los archivos ocultos (.). Nótese que la opción-a se escribe en minúscula.

Utilizando el comandols con la opción-F (file type - tipo de archivo), el alumno puede mostrar un listado con un símbolo que indica el tipo de archivo. El símbolo, si se muestra, se hallará al final del nombre de un archivo o directorio. Nótese que la opción -F es una F mayúscula. La Figura muestra los tipos de archivo que se muestran utilizando el comandols -F. Los dos últimos son tipos de archivo avanzados y se tratan en el curso de Sistemas Operativos de Redes. La siguiente lista describe los tipos de archivo y sus símbolos:

 Una barra (/) después del nombre indica que se trata de un directorio o subdirectorio. En UNIX un directorio es considerado un tipo de archivo.

 Si no hay ningún símbolo después del nombre, esto indica un archivo de texto ASCII simple sin caracteres de formato. ASCII es el Código Estándar

Americano para el Intercambio de Información [American Standard Code for Information Interchange]. Un archivo de texto ASCII es similar a un archivo de texto DOS.

 Un asterisco (*) después del nombre indica que se trata de un comando, una aplicación o un script que puede ejecutarse.

 Un signo de arroba (@) después del nombre indica un vínculo simbólico. Ésta es una forma de dar a un archivo un nombre alternativo. Los vínculos

simbólicos permiten a un archivo existir en más de un lugar, por motivos de conveniencia.

 Un símbolo de pipe (|) después del nombre indica un pipe. Los pipes se utilizan para la comunicación entre procesos. Un proceso abre el pipe para lectura, y otro lo abre para escritura, permitiendo la transferencia de datos. Un ejemplo es la transferencia de datos hacia y desde un disco.

 Un signo de igual (=) después del nombre indica un socket. Éste es similar a un pipe nombrado pero permite vínculos de redes y bi-direccionales.

El comandols puede utilizarse con la opción-l (largo) para ver información detallada acerca de cada archivo o directorio. La opciónls -l también distingue entre

archivos y directorios.

En la siguiente figura se puede ver una descripción del resultado al ejecutar un listado largo:

(14)

Otras opciones para el comando ls:

ls –d: Muestra un directorio sin detallar su contenido

ls –R: Lista un directorio en forma recursiva

Identificación y Uso de los Metacaracteres

Los metacaracteres son caracteres del teclado que tienen un significado especial para el shell. Son una potente funcionalidad de cualquier shell. Una definición general de metacarácter es cualquier carácter del teclado que no sea alfanumérico. Los

metacaracteres se utilizan con muchos comandos UNIX para proporcionar una mayor flexibilidad.

Algunos de los metacaracteres utilizados con UNIX son similares en función a aquéllos utilizados con DOS. El asterisco (*) y el signo de interrogación (?) son metacaracteres también conocidos como wildcards ("comodines") y se utilizan para trabajar con grupos de archivos eficientemente. La figura muestra algunos de los metacaracteres más comunes y proporciona una breve descripción de su función principal. Este capítulo se centra en los metacaracteres *, ?, y []. Metacaracteres adicionales se presentarán a lo largo del resto del curso.

Es importante no utilizar metacaracteres al nombrar archivos y directorios. El punto (.) y el guión bajo (_) son los únicos caracteres no alfanuméricos que no son

metacaracteres. Es por eso que el usuario puede utilizar el punto (.) y el guión bajo (_) en los nombres de archivo. Un guión (-), aunque es un metacarácter, puede utilizarse en nombres de archivo. Como metacarácter el guión (-) se utiliza para delinear opciones en una línea de comandos. Un espacio también se considera un metacarácter y puede utilizarse en un nombre de archivo UNIX pero esto no se recomienda. Puesto que los espacios se utilizan como separadores entre argumentos de la línea de comandos, el shell en ocasiones tiene problemas de interpretación con los nombres de archivo que poseen espacios. Aunque algunos de los metacaracteres del listado de la figura pueden utilizarse en nombres de directorios o archivos, esto no se recomienda.

Metacaracter Descripción Formato de uso

; (punto y coma) Permite la ejecución de múltiples comandos en sólo una línea

comando; comando

(15)

* (asterisco) Representa cualquier carácter o caracteres

comando *

? (signo de interrogación)

Representa cualquier carácter en una ocurrencia

comando ? [ ] (corchetes) Representa la ocurrencia de un

carácter en un rango de valores

comando [ ]

< > (menor y mayor)

Redirección de la entrada o salida archivo < comando comando > archivo

| (barra vertical) Toma la salida de un comando y la utiliza como entrada a otro

comando | comando

Administración de archivos y directorios

Administración de Directorios y Archivos Utilizando la Línea de Comandos

En algunos casos, el uso de la línea de comandos para emitir comandos es más rápido que el uso de una GUI tal como KDE o Nautilus. Las dos razones principales para aprender el uso de la línea de comandos son:

 Da al usuario acceso a las muchas opciones de comandos, proporcionando mayor flexibilidad.

 Otorga al usuario la capacidad para llevar a cabo una administración de archivos en un sistema remoto donde no está disponible una interfaz gráfica.

El conocimiento de la administración de archivos y directorios utilizando comandos es importante para construir una base sólida para un ulterior estudio del sistema operativo UNIX. Los "power users" y administradores del sistema deben tener un conocimiento práctico de las capacidades y sintaxis de la línea de comandos. Muchas de las tareas de la administración del sistema operativo y de la configuración de dispositivos requieren una comprensión de los comandos UNIX. En algunos casos, la línea de comandos es la única herramienta disponible. Los "power users" y administradores crean frecuentemente scripts del shell ejecutables. Éstos son herramientas útiles para automatizar determinadas tareas tal como la copia de seguridad de archivos o la creación de nuevas cuentas del usuario. Los archivos script contienen una serie de comandos del shell y son similares a los archivos batch utilizados en otros sistemas operativos de redes. La creación de archivos script se trata en el Capítulo 15,

"Introducción a los Scripts del Shell".

Uso de los Caracteres de Control

Los caracteres de control se utilizan para llevar a cabo tareas específicas. Estas tareas incluyen el detener e iniciar resultados en la pantalla y otras. Cuando se muestra en la pantalla, la tecla Ctrl está representada por el símbolo de intercalación o caret (^).

Para introducir una secuencia de caracteres de control, mantenga presionada la tecla Ctrl y presione el carácter apropiado en el teclado. Ctrl-c es una secuencia común de caracteres de control que se utiliza para interrumpir o cancelar un programa o proceso.

El carácter real en el shell aparece como ^C, incluso aunque el usuario haya presionado la tecla Ctrl y la tecla c al mismo tiempo.

(16)

Comandos para la manipulación de archivos

file: Permite determinar el tipo de archivo. El resultado de este comando muy a menudo es uno de los siguientes: texto, ejecutable o de datos.

Formato: file nombre(s)_de_archivo(s)

cat: El comando cat, abreviatura de "concatenar", muestra los contenidos de un archivo de texto en la pantalla.

Formato: cat nombre(s)_de_archivo(s)

more: El comando more muestra el contenido de un archivo de texto una pantalla a la vez.

Formato: more nombre(s)_de_archivo(s)

head: El comando head se utiliza para mostrar las primeras n líneas de uno o más archivos de texto.

Formato: head [ -n ] nombre(s)_de_archivo(s)

tail: Utilice el comando tail para mostrar las últimas n líneas de un archivo de texto.

Formato: tail [ +n | -n ] nombre(s)_de_archivo(s)

wc: El comando wc (word count - conteo de palabras) puede utilizarse para mostrar conteos de líneas, palabras, bytes o caracteres de un archivo de texto.

Formato: wc [opciones] nombre(s)_de_archivo(s)

touch: Este comando permite la creación de archivos vacíos. Alternativamente puede ser utilizado para actualizar la fecha de acceso de un archivo que exista.

Formato: touch nombre(s)_de_archivo(s)

mkdir: El comando mkdir permite crear un directorio (o carpeta). Para poder crear un directorio el usuario debe tener permisos en la ubicación donde desea crearlo.

Formato: mkdir [-p ] nombre_de_directorio nombre_de_directorio

rm: Permite eliminar archivos o directorios. Puede utilizarse con metacaracteres para generalizar la identificación de archivos.

Formato: rm [ -r | -i | -f ] nombre(s)_de_directorio(s) _o_archivo(s)

Administración de Directorios y Archivos Utilizando GNOME

Todas las tareas de administración de archivos y directorios, descriptas anteriormente haciendo uso de comandos en la interfaz de línea, pueden ser realizados (quizás no con tanta velocidad pero sí de un modo más intuitivo) haciendo uso del Nautilius del GNOME.

A continuación se puede una pantalla del Nautilius:

(17)

Para cada uno de los objetos, se puede seleccionar y activar el menú contextual de propiedades que permitirá realiza la mayor parte de las tareas habituales:

El uso cotidiano con Nautilius o la interfaz de líneas de comandos dará una mayor cantidad de herramientas para decidir que interfaz le resulte más conveniente.

Administración Avanzada de Directorios y Archivos Utilizando la Línea de Comandos

Comandos para la administración más avanzada de archivos

cp: El comando cp (copiar) copia archivos y directorios. Puede utilizarse con metacaracteres o wildcards, tales como el asterisco (*) y el signo de

interrogación (?), para copiar grupos de archivos al mismo tiempo. Se debe tener la prudencia (al igual del comando rm) de identificar como destino de la copia a un archivo existente.

(18)

Formato para la copia de archivos: cp [ -i | -f ] arch_origen arch_destino Formato para la copia de directorios: cp [ -i | -f ] –r dir_origen dir_destino

ln: El comando ln (link - vincular) se utiliza para darle a un archivo un nombre adicional para que el usuario pueda acceder a él desde más de un directorio o por otro nombre en el mismo directorio.

Formato: ln file1 nuevonombredearchivo

mv: Los archivos y directorios pueden renombrarse y moverse utilizando el mismo comando multipropósito mv (mover). Se puede utilizar metacaracteres para mover más archivos de una forma más cómoda.

Formato para renombrar arch. o directorios: mv [ -i ] arch_origen arch_destino

Formato para mover archivos a un dir.: mv [ -i ] arch(s)_origen dir_destino

Redireccionamiento de entrada / salida

Todas las operaciones de la unidad de procesamiento central (CPU) tienen entrada o salida (I/O). El teclado, por ejemplo, proporciona una entrada estándar, mientras que el monitor muestra una salida estándar y un error estándar.

Cada comando UNIX tiene un origen para la entrada estándar y un destino para la salida o resultado estándar. El entorno informático UNIX permite a las I/O de comandos ser controladas utilizando el redireccionamiento. Esto es útil al intentar guardar el resultado de un comando en un archivo para su posterior visualización, enviar los contenidos de un archivo como mensaje de e-mail, o redirigir mensajes de error a un archivo para su uso al hacer el debugging de un programa

Varios metacaracteres se utilizan como símbolos de redireccionamiento. El redireccionamiento de entrada utiliza un símbolo menor que (< o 0<). El redireccionamiento de salida utiliza el símbolo mayor que (> o 1>). El

redireccionamiento de errores utiliza el símbolo mayor que, precedido por el número 2 (2>)

Uno de los metacaracteres más eficaces es el pipe (|). El pipe pasa el resultado estándar de un comando como entrada estándar al siguiente comando. El usuario siempre debe tener un comando a cada lado del pipe. Los espacios entre los comandos y el pipe son opcionales.

A continuación se listan un resumen de los modos de redireccionamiento:

 Redireccionamiento de entrada: permite enviarle a un comando la entrada a través de un archivo en lugar del teclado.

Formato: comando < archivo

 Redireccionamiento de salida: permite obtener el resultado de la ejecución de un comando en un archivo en lugar de la pantalla

Formato: comando > archivo

Formato para redirección agregando la salida al archivo: comando >> archivo

 Redireccionamiento de error: permite obtener los errores de la ejecución de un comando en un archivo en lugar de la pantalla.

Formato: comando 2> archivo

 Entubamiento: permite enviar la salida de un comando a la entrada de otro comando.

Formato: comando | comando

(19)

Administración Avanzada de Directorios y Archivos Utilizando GNOME GNOME hace simple las tareas de copiado o traslado por medio del administrador de archivos Nautilus. Usar una técnica llamada arrastrar y colocar permite copiar y mover archivos moviendo o desplazando sus íconos por medio del uso del mouse.

Para mover un archivo al escritorio:

 Haga clic en el ícono del archivo y continúe manteniendo apretado el botón del mouse.

 Desplace el puntero a un área del escritorio y suéltelo.

Para copiar un archivo al escritorio:

 Haga clic en el ícono del archivo y continúe manteniendo apretado el botón del mouse.

 Con la tecla control CTRL presionada, desplace el puntero a un área del escritorio y suéltelo.

Si en lugar del escritorio el destino de la copia o traslado fuera otro directorio la técnica es similar, desplazando el objeto a mover/copiar hacia otra ventana en lugar del

escritorio

Si el alumno hace clic en un único ícono, el menú File le permite seleccionar Rename (o renombrar). El nombre del archivo que se encuentra debajo del ícono cambia de color, con un recuadro a su alrededor y permite que a través del teclado se ingrese un nuevo nombre para el ícono.

La creación de un enlace o link es muy similar. Para efectuar un vínculo, resalte un archivo o carpeta y elija Make Link (Crear Vínculo) desde el menú File.

Sistema de archivos y utilidades

Discos y Sistemas de Archivos

Una unidad de disco duro es el principal dispositivo de almacenamiento permanente de una computadora.

Dentro del disco, generalmente se definen particiones, que son secciones contiguas del disco duro que almacenan datos. Esta división en particiones permite clasificar e independizar la información que se almacena en el disco. En Windows esto se denomina unidad C:, unidad D:, y unidad E:, etc. En UNIX están asociadas con un nombre de directorio, denominado punto de montaje; ejemplos de él son / (raíz), /usr, y /home. El sistema operativo Linux hace referencia a una partición utilizando un nombre de archivo de apariencia críptica tal como /dev/hda1

Características y Beneficios de las Particiones

 Subdividen un disco duro

 Organizan los datos funcionalmente

 Deben montarse para ser accesibles

 Pueden montarse con acceso de Sólo Lectura o Lectura/Escritura

 Facilitan las copias de seguridad diarias

 Reducen el tiempo de acceso a los datos

 Proporcionan opciones de seguridad

 Mejoran la confiabilidad

 Preservan los datos del usuario durante las actualizaciones del OS

 Los ejemplos incluyen / (raíz), /usr, y /home.

 Son similares a las letras de unidad de una PC y a los volúmenes de NetWare

(20)

Una vez que se crean los sistemas de archivos en las particiones del disco, todos los sistemas de archivos se combinan para formar un único árbol de directorios. Esto se logra adjuntando, o montando, el sistema de archivos a un directorio vacío, el punto de montaje, tal como se muestra en la Figura:

El montaje de un sistema de archivos es lo que da al directorio la capacidad para almacenar archivos. Los directorios y archivos en un sistema de archivos sin montar son inaccesibles. El tamaño de la partición cuando se creó el sistema de archivos determina la capacidad.

El nombre de la partición y el nombre del sistema de archivos son normalmente lo mismo que su punto de montaje en la estructura de directorios. Por ejemplo, /usr es el punto de montaje para el sistema de archivos del usuario, y también se lo denomina partición del usuario.

Comandos para ver el uso de las particiones y discos

Las estadísticas del sistema de archivos pueden mostrarse utilizando el comando df (disk free - disco libre).

El comando du muestra el espacio en disco utilizado por los archivos y subdirectorios y es frecuentemente utilizado por un usuario.

Búsqueda de Archivos Mediante el Uso de la Línea de Comandos

El comandofind es un comando potente y de gran utilidad disponible para un usuario del entorno UNIX. Este comando puede utilizarse para buscar archivos basándose en un criterio específico. Cuando se encuentra un archivo o grupo de archivos que

coinciden con un criterio de búsqueda, otro comando puede ejecutarse en los archivos que coinciden.

Sintaxis del comando find:

find directorio_inicial expresión [ acción ]

Opciones para el directorio inicial: indica el directorio donde comienza la búsqueda. La ruta puede ser un tilde (~) que representa al directorio home del usuario, un punto (.) que representa el directorio actual, un nombre de ruta absoluto o relativo, o incluso el directorio raíz

Opciones para la expresión: La expresión es una o más opciones de criterios de búsqueda que indican qué buscar. Las opciones básicas de find incluyen nombre de archivo, tipo y tamaño.

(21)

Opciones para la expresión: La acción al final del comando es opcional y puede utilizarse para ejecutar varios comandos una vez hallado el archivo o los archivos deseados

Búsqueda de Cadenas de Texto en Archivos y Resultados de Comandos El comando find de UNIX se utiliza para buscar archivos en el árbol de directorios. La familia de comandos grep (global regular expression print - impresión de expresión global regular) se utiliza para buscar una cadena de texto dentro del archivo o en el resultado de otro comando UNIX. El comando grep buscará todas las apariciones de la cadena de texto y mostrará las líneas en las cuales tienen lugar.

Sintaxis del comando grep:

grep [ opciones ] cadena archivo(s)

Opciones: Permite ajustar el comportamiento de grep, indicando entre otras alternativas si hace distinción de mayúsculas y minúsculas o busca en forma recursiva.

Cadena: Texto a buscar en los archivos

Archivo: Aquí se especifica el archivo donde ser realizará la búsqueda de la cadena. Se pueden utilizar metacaracteres.

Ordenamiento de Archivos y Resultados de Comandos

El comando sort proporciona una forma rápida y fácil para que los operadores organicen datos en orden numérico o alfabético. Este comando utiliza el conjunto de caracteres ASCII como factor de ordenamiento. El comando sort funciona de izquierda a derecha y carácter por carácter. Por defecto, sort se basa en espacios en blanco para delimitar los diversos campos dentro de los datos de un archivo. Algunas funcionalidades de sort son las siguientes:

 Llevar a cabo un ordenamiento multinivel

 Llevar a cabo un ordenamiento específico del campo

 Aceptar entradas estándar

 Producir resultados estándar

A continuación se muestra la sintaxis para el comando sort:

sort [ opciones ] [ nombre_de_archivo_de_entrada ]

Entre las opciones del comando existen modificadores que permiten ignorar las primeras o últimas líneas, realizar un orden inverso o realizar el orden en forma numérica.

Búsqueda de Archivos Mediante Herramientas Gráficas

GNOME también proporciona una forma de localizar archivos utilizando Search Tool (Herramienta de Búsqueda). Search Tool de GNOME proporciona dos opciones: Full find (full) (Búsqueda completa) y Quick find (locate) (Búsqueda rápida (ubicar)).

Cualquiera de estas opciones pueden elegirse utilizando las solapas de la pantalla inicial de Search Tool.

(22)

El modo búsqueda rápida es realmente un modo amigable del comando locate. Si necesita información más detallada acerca de locate, deberá leer la página del manual (man) apropiada.

La búsqueda completa comprende una combinación del comando find con el comando grep.

Editores de texto

El editor Vi

El editor vi ha sido parte del sistema operativo UNIX prácticamente desde su concepción a principios de los 1970s. El editor vi está universalmente disponible en todos los sistemas UNIX. vi es un editor muy pequeño y potente con muchas opciones.

Es lo suficientemente pequeño como para entrar en un diskette de inicio de emergencia. Esto es útil para la resolución de problemas.

El editor vi es un editor interactivo que se utiliza para crear o modificar archivos de texto del Código Americano para el Intercambio de Información (ASCII). Los archivos de texto ASCII contienen sólo caracteres de texto sin ningún formato, como negritas o cursivas. Es un editor basado en caracteres que es parte integral de todos los

sistemas operativos UNIX. El editor vi utiliza pantalla completa, pero el usuario no puede utilizar el mouse para posicionar el cursor. Toda la edición con el editor vi se lleva a cabo dentro de un buffer de memoria. Los cambios pueden escribirse en el disco o ser descartados.

Existen tres modos de operación en vi: de comandos, de entrada y de última línea.

Modo de Comandos: Cuando se inicia el editor vi, el usuario se encuentra en modo de comandos. Aquí puede introducir comandos de posicionamiento del cursor para desplazarse por un archivo, y comandos de edición para llevar a cabo funciones y modificaciones del texto existente. El modo de comandos es el punto de partida para los otros modos. Desde aquí, puede cambiar a modo de entrada o a modo de última línea. La tecla Escape (Esc) siempre lleva al usuario al modo de comandos.

Modo de Entrada: Debe estar en modo de entrada, también conocido como modo de edición, para introducir texto. Para ello, se tipea un comando vi tal como i (input - entrada), o (open new line - abrir nueva línea), o a (append - agregar). Esto saca a vi del modo de comando y lo coloca en modo de entrada.

En este modo, el texto no será interpretado como comandos de edición.

Cuando termina de introducir texto en el archivo, presiona la tecla Esc para volver al modo de comandos.

Modo de Última Línea: Desde el modo de comandos, se tipea dos puntos (:) u otro carácter designado para entrar al modo de última línea. Esto coloca el cursor en la línea inferior de la pantalla. Desde el modo de última línea, puede introducir comandos para guardar el trabajo periódicamente mientras

(23)

permanece en vi, o el alumno puede guardar y salir de vi. También puede salir de vi sin guardar los cambios. El modo de última línea también se utiliza para buscar caracteres o palabras y para configurar las preferencias del editor vi.

El editor vi es una aplicación de edición de texto de UNIX que se inicia desde el prompt de la línea de comandos. Cada vez que inicia vi, se abre un archivo.

Alternativamente puede especificar el nombre del archivo que ha de crearse o editarse al iniciar vi. La siguiente es la sintaxis básica del comando vi:

vi [ opción(es) ] [ nombre_de_archivo ]

Comandos básicos de vi

Comando Modo desde donde se ejecuta

Acción del comando

a Comandos Comienza el modo insert desde la posición siguiente al cursor

A Comandos Comienza el modo insert al final de la línea i Comandos Comienza el modo insert desde la posición

anterior al cursor

o Comandos Comienza el modo inser agregando una

línea debajo del cursor :w Última línea Graba el archivo en el disco

:w file Última línea Graba el archivo con el nombre “file”

:wq Última línea Graba el archivo y sale de vi :q! Última línea Sale de vi sin guardar cambios Esc Cualquier modo Lleva la modo comandos

El editor Emacs

Emacs es uno de los programas de edición más capaces disponibles. En este

momento existen dos versiones de Emacs: Emacs GNU, y XEmacs. A continuación se presenta una lista parcial de las funcionalidades y ventajas de Emacs:

 Gratuito y Abierto

 Simple y Fácil

 Auto-documentado

 Personalizable

 Programable

 Modos

 Orientado a la Producción

 Basado en Gráficos o Terminal

 E-mail

 Integración al Sistema

Aquí demostraremos cómo efectuar las operaciones de la manera Emacs tradicional, utilizando comandos del teclado (en lugar de menú). Esta operación, una vez

aprendida, es mucho más rápida.

(24)

Se necesitará comprender un poco acerca de la notación de teclas encadenadas de Emacs para poder utilizar los comandos del teclado:

Teclas Significado

C-<carácter> Mantenga presionada la tecla CONTROL mientras se tipea la tecla

<carácter>. Por ejemplo, C-a significa Control+A.

C-x C-f C-x s

Algunas teclas de control, tales como Control+X, son prefijos a los que siguen una o más otras teclas. Éstas pueden ser otro carácter de control o un carácter plano.

M-<carácter> Mantenga presionada la tecla META mientras se tipea <carácter>.

Si no hay una tecla META, o el alumno no sabe dónde está ubicada, ha de presionar ESC (Escape) seguida de la tecla

<carácter>.

M-x Ésta es una tecla importante que pide al alumno un comando a ejecutar por nombre. Esto es útil cuando el alumno no recuerda la combinación de teclas.

A continuación se describen los comandos para las principales tareas:

Inicio de Emacs: Inicie Emacs simplemente lanzando el programa, o con uno o más argumentos de nombre de archivo:

emacs

emacs myfile

Cómo Abortar una Entrada del Teclado: La combinación de teclas más importante de Emacs es

C-g

C-g ejecuta un comando denominado keyboard quit (salida del teclado). Esto permite al alumno salir de cualquier operación cuando se vuelve demasiado difícil o complicada para el usuario. Si el usuario se encuentra en una situación que ocasiona problemas, C-g casi siempre lo sacará de ella.

Apertura de un Archivo: Para abrir un archivo para su edición, presione la combinación

C-x C-f

Un prompt en la parte inferior de la pantalla pide el nombre del archivo.

Responda con:

junkfile

o el alumno puede elegir cualquier nombre. El archivo no tiene por qué existir.

En Emacs el usuario está siempre en modo insertar. Esto lo diferencia de vi, donde el usuario alterna entre los modos insertar y de comandos. Tipee cualquier texto que el usuario quiera utilizar.

Cómo Deshacer Errores: Para deshacer un error, presione C-/

Repita C-/ para deshacer más cambios.

Guardado del Trabajo: Para guardar el archivo actual en cualquier momento, tipee

C-x C-s

El alumno aún puede tipear C-x u (undo - deshacer) en cualquier momento.

Emacs continuará deshaciendo hasta que ya no recuerde cosas para deshacer.

Salida de Emacs: Para salir de Emacs correctamente, tipee C-x C-c

(25)

Si Emacs se da cuenta de que hay buffers de archivo sin salvar, preguntará al usuario si guarda cada uno de ellos.

Para acceder al TUTORIAL en cualquier momento, presione C-h t

Para listar los posibles comandos de ayuda puede tipear:

C-h ?

Editores Gráficos y Procesadores de Texto

El editor de texto gedit de GNOME es un editor gráfico que es comparable al bloc de notas de Windows. La inserción, el borrado y la edición de texto es muy similar. Para acceder a gedit, haga clic en el menú principal de GNOME, luego en Programs

(Programas) y finalmente selecciónelo del menú Applications (Aplicaciones). La Figura muestra la pantalla inicial de gedit con algún texto tipeado en ella. La porción superior de la ventana contiene botones que se utilizan para crear, abrir, guardar e imprimir archivos así como los botones de edición de texto estándar para cortar, copiar y pegar.

También existen botones para deshacer [undo] y rehacer [redo].

Los procesadores de texto son diferentes a los editores de texto. Los procesadores de texto están diseñados para crear documentos fáciles de leer. Los procesadores de texto incluyen funcionalidades para aplicar formatos al texto, como negritas, subrayado, etcétera. También incluyen funcionalidades para incluir gráficos e imágenes, insertar tablas, y una impresión flexible.

En la mayoria de las distribuciones Linux se dispone de una suite de oficina (paquete que incluye procesador de texto, planilla de cálculo, etc.) libre llamada Open Office.

(26)

Protección del sistema de archivos

Descripción General de la Seguridad

La función principal de la seguridad del sistema es denegar el acceso a usuarios no autorizados. Mantener segura la información de las computadoras es importante tanto para el usuario como para el administrador del sistema. Al proteger sus archivos y cuentas de un uso no autorizado, los usuarios protegen también sus empleos y su reputación. Las funcionalidades de seguridad estándar del entorno UNIX incluyen las siguientes:

 Cuentas y contraseñas del usuario que restringen el acceso al sistema:

 Protección de archivos y directorios por medio de permisos

 Herramientas que controlan los logins y comandos remotos en estaciones de trabajo individuales

 Otras herramientas que permiten a los administradores del sistema verificar rupturas en la seguridad

Permisos del Sistema de Archivos

Los permisos determinan qué usuarios pueden acceder a los archivos y directorios del sistema de archivos y qué pueden hacer esos usuarios. Los permisos de directorios y archivos pueden determinarse utilizando el comando ls (listado) con la opción -l (largo). El comando ls -l muestra un listado largo de los contenidos de un directorio. Si se incluye la opción -a (all - todos), se muestran todos los archivos. Esto también incluye a los archivos ocultos, aquéllos que comienzan con un punto.

El primer carácter de la pantalla no es realmente una parte de los permisos pero indica el tipo de archivo. Este primer carácter es normalmente un guión (-) lo cual significa que se trata de un archivo o la letra d, que significa que se trata de un directorio.

También pueden estar presentes otros caracteres de tipo de archivo según se pudo ver previamente. Los siguientes nueve caracteres representan los permisos del archivo o el directorio. Éstos se dividen en tres conjuntos de tres permisos cada uno.

Existe un conjunto para cada categoría de usuarios: usuario, grupo u otro. Los permisos del usuario representan el primer conjunto de tres permisos. El segundo conjunto se aplica al grupo al que pertenece el usuario. El tercer conjunto se aplica a todos los otros usuarios. En resumen, los primeros 10 caracteres definen:

File type (Tipo de archivo) determina si se trata de un directorio o de un archivo. Esto no es parte de los permisos.

Referencias

Documento similar

El nombre del topic será un link que el usuario podrá pinchar para acceder a los mensajes del topic (ver apartado 3.2.2.6) y el nombre del usuario creador del topic será un link

El objetivo principal es recopilar las características que definen éste modelo dentro del conjunto de alojamientos existentes para personas mayores, así como investigar

(3) VEAMOS COMO AFECTA UN AUMENTO DEL TIPO IMPOSITIVO EFECTIVO A LA CURVA IS.. Partimos de una situación inicial donde el tipo impositivo efectivo era igual a t

Volviendo a la jurisprudencia del Tribunal de Justicia, conviene recor- dar que, con el tiempo, este órgano se vio en la necesidad de determinar si los actos de los Estados

Se dice que la Administración no está obligada a seguir sus pre- cedentes y puede, por tanto, conculcar legítimamente los principios de igualdad, seguridad jurídica y buena fe,

Descripción : Ejecuta un proceso a partir del nombre del archivo binario pasado por parámetro ( (se buscará el archivo en el directorio indicado por la variable de entorno

This means that the three straight line segments which represent the relationship between expected average HDI growth rate and initial HDI level for the groups of high, medium and

1. LAS GARANTÍAS CONSTITUCIONALES.—2. C) La reforma constitucional de 1994. D) Las tres etapas del amparo argentino. F) Las vías previas al amparo. H) La acción es judicial en