43
CONFIGURACIÓN Y OPERACIÓN DE LINUX Objetivo ( IMPORTANTE) Nombre y Apellido: Eduardo Parada ( IMPORTANTE) RUT:17515405-1 ( IMPORTANTE) correo: [email protected] Familiarizarse con la configuración y operación del sistema operativo Linux en ambiente gráfico y en modo texto, a través de comandos, programas y utilidades, y particularmente en lo que se refiere a la configuración de la red y los servicios, así como en la compartición de recursos, el registro de eventos y la seguridad. Requisitos Disponer de una PC de buenas prestaciones y que esté conectada a Internet. Sección A: Introducción ¿Qué es Linux? En la actualidad existen una gran cantidad de sistemas operativos, dependiendo del tipo de computador y del uso a que está destinado. Por ejemplo para los PC uno de los sistemas operativos más difundidos es Microsoft Windows, en sus diferentes versiones (95, 98, Me, NT, 2000, XP, 2003, Vista, 2008). Otros sistemas operativos son Microsoft DOS, Unix, Linux, MacOS, OS/2. Linux está inspirado en Unix, un sistema operativo desarrollado en 1970, el cual tiene la característica de ser fácilmente “portable” a diferentes tipos de máquinas, por lo que existen versiones de Unix para casi todos los tipos de computadores, desde PC hasta estaciones de trabajo y supercomputadores. Al contrario que otros sistemas operativos, como por ejemplo Mac OS de Apple Computer, Unix no fue pensado para ser fácil de emplear, sino para ser sumamente flexible. Por lo tanto Linux no es en general tan sencillo de usar como otros sistemas operativos, aunque se están realizando grandes esfuerzos para facilitar su uso. Pese a todo, la enorme flexibilidad de Linux y su gran estabilidad (y el bajo costo) han hecho de este sistema operativo una opción muy interesante. Además el futuro de Linux es brillante y cada vez más gente, gobiernos (como Venezuela) y empresas (como IBM) están apoyando esta iniciativa, con lo que Linux será cada vez más sencillo de emplear y los programas serán cada vez mejores. Linux es un sistema operativo multitarea y multiusuario. Esto quiere decir que es capaz de ejecutar varios programas (o tareas) de forma simultánea y albergar a varios usuarios de forma simultánea. Por lo tanto, todos los usuarios de Linux deben tener una cuenta de usuario en el sistema. A su vez Linux organiza a los usuarios en grupos de forma que se puedan establecer privilegios a un determinado grupo de trabajo, para el acceso a determinados archivos o servicios del sistema. Un sistema Linux no tiene, en esencia, un entorno gráfico asociado. Algo ahora casi impensable en alternativas como las de Microsoft o Apple es una realidad en Linux, que permite ser ejecutado en modo texto. Esta capacidad es ideal para máquinas que actúan como meros servidores o para PC obsoletos, con pocos recursos hardware. Las versiones más recientes de Linux incluyen el sistema X Window (no confundir con X Windows), el cual es

Configuración y Operación de Linux

Embed Size (px)

DESCRIPTION

Configuración y Operación de Linux

Citation preview

Page 1: Configuración y Operación de Linux

CONFIGURACIÓN Y OPERACIÓN DE LINUX

Objetivo

(IMPORTANTE) Nombre y Apellido: Eduardo Parada(IMPORTANTE) RUT:17515405-1(IMPORTANTE) correo: [email protected]

Familiarizarse con la configuración y operación del sistema operativo Linux en ambiente gráfico y en modo texto, a través de comandos, programas y utilidades, y particularmente en lo que se refiere a la configuración de la red y los servicios, así como en la compartición de recursos, el registro de eventos y la seguridad.

Requisitos

Disponer de una PC de buenas prestaciones y que esté conectada a Internet.

Sección A: Introducción

¿Qué es Linux?En la actualidad existen una gran cantidad de sistemas operativos, dependiendo del tipo de computador y del uso a que está destinado. Por ejemplo para los PC uno de los sistemas operativos más difundidos es Microsoft Windows, en sus diferentes versiones (95, 98, Me, NT, 2000, XP, 2003, Vista, 2008). Otros sistemas operativos son Microsoft DOS, Unix, Linux, MacOS, OS/2.

Linux está inspirado en Unix, un sistema operativo desarrollado en 1970, el cual tiene la característica de ser fácilmente “portable” a diferentes tipos de máquinas, por lo que existen versiones de Unix para casi todos los tipos de computadores, desde PC hasta estaciones de trabajo y supercomputadores. Al contrario que otros sistemas operativos, como por ejemplo Mac OS de Apple Computer, Unix no fue pensado para ser fácil de emplear, sino para ser sumamente flexible. Por lo tanto Linux no es en general tan sencillo de usar como otros sistemas operativos, aunque se están realizando grandes esfuerzos para facilitar su uso. Pese a todo, la enorme flexibilidad de Linux y su gran estabilidad (y el bajo costo) han hecho de este sistema operativo una opción muy interesante. Además el futuro de Linux es brillante y cada vez más gente, gobiernos (como Venezuela) y empresas (como IBM) están apoyando esta iniciativa, con lo que Linux será cada vez más sencillo de emplear y los programas serán cada vez mejores.

Linux es un sistema operativo multitarea y multiusuario. Esto quiere decir que es capaz de ejecutar varios programas (o tareas) de forma simultánea y albergar a varios usuarios de forma simultánea. Por lo tanto, todos los usuarios de Linux deben tener una cuenta de usuario en el sistema. A su vez Linux organiza a los usuarios en grupos de forma que se puedan establecer privilegios a un determinado grupo de trabajo, para el acceso a determinados archivos o servicios del sistema.

Un sistema Linux no tiene, en esencia, un entorno gráfico asociado. Algo ahora casi impensable en alternativas como las de Microsoft o Apple es una realidad en Linux, que permite ser ejecutado en modo texto. Esta capacidad es ideal para máquinas que actúan como meros servidores o para PC obsoletos, con pocos recursos hardware. Las versiones más recientes de Linux incluyen el sistema X Window (no confundir con X Windows), el cual es el encargado de controlar y manejar la interfaz de usuario. X Window es mucho más poderoso que otros entornos similares como Microsoft Windows, puesto que permite que el usuario tenga un control absoluto de la representación de los elementos gráficos. La presencia de un sistema gráfico y de los entornos de escritorio y gestores de ventanas (dos cosas distintas) posibilita dotar a Linux de las mismas funciona lidades que se tienen en un Windows tradicional, pero el usuario puede obviar su uso si así lo desea.

