introduccion a linux

152
INTRODUCCION A LINUX

Upload: conquisred-leo-leo

Post on 02-Jan-2016

44 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introduccion a Linux

INTRODUCCION A LINUX

Page 2: Introduccion a Linux

¿ Qué es LiNUX ?

Linux es un clon de Unix gratuito, programado inicialmente por

Linus Torvalds con la asistencia técnica de un grupo de

programadores a través de la Internet.

Cumple todas las características de los Sistemas Operativos

UNIX actuales, y con todos los modernos avances en los

Sistemas Operativos, con capacidad de multitarea real,

memoria virtual, librerías compartidas, consumición escasa de

recursos, manejo estupendo de la memoria, trabajo con

TCP/IP...

Linux se ejecuta principalmente en máquinas basadas en

PC's. Actualmente

está soportado prácticamente en el 100% de los procesadores

del mercado.

Page 3: Introduccion a Linux

distribuciones

• Slackware

• Debian GNU/Linux

• Knoppix

• Fedora Core

• SuSe

• Mandriva

• Gentoo Linux

• Ubuntu

Page 4: Introduccion a Linux

Slackware

• http://www.slackware.com

• Una de las primeras distribuciones que surge

• Dise˜nada por Patrick Volkerding a partir de SLS Linux

• Gran aceptaci´on al principio hasta llegar a ser la distribuci´on mas

• popular del mercado. Actualmente ha perdido terreno a favor de

• distribuciones mas modernas, siendo relegada a aplicaciones

• especializadas

• Sistema de instalaci´on de paquetes sin control de versiones ni

• dependencias

• Necesita un mayor conocimiento de Linux que la mayor´ıa de las

• otras distribuciones populares

Page 5: Introduccion a Linux

Debian GNU/Linux

• http://www.debian.org

• Distribución bastante popular que no está desarrollada por ninguna compañía comercial sino que es fruto del trabajo de diversos voluntarios en toda la comunidad de Internet

• Creado por Debian Project el año 1993

• Distribución completamente gratis, sin restricción de licencias en donde todo el software es GNU/GPL y no incluye software comercial

• Sistema de gestión e instalación de paquetes DEB

• No tiene marcado ningún entorno grafico en especial ya sea GNOME, KDE. . .

• Tres ramas – Stable

– Testing

– Unstable

Page 6: Introduccion a Linux

Knoppix

• http://www.knoppix.org

• Distribución live basada en Debian y utilizando KDE

• Variante GNOME: Gnoppix

• Desarrollada por Klaus Knopper

• Orientada al usuario domestico, puede servir para – Enseñar y demostrar de manera sencilla el sistema Linux

– Probar rápidamente la compatibilidad de hardware bajo Linux antes de comprarlo o utilizarlo

– Utilizar las herramientas incluidas para restaurar un sistema corrupto

Page 7: Introduccion a Linux

Fedora Core

• http://fedora.redhat.com

• Creada por Red Hat en su iniciativa de abrir su distribución a las contribuciones de la comunidad de usuarios

• Resultado de la fusión de Red Hat Linux con el proyecto Fedora Linux – Creación de Red Hat Enterprise Linux

– Orientada a la participación de la comunidad de usuarios

• Centrada, en principio, en el entorno gr´afico GNOME

Page 8: Introduccion a Linux

SuSe

• http://www.suse.de

• Distribución de una compañía alemana, posteriormente adquirida por Novell

• Combina el sistema de paquetes de Red Hat Linux (RPM) con una organización derivada de Slackware

• Es una de las distribuciones mas sencillas de instalar y administrar, ya que cuenta con varios asistentes gráficos para completar gran cantidad de tareas

• Centrada, en principio, en el entorno grafico KDE

Page 9: Introduccion a Linux

Mandriva

• http://www.mandrivalinux.com

• Aparecida en julio de 1998 y propiedad de Mandrivasoft

• Originalmente basada en Red Hat Linux

• Es otra de las distribuciones mas sencillas de instalar y administrar, estando orientada a usuarios con pocos conocimientos

• Centrada, en principio, en el entorno gráfico KDE

Page 11: Introduccion a Linux

Ubuntu

• http://www.ubuntu.com

• Patrocinada por Canonical Ltd., una

empresa privada fundada y financiada por

Mark Shuttleworth

• Basada en Debian GNU/Linux

• Gnome

• Tratamiento “exótico” del usuario root

(sudo)

Page 12: Introduccion a Linux

Mostrando Ficheros

El comando que se utiliza en Unix, y por lo tanto en

Linux para mostrar los ficheros es el comando: "ls",

también se utiliza "dir", pero no es mas que una copia

de "ls", con otro nombre

Una vez iniciada la sesión, escribe:

$ ls

Verás los ficheros que estén en ese directorio. Esos ficheros pueden

ser:

ejecutables (binarios), de texto, directorios, scripts (conjunto de

comandos dentro de un fichero de texto).

Page 13: Introduccion a Linux

Ejercicio (cuaderno de prácticas)

• Que comando ms-dos es equivalente al

comando ls en unix

Page 14: Introduccion a Linux

Permisos de los ficheros

drwx------ 3 root root 4096 Desktop/

Tipo de archivo

Permisos para el dueño

Permisos para el grupo

Permisos para el resto

Page 15: Introduccion a Linux

Permisos de los ficheros

drwx------ 3 root root 4096 Desktop/

Lectura

Escritura

Ejecución

Page 16: Introduccion a Linux

Permisos de los ficheros

drwx------ 3 root root 4096 Desktop/

Grupo

Dueño

Page 17: Introduccion a Linux

Ejercicio (cuaderno de prácticas)

• Explica los permisos de los siguientes

ficheros

• -rw-rw-rwx uno.dat

• drwx-wxrwx dos

• ---------x tres.dat

• -rwx------ cuatro.dat

Page 18: Introduccion a Linux

Mostrando los ficheros en color

Para ver los ficheros con colores usa:

$ ls - -color –s

Además, el parámetro "s",mostrará el tamaño del fichero

("size" en inglés)

Page 19: Introduccion a Linux

alias

Teclea lo siguiente:

$ alias ls='ls - - color -s'

ahora, escribe ls

$ ls

¡¡SORPRESA!!

Page 20: Introduccion a Linux

Creando Directorios

Un directorio, es un archivo el cual tiene la propiedad de

poder almacenar, ficheros y directorios.

$ mkdir directorio

Esto crearía un subdirectorio en el directorio actual

$ mkdir /home/daniel/directorio

Esto crearía un subdirectorio en el directorio /home/daniel

Page 21: Introduccion a Linux

Ejercicio (cuaderno de prácticas)

• Crea la siguiente estructura de directorios

/ home usuario uno

dos

tres

unouno

unodos

Page 22: Introduccion a Linux

