tipos de archivos en linux archivos normales: pueden contener texto, código fuente en c, archivos...

18
Tipos de archivos en Linux Archivos normales: pueden contener texto, código fuente en C, archivos de comandos shell (programas, interpretados), programas binarios ejecutables… Archivos especiales: archivos con una función especial. Suelen hacer referencia a los dispositivos, por ejemplo una impresora. Los directorios: contienen archivos y subdirectorios. Son identificados por el sistema por su número de inodo. Los enlaces: existen dos tipos de enlaces, enlaces duros y enlaces simbólicos.

Upload: pancho-salido

Post on 23-Jan-2016

230 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Tipos de archivos en Linux Archivos normales: pueden contener texto, código fuente en C, archivos de comandos shell (programas, interpretados), programas

Tipos de archivos en Linux

• Archivos normales: pueden contener texto, código fuente en C, archivos de comandos shell (programas, interpretados), programas binarios ejecutables…

• Archivos especiales: archivos con una función especial. Suelen hacer referencia a los dispositivos, por ejemplo una impresora.

• Los directorios: contienen archivos y subdirectorios. Son identificados por el sistema por su número de inodo.

• Los enlaces: existen dos tipos de enlaces, enlaces duros y enlaces simbólicos.

Page 2: Tipos de archivos en Linux Archivos normales: pueden contener texto, código fuente en C, archivos de comandos shell (programas, interpretados), programas

DIRECTORIO DESCRIPCIÓN

/ Es el directorio RAÍZ, la base del resto de directorios y por donde debe comenzar cualquier ruta.

/boot Contiene los archivos del kernel y archivos de configuración del ARRANQUE del sistema.

/bin Son los archivos EJECUTABLES ESENCIALES por todos los usuarios.

/dev Directorio donde se encuentran los DISPOSITIVOS.

/etc Directorio que contiene los archivos de CONFIGURACIÓN.

/etc/rc.d Archivos de configuración de INICIALIZACIÓN.

/home Directorio de los USUARIOS.

/lib LIBRERÍAS esenciales y módulos del kernel.

/mnt Directorio donde “MONTAR” los distintos dispositivos y/o particiones.

/mnt/cdrom Directorio donde se monta el CD-ROM.

/mnt/floppy Directorio donde monta la DISQUETERA.

/mnt/usb Directorio donde monta un USB.

/proc Información sobre partes del sistema (PROCESOS)

Arbol de directorios Linux

Page 3: Tipos de archivos en Linux Archivos normales: pueden contener texto, código fuente en C, archivos de comandos shell (programas, interpretados), programas

Sh – El más antiguo y estandarizado.Bash – El más avanzado, compatible con Sh. Es normalmente el shell por default.Csh – Sintáxis similar a la del lenguaje C.

Tcsh, Zsh, Ksh, Pdksh, Ash, Jsh, Rsh, Vsh,..

[root@localhost ~]# echo $SHELL/bin/bash

Para cambiar el shell:trax:x:500:0:Facundo Arena:/home/trax:/bin/bash trax:x:500:0:Facundo Arena:/home/trax:/bin/csh

PromptPromptnombre_usuario@nombre_equiposeguido de:$ - Usuario final (usuario No root)# - Usuario root

Ejemplos:[daniel@localhost ~]$[root@localhost ~]#

echo $PS1

Intérprete de comandos (shell)

Page 4: Tipos de archivos en Linux Archivos normales: pueden contener texto, código fuente en C, archivos de comandos shell (programas, interpretados), programas

•Estructura de datos definida en el estándar POSIX y por ende propia de los sistemas de archivos Linux.•Tamaño.•Propietario.•Permisos.•Fechas.•Ubicación.•De cualquier archivo, directorio o cualquier otro objeto que pueda contener el sistema de archivos. •NO contiene el nombre del archivo.•Identificado con un número entero UNICO.•fsch -> lost+found

Por lo tanto, un directorio es una lista de números de inodo con sus correspondientes nombres de archivo.

inodo (nodo índice)

Page 5: Tipos de archivos en Linux Archivos normales: pueden contener texto, código fuente en C, archivos de comandos shell (programas, interpretados), programas

Crea un link a un archivo. Permite que se haga referencia más de una vez a un mismo inodo.Ejemplo:[root@localhost ~] ln /home/postgres/respaldos/log.txt log_postgres.txt

Crea un link a un directorio.Ejemplo:[root@localhost ~] ln –s /home/postgres/respaldos respost

Enlaces duros

Enlaces simbólicos

Page 6: Tipos de archivos en Linux Archivos normales: pueden contener texto, código fuente en C, archivos de comandos shell (programas, interpretados), programas