En modo texto, Linux dispone de varios programas que se encargan de interpretar los comandos que introduce el usuario y realiza las acciones oportunas en respuesta. Estos programas denominados shell son el modo típico de comunicación en todos los sistemas Unix, incluido Linux. Para muchas personas el hecho de tener que introducir los comandos de forma manual les puede parecer intimidante y dificultoso, aunque como se verá más adelante los comandos de Linux son relativamente simples y muy poderosos.

Linux nació en el año 1991, iniciado por el entonces estudiante de informática Linus Torvalds (de ahí su nombre). Su creador buscaba una forma de poder ejecutar en su máquina un entorno que pudiese darle una alternativa al entonces omnipresente (aún más que hoy) Windows. Para ello, desarrolló el llamado núcleo (kernel), un componente esencial sobre el que giran el resto de elementos de este sistema operativo. Precisamente para elaborar esos elementos adicionales, Linus y la comunidad de desarrolladores del proyecto (que empezó a crecer exponencialmente gracias a Internet) aprovechó los recursos del movimiento GNU para aportar muchas de las soluciones desarrolladas por este organismo, tales como editores, compiladores, o compresores de archivos. Esto dio origen como tal al sistema GNU/Linux, aunque en la mayoría de los medios se le conozca únicamente como Linux.

Page 2: Configuración y Operación de Linux

-2-

La característica más conocida de esta alternativa es su carácter de libre distribución. La mayoría del sistema y sus componentes (a excepción de algunas utilidades de carácter comercial) se auspician bajo los términos de la licencia GPL de la organización GNU. Este tipo de contrato nos permite, a grandes rasgos, utilizar el software, distribuirlo y modificarlo a nuestro antojo. Eso sí, la distribución y modificación están sujetas a las mismas reglas, y se deben ceder todo el código fuente y los mismos derechos a toda la comunidad tras haber efectuado cualquier variación. Mediante la cesión de los fuentes de cada herramienta, se nos hace partícipes de su desarrollo y se nos da una opción impensable en filosofías propietarias, la de poder conocer los secretos del software y utilizar ese código como prefiramos. Las compañías con negocio en Linux no sacan beneficio económico de la venta de distribuciones, ya que en realidad cobran únicamente por lo que se podría considerar la “parte física” del producto: la producción de los CD o DVD, los manuales, y los gastos de envío o distribución. El negocio está en los servicios (soporte, implantación y gestión, formación, etc.).

Actualmente Linux se obtiene en forma de distribuciones, que básicamente son kits compuestos por un núcleo, una serie de componentes indispensables para el funcionamiento de los recursos hardware y, además, un subconjunto de herramientas adicionales que cada fabricante considera oportunas. Estas distribuciones se pueden comprar en cajas con los CD, DVD y manuales tradicionales, pero existe una opción más barata: la descarga directa desde Internet. Prácticamente todas ellas se pueden bajar íntegra y gratuitamente desde las páginas de sus desarrolladores, desde portales Linux dedicados a este aspecto (como www.linuxiso.org) o incluso desde aplicaciones P2P como BitTorrent, cada vez más usada para este propósito. Los distintos responsables de las distribuciones (Fedora, Novell-SuSE, Mandrake, Slackware, Debian, Ubuntu, Gentoo…) se distinguen también entre ellos debido a la inclusión de herramientas de configuración de sus sistemas específicos, y en algunos casos incluso en el formato de los denominados “paquetes” de instalación. Estos archivos son la forma en la que aplicaciones, librerías y otros componentes del sistema operativo están preparados para ser instalados más fácilmente. Para que nos hagamos una idea, los paquetes RPM (los más extendidos) del mundo Linux son similares a los archivos MSI e incluso a algunos EXE autoinstalables de Windows. Una vez que tengamos el sistema cargado, podremos acceder a la inmensa cantidad de software disponible para Linux a través de ellos, aunque también podremos descargarnos los fuentes de la herramienta para ser compilada e instalada en nuestro sistema.

Entre las novedades incorporadas, se encuentran herramientas de gestión de proyectos (OpenProject y Planner), Inkscape (editor de gráficos vectoriales), aplicaciones de administración que monitorean y controlan servicios, así como mayor soporte multimedia. Posee un instalador gráfico que en seis pasos y sin mayores complicaciones instala en menos de 30 minutos la distribución. Canaima está disponible en el portal www.softwarelibre.gob.ve.

En los años recientes se han popularizado distribuciones compactas de Linux (Live CD), entre las que se destacan Ubuntu y Knoppix. El sistema se ejecuta directamente desde el CD-ROM, sin necesidad de instalación, ya que existe soporte para una gran cantidad de dispositivos de hardware, que son detectados y configurados automáticamente.

Cuando la PC se inicia desde un Live CD, se carga la imagen del kernel de Linux ( vmlinuz). Luego, se crean varios MB de disco virtual (ramdisk) en la RAM de la PC. Los directorios de gran tamaño (como /usr, /opt…) son montados directamente desde el CD-ROM en modo de solo lectura.

Una de las ventajas del Live CD es que permite ejecutar numerosas aplicaciones ya preinstaladas, sin necesidad de instalarlas en el disco duro, y sin perder por ello la capacidad de almacenar y recuperar información de los distintos dispositivos, incluidas las particiones Windows. Esta ventaja resulta evidente cuando el PC de la casa es compartido con otros miembros de la familia que podrían ser reacios a reparticionar el disco duro, con el peligro que ello representa, para instalar un nuevo sistema operativo que además desconocen.Un Live-CD se puede usar de distintas formas, por ejemplo: Para enseñar y demostrar de manera sencilla el sistema Linux, especialmente como sistema operativo. Para realizar prácticas de laboratorio. Probar rápidamente la compatibilidad de hardware bajo Linux antes de comprarlo o instalarlo. Utilizar las herramientas incluidas para restaurar un sistema Linux o Windows dañado o sus datos perdidos.

Bajo la filosofía de Live-CD se han desarrollado versiones especializadas orientadas a la seguridad informática y gestión de redes. Por ejemplo Knoppix-STD (Security Tools Distribution) incluye sofisticadas herramientas agrupadas en varias categorías: encriptación (gpg, openssl, stunnel, etc.), firewalls (shorewall), honeypots (honeyd, labrea), detección de intrusos (snort, aide), analizador de tráfico y sniffers (ethereal), test de penetración, herramientas generales de red (iptraf, ntop). El listado completo se encuentra en http://www.knoppix-std.org. Por lo tanto, arrancando con este CD, se tiene un sistema Linux completamente usable, y con mas de 200 utilidades para administrar redes, analizarlas, monitorearlas, etc. Es muy útil para auditores de seguridad.

BackTrack es un un Live CD que deriva de la fusión de otros dos populares Live CDs: Whax y Auditor. BackTrack no está basado en Knoppix, sino en Slackware, para facilitar la modularidad. Esto posibilita personalizarlo para incluir los módulos deseados, dependiendo de las necesidades. Tiene un gran repositorio de exploits y herramientas. Puede obtenerse en http://www.remote-exploit.org.