Borrando Directorios (CUIDADO!)

Para borrar directorios en Linux, debes usar el

comando:

rmdir NombreDirectorio

NOTA:

rm –rf Nombredirectorio

Funcionaría igual que deltree en MS-DOS

Page 23: Introduccion a Linux

Ejercicio (cuaderno de prácticas)

• Borra la estructura de directorios con

fondo color canela

/ home usuario uno

dos

tres

unouno

unodos

Page 24: Introduccion a Linux

Renombrando Directorios

El comando que se utiliza para RENOMBRAR, es el

mismo que se utiliza para MOVER,que es: 'mv'

Para cambiar el nombre del directorio carlos a javier,

habrá que escribir:

mv carlos javier

El mismo comando se usa para renombrar tanto

FICHEROS como DIRECTORIOS.

Page 25: Introduccion a Linux

Ejercicio (cuaderno de prácticas)

• Cambia el nombre del directorio unodos y

ponle unod, y al directorio unouno le

pones unou

/ home usuario uno

dos

tres

unouno

unodos

Page 26: Introduccion a Linux

Moviendo ficheros/directorios

PERO, TAMBIÉN CON EL MISMO COMANDO SE PUEDE MOVER

UN DIRECTORIO, Por ejemplo:

Para mover ficheros, o directorios usa el comando mv:

Por ejemplo queremos MOVER el fichero: 'carta_a_pepe.txt' a

/home/javier/cartas_a_amigos/, pues escribimos:

mv carta_a_pepe.txt /home/javier/cartas_a_amigos/

mv cartas_a_amigos /

(mueve "cartas_a_amigos" a la raíz)

Page 27: Introduccion a Linux

Ejercicio (cuaderno de prácticas)

• Realiza la siguiente transformación:

/ home usuario uno

dos

tres

unouno

unodos

/ home usuario uno

dos tres unouno

unodos

Page 28: Introduccion a Linux

Accediendo a directorios, y ¿En

que directorio estoy?

Para acceder a un directorio:

cd NombreDirectorio

ruta actual:

pwd

cd

Sin parámetros regresara a "casa“. Por ejemplo la casa del usuario javier

será /home/javier.