[shrek@pantano:~]$ ls -la total 13 drwxr-sr-x 2 shrek user 1024 May 2 09:04 . drwxrwsr-x 4 root staff 1024 Apr 17 21:08 .. -rw------- 1 shrek user 2541 May 2 22:04 .bash_history -rw-r--r-- 1 shrek user 164 Apr 23 14:57 .bash_profile -rw-r--r-- 1 shrek user 55 Apr 23 14:44 .bashrc -rwxrwxr-x 1 shrek user 0 Apr 14 19:29 a.out -rwxrwxr-x 1 shrek user 40 Apr 30 12:14 hello.pl

Contenido

Significado

- Archivo común

d Directorio

c Dispositivo de caracteres (tty o impresora)

b Disp. de bloque (disco duro o CD-ROM)

l Enlace simbólico

s Socket

p Pipe

Permiso Significado

r Lectura

w Escritura

x Ejecucion

Columnas Se aplica a

2,3,4 Propietario

5,6,7 Grupo

8,9,10 Otro

Permisos y Propiedad

Page 7: Tipos de archivos en Linux Archivos normales: pueden contener texto, código fuente en C, archivos de comandos shell (programas, interpretados), programas

Uso del comando chmod

Utilizando símbolosa allu usuario g grupoo los demás+ asignar permiso- quitar permisor lecturaw escriturax ejecución

Ejemplo:[shrek@pantano:~]$ ls -l lista total 1 -rwxrw-r-- 1 shrek user 337 Apr 29 13:57 lista [shrek@pantano:~]$ chmod a-r lista [shrek@pantano:~]$ ls -l listatotal 1 --wx-w---- 1 shrek user 337 Apr 29 13:57 lista

Otra forma:chmod 777 lista

Modificar permisos

Page 8: Tipos de archivos en Linux Archivos normales: pueden contener texto, código fuente en C, archivos de comandos shell (programas, interpretados), programas

Uso del comando chown (change owner)

Ejemplos[root@pantano:/home/shrek]# ls -l lista total 1 -rw-r--r-- 1 shrek user 337 Apr 29 13:57 lista[root@pantano:/home/shrek]# chown fiona lista[root@pantano:/home/shrek]# ls -l lista total 1 -rw-r--r-- 1 fiona user 337 Apr 29 13:57 lista

[root@pantano]# ls -l lista total 1 -rw-r--r-- 1 shrek user 337 Apr 29 13:57 lista[root@pantano]# chown fiona.ventas lista[root@pantano]# ls -l lista total 1 -rw-r--r-- 1 fiona ventas 337 Apr 29 13:57 lista

Modificando grupos y usuarios propietarios

Page 9: Tipos de archivos en Linux Archivos normales: pueden contener texto, código fuente en C, archivos de comandos shell (programas, interpretados), programas

El usuario administrador (root)

• Creado automáticamente por el sistema.

• También conocido como Super usuario ó Administrador del sistema.

• Se establece su contraseña durante la instalación del sistema.

• Directorio : /root

• Grupo: root

• UID: 0

• Posee todos los derechos sobre todos los archivos y directorios existentes.

• Único usuario con capacidad para crear y eliminar usuarios y grupos.

• Conlleva gran responsabilidad.

• Se sugiere que el usuario root posea otra cuenta de usuario normal.

Administración de Usuarios

Page 10: Tipos de archivos en Linux Archivos normales: pueden contener texto, código fuente en C, archivos de comandos shell (programas, interpretados), programas

Atributos fundamentales de un usuario

a) NombreLa longitud del nombre del usuario no está limitada.Linux distingue entre mayúsculas y minúsculas.b) Contraseña (Password)Linux solo verifica la coincidencia de los primeros 8 caracteres de la contraseña.Linux distingue entre mayúsculas y minúsculas.c) Directorio home ó Directorio de entradaDirectorio en que se sitúa al usuario una vez que entra al sistema.Habitualmente está bajo /home.Toma el nombre del usuario a menos que se indique lo contrario.d) Identificador numérico (User ID o UID)Identificador único (hay excepciones)Normalmente se asigna automáticamente aunque el administrador puede

establecerlo.Suele tomar valores por arriba de 500.El UID de root es 0.

Administración de Usuarios (continuación)

Page 11: Tipos de archivos en Linux Archivos normales: pueden contener texto, código fuente en C, archivos de comandos shell (programas, interpretados), programas

Atributos fundamentales de un usuario

e) Intérprete de comandosEl administrador puede seleccionar el shell que se activará cuando el usuario

entre al sistema.f)Nombre realNo resulta imprescindible pero puede resultar conveniente en sistemas con

muchos usuarios.Cuando los nombres de usuario no se asocian fácilmente con el nombre real.g) Grupo de entradaGrupo prioritario del usuario cuando accesa al sistema.h) Grupos adicionalesLos grupos de los que es miembro el usuario (excepto el grupo de entrada) i) Caducidad de la cuentaFecha en que un usuario deje de accesar al sistema. Consideraciones

Administración de Usuarios (continuación)