KnoppixEl funcionamiento de esta distribución (basada en Debian, la distribución más purista) es tan simple que no requiere de conocimientos informáticos avanzados para poder utilizarla. El craedor de la iniciativa fue Klaus Knopper en Alemania. Se puede

Page 3: Configuración y Operación de Linux

-3-

visitar el sitio de desarrollo (http://www.knoppix.org) y descargar la imagen ISO del CD. El sitio en español es http://www.knoppix-es.org. La versión más reciente se consigue como "ligera" en CD y "maxi" en DVD. Con la imagen ISO se puede crear un CD o DVD con un software de grabación (ej. Nero Burning ROM). Así, tendremos prácticamente todo lo que hace falta para ejecutar Linux.

Knoppix ofrece un entorno GNU/Linux totalmente operativo sin necesidad de instalarlo en el disco duro (aunque esto último también puede hacerse). Una característica que asombra a cualquiera que lo ve arrancar, es su módulo de detección de hardware, lo que permite su utilización en casi cualquier equipo sin necesidad de instalar ningún driver. También es impresionante ver la cantidad de software (cerca de 2 Gigabytes) que se encuentran comprimidos en el CD y que son descomprimidos “al vuelo” a medida que se ejecutan.

UbuntuLa distribución Ubuntu también está basada en Debian y es particularmente atractiva para los no iniciados, ya que es muy fácil de usar y posee un ambiente gráfico análogo a Windows de Microsoft.

El slogan de Ubuntu es Linux para seres humanos y el nombre proviene de una antigua palabra africana que significa humanidad para los otros. Ubuntu también fue el nombre de un movimiento encabezado por el obispo Desmond Tutu, quien ganó el Premio Nobel de la Paz en 1984 por sus luchas en contra del apartheid en Sudáfrica.

El patrocinador de Ubuntu es el millonario emprendedor surafricano Mark Shuttleworth, el cual, tras ver similitudes entre los ideales de los proyectos GNU, Debian y en general con el movimiento del software libre, decidió aprovechar la ocasión para difundir los ideales de Ubuntu. La iniciativa surgió por parte de algunos programadores decepcionados del proyecto Debian, ya que cualquier propuesta interesante se ahogaba en un mar de discusiones y no existían responsabilidades definidas. Debian no ponía énfasis en estabilizar el desarrollo de sus versiones de prueba y sólo proporcionaba auditorías de seguridad a su versión estable, la cual era utilizada sólo por una minoría, debido a la poca o nula vigencia que poseía en términos de la tecnología Linux actual.

Tras formar un grupo multidisciplinario, los programadores decidieron buscar el apoyo económico de Mark Shuttleworth, que tras fundar la compañía Thawte (emisora de certificados digitales) en el garaje de su domicilio, logró venderla cuatro años después a la empresa VeriSign por 575 millones de dólares. Además viajó al ISS (International Space Station) en 2002 a bordo de una Soyuz. Shuttleworth vio con simpatía el proyecto y decidió convertirlo en una iniciativa autosostenible, combinando su experiencia en la creación de nuevas empresas con el talento y la experiencia de los programadores de la plataforma Linux. De esta forma nació la empresa Canonical Ltd., con un capital de 10 millones de dólares, encargada de sostener económicamente el proyecto mediante la comercialización de servicios y soporte técnico a otras empresas. Tras varios meses de trabajo y un breve período de pruebas, la primera versión de Ubuntu (Warty Warthog) fue lanzada el 20 de octubre de 2004.

Algunas características resaltantes de Ubuntu son las siguientes: Basado en la distribución Debian y ambiente gráfico GNOME. Disponible en 4 arquitecturas: Intel x86, AMD64, PowerPC, SPARC (sólo en versión de servidor). El navegador web oficial es Mozilla Firefox. El sistema incluye funciones avanzadas de seguridad y entre sus políticas se encuentra el no activar, de forma predeterminada,

procesos latentes al momento de instalarse. Por eso mismo, no hay un firewall predeterminado, ya que no existen servicios que puedan atentar a la seguridad del sistema.

Para más información sobre Ubuntu, visite:

Page 4: Configuración y Operación de Linux

-4-

http://www.ubuntu.com https://help.ubuntu.com http://www.ubuntu-es.org

Versiones de UbuntuLas versiones estables de Ubuntu se liberan cada 6 meses y se mantienen actualizadas en materia de seguridad hasta 18 meses después de su lanzamiento. La nomenclatura de las versiones no obedece principalmente a un orden de desarrollo, se compone del dígito del año de emisión y del mes en que esto ocurre. La siguiente es una lista de las versiones y su lanzamiento:

Versión Fecha de lanzamiento Nombre5.04 abril 2005 Hoary Hedgehog5.10 octubre 2005 Breezy Badger6.06 junio 2006 Dapper Drake6.10 octubre 2006 Edgy Eft7.04 abril 2007 Feisty Fawn7.10 octubre 2007 Gutsy Gibbon8.04 abril 2008 Hardy Heron8.10 Octubre 2008 Intrepid Ibex

Y otras mas a la fecha, donde ya estamos en la versión 15.4.

El nombre sigue un mismo patrón: Un adjetivo y el nombre de un animal que empiezan con la misma letra. Esa letra es la siguiente por orden alfabético en cada versión.

Es posible descargar la imágen ISO del CD-ROM de Ubuntu ingresando a la página oficial http://www.ubuntu.com o solicitar el CD-ROM al Prof. V. Mendillo.

Organización del software UbuntuEn Ubuntu divide todo el software en cuatro categorías, llamadas "componentes", para así mostrar diferencias en licencias y la prioridad con la que se atienden los problemas que informen los usuarios. Por defecto, se instala una selección de paquetes que cubre las necesidades básicas de la mayoría de los usuarios de computadoras. Los paquetes de Ubuntu generalmente se basan en los paquetes de la rama inestable (Sid) de Debian.

El componente Main contiene solamente los paquetes que cumplen los requisitos de la licencia de Ubuntu, y para los que hay soporte disponible por parte de su equipo. Éste está pensado para que incluya todo lo necesario para la mayoría de los sistemas Linux de uso general. Los paquetes de este componente poseen ayuda técnica garantizada y mejoras de seguridad oportunas.

El componente Restricted contiene el software que está soportado por los desarrolladores de Ubuntu debido a su importancia, pero que no está disponible bajo licencia libre para incluirlo en Main. En esta categoría se incluyen los paquetes tales como los controladores propietarios de algunas tarjetas gráficas, como por ejemplo, los de nVIDIA. El nivel de la ayuda es más limitado que para Main, puesto que los desarrolladores pueden no tener acceso al código fuente.

El componente Universe contiene una amplia gama del software, que puede o no tener una licencia restrictiva, pero que no recibe apoyo por parte del equipo de Ubuntu. Esto permite que los usuarios instalen toda clase de programas en el sistema, pero los guarda en un lugar aparte de los paquetes soportados Main y Restricted.

Finalmente se encuentra el componente Multiverse, que contiene los paquetes sin soporte debido a que no cumplen los requisitos de software libre.

Ambiente gráfico de UbuntuLa interfaz gráfica está basada en el sistema X Window, que es lo habitual en Unix. El sistema X Window se compone de dos parte principales: el servidor X y el programa para la gestión de las ventanas. El servidor X es el programa que se encarga realmente de dibujar en la pantalla. Por el contrario el gestor de ventanas, como su nombre indica, es el encargado de crear las ventanas y gestionar su apariencia. Debido a este modelo, la apariencia de las aplicaciones varía según se use uno u otro gestor de ventanas, entre los que destacan por su sencillez de uso y popularidad los entornos KDE y GNOME, los cuales son totalmente personalizables. KDE (K Development Environment) es uno de los más populares, puesto que une una gran facilidad de uso a un ambiente bonito y agradable. La 'K' originariamente representaba la palabra "Kool", pero su significado fue abandonado más tarde. Actualmente significa simplemente K, la letra inmediatamente anterior a la L (inicial de Linux) en el alfabeto. KDE incluye una gran cantidad de utilidades que se integran con el entorno. El ícono con la K es el K Menu, que sirve para desplegar la lista de aplicaciones a fin de ejecutar fácilmente alguna de ellas.

Page 5: Configuración y Operación de Linux

-5-

KDE es usando por muchas distribuciones (por ejemplo Knoppix). En cambio Ubuntu utiliza GNOME. Sin embargo existe una variante llamada Kubuntu, con KDE como entorno de escritorio. Las nuevas versiones de Kubuntu salen de manera regular y predecible; se hace una nueva versión cada vez que sale una actualización de KDE.

El proyecto GNOME (GNU Network Object Model Environment) surgió en 1997 liderado por los mexicanos Miguel de Icaza y Federico Mena con el fin de crear un entorno de escritorio completamente libre para sistemas operativos libres, en especial para GNU/Linux. Desde el principio, el objetivo principal de GNOME fue proporcionar un conjunto de aplicaciones amigables y un escritorio fácil de utilizar. GNOME también es una palabra del idioma inglés que significa gnomo (enano mitológico).

Los primeros desarrolladores de GNOME criticaban a KDE por basarse en la biblioteca de controles gráficos Qt, cuya licencia (QPL), aunque libre, no era compatible con la licencia GPL de la FSF. Años más tarde los problemas de licencia de Qt se han resuelto y estas críticas han cesado. Sin embargo, los dos proyectos siguen rumbos tecnológicos distintos y se hacen una competencia amigable.

Como con la mayoría de las aplicaciones GNU, GNOME ha sido diseñado para ejecutarse en toda la gama de sistemas operativos de tipo Unix con X Window, y especialmente pensado para GNU/Linux. Desde sus inicios se ha utilizado la biblioteca de controles gráficos GTK.

Actualmente el proyecto evoluciona bajo amparo de la Fundación GNOME (http://www.gnome.org).En la carpeta Linux del DVD hay una serie de libros electrónicos sobre Linux y sobre Ubuntu en particular, que puede consultar

a fin de ampliar los conocimientos básicos de las siguientes secciones.

Sección B: Demostraciones

1. Coloque Ud. las pantallas (todas) de la configuración de una máq uina virtual en Virtual Box para Ubuntu 15:

Page 6: Configuración y Operación de Linux

-6-

Page 7: Configuración y Operación de Linux

-7-

Page 8: Configuración y Operación de Linux

-8-

Page 9: Configuración y Operación de Linux

-9-

Page 10: Configuración y Operación de Linux

-10-

Page 11: Configuración y Operación de Linux

-11-

Page 12: Configuración y Operación de Linux

-12-

Page 13: Configuración y Operación de Linux

-13-

Page 14: Configuración y Operación de Linux

-14-

2. Coloque Ud. las pantallas (todas) de la instalación de Ubuntu:

Page 15: Configuración y Operación de Linux

-15-

Page 16: Configuración y Operación de Linux

-16-

Page 17: Configuración y Operación de Linux

-17-

Page 18: Configuración y Operación de Linux

-18-

Page 19: Configuración y Operación de Linux

-19-

Page 20: Configuración y Operación de Linux

-20-

3. Coloque Ud. las pantallas del home de escritorio de Ubuntu (entorno de escritorio):

Page 21: Configuración y Operación de Linux

-21-

Page 22: Configuración y Operación de Linux

-22-

Page 23: Configuración y Operación de Linux

-23-

4. Colocar la salida de los siguientes comandos y explique para que sirven cada uno:a. Hostname

Muestra el nombre de la maquinaeduardo@eduardo -VirtualBox:~$ hostnameeduardo-VirtualBox

b. ifconfig –aEs para poder ver la configuración de red

eduardo@eduardo-VirtualBox:~$ ifconfig -aeth0 Link encap:Ethernet direcciónHW 08:00:27:f9:26:78 Direc. inet:10.0.2.15 Difus.:10.0.2.255 Másc:255.255.255.0 Dirección inet6: fe80::a00:27ff:fef9:2678/64 Alcance:Enlace ACTIVO DIFUSIÓN FUNCIONANDO MULTICAST MTU:1500 Métrica:1 Paquetes RX:71 errores:0 perdidos:0 overruns:0 frame:0 Paquetes TX:131 errores:0 perdidos:0 overruns:0 carrier:0 colisiones:0 long.colaTX:1000 Bytes RX:21389 (21.3 KB) TX bytes:16685 (16.6 KB)

lo Link encap:Bucle local Direc. inet:127.0.0.1 Másc:255.0.0.0 Dirección inet6: ::1/128 Alcance:Anfitrión ACTIVO BUCLE FUNCIONANDO MTU:65536 Métrica:1 Paquetes RX:253 errores:0 perdidos:0 overruns:0 frame:0 Paquetes TX:253 errores:0 perdidos:0 overruns:0 carrier:0 colisiones:0 long.colaTX:0 Bytes RX:25279 (25.2 KB) TX bytes:25279 (25.2 KB)

c. pwdEste comando muestra la ruta donde uno se encuentra

eduardo@eduardo -VirtualBox:~$ pwd/home/ eduardo

d. sudo –iCambia del usuario normal al usuario root pidiendo la contraseña

eduardo@eduardo -VirtualBox:~$ sudo -i[sudo] password for eduardo: root@eduardo -VirtualBox:~#

e. idMuestra la información completa del usuario, y a que grupos pertenece

eduardo@eduardo -VirtualBox:~$ iduid=1000(eduardo) gid=1000(eduardo) grupos=1000(eduardo),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),115(lpadmin),131(sambashare)

f. whoMuestra quien se encuentra en este momento conectado a la sesion

eduardo@eduardo -VirtualBox:~$ whoeduardo :0 2015-10-18 21:57 (:0)eduardo pts/0 2015-10-18 22:00 (:0)

g. who am iMuestra quien es el que esta preguntando en este caso soy yo mismo en el terminal 0

eduardo@eduardo -VirtualBox:~$ who am ieduardo pts/0 2015-10-18 22:00 (:0)

h. lastMuestra un listado de los últimos usuarios conectados

eduardo@eduardo -VirtualBox:~$ lasteduardo pts/0 :0 Sun Oct 18 22:00 still logged in eduardo pts/0 :0 Sun Oct 18 21:59 - 22:00 (00:00) eduardo pts/1 :0 Sun Oct 18 21:58 - 21:58 (00:00) eduardo pts/0 :0 Sun Oct 18 21:57 - 21:59 (00:02) eduardo :0 :0 Sun Oct 18 21:57 still logged in reboot system boot 3.19.0-15-generi Sun Oct 18 21:56 - 22:01 (00:05) eduardo pts/0 :0 Sun Oct 18 21:23 - 21:55 (00:31) eduardo pts/0 :0 Sun Oct 18 21:22 - 21:23 (00:00) eduardo :0 :0 Sun Oct 18 21:19 - down (00:36)

Page 24: Configuración y Operación de Linux

-24-

reboot system boot 3.19.0-15-generi Sun Oct 18 21:18 - 21:55 (00:37)

wtmp begins Sun Oct 18 21:18:12 2015i. shutdown

Este comando paga la maquina si uno esta como root en caso contrario da error por permisos, y la apaga 1 minuto después del comando

root@eduardo -VirtualBox:~# shutdownShutdown scheduled for dom 2015-10-18 22:14:13 CLT, use 'shutdown -c' to cancel.root@eduardo -VirtualBox:~# Broadcast message from root@eduardo -VirtualBox (Sun 2015-10-18 22:13:13 CLT):

The system is going down for power-off at Sun 2015-10-18 22:14:13 CLT!

j. shutdown -r nowEste comando no devuelve nada ya que apaga la maquina en el instantek. killA este comando uno le señala un proceso y lo termina

eduardo@eduardo -VirtualBox:~$ killkill: uso: kill [-s id_señal | -n num_señal | -id_señal] pid | idtrabajo ... ó kill -l [id_señal]

l. cdEste comando es para cambiarse de directorioeduardo@eduardo -VirtualBox:~$ cdeduardo@eduardo -VirtualBox:~$ cdm. cd /Este comando cambia de directorio al directorio root

eduardo@eduardo -VirtualBox:~$ cd /eduardo@eduardo -VirtualBox:/$

n. lsMuestra la lista de carpetas y archivos

eduardo@eduardo -VirtualBox:~$ lsDescargas Escritorio Imágenes Plantillas VídeosDocumentos examples.desktop Música Público

o. ls –lrtMuestra la lista de carpetas y archivos pero mas detallado

eduardo@eduardo -VirtualBox:~$ ls -lrttotal 44-rw-r--r-- 1 eduardo eduardo 8980 oct 18 21:12 examples.desktopdrwxr-xr-x 2 eduardo eduardo 4096 oct 18 21:19 Vídeosdrwxr-xr-x 2 eduardo eduardo 4096 oct 18 21:19 Públicodrwxr-xr-x 2 eduardo eduardo 4096 oct 18 21:19 Plantillasdrwxr-xr-x 2 eduardo eduardo 4096 oct 18 21:19 Músicadrwxr-xr-x 2 eduardo eduardo 4096 oct 18 21:19 Imágenesdrwxr-xr-x 2 eduardo eduardo 4096 oct 18 21:19 Documentosdrwxr-xr-x 2 eduardo eduardo 4096 oct 18 21:19 Descargasdrwxr-xr-x 2 eduardo eduardo 4096 oct 18 21:55 Escritorio

p. catEs para abrir y ver un archivoq. cat /etc/hostsHace lo mismo pero esta vez abre el archivo hosts de etc

eduardo @eduardo-VirtualBox:~$ cat /etc/hosts127.0.0.1 localhost127.0.1.1 eduardo VirtualBox

# The following lines are desirable for IPv6 capable hosts::1 ip6-localhost ip6-loopbackfe00::0 ip6-localnetff00::0 ip6-mcastprefixff02::1 ip6-allnodesff02::2 ip6-allrouters

r. tail -f nombre_archivo

Page 25: Configuración y Operación de Linux

-25-

Hace lo mismo que los 2 comandos de arribaeduardo@eduardo -VirtualBox:~$ tail -f nombre_archivotail: no se puede abrir «nombre_archivo» para lectura: No existe el archivo o el directoriotail: no queda ningún fichero

s. df Muestra la información de utilización del disco en bytes

eduardo@eduardo -VirtualBox:~$ dfS.ficheros bloques de 1K Usados Disponibles Uso% Montado enudev 3486064 0 3486064 0% /devtmpfs 699296 9108 690188 2% /run/dev/sda1 9415016 3796740 5116980 43% /tmpfs 3496472 156 3496316 1% /dev/shmtmpfs 5120 4 5116 1% /run/locktmpfs 3496472 0 3496472 0% /sys/fs/cgroupcgmfs 100 0 100 0% /run/cgmanager/fstmpfs 699296 44 699252 1% /run/user/1000/dev/sr0 57416 57416 0 100% /media/eduardo/VBOXADDITIONS_5.0.4_102546

t. df –khMuestra la información del disco convertida a kB,mB,gbB

eduardo@eduardo -VirtualBox:~$ df -khS.ficheros Tamaño Usados Disp Uso% Montado enudev 3,4G 0 3,4G 0% /devtmpfs 683M 8,9M 675M 2% /run/dev/sda1 9,0G 3,7G 4,9G 43% /tmpfs 3,4G 156K 3,4G 1% /dev/shmtmpfs 5,0M 4,0K 5,0M 1% /run/locktmpfs 3,4G 0 3,4G 0% /sys/fs/cgroupcgmfs 100K 0 100K 0% /run/cgmanager/fstmpfs 683M 44K 683M 1% /run/user/1000/dev/sr0 57M 57M 0 100% /media/eduardo/VBOXADDITIONS_5.0.4_102546

u. mountEs para montar un filesystem ej cd/dvd-rom

eduardo@eduardo -VirtualBox:~$ mountsysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)udev on /dev type devtmpfs (rw,relatime,size=3486064k,nr_inodes=201926,mode=755)devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)tmpfs on /run type tmpfs (rw,nosuid,noexec,relatime,size=699296k,mode=755)/dev/sda1 on / type ext4 (rw,relatime,errors=remount-ro,data=ordered)securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)tmpfs on /sys/fs/cgroup type tmpfs (rw,mode=755)cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd)pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event,release_agent=/run/cgmanager/agents/cgm-release-agent.perf_event)cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls,net_prio)cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpu,cpuacct)cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,nosuid,nodev,noexec,relatime,hugetlb,release_agent=/run/cgmanager/agents/cgm-release-agent.hugetlb)cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset,clone_children)systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=26,pgrp=1,timeout=300,minproto=5,maxproto=5,direct)mqueue on /dev/mqueue type mqueue (rw,relatime)hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime)