(Este comando, hace lo mismo que si escribes: "cd ~", o "cd $HOME“)

Si quisiera ir al directorio /home/javier/programación/C, y estuviera como

el usuario "javier", escribiría (independientemente de yo donde estuviera)

cd ~/programación/C

Page 29: Introduccion a Linux

cd /

Independientemente del directorio donde te

encuentres ira directamente a la raíz

cd ..

Accederá a la carpeta/directorio inmediatamente

anterior

Accediendo a directorios, y ¿En

que directorio estoy?

Ojo con los espacios en blanco

Page 30: Introduccion a Linux

Árbol de directorios de

UNIX/LINUX

Page 31: Introduccion a Linux
Page 32: Introduccion a Linux

/

Root directory, starting point of the directory tree

/home

Personal directories of users

/dev

Device files that represent hardware components

/etc

Important files for system configuration

/etc/init.d

Boot scripts

/usr/bin

Generally accessible programs

/bin

Programs needed early in the boot process

/usr/sbin

Programs reserved for the system administrator

/sbin

Page 33: Introduccion a Linux

/usr/share/doc

Various documentation files

/usr/share/man

System manual pages (man pages)

/usr/src

Source code of system software

/usr/src/linux

Kernel source code

/tmp, /var/tmp

Temporary files

/usr

All application programs

/var

Configuration files (such as those linked from /usr)

/var/log

System log files

/lib

Shared libraries (for dynamically linked programs)

/proc

Process file system

Page 34: Introduccion a Linux

Crear con Vi. comandos

• :q

Salir, sólo cuando no has

realizado ningún cambio.

• :q!

Salir sin guardar cambios.

• :wq

Guardar cambios y salir.

• :w

Guardar cambios y continuar

edición.

• u

Deshace el último cambio en el

texto.

• Mayus+a

Añade texto al final de la línea

en la que está situado el cursor.

• Mayus+i

Inserta texto al principio de la

línea en la que está situado el

cursor.

• x

Elimina un carácter.

• dd

Elimina una linea

• /cadena

Buscar cadena hacia abajo del

texto.

• ?cadena

Buscar cadena hacia arriba del

texto.

Page 35: Introduccion a Linux

EJERCICIO (cuaderno de

practicas)

• Crea la siguiente estructura de ficheros y directorios en

tu directorio home y recoge en tu cuaderno de practicas

los pasos necesarios para realizarla.

Fichero.txt

Datos.doc

activ1 datos1

datos2

vacio

Introduce aquí tu

nombre y apellidos

Introduce aquí tu cantante favorito

Page 36: Introduccion a Linux

EJERCICIO (cuaderno de

practicas)

• Ahora el directorio home debe de contener lo siguiente.

Fichero.txt

Datos.doc

activ1 datos1

datos2

estavacio

Page 37: Introduccion a Linux

EJERCICIO (cuaderno de

practicas)

• Ahora el directorio home debe de contener lo siguiente.

Datos.doc

activ1 datos1

datos2

estavacio

Page 38: Introduccion a Linux

EJERCICIO (cuaderno de

practicas)

• Ahora el directorio home debe de contener lo siguiente.

Datos.doc

activ1

datos2

estavacio

Page 39: Introduccion a Linux

EJERCICIO (cuaderno de

practicas)

• Borra todo el directorio activ1 de un golpe y apunta todo

lo que has hecho en tu cuaderno de prácticas.

Page 40: Introduccion a Linux

Ejercicio (cuaderno de prácticas)

• Dime que son los siguientes directorios

• /

• /proc

• /home

• /opt

• /etc

• /lib

Page 41: Introduccion a Linux

Limpiando la pantalla

clear

Limpia la pantalla

Limpiar la pantalla no requiere parámetros algunos,

por lo que es bastante fácil de recordar, clear

significa en inglés "limpiar", mientras que cls, es el

acrónimo inglés de "Clear Screen", "Limpiar la

pantalla"

Page 42: Introduccion a Linux

EJERCICIO (cuaderno de

prácticas)

• (intenta hacer un alias para cls).

• cls limpiará la pantalla, al igual que el

comando clear.

Page 43: Introduccion a Linux

Montando Unidades

Un sistema de ficheros, no es más que una partición en tu

disco duro (que puede ser única) la cual tiene un formato,

y el formato es la forma de colocar los archivos.

Cuando se carga el sistema, automáticamente también

cargan su sistema de ficheros, y trabajan con su sistema

de ficheros, única y exclusivamente

Linux, carga automáticamente su Sistema de ficheros

Al cargar, se le denomina "montar", en ese momento, al

igual que han hecho otros sistemas operativos puedes

empezar a trabajar

con tu sistema de ficheros

Page 44: Introduccion a Linux

Pero Linux, al contrario que otros sistemas puede además

acceder a Sistemas de Archivos que no son suyos, es decir,

puedes desde Linux, acceder a tu partición de MSDOS,

Windows, etc...

Es más, puedes acceder a tu disquete o disquetes que te

hayan pasado que estén formateados en otros sistemas, por

ejemplo de un Mac.

Page 45: Introduccion a Linux

Para montar tu disquete haz:

(En este caso, deberás asegurarte de que existe el

directorio (/mnt o /media)/floppy, si no existiera créalo

usando: mkdir (/mnt o /media)/floppy)

1. introduce el disquete en la disquetera

2. escribe: mount -t vfat /dev/fd0 (/mnt o /media)/floppy

3. escribe cd (/mnt o /media)/floppy

Page 46: Introduccion a Linux

Accediendo a Unidades

Para acceder a las unidades (una vez montadas),

deberás acceder escribiendo:

cd (/mnt o /media)/[directorio que haga referencia a

la unidad montada y existente en el directorio mnt]

Ejemplo:

cd (/mnt o /media)/floppy

Accederá a tu disquete.

Page 47: Introduccion a Linux

Desmontar Unidades

Desmontar las unidades es FUNDAMENTAL, si no se

desmontan las unidades y no se cierra correctamente el

sistema se corre el riesgo de perder datos.

Para desmontar las unidades bastará con escribir:

umount /dev/[dispositivo montado que se quiera

desmontar]

Ejemplos:

umount /dev/fd0

Desmontará el disquete.

umount /dev/hda1

Desmontará la partición 1 del disco duro A

umount -a

Desmontará TODAS las unidades montadas.

Page 48: Introduccion a Linux

El Midnight Commader de Linux, es un entorno amigable

en modo texto que te ayudará a hacer todas, todas, las

gestiones de ficheros que normalmente usas, para

ejecutar el Midnight Commander, bastará con escribir:

mc

Y ya estarás en un entorno amigable para tu gestión de

ficheros.

Midnight Commader:

Page 49: Introduccion a Linux
Page 50: Introduccion a Linux
Page 51: Introduccion a Linux

ejercicio

• Con el midnight comander crea la

siguiente estructura en un disquete o en el

directorio /home

Fichero.txt

Datos.doc

activ1 datos1

datos2

estavacio

Page 52: Introduccion a Linux

equivalencias

Page 53: Introduccion a Linux
Page 54: Introduccion a Linux
Page 55: Introduccion a Linux

Las formas, MAYÚSCULAS y

minúsculas son diferentes en Linux

A partir de ahora, deberás saber que las mayúsculas y

minúsculas son distintas en Linux, ahora, deberás saber

muy bien como escribes el nombre de un fichero.

Para Linux, maria.txt es distinto de MARIA.TXT

Page 56: Introduccion a Linux

Pidiendo ayuda, uso

Para pedir ayuda de un comando podrás hacer:

man comando

Por ejemplo:

man cp

Page 57: Introduccion a Linux

La combinación de teclas, desde el

Terminal.

La combinación de teclas más usada es la de

[Ctrl]+[tecla de función] para abrir un nuevo terminal (una

nueva consola) en el que poder trabajar.

Lo más normal es [Ctrl]+[F1] hasta [Ctrl]+[F6], en modo

texto.

Page 58: Introduccion a Linux

Los demonios (del inglés daemons), son, en Linux, programas

que se encargan de gestionar y administrar el sistema. Son

varios y permiten la automatización de Linux hasta límites

insospechados.

Estos programas se llaman así porque se ejecutan (o corren)

en segundo plano, y una vez configurados no requieren solicitar

permisos al usuario para hacer tal y cual operación, con el

incremento de velocidad que esto supone.

Algunos de los más conocidos son el crond, el atd y el pppd.

Curiosamente, los archivos terminados en d suelen ser

demonios. Su uso suele estar bastante bien documentado.

Los procesos escondidos, (Demonios)

Page 59: Introduccion a Linux

at se puede usar para ejecutar, solamente una

vez, un trabajo a una determinada hora.

Podemos definir los comandos a ejecutar o bien

por la entrada estandar o en un fichero. El

formato en uno u otro caso seria:

at hora:minuto o at -f fichero hora:minuto.

Un ejemplo nos aclarara las cosas. (^D significa

que pulsamos las teclas Ctrl + D). Estos dos

ejemplos hacen lo mismo (arrancan de nuevo la

maquina) aunque se definen de manera distinta:

AT

Page 60: Introduccion a Linux

[ralf@servidor1]# at 12.12.2006 21:30

>reboot

^D

[ralf@servidor1]# cat /tmp/at_reboot

reboot

[ralf@servidor1]# at -f /tmp/at_reboot 12.12.2006

21:30

Page 61: Introduccion a Linux

Ejercicio (cuaderno de prácticas)

• Deja programado el sistema para que

rearranque (reboot) dentro de 2 minutos.

• Anota detalladamente el proceso en tu

cuaderno de prácticas.

Page 62: Introduccion a Linux

Para ver que procesos se están ejecutando

deberás usar: ps, igualmente que desde Xwindow

pulsas [Ctrl]+[Esc].

Si quieres que esa información sea constante

debes utilizar el comando top.

Añadiendo ps a, verás TODOS los procesos que

en ese momento se están ejecutando,

exceptuando los demonios.

¿Qué procesos se están

ejecutando?

Page 63: Introduccion a Linux

¡Matando Procesos!

Esta posibilidad se usa cuando por algún motivo

un proceso se queda "colgado" en un terminal

(¡ojo! se puede quedar "colgado" un terminal,

pero PARA NADA el resto del sistema Linux).

Para ello haremos, como superusuario:

$ ps a

y veremos qué proceso es. Tras esto usaremos el

comando kill, que tiene esta sintaxis:

kill [-s señal] pid ...

kill –l [señal]

Page 64: Introduccion a Linux

Ejemplo

kill 558

Matará el proceso 'gnuchessx' que está ejecutando

el usuario 'javier„

kill –9 116

Mata a toda costa el proceso 116.

Page 65: Introduccion a Linux

RECUERDA:

El SuperAdministrador 'root', podrá matar

todos los procesos que estén ejecutando

otros usuarios, así también, los usuarios

podrán matar sus propios procesos, y ningún

usuario podrá matar otro proceso distinto del

suyo.

Page 66: Introduccion a Linux

Ejercicio (cuaderno de prácticas)

• Abre dos consolas. En una hazte

superusuario y realiza un kill -9 proceso a

la segunda consola que abriste como un

usuario común

Page 67: Introduccion a Linux

¿Quién soy y dónde estoy? • El comando whoami nos dirá quiénes somos en

la terminal en la que estemos, o sea, nuestro

nombre de usuario.

• El comando who nos dice quienes están

conectados al sistema en un momento

determinado.

• El comando w es una variación del anterior que te

ofrece otro tipo de información, como puede ser el

comando que están ejecutando los usuarios.

Del mismo modo, cuando queramos saber qué

recorrido hemos hecho por el disco duro (el path de

nuestro directorio, por ejemplo), escribiremos pwd.

Page 68: Introduccion a Linux

Los ficheros tienen propietarios

En todo sistema Linux los archivos pertenecen a

quien los crea, que es entonces el único que puede

borrarlos, ejecutarlos, etc. Esto es así porque Unix

estaba pensado para ser manejado por muchos

usuarios a la vez, y de esta forma nadie podía

acceder a tus archivos sin tu consentimiento previo.

-rw - - r - - carlos users carta.txt

Page 69: Introduccion a Linux

Los ficheros tienen propietarios

En todo sistema Linux los archivos pertenecen a

quien los crea, que es entonces el único que puede

borrarlos, ejecutarlos, etc. Esto es así porque Unix

estaba pensado para ser manejado por muchos

usuarios a la vez, y de esta forma nadie podía

acceder a tus archivos sin tu consentimiento previo.

-rw - - r - - carlos users carta.txt

permisos

Page 70: Introduccion a Linux

Los ficheros tienen propietarios

En todo sistema Linux los archivos pertenecen a

quien los crea, que es entonces el único que puede

borrarlos, ejecutarlos, etc. Esto es así porque Unix

estaba pensado para ser manejado por muchos

usuarios a la vez, y de esta forma nadie podía

acceder a tus archivos sin tu consentimiento previo.

-rw - - r - - carlos users carta.txt

permisos usuario

Page 71: Introduccion a Linux

Los ficheros tienen propietarios

En todo sistema Linux los archivos pertenecen a

quien los crea, que es entonces el único que puede

borrarlos, ejecutarlos, etc. Esto es así porque Unix

estaba pensado para ser manejado por muchos

usuarios a la vez, y de esta forma nadie podía

acceder a tus archivos sin tu consentimiento previo.

-rw - - r - - carlos users carta.txt

permisos usuario grupo

Page 72: Introduccion a Linux

Los ficheros tienen propietarios

En todo sistema Linux los archivos pertenecen a

quien los crea, que es entonces el único que puede

borrarlos, ejecutarlos, etc. Esto es así porque Unix

estaba pensado para ser manejado por muchos

usuarios a la vez, y de esta forma nadie podía

acceder a tus archivos sin tu consentimiento previo.

-rw - - r - - carlos users carta.txt

permisos usuario grupo Nombre del

fichero

Page 73: Introduccion a Linux

Cambiamos el propietario de un

fichero

Hay 3 utilidades para cambiar los atributos a un fichero:

•chown Cambia de dueño al fichero.

•chgrp Cambia de grupo a un fichero.

•chmod Cambia los atributos a un fichero.

Al crear un fichero, por defecto, será del dueño que lo crea,

osea, si estoy como juan carlos, y escribo:

vi carta.txt

la carta creada será de juan carlos, con los atributos propios

del mismo, pero si estoy como root, y creo la misma carta, la

carta ahora será de root.

Page 74: Introduccion a Linux

Normas básicas

1. Sólo el dueño de un fichero, podrá cambiarles sus

propiedades, e incluso de dueño.

2. Ningún usuario podrá cambiarle las propiedades a

ningún fichero, ni su dueño

3. root, podrá cambiarle las propiedades a TODOS los

ficheros, e incluso cambiarles de dueño.

4. Lo de arriba mencionado, no servirá de nada, si al grupo

al que pertenece también tiene la propiedad de escribir

sobre el fichero, por lo cual, podrá cualquier usuario

cambiar el dueño, grupo o propiedades a un fichero.

Page 75: Introduccion a Linux

Para cambiar de dueño a un fichero, deberás usar el

comando chown, o bien utilizar mc, que es más fácil,

siempre y cuando tenga los atributos que permitan ser

cambiados.

chown -c javier EsteFichero

Ahora "EsteFichero" pertenecerá a javier.

Si quieres cambiar de grupo al fichero "EsteFichero"

chgrp –c users EsteFichero

Y si desde el princio hubieras querido cambiar de usuario y

de grupo haber escrito:

chown –c javier.users EsteFichero

Page 76: Introduccion a Linux

1. chmod u+rwx carta.txt

Donde "u", se refiere al usuario el cual creó el archivo.

2. chmod g+rxw carta.txt

Donde "g", se refiere al grupo del usuario

3. chmod o+rwx carta.txt

Donde "o", se refiere al resto de usuarios.

usar "a", modificará todos los atributos

4. chmod a+x miscript

Le pondrá todos los atributos de ejecución al script "miscript", para

lo ejecuten, el dueño, el grupo y otros.

También puede utilizarse chmod con números OCTALES

Ejemplos de modificación de permisos

de un fichero, y su significado.

Page 77: Introduccion a Linux

Ejercicio (cuaderno de prácticas)

• Que hacen los siguientes comandos:

• 1. chmod u+x carta.txt

• 2. chmod g+rw carta.txt

• 3. chmod o+rx carta.txt

• 4. chmod a+wx miscript.sh

Page 78: Introduccion a Linux

Cambiando los permisos

(absoluto)

• Para determinar los permisos de un archivo o

directorio se utiliza el comando chmod, este

comando puede utilizar dos métodos para

establecerlos pero utilizaremos el más sencillo

llamado Absoluto. Este asigna un valor a cada

permiso:

4 r-lectura

2 w-escritura

1 x-ejecución

Page 79: Introduccion a Linux

Dependiendo los permisos que se quieran asignar se sumaran

los valores y se utilizará un valor del 0 al 7 para cada modo

(propietario, grupo, otros).

luis@kamaleon $ ls -l README

-rw-r- -r- - 1 usuario users 587 may 23 17:17 README

r w x r w x r w x

Permisos Actuales 4+2+0 4+0+0 4+0+0

6 4 4

r w x r w x r w x

Cambiar a: 4+2+0 4+2+0 4+0+0

6 6 4

USUARIO GRUPO OTROS

Page 80: Introduccion a Linux

luis@kamaleon $ chmod 664 README

luis@kamaleon $ ls -l README

-rw-rw-r-- 1 luis usuario 587 may 23 17:17 README

Page 81: Introduccion a Linux

luis@kamaleon $ ls -l Xvnc

-rwxr-x- - - 1 luis usuario 1508208 jun 18 14:07 Xvnc*

r w x

r w x r w x

Permisos Actuales 4+2+1 4+0+1 0+0+0

7 5 0

r w x r w x r w x

Cambiar a: 4+2+1 4+0+1 4+0+1

7 5 5

Ahora demos permisos de lectura y ejecución a Otros en el

Archivo Xvnc

Page 82: Introduccion a Linux

luis@kamaleon $ chmod 755 Xvnc

luis@kamaleon $ ls -l Xvnc

-rwxr-xr-x 1 luis usuario 1508208 jun 18 14:07 Xvnc*

Page 83: Introduccion a Linux

Por último aquí esta una tabla que permite saber rápidamente

que valor asignar como permiso a cualquiera de los tres

modos.

Valor Permisos

0 ---

1 --x

2 -w-

3 -wx

4 r--

5 r-x

6 rw-

7 rwx

Page 84: Introduccion a Linux

Ejercicio (cuaderno de practicas)

• Ejecuta el comando apropiado para cambiar los permisos al fichero datos.txt. Utiliza el modo absoluto.

usuario grupo otros

rw x w

x rx r

rwx x rw

rwx w r-x

r-x w x

rwx x r-x

1

2

3

4

5

6

Page 85: Introduccion a Linux

Ejercicio (cuaderno de practicas)

usuario grupo otros

rw x w

w rx r

rwx x rw

rwx w r-x

r-x w x

rwx w r-x

rwx w r-x

r-x w x

rwx w r-x

propietario grupo

root users

alumno root

alumno2 root

alumno2 users

alumno root

alumno2 root

dialout root

dialout alumno

rwx alumno2

fichero

Fich1.dat

Fich2.dat

Fich3.dat

Fich4.dat

Fich5.dat

Fich6.dat

Fich7.dat

Fich8.dat

Fich9.dat

Page 86: Introduccion a Linux

Ejercicios (cuaderno de practicas)

• 1. Listar todos los archivos del directorio bin.

• 2. Listar todos los archivos del directorio tmp.

• 3. Listar todos los archivos del directorio etc que empiecen por t en orden inverso.

• 4. Listar todos los archivos del directorio dev que empiecen por tty y tengan 5 caracteres.

• 5. Listar todos los archivos del directorio dev que empiecen por tty y acaben en 1,2,3 ó 4.

• 6. Listar todos los archivos del directorio dev que empiecen por t y acaben en C1.

Page 87: Introduccion a Linux

Sigue…

• 7. Listar todos los archivos, incluidos los ocultos, del directorio raíz.

• 8. Listar todos los archivos del directorio etc que empiecen por t.

• 9. Listar todos los archivos del directorio usr y sus subdirectorios.

• 10. Cambiarse al directorio tmp.

• 11. Verificar que el directorio actual ha cambiado.

• 12. Mostrar el día y la hora actual.

• 13. Con un solo comando posicionarse en el directorio $HOME.

• 14. Verificar que se está en él.

Page 88: Introduccion a Linux

Sigue…

• 15. Listar todos los ficheros del directorio HOME.

• 16. Borrar todos los archivos y directorios visibles de vuestro directorio PRUEBA.

• 17. Crear los directorios dir1, dir2 y dir3 en el directorio PRUEBA. Dentro de dir1 crear el directorio dir11. Dentro del directorio dir3 crear el directorio dir31. Dentro del directorio dir31, crear los directorios dir311 y dir312.

• 18. Copiar el archivo /etc/motd a un archivo llamado mensaje de vuestro directorio PRUEBA.

• 19. Copiar mensaje en dir1, dir2 y dir3.

• 20. Comprobar el ejercicio anterior mediante un solo comando.

Page 89: Introduccion a Linux

Sigue…

• 21. Copiar los archivos del directorio rc.d que se encuentra en /etc al directorio dir31.

• 22. Copiar en el directorio dir311 los archivos de /bin que tengan una a como segunda letra y su nombre tenga cuatro letras.

• 23. Copiar el directorio de otro usuario y sus subdirectorios debajo de dir11 (incluido el propio directorio).

• 24. Mover el directorio dir31 y sus subdirectorios debajo de dir2.

• 25. Mostrar por pantalla los archivos ordinarios del directorio HOME y sus subdirectorios.

Page 90: Introduccion a Linux

Sigue…

• 26. Ocultar el archivo mensaje del directorio dir3.

• 27. Borrar los archivos y directorios de dir1, incluido el propio directorio.

• 28. Copiar al directorio dir312 los ficheros del directorio /dev que empiecen

• por t, acaben en una letra que vaya de la a a la b y tengan cinco letras en

• su nombre.

• 29. Borrar los archivos de dir312 que no acaben en b y tengan una q como

• cuarta letra.

• 30. Mover el directorio dir312 debajo de dir3.

Page 91: Introduccion a Linux

Definicion de script

• El guión o archivo de procesamiento por

lotes (en inglés "script") es un conjunto de

instrucciones, sentencias de control, variables y

demás elementos de programación

generalmente almacenadas en un archivo de

texto (pueden considerarse como un archivo de

instrucciones o como un programa).

• Normalmente en Unix por regla general los

script tienen el siguiente nombre : script.sh

(extensión sh). No es obligatorio.

Page 92: Introduccion a Linux

Convertir Script a ejecutable

Para convertir un script a ejecutable deberás hacer:

1. Crear el fichero

2. Crear el código con una salida determinada

3. Guardar el fichero, como por ejemplo "MiScript"

4. Ponerle los atributos de ejecutable escribiendo:

chmod a+x MiScript

Page 93: Introduccion a Linux

Ejercicio (cuaderno de prácticas)

• Crea el siguiente fichero scr1.sh y escribe

en el la siguiente cadena:

• echo Este es mi primer script

• Guardalo y hazlo ejecutable mediante el

procedimiento que ya hemos visto.

Page 94: Introduccion a Linux

Ver un archivo.

Para ver el contenido de un archivo podrás escribir:

• cat

• more

• less

• cat

cat <fichero>, y verás el contenido de un fichero, por ejemplo

cat carta.txt

verás el contenido de la carta, pero si la carta es demasiado

grande deberás escribir un parámetro para que puedas leer

detenidamente el contenido, es "| more", entonces, para

cartas largas escribe:

cat carta.txt |more

Page 95: Introduccion a Linux

• more

more <fichero>, realiza la misma opción de

cat carta.txt |more

pero evidentemente tendrás que escribir menos, bastará

escribir el comando de la siguiente manera: more carta.txt

• less

Ya que con cat, perderás el contenido del fichero por la

parte superior de la pantalla, con less, podrás navegar por

el fichero, y con los cursores podrás ir para arriba y para

abajo dentro del mismo fichero: less carta.txt

Esto se parece un poco a lo que estuvimos viendo en

MS-DOS no ?

Page 96: Introduccion a Linux

Ejercicio (cuaderno de practicas)

• Que hacen los siguientes comandos

• 1 cat fichero.txt

• 2 tac fichero.txt ¿curioso no?

• 3 more fichero.txt

• 4 cat fichero.txt | more

• 5 less fichero.txt

Page 97: Introduccion a Linux

Ver un archivo comprimido

Los archivos comprimidos suelen tener la extensión

gz.

Para ver un archivo comprimido, y sin quererlo

descomprimir podrás utilizar los comandos zcat,

zmore y zless, que realizan las mismas cosas que

cat, more y less respectivamente, pero en ficheros

NO comprimidos.

Page 98: Introduccion a Linux

Copiar un Archivo

Para copiar un archivo deberás utilizar el comando cp, este

comando es muy potente, y podrás realizar un montón de

operaciones con el, su funcionamiento es el siguiente:

cp <origen> <destino>

Así, por ejemplo, si queremos copiar la carta "carta.txt" como

"MiCarta.txt", podrás escribir:

cp carta.txt MiCarta.txt

Page 99: Introduccion a Linux

También podrás indicar la ruta de origen y destino

(directorios en lo que está situado), por ejemplo,

supongamos que escribimos pwd, y nos dicen que estamos

en:

/home/javier

Queremos copiar el archivo FAQ que hay en

/usr/doc/HOWTO/ a mi directorio MisDocumentos, que se

encuentra en /home/javier/MisDocumentos, podremos

escribir:

cp /usr/doc/HOWTO/FAQ MisDocumentos/

o

cp /usr/doc/HOWTO/FAQ /home/javier/MisDocumentos/

Page 100: Introduccion a Linux

Mover un Archivo Mover un archivo, significa, quitarlo de su posición actual

para fijarlo donde se le indique, esta operación, se hace en

Linux con mv de la siguiente manera:

mv fichero_o_directorio_a_mover ruta_donde_moverlo

Supongamos que nos encontramos en: /home/javier:

Por ejemplo para mover el fichero "mbox" que está en mi

directorio al directorio MisDocumentos/javier/ que está en

/usr, escribiré:

mv mbox /usr/MisDocumentos/javier

Ahora, el fichero mbox, se encuentra en el directorio javier,

que está en MisDocumentos que

está en usr, es decir: "/usr/MisDocumentos/javier"

Page 101: Introduccion a Linux

Renombrar un Archivo

Para renombrar un archivo utilizarás el comando mv de la

siguiente manera:

mv NombreOriginal NuevoNombre

Por ejemplo, renombrar el fichero mbox, a EmailSaved

mv mbox EmailSaved

Page 102: Introduccion a Linux

Borrar un Archivo

Para borrar un archivo, es tan fácil como utilizar el comando

rm de la siguiente manera:

rm fichero_a_borrar

Ejemplo:

rm mbox

Page 103: Introduccion a Linux

Borrar un DIRECTORIO Para borrar un directorio deberás utilizar el comando rmdir, de

la siguiente manera:

Esto es un ejemplo:

Crea un directorio que se llame ParaBorrar, con el comando

mkdir:

mkdir ParaBorrar

Vemos los ficheros que tenemos con el comando ls

ls

y lo borramos con rmdir

rmdir ParaBorrar

ls

Ya sabes, que también podrás crear un directorio o borrarlo,

sin necesidad de acceder a el, simplemente indicando su ruta:

mkdir /usr/doc/HOWTO/EstoEsMio

rmdir /usr/doc/HOWTO/EstoEsMio

Page 104: Introduccion a Linux

Imprimir un Archivo

Para verter el contenido de un archivo sobre papel,

deberás utilizar el comando lpr, de la siguiente

manera:

lpr Fichero_a_imprimir

Page 105: Introduccion a Linux

Comprimir un archivo. gzip

Para comprimir un archivo con gzip, deberás utilizar:

gzip ratio_compresión fichero_a_comprimir

Ejemplo:

gzip CartaExtensa.txt

Creará un fichero llamado CartaExtensa.txt.gz que

contendrá el contenido de la carta CartaExtensa, pero

comprimido.

Si ahora escribes:

gzip - 9 CartaExtensa.txt

Creará un fichero, con un ratio de compresión aún

mayor, con la misma información más comprimida.

Page 106: Introduccion a Linux

Ejercicio (cuaderno de prácticas)

• Crea con vi un fichero amigos.txt con al

menos 5 nombres y teléfonos de tus

amigos (ficticios).

• Comprime el fichero

• Comprime el fichero con ratio de

compresión máximo (-9)

• Apunta en el cuaderno todos los pasos

que has dado.

Page 107: Introduccion a Linux

Comprimir un directorio

Generalmente se utiliza esta estructura:

tar cvf[z] FicheroComprimido RutaAComprimir

• z Usará

gzip (recomendado)

(Bastará con ver el ejemplo)

tar cvfz TodoUsuario.tgz /home

La extensión al fichero comprimido, deberás indicárselo tú, y

tú pondrás la extensión .tgz, para indicar que se utilizó la

opción gzip.

También tú y sólo tú, deberás indicar como .tgz, o .tar.gz,

(dentro de estas dos) osea el fichero podrá ser:

TodoUsuario.tgz o TodoUsuario.tar.gz

Page 108: Introduccion a Linux

Ejercicio (cuaderno de prácticas)

• Crea en tu directorio personal un directorio

compri con un fichero amigos.txt en él. El

fichero tendrá al menos 5 nombres y

teléfonos de tus amigos (ficticios).

• Comprime el directorio.

Page 109: Introduccion a Linux

Ejercicio (cuaderno de practicas)

• Crea un directorio muchos con 3 ficheros dentro de él. Los ficheros se llamarán nombre.txt direccion.txt y pueblo.txt en el anotaras los datos ficticios de una persona.

• Comprime el directorio muchos con el comando tar.

• Borra el directorio muchos.

• Muestra el contenido del fichero que has creado con el comando:

• tar –tvfz muchos.tgz ( o tar.gz )

Page 110: Introduccion a Linux

Descomprimir un archivo.

Para descomprimir un archivo,

• gzip –d fichero.gz

• tar xvf fichero.tar

Descomprimirá un fichero creado con tar.

Descomprimir un directorio.

tar xvf fichero.tar [-C /ruta/directorio]

Page 111: Introduccion a Linux

Ejercicio (cuaderno de prácticas)

• Descomprime los directorios y archivos

creados en ejercicios anteriores.

• Si existen los ficheros o directorios sin

comprimir, bórralos antes de

descomprimirlos

• Comprueba que el contenido es el mismo

que antes de comprimir.

Page 112: Introduccion a Linux

RPM Package Manager

• RPM Package Manager (o RPM, originalmente llamado

Red Hat Package Manager) es una herramienta de administración de paquetes pensada básicamente para Linux. Es capaz de instalar, actualizar, desinstalar, verificar y solicitar programas. RPM es el formato de paquete de partida del Linux Standard Base.

• Originalmente desarrollado por Red Hat para Red Hat Linux, en la actualidad muchas distribuciones Linux lo usan dentro de los cuales las más destacadas son Fedora Linux, MandrivaLinux, SuSE Linux, Conectiva Linux y otros más sencillos como SabiosS Linux. También se ha portado a otros sistemas operativos.

Page 113: Introduccion a Linux

Instalar un .RPM

rpm –i ProgramaAINSTALAR

rpm –U ProgramaAactualizar (Upgrade)

Desinstalar un .RPM

rpm –e ProgramaADesinstalar

RPM Package Manager (o RPM, originalmente llamado Red Hat

Package Manager) es una herramienta de administración de paquetes

pensada básicamente para Linux. Es capaz de instalar, actualizar,

desinstalar, verificar y solicitar programas.

Page 114: Introduccion a Linux

Ejercicio (cuaderno de prácticas)

• De www.nvu.com descárgate el paquete nvu para tu versión de suse linux.

• Escoge bien el producto que vas a bajarte.

• Una vez descargado instálalo mediante el procedimiento que hemos visto.

• Nota: nvu es un editor libre de páginas web. Es menos potente que el dreamweaver de windows pero funciona en linux y no tienes que pagar por él.

• Comprueba que funciona correctamente.

Page 115: Introduccion a Linux

Consulta de RPMs INSTALADOS

Para saber que paquetes .RPM están instalados, será tan

fácil como escribir:

rpm -qa

Pero, claro, esta información aparecerá un tanto

desordenada, porque que podemos forzar su información y

una fácil consulta escribiendo:

rpm –qa | sort | less

Te recordamos, que esto te dirá todos los programas que

están instalados vía .RPM, osea, que los que hubieran sido

instalados como .tgz, (o .tar.gz, que es lo mismo), o .deb, o

cualquier otro tipo de paquete que no fuera compatible con el

.rpm, no mostrará esta información.

Page 116: Introduccion a Linux

Consulta de un paquete

INSTALADO

• Para saber cierta información sobre un paquete, bastara

poner:

rpm -qi nombre

• Para consultar donde está instalado...

rpm -qil nombre

• Para consultar un paquete QUE NO ESTÁ INSTALADO, y

ahora mismo lo tienes delante:

rpm -qpi nombre.xxx.xx.rpm

• Si quieres saber donde se instalará

rpm -qpil nombre.xxx.xx.rpm

Page 117: Introduccion a Linux

Ejercicio (cuaderno de prácticas)

• Haz las consultas anteriores sobre el

paquete nvu que hemos instalado.

Page 118: Introduccion a Linux

Forzar una instalación

• Para actualizar una instalación que deseamos a toda

costa, bastará con poner:

rpm - U programa.xxx.xx.rpm

• para forzarlo usamos: force

rpm - U - - force programa.xxx.xx.rpm

Page 119: Introduccion a Linux

Ejercicio (cuaderno de prácticas)

• Usa [Ctrl]+[F2], Si estás desde un terminal

1. Ve al directorio raíz "/", y crea con VI una carta a un(a)

amigo(a), a la carta la llamas: "MYLETTER.txt"

2. Crea un directorio en /usr/local que se llame "amigos", de

forma que cuando hagas un ls veas tu carta

/usr/local/amigos.

3. Copia la carta "MYLETTER.txt" en el directorio "amigos"

que está en "/usr/local"

4. Renombra /usr/local/amigos, por /usr/local/mis_amigos

• Para regresar al terminal inicial deberás de pulsar [Ctr]+[F1]

Page 120: Introduccion a Linux

Gestionando usuarios

Linux, como clónico de Unix, sistema nacido en Internet,

está pensado para servir a varios usuarios a la vez. Para

ello existe la cuenta de "root" o superususario, y la de los

demás usuarios del sistema.

Page 121: Introduccion a Linux

Creando un usuario

Para crear un usuario, escribimos, entrando como root,

"useradd" sin las comillas más el nombre del usuario. Ej.:

useradd carlos

Habrás creado un usuario sin clave de acceso. Faltará

crear una clave de acceso para el nuevo usuario creado y

para eso veremos mas tarde el comando passwd

Page 122: Introduccion a Linux

Borrando a un usuario

Para borrar un usuario, bastará con escribir el

comando:

"userdel" y el nombre del usuario, ejemplo.:

userdel carlos

Page 123: Introduccion a Linux

Cambio de usuario

su [options] [username]

Con su podemos hacer login en el sistema como si fueramos

otro usuario.

Si tecleamos su – user comenzaremos una nueva shell como

si fueramos el usuario user

Ejemplo:

su – carlos

Una vez tecleado esto nos pedirá la clave del usuario carlos.

(A root no se la pedirá)

Page 124: Introduccion a Linux

Quiero cambiar la password

passwd [usuario]

Los usuarios pueden cambiar sus password con este

comando.

Root puede cambiar la password de cualquier usuario del

sistema.

Page 125: Introduccion a Linux

EJERCICIO (cuaderno de prácticas)

• Crea el usuario alfredo y establece la siguiente

password para su cuenta “alboran”

• Cambia de usuario a alfredo y ejecuta el

comando whoami

• Ejecuta el comando who para ver quién hay en

el sistema.

• Borra el usuario que has creado.

• Recoge en el cuaderno de prácticas los

comandos que has utilizado.

Page 126: Introduccion a Linux

Reiniciando el sistema • reboot

¿Qué memoria libre tengo en el sistema? • free

¿Cuanto ocupa la información de este

directorio? • du

¿Cuánto espacio me queda en el disco

duro? • df

Page 127: Introduccion a Linux

Buscando ese fichero perdido…

find directorio_a_buscar –name nombre_del_fichero

EJEMPLOS:

Buscar el fichero mio.txt en el directorio /home/antonio:

find /home/antonio –name mio.txt

Buscar el fichero mio.txt en TODO el sistema:

find / –name mio.txt

Page 128: Introduccion a Linux

Que tendrá este fichero….

• Comando: cat nombre_fichero

cat mio.txt

Mostrara el contenido del fichero mio.txt

Page 129: Introduccion a Linux

Buscando cadenas en ficheros

• Comando grep

Ejemplo:

grep “sofia” fichero.txt

Buscará sofia en el fichero de nombre fichero.txt

Page 130: Introduccion a Linux

¿¿¿Serán estos dos ficheros iguales???

diff fichero1 fichero2

El comando diff compara el contenido de cualquier par de

ficheros. Nos dirá las lineas que no coinciden. Con este

comando podemos saber si nuestros ficheros son iguales o

difieren en algun dato.

Page 131: Introduccion a Linux

Ejercicio (cuaderno de prácticas)

• Con que comando cambio de usuario

• Con que comando puedo buscar una cadena

dentro de un fichero

• Con que comando reinicio la maquina

• Con que comando veo la memoria libre que hay

en el sistema

• Con que comando veo el espacio que ocupa un

directorio

• Con que comando puedo mostrar el contenido

de un fichero.

Page 132: Introduccion a Linux

El archivo /etc/passwd

En el archivo /etc/passwd se localiza toda la información de

los usuarios del sistema. Por ejemplo, si ejecutamos como

root el siguiente comando:

# cat /etc/passwd

Veremos algo como esto:

root:x:0:0:root:/root:/bin/bash

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin

adm:x:3:4:adm:/var/adm:/sbin/nologin

lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

......

Page 133: Introduccion a Linux

Cada línea del archivo representa un registro único constituido

por los campos (cada cadena separada por el símbolo de dos

puntos ":") que representan la información del usuario.

Analicemos la línea para el usuario (cliente) mysql:

mysql:x:27:27:MySQL Server:/var/lib/mysql:/bin/bash

•nombre del usuario •la contraseña esta cifrada

•ID de usuario •ID de grupo

•comentario •path o ruta del directorio personal

•shell por defecto

Page 134: Introduccion a Linux

EJERCICIO (cuaderno de prácticas)

• Listar el fichero /etc/passwd y dime que

significan cada uno de los parámetros de

la linea que contiene al usuario root.

Page 135: Introduccion a Linux

Archivo /etc/groups

El fichero de grupos contiene toda la información de

pertenencia a grupos, y opcionalmente elementos como la

contraseña del grupo (generalmente almacenado en gshadow

en los sistemas actuales), este fichero debe ser legible por el

mundo para que el sistema funcione correctamente. El

formato es:

nombregrupo:contraseña_cifrada:GID:miembro1,miembr

o2,miembro3

Un grupo puede no contener miembros (p. ej., no está usado),

sólo un miembro o múltiples miembros, y la contraseña es

opcional (y no se suele usar).

Page 136: Introduccion a Linux

Cada línea del archivo representa un registro único constituido

por los campos (cada cadena separada por el símbolo de dos

puntos ":") que representan la información del grupo.

Analicemos la línea para el grupo users:

users:x:100:andres,perico,alonso,juan

•nombre del usuario •la contraseña esta cifrada

•Nombre de los

usuarios que

pertenecen a ese

grupo •GID de grupo

nombregrupo:contraseña_cifrada:GID:miembro1,miembro2,miembro3

Page 137: Introduccion a Linux

Ejercicio (cuaderno de prácticas)

• Dime el nombre del grupo al que

pertenecen los siguientes usuarios

(mailman, root, ftp, mail y daemon)

Page 138: Introduccion a Linux

ENLACES HARD (DUROS)

• Un enlace "hard" (hard link) es una nueva referencia a un mismo archivo; consiste en una nueva entrada de directorio que apunta a un archivo ya existente y apuntado desde otra entrada de directorio.

• El contenido se encuentra en un solo lado, pero el archivo puede ser accedido desde varios lugares, eventualmente con diferentes nombres.

Page 139: Introduccion a Linux

DATOS DEL FICHERO

F1.TXT

F2.TXT

Page 140: Introduccion a Linux

EJEMPLO

ln crea un segundo nombre referido al mismo archivo; no se

hace copia, crea un enlace (link). Verificar que :

echo 'Hola todos de nuevo!' > adios

ln adios adios.ln0

ls -l adios*

muestra un conteo de 2 en la columna de enlaces. Al crear el

enlace con el comando ln, observar que el archivo existente

va en primer lugar, luego uno o más nombres de enlaces a

crear.

Page 141: Introduccion a Linux

Cuando se borra un archivo con varios enlaces, sólo se borra

el enlace.

El archivo es realmente borrado sólo cuando desaparece el

último enlace.

ln dir2 dir2ln

da error; no se puede crear un enlace hard para un directorio.

Page 142: Introduccion a Linux

Enlaces simbólicos.

• Un enlace simbólico (symbolic link) es un

archivo que apunta a otro archivo o

directorio.

• El archivo de enlace simbólico contiene

solamente la ruta del otro archivo o

directorio.

Page 143: Introduccion a Linux

DATOS DEL FICHERO

F1.TXT

F2.TXT F1.TXT

Page 144: Introduccion a Linux

EJEMPLO

ln -s nota nota.ls0

crea nota.ls0 como enlace simbólico.

ln -s dir2 dir2ls

crea dir2ls como enlace simbólico hacia un directorio.

ls -l

muestra la letra l en el tipo de archivo para indicar que es un

enlace simbólico.

ls dir2

ls dir2ls

muestran el mismo contenido de archivos.

ls -l dir2ls

muestra que es un enlace simbólico e indica hacia donde

apunta.

Page 145: Introduccion a Linux

Un enlace simbólico se borra con rm, y no con rmdir, puesto

que el enlace simbólico es un archivo y no un directorio, aún

cuando sea un enlace simbólico hacia un directorio.

cuando se borra un enlace simbólico, sólo se borra un archivo

puntero, y no el objeto real.

Page 146: Introduccion a Linux

Variables de entorno

Page 147: Introduccion a Linux

$BASH

El path al binario Bash

bash$ echo $BASH

/bin/bash

$BASH_VERSION

version de Bash instalada en el sistema

bash$ echo $BASH_VERSION

3.00.14(1)-release

tcsh% echo $BASH_VERSION

BASH_VERSION: Undefined variable.

Mirar $BASH_VERSION es un buen metodo para

saber que shell se está ejecutando, normalmente

$SHELL no proporciona una respuesta correcta.

Page 148: Introduccion a Linux

$GROUPS

Grupos al que pertenece el usuario

root# echo $GROUPS

0

$HOME

home directory del usuario, usualmente /home/username

Page 149: Introduccion a Linux

$HOSTNAME

El comando hostname asigna el nombre del

sistema en el momento de boot en el script

init.

$HOSTTYPE

host type

como $MACHTYPE, identifica el sistema

hardware.

bash$ echo $HOSTTYPE

i686

Page 150: Introduccion a Linux

$PATH

path, usualmente /usr/bin/,

/usr/X11R6/bin/, /usr/local/bin, etc.

Cuando se ejecuta un comando, la shell hace

una busqueda en los directorios de la variable

path en busca de ejecutables.

bash$ echo $PATH

/bin:/usr/bin:/usr/local/bin:/usr/X11R6

/bin:/sbin:/usr/sbin

PATH=${PATH}:/opt/bin añade el directorio /opt/bin al actual path.

Page 151: Introduccion a Linux

$PPID

El $PPID de un proceso es el process

ID (pid) de su proceso padre.

$PWD

working directory (directorio actual)

$SECONDS

Numero de Segundos que el script lleva

ejecutandose.

Page 152: Introduccion a Linux

$UID

user ID number

ver el fichero /etc/passwd

ENV para ver el entono