Page 12: Tipos de archivos en Linux Archivos normales: pueden contener texto, código fuente en C, archivos de comandos shell (programas, interpretados), programas

El archivo /etc/passwd

La más importante “base de datos” de los usuarios del sistema.Cada línea representa un registro.Cada registro tiene 7 campos.1. Nombre de usuario.2. Contraseña (encriptada)3. UID4. Identificador numérico del grupo e entrada del usuario.5. Información real del usuario (nombre real, num. telefónico, etc.). finger

jdjimenez6. Directorio de entrada.7. Shell.

Ejemplojdjimenez:Hj6IhR5hu89:503:Jose Daniel Jimenez:/home/jdjimenez:/bin/bash

Administración de Usuarios (continuación)

Page 13: Tipos de archivos en Linux Archivos normales: pueden contener texto, código fuente en C, archivos de comandos shell (programas, interpretados), programas

El archivo /etc/shadow

Si se activan las shadow passwords las contraseñas encriptadas estarán aquí. Aparece una “x” en el campo de la contraseña en el arcivo /etc/passwd.Cada línea representa un registro.

1. Nombre de usuario.2. Contraseña (encriptada)3. Fecha del último cambio de contraseña.4. Número mínimo de días que debe permanecer la contraseña sin cambiarse.5. Número mínimo de días que debe permanecer la contraseña sin cambiarse. 6. Fecha del primer aviso al usuario de que la contraseña está a punto de

expirar, expresada en días previos a la fecha de expiración.7. Días que pasaran entre la expiración de la contraseña y el bloqueo dede la

cuenta.8. Fecha de caducidad de la cuenta.9. Reservado.

Habitualmente los últimos 7 campos permanecerán vacíos o con valores que no limitan la cuenta ni la contraseña.

Administración de Usuarios (continuación)

Page 14: Tipos de archivos en Linux Archivos normales: pueden contener texto, código fuente en C, archivos de comandos shell (programas, interpretados), programas

Modificación manual de los archivos /etc/passwd y /etc/shadow

Permite la realización manual de ciertas tareas.

a) Cambiar el valor de los atributos de los usuarios tomando en cuenta el orden en que aparecen.

b) Crear nuevos usuarios agregando renglones.c) Eliminar usuarios borrando líneas del archivo. Sería necesario limpiar

manualmente todos los archivos relacionados con el usuario.d) Inhabilitar manualmente la cuenta de un usuario (añadiendo un carácter a

la contraseña).

Es importante que solo el administrador tenga permisos de escritura sobre los archivos /etc/passwd y /etc/shadow.

Administración de Usuarios (continuación)

Page 15: Tipos de archivos en Linux Archivos normales: pueden contener texto, código fuente en C, archivos de comandos shell (programas, interpretados), programas

El archivo /etc/group

Cada línea representa un grupo.Cada registro tiene 4 campos.1. Nombre de grupo.2. GID (Group ID).3. Nombre de los usuarios miembros del grupo.4. Contraseña de grupo (Group password).

Ejemploproyecto::520:jjimenez,rcasillas,evalles

El archivo /etc/gshadow

Es equivalente al archivo /etc/shadow.

Administración de Usuarios (continuación)

Page 16: Tipos de archivos en Linux Archivos normales: pueden contener texto, código fuente en C, archivos de comandos shell (programas, interpretados), programas

Creación de cuentas de usuario (continuación)

Hay 2 formas de crear una cuenta de usuario:

1 Agregando un renglón al archivo /etc/passwd.

ó

2 Mediante el comando useradd

useradd nombre_de_usuario

Ejemplo useradd mcervantes

La cuenta estará inhabilitada hasta que se defina su contraseña.

passwd nombre_de_usuario

Ejemplo passwd mcervantes

Administración de Usuarios (continuación)

Page 17: Tipos de archivos en Linux Archivos normales: pueden contener texto, código fuente en C, archivos de comandos shell (programas, interpretados), programas

Creación de cuentas de usuario (continuación)

Parámetros para useradd

-p password encriptado (crypt)-d Directorio home-s Shell-u UID (no debe pertenecer ya a otro usuario)-c Información del usuario (Nombre real, telefono, etc.)-g Grupo de entrada (Nombre o GID). Si no se especifica se asiga en grupo por

default.-G Especificar otros grupos-e Fecha de expiración de la cuenta-f Número de días que pasarán antes de la inhabilitación una vez que expire la

contraseña.

Ejemplo

useradd mcervantes –c “Marco A Cervantes” –u 503 –s /bin/bash mcervantespasswd mcervantes

Administración de Usuarios (continuación)

Page 18: Tipos de archivos en Linux Archivos normales: pueden contener texto, código fuente en C, archivos de comandos shell (programas, interpretados), programas

Creación de grupos

groupadd nombre_de_grupo

Ejemplo groupaddproyecto

Para establecer el GID

Ejemplo groupadd –g 520 proyecto

Administración de Usuarios (continuación)