Page 26: Configuración y Operación de Linux

-26-

debugfs on /sys/kernel/debug type debugfs (rw,relatime)fusectl on /sys/fs/fuse/connections type fusectl (rw,relatime)cgmfs on /run/cgmanager/fs type tmpfs (rw,relatime,size=100k,mode=755)tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=699296k,mode=700,uid=1000,gid=1000)gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,relatime,user_id=1000,group_id=1000)/dev/sr0 on /media/eduardo /VBOXADDITIONS_5.0.4_102546 type iso9660 (ro,nosuid,nodev,relatime,uid=1000,gid=1000,iocharset=utf8,mode=0400,dmode=0500,uhelper=udisks2)

v. umountEs para desmontar un filesystem ej cd/dvd-rom

eduardo @eduardo -VirtualBox:~$ umountUsage: umount [-hV] umount -a [options] umount [options] <source> | <directory>

Opciones: -a, --all unmount all filesystems -A, --all-targets unmount all mountpoints for the given device in the current namespace -c, --no-canonicalize don't canonicalize paths -d, --detach-loop if mounted loop device, also free this loop device --fake dry run; skip the umount(2) syscall -f, --force force unmount (in case of an unreachable NFS system) -i, --internal-only don't call the umount.<type> helpers -n, --no-mtab don't write to /etc/mtab -l, --lazy detach the filesystem now, clean up things later -O, --test-opts <list> limit the set of filesystems (use with -a) -R, --recursive recursively unmount a target with all its children -r, --read-only in case unmounting fails, try to remount read-only -t, --types <list> limit the set of filesystem types -v, --verbose say what is being done

-h, --help display this help and exit -V, --version output version information and exit

For more details see umount(8).

5. Coloque y explique todos los pasos necesarios para la actualiazción de la lista de paquetes y el upgrade de las aplicaciones :

a. sudo apt-get updateEste comando actualiza la lista de paquetes haciendo uso del gestor apt-get

b. sudo apt-get upgrade;Este comando es que instala lo que se acaba de ver en la lista de paquetes y actualiza Ubuntu y las demás aplicaciones

c. sudo apt-get install build-essential module-assistant;Busca y Instala el compliador natural para el kernel de Ubuntu y el Segundo es un modulo de asistencia para el manejo de errores

d. sudo apt-get install aptitudeBusca y Instala el gestor de aplicaciones aptitude

e. sudo aptitude search “lo que queremos buscar”Aquí uno simplemente puede usar el gesto de aplicaciones para buscar lo que sea que uno quiera instalar

f. sudo umount “/media/disco/”Con este comando uno desmonta un disco con la ruta /media

g. sudo apt-get install xz-utilsEste commando busca y instala la herramienta para la apartura de codigo en modo kernel, cosa que lo mas probable que se halla instalado en el Segundo paso tambien

6. Instale y explique el paso a paso para la instalación de los compenentes de host invitado en VirtualBox:

Page 27: Configuración y Operación de Linux

-27-

Primero uno busca en devices y presiona “insert guest additions cd image” lo cual pondrá dicha imagen de cd dentro de la maquina

Primero ingresamos el m-a prepare para que el kernel se abra y se haga la compilación sobre los componentes que esta instalando virtual box

Page 28: Configuración y Operación de Linux

-28-

Page 29: Configuración y Operación de Linux

-29-

Luego nos posicionamos en el directorio del cd que acabamos de ingresar y buscamos el archivo que quieremos instalar, en este caso es VBoxLinuxAdditions.run, luego de escribir sudo ./VBoxLinuxAdditions.run el programa comienza a ejecutarte y los componentes de host invitado de virtual box comienzan a instalarse.

Page 30: Configuración y Operación de Linux

-30-

Como yo ya lo tenia instalado se comenzó a desintalar solo para instarlo denuevo, y luego de que la instalación esta lista hay que reiniciar la maquina. Lo que esto logra es que ahora podamos transferir cosas del portapapeles entre la maquina real y la virtual, y también por ejemplo la resolución se ajustara automáticamente al tamaño de la ventana

7. Inicie la maquina Virtual con los componentes de VirtualHost activo:

Page 31: Configuración y Operación de Linux

-31-

Y ahora se pueden hasta traspasar cosas solo arrastrándolas de un lugar a otro.

Sección C: Estructura de directorios y SAMBA

Al trabajar con Linux y Ubuntu, es importante tener en cuenta que hay ciertas diferencias en la estructura de su sistema de archivos y directorios, si se compara con Windows. En este último, cada dispositivo de almacenamiento tiene una letra asignada (A, B, C…) con una estructura independiente. Cada dispositivo es la raíz de su propio sistema de archivos.

Linux en cambio posee un solo sistema de archivos y un único árbol. La raíz no es el disco C o D, sino un directorio que contiene todos los demás. A esta raíz se le conoce como root y se representa con /. Los discos y otros dispositivos de almacenamiento se “montan” en esa estructura.

Page 32: Configuración y Operación de Linux

-32-

Bajo la raíz se encuentran distintos directorios cuya misión y nombre son estándar para todos los sistema Unix. En las siguientes figuras se muestran algunos de esos directorios y subdirectorios. Note que el árbol se encuentra invertido, como es usual en computación.

Page 33: Configuración y Operación de Linux

-33-

Page 34: Configuración y Operación de Linux

-34-

Sección D: El shell y los comandos básicos

Si bien el entorno gráfico en Linux es muy conveniente, todo usuario de Linux acabará antes o después relacionándose con el sistema empleando el modo texto. Este modo se basa en la ejecución de una serie de comandos, que son interpretados por un programa o shell. En Linux se puede disponer de varios de ellos (ej. C, Korn, Bourne, bash). Uno de los más populares es bash (Bourne Again Shell), que es una variante del Bourne shell clásico pero con características avanzadas. En la mayoría de los sistemas Linux el programa binario del shell se encuentra en /bin/sh. Si Linux se ha iniciado en modo texto, el sistema arranca de forma directa el shell y queda a la espera de introducción de nuevos comandos.

Usted puede necesitar usar el modo texto si la PC no logra entrar al modo gráfico, usualmente debido a que no se detectó correctamente la tarjeta de video. Si tampoco logra pasar al modo texto, reinicie la PC y seleccione Iniciar Ubuntu en modo gráfico seguro o pulse F4 para probar con otros parámetros VGA.

Si usted se encuentra en modo gráfico, puede acceder al shell de dos formas: La primera forma es utilizando una de las 6 consolas virtuales de Ubuntu, lo cual se hace presionando las siguientes combinaciones de teclas: Ctrl+Alt+F1 hasta Ctrl+Alt+F6. Para volver al modo gráfico hay que presionar Ctrl+Alt+F7. Si está usando una laptop, quizás también tenga que pulsar la tecla Shift. (Nota: Este procedimiento no siempre funciona y menos si está corriendo Ubuntu como una máquina virtual mediante VMware).

La segunda forma es la más segura y menos radical permitiendo acceder al shell desde el mismo entorno gráfico. Para esto hay que abrir el Terminal desde Aplicaciones | Accesorios. Para terminar (logout) la sesión de trabajo en el Terminal y cerrar la ventana, puede utilizar Ctrl+D o el comando exit.

Existen una serie de nociones básicas que hay que tener en cuenta a la hora de introducir los comandos en el Terminal. En primer lugar citaremos las siguientes: (a) Los comandos hay que teclearlos exactamente. (b) Las letras mayúsculas y minúsculas se consideran como diferentes.

En su forma más habitual (los shells de Bourne o de Korn), el sistema operativo utiliza un signo de $ como prompt para indicar que está preparado para aceptar comandos. En el caso de que el usuario acceda como root, este signo se sustituye por #.

Linux dispone de una infinidad de comandos que no resulta fácil recordar. Una ayuda que ofrece Ubuntu y otras distribuciones es pulsar Tab para que se muestren todos los comandos disponibles. Si usted no se acuerda de cómo se escribe un determinado comando (por ejemplo gnome), escriba gn y pulse Tab 2 veces. Así se mostrarán todos los comandos que empiezan por gn.

A continuación se muestra una lista de algunos comandos frecuentes de Linux para que usted los pruebe con calma. Puede conseguir ayuda sobre muchos de ellos añadiendo el parámetro --help.

Page 35: Configuración y Operación de Linux

-35-

El comando man es muy útil. Todos los manuales de Linux están dentro del propio sistema operativo, y este comando permite acceder a la información correspondiente al comando. Por ejemplo con man who aparecerá por pantalla y de forma formateada por páginas, la explicación del comando who. Se puede navegar a través de estas páginas con las teclas PgUp (Retroceder) y PgDn (Avanzar) y luego presionar q para salir.

El comando who permite averiguar quién está conectado al sistema (acuérdese que Linux es multiusuario). Más detalles se obtienen con el comando finger.

El comando w muestra información sobre los usuarios conectados y los procesos que están corriendo, mientras que el comando whoami informa quien es usuario actual conectado a la consola.

El comando passwd nombre_usuario (o sudo passwd nombre_usuario) permite cambiar la contraseña de un usuario. Si se usa con la opción –S, permite ver el estado de la contraseña del usuario (ej. passwd –S root). Para conocer más opciones, ejecute passwd --help o man passwd. El comando echo imprime un determinado texto en el terminal. Por ejemplo, echo $HOME muestra la variable HOME que contiene la ruta al directorio del usuario y echo $PATH muestra la variable que contiene la ruta donde buscar los comandos.

A continuación se muestra una lista de algunos comandos utilizados para manipular directorios y archivos (ficheros) para que usted también los pruebe con calma. Debido a que algunos comandos requieren tener privilegios de root, le conviene abrir una consola de root mediante sudo -i. Note como el prompt es # en vez de $.

El comando ls (abreviación de list) es muy importante, ya que muestra los nombres de los archivos y subdirectorios contenidos en el directorio en el que se está. Sólo se obtienen los nombres de los archivos, sin ninguna otra información, pero usando con parámetros

Page 36: Configuración y Operación de Linux

-36-

se hace más útil:

ls -a Muestra todos los archivos incluyendo algunos que ordinariamente están ocultos para el usuario (aquellos que comienzan por un punto). Se recuerda que el archivo punto . indica el directorio actual y el doble punto .. el directorio padre, que contiene, al actual. Para avanzar se pulsa la barra espaciadora y para terminar se pulsa q, es decir quit.

ls -l Esta es la opción de lista detallada: muestra toda la información de cada archivo, por ejemplo:

El comando ls admite los caracteres de sustitución o metacaracteres (*) y (?). El carácter * representa cualquier conjunto o secuencia de caracteres. El caracter ? representa cualquier caracter, pero sólo uno. Así que ls *.gif muestra todos los nombres de archivos que terminen en .gif, por ejemplo dib1.gif, a.gif, etc.

Para más información sobre ls, ejecute man ls. El número que aparece entre paréntesis, ej. MAN(1), indica la sección del manual.

El comando pwd (print work directory) muestra el directorio actual en el cual nos encontramos.El comando cd permite cambiar de directorio a partir del directorio actual de trabajo. Por ejemplo, cd /home/ubuntu. En este

ejemplo pasamos del directorio actual de trabajo al nuevo directorio /home/ubuntu, que será desde ahora nuestro nuevo directorio. cd juan nos traslada al subdirectorio juan (que deberá existir como subdirectorio en el directorio actual).

El comando cd solo, nos sitúa nuevamente en el directorio personal del usuario. El comando cd .. nos retrocede un nivel en la jerarquía de directorios. Por ejemplo, si estamos en /home/ubuntu y usamos este

comando, pasaremos al nivel inmediatamente superior de la jerarquía de directorios, en este caso a /home. Al contrario que en MS-DOS, en Linux no existe la forma cd.. sin espacio entre cd y los dos puntos. En la siguiente tabla se

ilustran algunas otras diferencias.

El comando find busca un archivo o subdirectorio a partir de un dado punto en el árbol. Por ejemplo find /etc -name passwd busca passwd a partir de /etc. Como otro ejemplo, find /etc -name ‘pass*’ busca todos los archivos que empiezan por pass.

La búsqueda podría llevar mucho tiempo, especialmente si se empieza desde la raíz. Linux permite correr un comando en background, añadiendo & al final del comando. Cuando se pone &, la consola queda libre para otros comandos.

El comando cat permite visualizar el contenido de uno o más archivos de forma no formateada. También permite copiar uno o más archivos como apéndice de otro ya existente. Algunas formas de utilizar este comando son las siguientes:

cat filename hace que en la pantalla se muestre el contenido del archivo filename.

cat file1 file2 > file3 hace que el contenido de los archivos file1 y file2 sea almacenado en file3.

cat file1 file2 >> file3 hace que el contenido de file1 y file2 sea añadido al final de file3.

El comando more permite visualizar un archivo una pantalla a la vez. Pruebe por ejemplo more /etc/passwd. Cuando se pulsa la barra espaciadora (el espacio en blanco), se visualizará la siguiente pantalla. Para salir de este comando (terminar la visualización) se pulsa q o también Ctrl+ D.

Page 37: Configuración y Operación de Linux

-37-

El siguiente es un ejemplo del uso de more para visualizar un directorio muy largo: ls –a | more. El símbolo | es un conector de pipeline (tubería), que es una forma de comunicación entre procesos la cual permite conectar la salida estándar de un proceso con la entrada de otro comando. Así todo lo que el proceso envíe a su salida estándar será tomado por el comando como entrada en el mismo orden en que se generó la información. El comando grep localiza una palabra, clave o frase en un conjunto de archivos y directorios, indicando en cuáles de ellos la ha encontrado. El nombre del comando viene del uso de expresiones regulares en la familia de editores ed.grep significa global regular expression printer. Este comando revisa uno o más archivos, mostrando aquellas líneas que contienen el conjunto de caracteres buscado. Si el conjunto de caracteres a buscar está compuesto por dos o más palabras separadas por un espacio, se debe coloca el conjunto de caracteres entre apóstrofes ('). El formato de grep es el siguiente: grep 'conjuntocaracteres' file siendo 'conjuntocaracteres' la secuencia de caracteres a buscar y file el archivo donde se debe buscar. Para ignorar minúsculas o mayúsculas, se usa la opción –i. Si no se indica el archivo, entonces grep usa la entrada estándar. Como ejemplo, grep abc * busca la cadena abc en todos los archivos del directorio actual. El comando grep resulta muy poderoso al utilizarlo con pipes. Por ejemplo, para averiguar saber si existe el archivo passwd en un directorio muy grande como /etc, podemos usar ls /etc | grep passwd. Aquí grep busca la cadena passwd en su entrada estándar, que a su vez es la salida de ls /etc. Pruebe esta forma del comando y compárela con ls /etc.

El comando history muestra una lista de los últimos comandos ejecutados, cada uno asociado con un número. Se puede repetir cualquiera de ellos simplemente poniendo un punto de admiración seguido del número en cuestión. Una forma más práctica es usar las flechas de arriba y abajo para moverse a través de la lista.

Linux, al igual que todos los sistemas Unix, mantiene un sistema de permisos de acceso a los archivos muy estricto, a fin de controlar qué es lo que se puede hacer con ellos, y quien lo puede hacer. Estos permisos se identifican con letras y son: r permiso de lectura el archivo, w permiso de escritura en el archivo, x permiso de ejecución del archivo, s permiso para cambiar el propietario del archivo. Se pueden ver los permisos de un archivo con el comando ls -l. Un ejemplo del resultado de este comando se presenta a continuación:

La primera línea presenta un directorio (la d al principio de la línea lo indica), la segunda presenta un archivo (el guión inicial lo indica) y la tercera un enlace (link). El nombre del directorio es graficas, tiene 5 archivos, fue modificado por última vez el 21 de Febrero del año en curso a las 6:31AM, el dueño es pepe, el grupo es users y el tamaño es 4096 bytes. Los tres caracteres rwx que siguen a la d inicial indican los permisos para el dueño, los tres siguientes r-x indican los permisos para el grupo y los tres siguientes r-x indican los permisos para el resto de usuarios. Como el orden de estos permisos es siempre el mismo (primero lectura r, después escritura w y después ejecución x), resulta que el archivo x.tar.gz no es ejecutable, que puede ser leído por el dueño y por el grupo pero no por los demás usuarios, además puede ser escrito sólo por pepe. Del enlace podemos destacar que se llama a, que enlaza al archivo /etc/hosts y que su tamaño y permisos reales los heredará de /etc/hosts.

Al contrario que en Windows o MS-DOS, los programas ejecutables en Unix no están marcados por una determinada extensión (.exe) sino por un atributo, el permiso de ejecución x. Si se elimina este atributo a un programa, no se podrá ejecutar.

Los permisos de lectura, escritura y ejecución tienen un significado diferente cuando se aplican a directorios y no a archivos normales. En el caso de los directorios el permiso r significa la posibilidad de ver el contenido del directorio; el permiso w da la posibilidad de crear y borrar archivos en ese directorio, y el permiso x autoriza a buscar y utilizar un archivo concreto.

Los permisos de un archivo (o directorio) pueden ser modificados por el dueño o por el administrador del sistema con el comando chmod que utiliza dos parámetros: cambio por realizar al permiso y nombre del archivo por cambiar. Los permisos se pueden especificar en octal o con una o más letras para identificar al usuario (u para el usuario, g para el grupo, o para los demás usuarios y a para todos), un +, un - o un = y después letras para identificar los permisos (r, w o x). Por ejemplo chmod og+x prueba.sh le da a los demás usuarios y al grupo permiso de ejecución del archivo prueba.sh (que debe estar en el directorio desde el cual se ejecuta el comando).

Existe una forma más rápida, pero quizás un poco más complicada de cambiar los permisos utilizando números octales y se considera r = 4, w = 2 y x = 1. El valor del permiso que queremos asignar será la suma de los permisos y lo tenemos que escribir para el usuario, el grupo y los otros. Como ejemplo, chmod 644 archivo asigna permisos de lectura y escritura para el usuario y sólo de lectura para los demás. chmod 755 archivo asigna permisos de lectura, escritura y ejecución al usuario y de lectura y ejecución a los demás. Claro está que es mucho más rápido y práctico cambiar los permisos si se usa el ambiente gráfico. Para tal fin en el explorador de archivos Nautilus (abierto como root) se hace clic con el botón derecho sobre el archivo y se selecciona Propiedades | Permisos.

Page 38: Configuración y Operación de Linux

-38-

Por otra parte, el comando chown se emplea para cambiar de propietario (change owner) a un determinado conjunto de archivos. Este comando sólo lo puede emplear el actual propietario de los mismos. Los nombres de propietario que admite Unix son los nombres de usuario, que están almacenados en el archivo /etc/passwd. La forma general del comando chown es la siguiente: chown newowner file1 file2 ...

Análogamente, el grupo al que pertenece un archivo puede ser cambiado con el comando chgrp, que tiene una forma general similar a la de chown: chgrp newgroup file1 file2... Los grupos de usuarios están almacenados en el archivo /etc/group.