SlideShare una empresa de Scribd logo
1 de 17
Descargar para leer sin conexión
Tema 3.- Ficheros y Permisos

El sistema UNIX funciona totalmente en base a archivos. Los programas, los datos, los
directorios y aún los controladores de dispositivos tales como discos, moderas e
impresoras, son archivos.

El sistema de archivos de UNIX se organiza en una jerarquía de directorios que resulta
en una estructura arborescente.

Archivos.

Cada archivo tiene asociado un nombre, un contenido, un lugar de ubicación e
información de tipo administrativo, tal como dueño y tamaño. El contenido de un
archivo puede ser texto, programas fuente, programas ejecutables, imágenes, sonidos y
otros.

Estructuralmente un archivo es una secuencia de bytes de datos que reside en forma
semipermanente en algún medio estable, como ser una cinta magnética o un disco.

Directorios.
Los archivos se agrupan en directorios. Un directorio es un archivo que contiene una
lista de nombres de archivo e información acerca de los mismos. Dentro del sistema de
archivos, un directorio es una localización capaz de contener otros directorios o
archivos. Dos archivos que se encuentren en distinto directorio pueden tener el mismo
nombre sin confundirse.
El comando Is permite listar el contenido de un directorio:
  ls /var
el argumento es un directorio; la salida son los nombres de archivos y subdirectorios en
ese directorio.
   ls nota
el argumento es un archivo, la salida es el nombre del archivo.
  ls -1 /var
muestra los archivos y subdirectorios contenidos en /var en formato largo.
  ls -Id /var
muestra características del directorio /var en lugar de los archivos y subdirectorios
contenidos en él.

Nombres de archivos.
Para el nombre de archivo se puede usar prácticamente cualquier carácter, incluso
caracteres no visibles. Los caracteres $ ;  ! * I causan confusión y no conviene
usarlos. Se aconseja usar solamente letras, números, punto, guión y subraya. UNIX
diferencia mayúsculas y minúsculas: el archivo NOTA. TXT es distinto del archivo
nota. txt y también de Nota. txt. No se distingue entre nombre de archivo y
extensión: nota. nueva. txt es un nombre de archivo válido, y LCK.. modem también.
Un archivo que comienza por un punto no es visible:
  touch .noseve
  ls
Is -a
is no lo muestra, pero sí is -a.
   rm .noseve
lo borra como a cualquier archivo.

Directorio propio. Directorio actúa!.

Al ingresar al sistema cada usuario entra en su directorio propio, un directorio privado
que no es tocado por el sistema ni por los otros usuarios. El directorio en el cual se
encuentra posicionado el usuario en un momento dado se denomina su directorio actual.
  cd /usr/bin
  pwd
cambia al directorio /usr/bin; el directorio actual es /usr/bin.
  cd
  pwd
devuelve al usuario a su directorio propio, que es ahora el directorio actual.
  echo $HOME
nuestra el nombre del directorio propio. HOME es una variable de ambiente que
contiene el nombre del directorio propio del usuario.
  cd $HOME
tiene el mismo efecto que cd.

Nombres de directorios.

Un directorio puede contener otros directorios así como archivos ordinarios, lo que
genera una jerarquía o árbol de directorios. El directorio superior o directorio raíz se
denomina /.
  cd /
  pwd
el directorio actual es el directorio raíz.
   cd
vuelve al directorio propio del usuario.

El carácter / se usa también para separar los componentes de un nombre de archivo
completo: /export/home/usuariol/nota.
La porción /export/home/usuario es la ruta, nota es el nombre del archivo. Si se
omite la ruta, se asume que el archivo se encuentra en el directorio actual. Un nombre
tal como
textos/libro/capitulo. i indica que su ruta comienza a partir del directorio actual.
Sería lo mismo escribir . /textos/libro/capitulo. i ya que el punto designa el
directorio actual. Dos puntos seguidos designan el directorio de nivel superior al actual.
Si el directorio actual es /home/usuarioi
   ls ../usuario2
muestra el contenido de los archivos en /home/usuario2

El carácter / separa directorios incluidos como parte de un nombre de archivo o
directorio.
  ls dirl
es un direccionamiento relativo;
  ls /home/esteban/dirl
es un direccionamiento absoluto.
Pueden usarse comodines para referenciar directorios y archivos:
  cat /home/esteban/*/*

Cambios en la jerarquía de directorios.
   mkdir nuevo.dir
crea un nuevo directorio.
  rmdi r nuevo.di r
borra un directorio existente; actúa sólo sobre directorios vacíos.
  mkdir dirl
  mkdir dirl/dir2
  touch dirl/dir2/arch2 dirl/archl
  Is -IR
muestra todos los archivos y directorios creados;
  rm -r dirl
borra el directorio y todos los archivos y subdirectorios que pueda contener.

Estructura interna de los archivos.

Un archivo es una secuencia de bytes. Un byte es equivalente a un carácter. El sistema
no impone estructura alguna a los archivos ni asigna significado a su contenido; el
significado de los bytes depende totalmente de los programas que interpretan el archivo.

En ningún caso hay ningún byte que no haya sido colocado por el usuario o un
programa. No hay carácter de fin de archivo. El núcleo del sistema UNIX se mantiene al
tanto del tamaño de los archivos sin introducir ningún carácter especial. El carácter
nuevalínea es interpretado por las terminales como nueva línea y retorno de carro (CR
LF, earriage-return y line-feed), necesario para desplegar correctamente los renglones
en la terminal. Al apretar la tecla Enter el núcleo transmite a la terminal CR LF, pero en
un archivo se guarda sólo LF.

¿Qué hay dentro de un archivo? El núcleo no puede decirnos nada del tipo de archivo:
no lo conoce. Todos los archivos tienen la misma estructura interna. El comando file
hace una conjetura: lee algunos bytes y busca indicios sobre el tipo de contenido. En los
sistemas UNIX hay sólo una clase de archivo. Lo único que se requiere para accederlo
es su nombre.

Niveles de Seguridad.

Un sistema debe proporcionar niveles de fiabilidad suficientes para evitar pérdidas de
información, corrupción de datos, mal funcionamiento etc ..
        La parte más difícil de controlar la constituyen los usuarios.
Para prevenir, Unix provee herramientas para preservar los archivos y directorios de las
posibilidades de acceso, lectura y modificación por parte de los usuarios.

Pues bien, Unix proporciona tres niveles de seguridad para poder utilizar el sistema:
1.- Acceso; Cada usuario debe identificarse al entrar en el sistema y ser reconocido por
este.
2.- Password: Cada usuario debe tener una clave de acceso secreta, fiable y
periódicamente modificada.
3.- Permisos y accesos a ficheros y directorios que es de lo que vamos a tratar a
continuación.

Propiedad de los archivos.
Cada usuario es dueño de los archivos creados por él, hasta que los borre o los ceda a
otro usuario. Cada usuario pertenece a un grupo, y puede compartir archivos con los
usuarios de ese grupo. Cada archivo está asignado a un grupo de usuarios, al cual debe
pertenecer su dueño. El comando is -i muestra dueño y grupo de los archivos listados.

 Visualiza, además del nombre de cada fichero, sus permisos y
otros atributos;

 $ pwd
 /users/practicas
 $ls-l {
.drwxjr-xr-x 1 marta users 1024 Sep 29 18:41                     oracle/
 -rwxrwxrwx 1 marta users 13 Sep 24 2001                          prueba.exe
 -rw-r—r~      1 marta users 60   Sep 26 2001                    pruebaC.c
 -rw-r—r—      1 marta users 349 Sep 29 18:34                    ps.sal
 -rw-r—r—      2 root  root    O Sep 29 18:54                    datos.txt
 -rw-r-r--     1 root  root   905 Sep 25 2001                    shell

Nos situaremos en la primera columna y analizaremos lo que llamaremos : máscara
de tipo y modo de aeeeso que consta de diez caracteres.



Vemos que para cada fichero aparecen varias columnas de información:

1. La columna de más a la derecha contiene el nombre del fichero o
directorio.
2. Las tres columnas anteriores contienen la fecha y hora de última
modificación del fichero.
3. La columna anterior indica el tamaño en bytes del fichero.
4. Las dos anteriores indican quien es el propietario del fichero (el usuario
que lo creó) y el grupo al que pertenece dicho usuario. Por ejemplo, el
fichero pruebaC.c pertenece al usuario "marta" del grupo "users",
mientras que el fichero datos.txt pertenece al usuario "root" del grupo
"root".
5. La 2a columna indica el número de links o enlaces que existen para el
fichero.
6. En la primera columna:
1°.- El primero se refiere al tipo de archivo (ordinario, directorio ...)
                Tipos:
                a) - archivo ordinario. Son los normales que contienen: texto, código
                fuente en lenguaje C, órdenes shell, programas binarios ejecutables
                (archivos que ejecutan código máquina) etc.
                b) d fichero Directorio gestionados por el propio sistema, que
                contienen referencias a otros ficheros normales o directorios,
                organizando de esta forma el árbol de ficheros y directorios.
c) Archivos Especiales:
                  b Ficheros de dispositivos de bloque: hacen referencia a los
                  periféricos de tipo bloque (discos, cintas y diskettes), ya que en un
                  disco o cinta no se puede acceder sólo a un carácter ., sino que hay
                  que leer y escribir bloques completos.
                  c Ficheros de dispositivo carácter: hacen referencia a dispositivos
                  tipo carácter (terminales, impresoras ...).ya que pueden aceptar y
                  producir una cadena de caracteres.
              d) I Fichero de tipo enlace.
              e) p Ficheros tubería o Ficheros FIFO son ficheros especiales, creados,
              destruidos y gestionados por el propio sistema, (ficheros temporales).

       2°.- Los otros 9 se refieren a los atributos de lectura, escritura, y ejecución del
       archivo o directorios referidos al usuario (los tres primeros), al grupo al que
       pertenece el usuario (los tres centrales) y al resto de usuarios (los tres últimos).


Tipo y permisos de archivos.
Cada archivo tiene un conjunto de permisos asociados con él que determinan qué
puede hacerse con el archivo y quién puede hacerlo.

Los permisos de un archivo se indican con 10 caracteres:
       1 carácter para tipo de archivo,
       3 caracteres [rwx] para permisos del dueño o usuario,
       3 caracteres [rwx] para permisos del grupo,
       3 caracteres [rwx] para permisos de otros.

Carácter para tipo de archivo:
       d directorio
       i enlace simbólico
       - archivo normal
       b archivo controlador de dispositivo orientado a bloques
       c archivo control de dispositivo orientado a caracteres

Atribuios o permisos:
      r acceso de lectura (read)
      w acceso de escritura (write)
      x acceso de ejecución (execute)
           ausencia de permisos (protección)
s     Establece el bit de identificador de usuario.
t     Establece el bit adosado.
       Este bit ( ADOSADO) indica al sistema que guarde una copia del programa en
      ejecución después de que termine. Si el programa se ejecuta con frecuencia, el
      bit adosado puede ahorrar tiempo al sistema porque el programa no tiene que
      volverse a cargar en memoria desde el disco cada vez que alguien lo ejecuta.
cuyo significado varía según se trate de archivos o directorios:

[Permiso ¡Archivos               Directorios
         jleer archivos           ver contenido de directorios
|w       ¡grabar en un archivo   ¡crear y borrar archivos
Ix       ¡ejecutar como programa ¡Acceder o ingresar a un directorio I
i-       isin derechos           ¡sin derechos                        ¡

El ingreso a un directorio (permiso x) permite ejecutar un archivo contenido dentro de
él, o trasladarse a ese directorio; para estas operaciones no es necesario poder ver los
nombres de los archivos contenidos (permiso r).
Un archivo se declara ejecutable dándole permiso de ejecución.

Se ejecuta dando su nombre. Los comandos de UNIX son archivos ejecutables.

Ejemplos de permisos de archivo:
  rwxr--r—
  rw-rw-r—
  rw
chmod ( change mode)

Modo Simbólico;

       chmod [-RJ [quién] [ + | - | = ] [modo o permisos ... ] fichero (s)

Modo Absoluto u Octah

       chmod l-R] o-odo fichen, (s)     5*

Desertan:                                                      _
                                                                   ti^V*0.
Cambia el modo de acceso de uno o más ficheros (pueden ser convencionales o de
directorio). Sólo el propietario del fichero o el superasuario pueden cambiar el modo.

Opciones: -R permite cambiar permisos a todos los archivos y subdirectorios de un
directorio. Ej : chmod -R u+r Cartas aplica r a todos los archivos y sub. De Cartas.
                                               S^MMT     P^ V
Modo Simbólico:                                 M


 El nuevo modo (o máscara ) contiene tres partes: quién, operador y permiso, los
caracteres que definen estas tres partes son los siguientes:

quién tendrá permisos.
       El sistema discrimina tres tipos de usuarios para un fichero:

       u      Usuario (propietario del fichero).
       g      Grupo.(los grupos se definen según las actividades de los usuarios).
       o      Otros, (son cualquier usuario que pertenecen a otros grupos).
       a      Todos (usuario, grupo, propietario).
                      Este comando utiliza un carácter para identificar quién.

Operador (El código de operación es relativo a lo que desea hacer con los permisos.
Hay dos posibilidades: añadir y/o quitar.

       +      Añadir permiso.
              Eliminar permiso.
       =      Asignar permiso y elimina todos (u,g,o) los que tuviera..

       Permisos cuales son.

       r      Lectura.
       w      Escritura.
       x      Ejecución.
       u      Permisos en curso del usuario.
       g      Permisos en curso del grupo.
       o      Permisos en curso de otros.
En este modo se indicará en primer lugar a quién (propietario, grupo, otros) se va
cambiar los permisos, después se indica (mediante el operador) si se añade, retira o
asigna un permiso, y por último qué permiso será añadido, retirado o asignado.
Para cambiar el modo de un fichero es necesario ser el dueño del mismo.

Modo Absoluto:

También se puede especificar el modo mediante una secuencia de tres dígitos el primer
dígito representa los permisos: para el usuario, el segundo para el grupo y el tercero
para otros; el valor de cada uno se obtendrá de la siguiente tabla:

          permiso                      valor

          Lectura               4
          Escritura             2
          Ejecución
          Ninguno              O


          Cada dígito se obtiene de la suma de los valores de los permisos que se quieren
asignar

NOTA.: con la notación octal, pongo permisos, pero quito los que tuviera (incluso u).
Ej : rwx r - - r - -         *$ chmod 033          — - wx - wx

Ejemplos:

          Modo Simbólico;

1.- Permisos de todo tipo para todos los niveles.

                 $ chmod a+rwx fichero
                 $ chmod ugo+rwx fichero

2.- Permisos total para el propietario, lectura y ejecución para el grupo y ejecución para
el resto:
        $ chmod u+rwx,g+rx,o+x fichero

          Nota: No dejar espacios, después de la coma.

Modo Absoluto:

       $ chmod 644 fichero
Tendrá los permisos de: lectura (r) y w para el usuario, y lectura (r) para el grupo y
resto.
Quita los permisos que tuviera.
       Ej
1°.- $ chmod 644 rw- r - - r - -
2°.- $ chmod 666 rw- rw- rw-
umask


umask [-Sj [valor]

Descripción:     Nota: en UNIXWARE 7.1 caí /eíc/profile | more (022)

- Visualiza la máscara de usuario o valor por defecto de creación de un fichero, este será
el mismo para ficheros convencionales y para ficheros de directorio.
Cambia el valor por defecto por valor.
- Fija la máscara para permisos de creación según modo. Si modo se indica con número,
es en octal; si no, es en modo simbólico. En general, los permisos de creación serán,
para directorios, 0777 menos los bits de máscara; para archivos 0666 menos los bits de
máscara. La máscara vigente es la fijada por defecto o la que se fije con este comando.
Sin parámetros, umask muestra la máscara vigente. La máscara indica los permisos que
se quitan al permiso fijado.

- En la mayoría de las instalaciones el valor por defecto es O.Esto significa que cuando
se crea un fichero el sistema asigna unos permisos de acceso que, por defecto serán rw-
rw- rw- (modo 666) para ficheros convencionales (todos los permisos excepto los de
ejecución) y rwx rwx rwx (modo 777) para directorios.


La asignación automática de permisos, o valores por omisión puede ser modificada
mediante una máscara que elimine permisos. Se dará un valor como argumento del
comando.



- Normalmente se suele introducir en el fichero de inicio del sistema (/etc/profile) o la
SHELL (fichero .profile) para mantener dichas protecciones siempre que nos
conectemos.

Cabe destacar que al estar hablando de la instrucción umask que genera una máscara ,
el método octal se usa en modo inverso que el de la sentencia chmod.


       Umask quita permisos de la máscara definida por defecto que es 777 ó 666.

       Los números se ponen en notación octal de tal modo que:          ^
       4—quita el permiso de lectura                   ^ ^ j£ K M " °í "- r
       2 — quita el permiso de escritura.           ^
       1 — quita el permiso de ejecución.

       Puedo poner la máscara en modo octal o simbólico:
       En octal quita permisos, pero en simbólico los añade.

       Para restaurar la máscara inicial, basta ejecutar la orden umask 000.
La orden umask sin argumentos muestra la máscara activa (con una cifra inicial más).
Con umask no pueden tener los "ficheros" permiso de ejecución (x) . Por defecto si la
hubiera te la quita.

Ejemplos:

1°.- Si la máscara es   $ umask 0002

       Todos los directorios que creemos se crearán con los permisos:
       775 es decir drwx rwx r - x

       Todos los ficheros que creemos se crearán con los permisos:
       664 es decir - r w - rw- r - -




                                                                                        10
Chown (change owner)

chown [-R] nwevo-propietario [:grupo] fichero (s) y/o directorios




Cualquier sistema operativo multiusuario tiene que proporcionar mecanismos para que
cada usuario pueda poseer su propios datos. En el caso de los sistema Unix y Linux en
particular a cada fichero o directorio se le puede asignar un usuario propietario y un
grupo propietario. La lista de usuarios está en el fichero (/etc/passwd) y la lista de
grupos está en el fichero /etc/group. Cada usuario tiene un grupo principal ya además
puede pertenecer a cualquier otro grupo.

Combinando el propietario, el grupo de un fichero y los grupos a los que pertenecen los
diversos usuario se puede delimitar perfectamente el acceso a los datos almacenados.
Además los sistemas Unix existen ciertos usuarios y grupos estándares que se utilizan
para realizar diversas tareas administrativas.

En general, el propietario y el grupo de los ficheros y directorios se heredan del usuario
que los crea.

En muchos casos nos interesa modificar el propietario o el grupo de un fichero; para
realizar estas acciones Linux (Unix en general) disponen de las órdenes adecuadas.

Descripción:
           Traspasa ía propiedad de uno o más ficheros a un nuevo propietario.
            El nuevo propietario podrá ser cualquier login (nombre) o número de
           identificación de usuario (uid) que esté dado de alta en el sistema.
           Sólo puede cambiarlo el propietario del fichero o el superusuario.
           Todos los atributos del fichero se mantienen.
           Para volver a ser propietario, lo tiene que devolver el nuevo propietario.
              El fichero permanece físicamente en el directorio del primer propietario,
           a no ser que lo mueva o copie al directorio del nuevo propietario.(deberá
           tener los correspondientes permisos, de poder escribir en el directorio
           destino(w) y en el fichero origen).

Opciones:
            - R permite el cambio de propietario de forma recursiva desde un
            determinado directorio hacia abajo, de todos los ficheros y subdirectorios.



Para cambiar el propietario de un fichero tenemos que usar la orden chown (change
owner).



                                                                                        11
La orden chown se utiliza de la siguiente forma:

$ chown nuevojpropietario fíchero_o_dir

La orden chown también se puede utlizar para cambiar también el grupo de un fichero o
directorio; esto se hace con la siguientes sintaxis de la orden chown:

$ chown nuevo_usuario.nuevo_grupo ííchero_o_dir

o bien

$ chown nuevo_usuario:nuevo_grupo fichero_o_dir

poniendo el nuevo usuario y el nuevo grupo separados por un punto. De esta forma
ahora el fichero o el directorio pertenecen al nuevo usuario y al nuevo grupo. Si
omitimos el usuario pero ponemos el punto o los dos puntos sólo se cambia el grupo.



chgrp -5>

chgrp [ -R ] nuevo-grupo fichero (s) y/o directorio(s)


Descripción:

            Traspasa la propiedad de uno o más ficheros a un nuevo grupo.
            El nuevo grupo podrá ser cualquier nombre o número de grupo (GID) que
            esté dado de alta en el sistema.
            Los ficheros mantienen el mismo propietario.

Opciones:
            -R     cambia de grupo de forma recursiva desde un determinado directorio
            hacia abajo, a lo largo de todos los ficheros y subdirectorios.

Ejemplos:

         1°.- Sea el fichero texto, cuyo propietario es pepe y pertenece al grupo profes.
               $ Is -1 texto
               -rw- rw - r - - 1 pepe profes (grupo)

                - Cambio el fichero texto al grupo alumnos
                $ chgrp alumnos texto
                       $ Is -1 texto y aparece este fichero (texto) en el grupo alumnos,
                       pero con el mismo propietario pepe.

         2°.-

                $ Is —1 articulos.e
                -rwxr-xr-xl carmen almacén 49068 Feb 11 09: 33 artieulos.e



                                                                                        12
$ chgrp gestión artículos, c

                -rwx r-x r-x 1 carmen gestión 49068 Feb 1 1 O9:33 articulos.c


             Se tiene un fichero llamado articulos.c que está asociado al grupo almacén,
             la ejecución del comando hace que este fichero pase a estar asociado al
             grupo gestión.

         3°.- $ chgrp gjal (grupo) PRUEBA2 (directorio)
         PRUEBA2 pasa del grupo (group- el que tiene por defecto) al grupo (gjal).




newgrp [ -I ] [grupo]
newgrp [ - ] [ grupo]

- y -1 son equivalentes.

Descripción:

         Orden que permite cambiar a un nuevo grupo.

         El nuevo grupo podrá ser cualquier nombre o número de GID que esté dado de
         alta en el sistema.

         El usuario debe pertenecer al grupo al que cambio.

         A partir de ese momento, todos los ficheros que cree pertenecerán al nuevo
         grupo.
         Sin el argumento grupo, (sólo newgrp) devuelve o cambia al grupo activo
         inicial al que se nos asocia en el proceso login (cuando hago login), contenido
         en el fichero /etc/passwd .
                 david:x:205:50 este 50 es el identificador de grupo.
         En el fichero /etc/group está la lista de los grupos v usuarios que pertenecen a
         ellos.

Notas:
         En /etc/group está la lista de los nombres de grupos y usuarios que pertenecen a
         los grupos.
         En /etc/passwd contiene el login del grupo para cada usuario.

Crear grupos;

 Desde Servidor: administrador de cuentas -gf»pos        —aftadir grupos
      Para ver que usuarios componen los grupos: selecciono grupo y doble clic.




                                                                                            13
su

su [ - ] [usuario [argumentos ...]]

Descripción:

            Permite cambiar nuestro identificador de usuario (uid) en superusuario o en
            cualquier otro usuario del sistema (siempre que se conozca la clave o
            password si la tiene), sin hacer logoff.
             Es útil cuando un usuario tiene diferentes cuentas.

            - Si indico $ su - quiere decir que accedo a la shell del superusuario.
            Si no se indica usuario, se entiende que se está intentando acceder como
            superusuario (root).

            Ej:
            Estoy en $/home/david.
            Si quiero pasar a superusuario:
            $su <intro>
            tecleo la password y estoy en root, pero en el directorio de /home/david.

            La orden su abre una nueva subsesión en UNIX y para regresar al
            identificador inicial se usará la orden exit.

            - La orden su obliga a cambiar de nombre de usuario pero NO de directorio
            y puede que con ello perdamos el acceso a los archivos que antes
            controlábamos.

            Si se desea cambiar las características de la sesión para disponer de la
            configuración asociada al nuevo usuario, como si se hubiera accedido a él
            con un proceso logín, hay que utilizar la sintaxis su - usuario (con guión
            delante del nuevo identificador).

            Ej: Estoy en root # .
            Si quiero ir a /home/pepe debo poner:
            - su - pepe y estaré en /home/pepe

Opciones:
            Accede al nuevo usuario con todos sus privilegios (adquiere sus variables
            etc.).

            argumentos

            Ejemplos:
                         $ su - enrique
                         password:

                    La ejecución de este comando hace que se acceda al usuario enrique,
            con todos sus privilegios (se presupone que conocemos su password). Para
            salir de este usuario y volver al propio se teclea CTRL - D o exit..


                                                                                         14
id

id [ -1 ] [ -s] [usuario]       id -G [-n] [ usuario]
id -g [ -n ] [ -r] [ usuario]   id -u [ rn ][-r | -1 ] [ usuario]
id -u [-n] [-r¡ [usuario]

Descripción :
                Muestra la Identificación del usuario al sistema, informando sobre el:
                el n° de uid, el nombre de usuario, el n° de identificación de grupo,
                nombre del grupo por defecto y a los grupos que pertenece el usuario.


IMPORTANTE: El permiso suid se utiliza en varios programas de usuario, que
necesitan escribir o leer archivos propiedad de root.
Por ejemplo: cuando se ejecuta la orden passwd para cambiar una contraseña, se tienen
los mismos permisos que root. Esto permite leer y escribir en los archivos /etc/passwd y
/etc/shadow cuando modifica la contraseña, aunque ordinariamente NO se tienen
privilegios de acceso a ellos.


Opciones:
-I
-s
-G     Visualiza el n° de los grupos suplementarios.
-n     Visualiza el nombre del grupo o del usuario, en vez del n° de identificador.
       Requiere -u, -g o G.
-g     Visualiza sólo el identificador de grupo.
-r     Visualiza el identificador real, en vez del efectivo, de usuario o de grupo.
-u     Sólo visualiza el identificador de usuario.

Ejemplos:

       0°.- $ id
                uid=203(alejan ) gid=50(group)         groups = SO(group)


       uid=203(alejan ) gid=50(group) luid - 203( alejan) groups =50 (group)

       2°.-$id-G
             50
             50
             50
       3°.-$id-g-r

                $id-g                  $id-g-r         $id-g-n
                 50                     50             group

        4°.- $ id -u -1 -n

                $id-u


                                                                                         15
203 id del usuario alejan

5°.-$ id alejan

       uid=203(alejan)       gid=50(group)   groups=50(gropup)

6°.- $id-s es igual al 5°.




                                                                 16
Convenciones en nombres de archivos y directorios.

/bin           archivos ejecutables, comandos de usuario
/boot          archivos de arranque
/cdrom         punto de montaje para la uniad de CD-ROM
/dev           archivos especiales de dispositivos
               [subdirectorios propios de System V]
   ./dsk        dispositivos de disco
   ./fd         dispositivos descriptores de archivo
   ./kd         dispositivos de teclado y despliegue
   ./kmem       memoria
   ./nuil       dispositivo para descarte de salidas
   ./osm        mensajes de error del núcleo
   ./pts        pseudo ttys; igual que /dev/pts*
   ./rdsk       dispositivos crudos de disco
   ./term       terminales; igual que /dev/tty*
   ./xt         pseudo ttys; para capas DMD
/dosc           punto de montaje para la partición DOS
/etc            configuración de paquetes, configuración de sistema
   ./init.d     scripts de arranque y detención de programas
   ./rc?.d      enlaces a scripts, con K o S (Kill o Start), y número
de
                   secuencia para controlar el arranque
  ./skel        archivos de inicialización para nuevos usuarios
/export         directorios de usuarios en sistemas grandes
/floppy         para montar una unidad de disquete
/home           objetos relacionados con los usuarios
/lib            bibliotecas de desarrollo y material de apoyo
/lost+found     archivos perdidos
/mnt            punto de montaje de dispositivos externos
/proc           archivos de control de procesos
/root           directorio propio para el supervisor (root)
/sbin           archivos ejecutables de administración
/tmp            archivos temporales
/usr            ejecutables, documentación, referencia
  ./X11R6       sistema X-Windows
  ./bin         más ejecutables
  ./doc         documentos de paquetes de software
  ./include     encabezados .h de bibliotecas en C
  ./info        archivos de info, información de UNIX (GNU)
  ./lib         más bibliotecas en C
  ./local       ejecutables instalados por el administrador
  ./man         subdirectorios de páginas del manual
  ./sbin        más archivos ejecutables de administración
  ./share       compartidos
  ./src         (source) código fuente del kernel
/var            archivos de log, auxiliares, archivos que crecen
  ./backup      respaldo de algunos archivos del sistema
  ./catman      páginas man ya formateadas
  ./lib         información propia de programas
  . /lock        control de bloqueos
  ./log         archivos de registro de mensajes (log) del sistema
  ./spool       colas de impresión, intermedios de correo y otros
./run         información de procesos (PIDs)




                                                                        17

Más contenido relacionado

La actualidad más candente

2.7 nombre de archivos y directorios rutas y exploracion de arbol
2.7 nombre de archivos y directorios rutas y exploracion de arbol2.7 nombre de archivos y directorios rutas y exploracion de arbol
2.7 nombre de archivos y directorios rutas y exploracion de arbolFernando Solis
 
Comando ls linux
Comando ls linuxComando ls linux
Comando ls linuxamador57
 
Permisos en Linux
Permisos en LinuxPermisos en Linux
Permisos en LinuxPablo Macon
 
Comandos DIR en el Simbolo del sistema o MS-DOS (Practica 11)
Comandos DIR en el Simbolo del sistema o MS-DOS (Practica 11)Comandos DIR en el Simbolo del sistema o MS-DOS (Practica 11)
Comandos DIR en el Simbolo del sistema o MS-DOS (Practica 11)CarlosMadera15
 
Comandos basicos ii directorios
Comandos basicos ii   directoriosComandos basicos ii   directorios
Comandos basicos ii directoriosPablo Macon
 
Semana 7 y 8 sistemas de archivos linux
Semana 7 y 8 sistemas de archivos linuxSemana 7 y 8 sistemas de archivos linux
Semana 7 y 8 sistemas de archivos linuxvictdiazm
 
Permisos basicos linux
Permisos basicos linuxPermisos basicos linux
Permisos basicos linuxeclipsotol
 
sitemaoperativoDOS
sitemaoperativoDOS sitemaoperativoDOS
sitemaoperativoDOS Maria281299
 
Sistema operativo (ms dos)
Sistema operativo (ms dos)Sistema operativo (ms dos)
Sistema operativo (ms dos)JeCg CeGa
 
Permisos de linux
Permisos de linuxPermisos de linux
Permisos de linuxbat18
 

La actualidad más candente (14)

2.7 nombre de archivos y directorios rutas y exploracion de arbol
2.7 nombre de archivos y directorios rutas y exploracion de arbol2.7 nombre de archivos y directorios rutas y exploracion de arbol
2.7 nombre de archivos y directorios rutas y exploracion de arbol
 
Comando ls
Comando lsComando ls
Comando ls
 
Practica u5
Practica u5Practica u5
Practica u5
 
Comando ls linux
Comando ls linuxComando ls linux
Comando ls linux
 
Permisos en Linux
Permisos en LinuxPermisos en Linux
Permisos en Linux
 
Comandos DIR en el Simbolo del sistema o MS-DOS (Practica 11)
Comandos DIR en el Simbolo del sistema o MS-DOS (Practica 11)Comandos DIR en el Simbolo del sistema o MS-DOS (Practica 11)
Comandos DIR en el Simbolo del sistema o MS-DOS (Practica 11)
 
Comandos basicos ii directorios
Comandos basicos ii   directoriosComandos basicos ii   directorios
Comandos basicos ii directorios
 
Cli unix2
Cli unix2Cli unix2
Cli unix2
 
Semana 7 y 8 sistemas de archivos linux
Semana 7 y 8 sistemas de archivos linuxSemana 7 y 8 sistemas de archivos linux
Semana 7 y 8 sistemas de archivos linux
 
Comandos ls
Comandos lsComandos ls
Comandos ls
 
Permisos basicos linux
Permisos basicos linuxPermisos basicos linux
Permisos basicos linux
 
sitemaoperativoDOS
sitemaoperativoDOS sitemaoperativoDOS
sitemaoperativoDOS
 
Sistema operativo (ms dos)
Sistema operativo (ms dos)Sistema operativo (ms dos)
Sistema operativo (ms dos)
 
Permisos de linux
Permisos de linuxPermisos de linux
Permisos de linux
 

Similar a Tema 3 Ficheros Y Permisos

Linux ud2 - comandos gestion archivos
Linux   ud2 - comandos gestion archivosLinux   ud2 - comandos gestion archivos
Linux ud2 - comandos gestion archivosJavier Muñoz
 
Linux ud6 - permisos de archivos
Linux   ud6 - permisos de archivosLinux   ud6 - permisos de archivos
Linux ud6 - permisos de archivosJavier Muñoz
 
Archivos y Directorios
Archivos y DirectoriosArchivos y Directorios
Archivos y DirectoriosMayra Almache
 
5 the linux filesystem
5 the linux filesystem5 the linux filesystem
5 the linux filesystemyimfer1
 
5 the linux filesystem
5 the linux filesystem5 the linux filesystem
5 the linux filesystemJuan Camilo
 
Archivo y directorios en linux
Archivo y directorios en linuxArchivo y directorios en linux
Archivo y directorios en linuxJessica Medina
 
Archivo y directorios en linux
Archivo y directorios en linuxArchivo y directorios en linux
Archivo y directorios en linuxJessica Medina
 
Taller de diapositivas de gestion yadministracion de archivos y directorio1
Taller de diapositivas de gestion yadministracion de archivos y directorio1Taller de diapositivas de gestion yadministracion de archivos y directorio1
Taller de diapositivas de gestion yadministracion de archivos y directorio1Mauricio Velasquez
 
ARCHIVOS Y DIRECTORIOS EN LINUX
ARCHIVOS Y DIRECTORIOS EN LINUXARCHIVOS Y DIRECTORIOS EN LINUX
ARCHIVOS Y DIRECTORIOS EN LINUXAlex Daquilema
 
Tema 10 entrada y salida por gio
Tema 10   entrada y salida por gioTema 10   entrada y salida por gio
Tema 10 entrada y salida por gioRobert Wolf
 
Controladora de perifericos indice
Controladora de perifericos indiceControladora de perifericos indice
Controladora de perifericos indiceDavid Yupanqui
 
[ES] Estructura del Sistema de Archivos Gnu/Linux
[ES] Estructura del Sistema de Archivos Gnu/Linux[ES] Estructura del Sistema de Archivos Gnu/Linux
[ES] Estructura del Sistema de Archivos Gnu/LinuxEudris Cabrera
 
Controladora de perifericos indice
Controladora de perifericos indiceControladora de perifericos indice
Controladora de perifericos indicePamelaguibkdoe
 

Similar a Tema 3 Ficheros Y Permisos (20)

Linux ud2 - comandos gestion archivos
Linux   ud2 - comandos gestion archivosLinux   ud2 - comandos gestion archivos
Linux ud2 - comandos gestion archivos
 
Linux ud6 - permisos de archivos
Linux   ud6 - permisos de archivosLinux   ud6 - permisos de archivos
Linux ud6 - permisos de archivos
 
Archivos y Directorios
Archivos y DirectoriosArchivos y Directorios
Archivos y Directorios
 
5 the linux filesystem
5 the linux filesystem5 the linux filesystem
5 the linux filesystem
 
5 the linux filesystem
5 the linux filesystem5 the linux filesystem
5 the linux filesystem
 
Archivo y directorios en linux
Archivo y directorios en linuxArchivo y directorios en linux
Archivo y directorios en linux
 
Archivo y directorios en linux
Archivo y directorios en linuxArchivo y directorios en linux
Archivo y directorios en linux
 
Exposicion
ExposicionExposicion
Exposicion
 
Exposicion
ExposicionExposicion
Exposicion
 
Taller de diapositivas de gestion yadministracion de archivos y directorio1
Taller de diapositivas de gestion yadministracion de archivos y directorio1Taller de diapositivas de gestion yadministracion de archivos y directorio1
Taller de diapositivas de gestion yadministracion de archivos y directorio1
 
Unidad%201
Unidad%201Unidad%201
Unidad%201
 
Sr8 cm3 eq2-sistema de archivos v7.unix
Sr8 cm3 eq2-sistema de archivos v7.unixSr8 cm3 eq2-sistema de archivos v7.unix
Sr8 cm3 eq2-sistema de archivos v7.unix
 
Gestión de archivos
Gestión de archivosGestión de archivos
Gestión de archivos
 
ARCHIVOS Y DIRECTORIOS EN LINUX
ARCHIVOS Y DIRECTORIOS EN LINUXARCHIVOS Y DIRECTORIOS EN LINUX
ARCHIVOS Y DIRECTORIOS EN LINUX
 
Tema 10 entrada y salida por gio
Tema 10   entrada y salida por gioTema 10   entrada y salida por gio
Tema 10 entrada y salida por gio
 
Presentación linux
Presentación linuxPresentación linux
Presentación linux
 
Controladora de perifericos indice
Controladora de perifericos indiceControladora de perifericos indice
Controladora de perifericos indice
 
[ES] Estructura del Sistema de Archivos Gnu/Linux
[ES] Estructura del Sistema de Archivos Gnu/Linux[ES] Estructura del Sistema de Archivos Gnu/Linux
[ES] Estructura del Sistema de Archivos Gnu/Linux
 
linux
linuxlinux
linux
 
Controladora de perifericos indice
Controladora de perifericos indiceControladora de perifericos indice
Controladora de perifericos indice
 

Más de FresyMetal

Tema 12 www.fresymetal.com
Tema 12 www.fresymetal.comTema 12 www.fresymetal.com
Tema 12 www.fresymetal.comFresyMetal
 
Tema 10 www.fresymetal.com
Tema 10 www.fresymetal.comTema 10 www.fresymetal.com
Tema 10 www.fresymetal.comFresyMetal
 
Tema 9 www.fresymetal.com
Tema 9 www.fresymetal.comTema 9 www.fresymetal.com
Tema 9 www.fresymetal.comFresyMetal
 
Tema 7 www.fresymetal.com
Tema 7 www.fresymetal.comTema 7 www.fresymetal.com
Tema 7 www.fresymetal.comFresyMetal
 
Tema 8 www.fresymetal.com
Tema 8 www.fresymetal.comTema 8 www.fresymetal.com
Tema 8 www.fresymetal.comFresyMetal
 
Fpr Tema6 www.fresymetal.com
Fpr Tema6 www.fresymetal.comFpr Tema6 www.fresymetal.com
Fpr Tema6 www.fresymetal.comFresyMetal
 
Fpr Tema 5 www.fresymetal.com
Fpr Tema 5 www.fresymetal.comFpr Tema 5 www.fresymetal.com
Fpr Tema 5 www.fresymetal.comFresyMetal
 
Fpr Tema 4 www.fresymetal.com
Fpr Tema 4 www.fresymetal.comFpr Tema 4 www.fresymetal.com
Fpr Tema 4 www.fresymetal.comFresyMetal
 
Fpr Tema 3 www.fresymetal.com
Fpr Tema 3 www.fresymetal.comFpr Tema 3 www.fresymetal.com
Fpr Tema 3 www.fresymetal.comFresyMetal
 
Fpr Tema 2 www.fresymetal.com
Fpr Tema 2 www.fresymetal.comFpr Tema 2 www.fresymetal.com
Fpr Tema 2 www.fresymetal.comFresyMetal
 
Fpr Tema 1 www.fresymetal.com
Fpr Tema 1 www.fresymetal.comFpr Tema 1 www.fresymetal.com
Fpr Tema 1 www.fresymetal.comFresyMetal
 
Tema 3 Ficheros Y Permisos
Tema 3 Ficheros Y PermisosTema 3 Ficheros Y Permisos
Tema 3 Ficheros Y PermisosFresyMetal
 
Tema 6 Cont www.fresymetal.com
Tema 6 Cont www.fresymetal.comTema 6 Cont www.fresymetal.com
Tema 6 Cont www.fresymetal.comFresyMetal
 

Más de FresyMetal (14)

Tema 12 www.fresymetal.com
Tema 12 www.fresymetal.comTema 12 www.fresymetal.com
Tema 12 www.fresymetal.com
 
Tema 11
Tema 11Tema 11
Tema 11
 
Tema 10 www.fresymetal.com
Tema 10 www.fresymetal.comTema 10 www.fresymetal.com
Tema 10 www.fresymetal.com
 
Tema 9 www.fresymetal.com
Tema 9 www.fresymetal.comTema 9 www.fresymetal.com
Tema 9 www.fresymetal.com
 
Tema 7 www.fresymetal.com
Tema 7 www.fresymetal.comTema 7 www.fresymetal.com
Tema 7 www.fresymetal.com
 
Tema 8 www.fresymetal.com
Tema 8 www.fresymetal.comTema 8 www.fresymetal.com
Tema 8 www.fresymetal.com
 
Fpr Tema6 www.fresymetal.com
Fpr Tema6 www.fresymetal.comFpr Tema6 www.fresymetal.com
Fpr Tema6 www.fresymetal.com
 
Fpr Tema 5 www.fresymetal.com
Fpr Tema 5 www.fresymetal.comFpr Tema 5 www.fresymetal.com
Fpr Tema 5 www.fresymetal.com
 
Fpr Tema 4 www.fresymetal.com
Fpr Tema 4 www.fresymetal.comFpr Tema 4 www.fresymetal.com
Fpr Tema 4 www.fresymetal.com
 
Fpr Tema 3 www.fresymetal.com
Fpr Tema 3 www.fresymetal.comFpr Tema 3 www.fresymetal.com
Fpr Tema 3 www.fresymetal.com
 
Fpr Tema 2 www.fresymetal.com
Fpr Tema 2 www.fresymetal.comFpr Tema 2 www.fresymetal.com
Fpr Tema 2 www.fresymetal.com
 
Fpr Tema 1 www.fresymetal.com
Fpr Tema 1 www.fresymetal.comFpr Tema 1 www.fresymetal.com
Fpr Tema 1 www.fresymetal.com
 
Tema 3 Ficheros Y Permisos
Tema 3 Ficheros Y PermisosTema 3 Ficheros Y Permisos
Tema 3 Ficheros Y Permisos
 
Tema 6 Cont www.fresymetal.com
Tema 6 Cont www.fresymetal.comTema 6 Cont www.fresymetal.com
Tema 6 Cont www.fresymetal.com
 

Tema 3 Ficheros Y Permisos

  • 1. Tema 3.- Ficheros y Permisos El sistema UNIX funciona totalmente en base a archivos. Los programas, los datos, los directorios y aún los controladores de dispositivos tales como discos, moderas e impresoras, son archivos. El sistema de archivos de UNIX se organiza en una jerarquía de directorios que resulta en una estructura arborescente. Archivos. Cada archivo tiene asociado un nombre, un contenido, un lugar de ubicación e información de tipo administrativo, tal como dueño y tamaño. El contenido de un archivo puede ser texto, programas fuente, programas ejecutables, imágenes, sonidos y otros. Estructuralmente un archivo es una secuencia de bytes de datos que reside en forma semipermanente en algún medio estable, como ser una cinta magnética o un disco. Directorios. Los archivos se agrupan en directorios. Un directorio es un archivo que contiene una lista de nombres de archivo e información acerca de los mismos. Dentro del sistema de archivos, un directorio es una localización capaz de contener otros directorios o archivos. Dos archivos que se encuentren en distinto directorio pueden tener el mismo nombre sin confundirse. El comando Is permite listar el contenido de un directorio: ls /var el argumento es un directorio; la salida son los nombres de archivos y subdirectorios en ese directorio. ls nota el argumento es un archivo, la salida es el nombre del archivo. ls -1 /var muestra los archivos y subdirectorios contenidos en /var en formato largo. ls -Id /var muestra características del directorio /var en lugar de los archivos y subdirectorios contenidos en él. Nombres de archivos. Para el nombre de archivo se puede usar prácticamente cualquier carácter, incluso caracteres no visibles. Los caracteres $ ; ! * I causan confusión y no conviene usarlos. Se aconseja usar solamente letras, números, punto, guión y subraya. UNIX diferencia mayúsculas y minúsculas: el archivo NOTA. TXT es distinto del archivo nota. txt y también de Nota. txt. No se distingue entre nombre de archivo y extensión: nota. nueva. txt es un nombre de archivo válido, y LCK.. modem también. Un archivo que comienza por un punto no es visible: touch .noseve ls
  • 2. Is -a is no lo muestra, pero sí is -a. rm .noseve lo borra como a cualquier archivo. Directorio propio. Directorio actúa!. Al ingresar al sistema cada usuario entra en su directorio propio, un directorio privado que no es tocado por el sistema ni por los otros usuarios. El directorio en el cual se encuentra posicionado el usuario en un momento dado se denomina su directorio actual. cd /usr/bin pwd cambia al directorio /usr/bin; el directorio actual es /usr/bin. cd pwd devuelve al usuario a su directorio propio, que es ahora el directorio actual. echo $HOME nuestra el nombre del directorio propio. HOME es una variable de ambiente que contiene el nombre del directorio propio del usuario. cd $HOME tiene el mismo efecto que cd. Nombres de directorios. Un directorio puede contener otros directorios así como archivos ordinarios, lo que genera una jerarquía o árbol de directorios. El directorio superior o directorio raíz se denomina /. cd / pwd el directorio actual es el directorio raíz. cd vuelve al directorio propio del usuario. El carácter / se usa también para separar los componentes de un nombre de archivo completo: /export/home/usuariol/nota. La porción /export/home/usuario es la ruta, nota es el nombre del archivo. Si se omite la ruta, se asume que el archivo se encuentra en el directorio actual. Un nombre tal como textos/libro/capitulo. i indica que su ruta comienza a partir del directorio actual. Sería lo mismo escribir . /textos/libro/capitulo. i ya que el punto designa el directorio actual. Dos puntos seguidos designan el directorio de nivel superior al actual. Si el directorio actual es /home/usuarioi ls ../usuario2 muestra el contenido de los archivos en /home/usuario2 El carácter / separa directorios incluidos como parte de un nombre de archivo o directorio. ls dirl es un direccionamiento relativo; ls /home/esteban/dirl es un direccionamiento absoluto.
  • 3. Pueden usarse comodines para referenciar directorios y archivos: cat /home/esteban/*/* Cambios en la jerarquía de directorios. mkdir nuevo.dir crea un nuevo directorio. rmdi r nuevo.di r borra un directorio existente; actúa sólo sobre directorios vacíos. mkdir dirl mkdir dirl/dir2 touch dirl/dir2/arch2 dirl/archl Is -IR muestra todos los archivos y directorios creados; rm -r dirl borra el directorio y todos los archivos y subdirectorios que pueda contener. Estructura interna de los archivos. Un archivo es una secuencia de bytes. Un byte es equivalente a un carácter. El sistema no impone estructura alguna a los archivos ni asigna significado a su contenido; el significado de los bytes depende totalmente de los programas que interpretan el archivo. En ningún caso hay ningún byte que no haya sido colocado por el usuario o un programa. No hay carácter de fin de archivo. El núcleo del sistema UNIX se mantiene al tanto del tamaño de los archivos sin introducir ningún carácter especial. El carácter nuevalínea es interpretado por las terminales como nueva línea y retorno de carro (CR LF, earriage-return y line-feed), necesario para desplegar correctamente los renglones en la terminal. Al apretar la tecla Enter el núcleo transmite a la terminal CR LF, pero en un archivo se guarda sólo LF. ¿Qué hay dentro de un archivo? El núcleo no puede decirnos nada del tipo de archivo: no lo conoce. Todos los archivos tienen la misma estructura interna. El comando file hace una conjetura: lee algunos bytes y busca indicios sobre el tipo de contenido. En los sistemas UNIX hay sólo una clase de archivo. Lo único que se requiere para accederlo es su nombre. Niveles de Seguridad. Un sistema debe proporcionar niveles de fiabilidad suficientes para evitar pérdidas de información, corrupción de datos, mal funcionamiento etc .. La parte más difícil de controlar la constituyen los usuarios. Para prevenir, Unix provee herramientas para preservar los archivos y directorios de las posibilidades de acceso, lectura y modificación por parte de los usuarios. Pues bien, Unix proporciona tres niveles de seguridad para poder utilizar el sistema: 1.- Acceso; Cada usuario debe identificarse al entrar en el sistema y ser reconocido por este. 2.- Password: Cada usuario debe tener una clave de acceso secreta, fiable y periódicamente modificada.
  • 4. 3.- Permisos y accesos a ficheros y directorios que es de lo que vamos a tratar a continuación. Propiedad de los archivos. Cada usuario es dueño de los archivos creados por él, hasta que los borre o los ceda a otro usuario. Cada usuario pertenece a un grupo, y puede compartir archivos con los usuarios de ese grupo. Cada archivo está asignado a un grupo de usuarios, al cual debe pertenecer su dueño. El comando is -i muestra dueño y grupo de los archivos listados. Visualiza, además del nombre de cada fichero, sus permisos y otros atributos; $ pwd /users/practicas $ls-l { .drwxjr-xr-x 1 marta users 1024 Sep 29 18:41 oracle/ -rwxrwxrwx 1 marta users 13 Sep 24 2001 prueba.exe -rw-r—r~ 1 marta users 60 Sep 26 2001 pruebaC.c -rw-r—r— 1 marta users 349 Sep 29 18:34 ps.sal -rw-r—r— 2 root root O Sep 29 18:54 datos.txt -rw-r-r-- 1 root root 905 Sep 25 2001 shell Nos situaremos en la primera columna y analizaremos lo que llamaremos : máscara de tipo y modo de aeeeso que consta de diez caracteres. Vemos que para cada fichero aparecen varias columnas de información: 1. La columna de más a la derecha contiene el nombre del fichero o directorio. 2. Las tres columnas anteriores contienen la fecha y hora de última modificación del fichero. 3. La columna anterior indica el tamaño en bytes del fichero. 4. Las dos anteriores indican quien es el propietario del fichero (el usuario que lo creó) y el grupo al que pertenece dicho usuario. Por ejemplo, el fichero pruebaC.c pertenece al usuario "marta" del grupo "users", mientras que el fichero datos.txt pertenece al usuario "root" del grupo "root". 5. La 2a columna indica el número de links o enlaces que existen para el fichero. 6. En la primera columna: 1°.- El primero se refiere al tipo de archivo (ordinario, directorio ...) Tipos: a) - archivo ordinario. Son los normales que contienen: texto, código fuente en lenguaje C, órdenes shell, programas binarios ejecutables (archivos que ejecutan código máquina) etc. b) d fichero Directorio gestionados por el propio sistema, que contienen referencias a otros ficheros normales o directorios, organizando de esta forma el árbol de ficheros y directorios.
  • 5. c) Archivos Especiales: b Ficheros de dispositivos de bloque: hacen referencia a los periféricos de tipo bloque (discos, cintas y diskettes), ya que en un disco o cinta no se puede acceder sólo a un carácter ., sino que hay que leer y escribir bloques completos. c Ficheros de dispositivo carácter: hacen referencia a dispositivos tipo carácter (terminales, impresoras ...).ya que pueden aceptar y producir una cadena de caracteres. d) I Fichero de tipo enlace. e) p Ficheros tubería o Ficheros FIFO son ficheros especiales, creados, destruidos y gestionados por el propio sistema, (ficheros temporales). 2°.- Los otros 9 se refieren a los atributos de lectura, escritura, y ejecución del archivo o directorios referidos al usuario (los tres primeros), al grupo al que pertenece el usuario (los tres centrales) y al resto de usuarios (los tres últimos). Tipo y permisos de archivos. Cada archivo tiene un conjunto de permisos asociados con él que determinan qué puede hacerse con el archivo y quién puede hacerlo. Los permisos de un archivo se indican con 10 caracteres: 1 carácter para tipo de archivo, 3 caracteres [rwx] para permisos del dueño o usuario, 3 caracteres [rwx] para permisos del grupo, 3 caracteres [rwx] para permisos de otros. Carácter para tipo de archivo: d directorio i enlace simbólico - archivo normal b archivo controlador de dispositivo orientado a bloques c archivo control de dispositivo orientado a caracteres Atribuios o permisos: r acceso de lectura (read) w acceso de escritura (write) x acceso de ejecución (execute) ausencia de permisos (protección) s Establece el bit de identificador de usuario. t Establece el bit adosado. Este bit ( ADOSADO) indica al sistema que guarde una copia del programa en ejecución después de que termine. Si el programa se ejecuta con frecuencia, el bit adosado puede ahorrar tiempo al sistema porque el programa no tiene que volverse a cargar en memoria desde el disco cada vez que alguien lo ejecuta.
  • 6. cuyo significado varía según se trate de archivos o directorios: [Permiso ¡Archivos Directorios jleer archivos ver contenido de directorios |w ¡grabar en un archivo ¡crear y borrar archivos Ix ¡ejecutar como programa ¡Acceder o ingresar a un directorio I i- isin derechos ¡sin derechos ¡ El ingreso a un directorio (permiso x) permite ejecutar un archivo contenido dentro de él, o trasladarse a ese directorio; para estas operaciones no es necesario poder ver los nombres de los archivos contenidos (permiso r). Un archivo se declara ejecutable dándole permiso de ejecución. Se ejecuta dando su nombre. Los comandos de UNIX son archivos ejecutables. Ejemplos de permisos de archivo: rwxr--r— rw-rw-r— rw
  • 7. chmod ( change mode) Modo Simbólico; chmod [-RJ [quién] [ + | - | = ] [modo o permisos ... ] fichero (s) Modo Absoluto u Octah chmod l-R] o-odo fichen, (s) 5* Desertan: _ ti^V*0. Cambia el modo de acceso de uno o más ficheros (pueden ser convencionales o de directorio). Sólo el propietario del fichero o el superasuario pueden cambiar el modo. Opciones: -R permite cambiar permisos a todos los archivos y subdirectorios de un directorio. Ej : chmod -R u+r Cartas aplica r a todos los archivos y sub. De Cartas. S^MMT P^ V Modo Simbólico: M El nuevo modo (o máscara ) contiene tres partes: quién, operador y permiso, los caracteres que definen estas tres partes son los siguientes: quién tendrá permisos. El sistema discrimina tres tipos de usuarios para un fichero: u Usuario (propietario del fichero). g Grupo.(los grupos se definen según las actividades de los usuarios). o Otros, (son cualquier usuario que pertenecen a otros grupos). a Todos (usuario, grupo, propietario). Este comando utiliza un carácter para identificar quién. Operador (El código de operación es relativo a lo que desea hacer con los permisos. Hay dos posibilidades: añadir y/o quitar. + Añadir permiso. Eliminar permiso. = Asignar permiso y elimina todos (u,g,o) los que tuviera.. Permisos cuales son. r Lectura. w Escritura. x Ejecución. u Permisos en curso del usuario. g Permisos en curso del grupo. o Permisos en curso de otros.
  • 8. En este modo se indicará en primer lugar a quién (propietario, grupo, otros) se va cambiar los permisos, después se indica (mediante el operador) si se añade, retira o asigna un permiso, y por último qué permiso será añadido, retirado o asignado. Para cambiar el modo de un fichero es necesario ser el dueño del mismo. Modo Absoluto: También se puede especificar el modo mediante una secuencia de tres dígitos el primer dígito representa los permisos: para el usuario, el segundo para el grupo y el tercero para otros; el valor de cada uno se obtendrá de la siguiente tabla: permiso valor Lectura 4 Escritura 2 Ejecución Ninguno O Cada dígito se obtiene de la suma de los valores de los permisos que se quieren asignar NOTA.: con la notación octal, pongo permisos, pero quito los que tuviera (incluso u). Ej : rwx r - - r - - *$ chmod 033 — - wx - wx Ejemplos: Modo Simbólico; 1.- Permisos de todo tipo para todos los niveles. $ chmod a+rwx fichero $ chmod ugo+rwx fichero 2.- Permisos total para el propietario, lectura y ejecución para el grupo y ejecución para el resto: $ chmod u+rwx,g+rx,o+x fichero Nota: No dejar espacios, después de la coma. Modo Absoluto: $ chmod 644 fichero Tendrá los permisos de: lectura (r) y w para el usuario, y lectura (r) para el grupo y resto. Quita los permisos que tuviera. Ej 1°.- $ chmod 644 rw- r - - r - - 2°.- $ chmod 666 rw- rw- rw-
  • 9. umask umask [-Sj [valor] Descripción: Nota: en UNIXWARE 7.1 caí /eíc/profile | more (022) - Visualiza la máscara de usuario o valor por defecto de creación de un fichero, este será el mismo para ficheros convencionales y para ficheros de directorio. Cambia el valor por defecto por valor. - Fija la máscara para permisos de creación según modo. Si modo se indica con número, es en octal; si no, es en modo simbólico. En general, los permisos de creación serán, para directorios, 0777 menos los bits de máscara; para archivos 0666 menos los bits de máscara. La máscara vigente es la fijada por defecto o la que se fije con este comando. Sin parámetros, umask muestra la máscara vigente. La máscara indica los permisos que se quitan al permiso fijado. - En la mayoría de las instalaciones el valor por defecto es O.Esto significa que cuando se crea un fichero el sistema asigna unos permisos de acceso que, por defecto serán rw- rw- rw- (modo 666) para ficheros convencionales (todos los permisos excepto los de ejecución) y rwx rwx rwx (modo 777) para directorios. La asignación automática de permisos, o valores por omisión puede ser modificada mediante una máscara que elimine permisos. Se dará un valor como argumento del comando. - Normalmente se suele introducir en el fichero de inicio del sistema (/etc/profile) o la SHELL (fichero .profile) para mantener dichas protecciones siempre que nos conectemos. Cabe destacar que al estar hablando de la instrucción umask que genera una máscara , el método octal se usa en modo inverso que el de la sentencia chmod. Umask quita permisos de la máscara definida por defecto que es 777 ó 666. Los números se ponen en notación octal de tal modo que: ^ 4—quita el permiso de lectura ^ ^ j£ K M " °í "- r 2 — quita el permiso de escritura. ^ 1 — quita el permiso de ejecución. Puedo poner la máscara en modo octal o simbólico: En octal quita permisos, pero en simbólico los añade. Para restaurar la máscara inicial, basta ejecutar la orden umask 000. La orden umask sin argumentos muestra la máscara activa (con una cifra inicial más).
  • 10. Con umask no pueden tener los "ficheros" permiso de ejecución (x) . Por defecto si la hubiera te la quita. Ejemplos: 1°.- Si la máscara es $ umask 0002 Todos los directorios que creemos se crearán con los permisos: 775 es decir drwx rwx r - x Todos los ficheros que creemos se crearán con los permisos: 664 es decir - r w - rw- r - - 10
  • 11. Chown (change owner) chown [-R] nwevo-propietario [:grupo] fichero (s) y/o directorios Cualquier sistema operativo multiusuario tiene que proporcionar mecanismos para que cada usuario pueda poseer su propios datos. En el caso de los sistema Unix y Linux en particular a cada fichero o directorio se le puede asignar un usuario propietario y un grupo propietario. La lista de usuarios está en el fichero (/etc/passwd) y la lista de grupos está en el fichero /etc/group. Cada usuario tiene un grupo principal ya además puede pertenecer a cualquier otro grupo. Combinando el propietario, el grupo de un fichero y los grupos a los que pertenecen los diversos usuario se puede delimitar perfectamente el acceso a los datos almacenados. Además los sistemas Unix existen ciertos usuarios y grupos estándares que se utilizan para realizar diversas tareas administrativas. En general, el propietario y el grupo de los ficheros y directorios se heredan del usuario que los crea. En muchos casos nos interesa modificar el propietario o el grupo de un fichero; para realizar estas acciones Linux (Unix en general) disponen de las órdenes adecuadas. Descripción: Traspasa ía propiedad de uno o más ficheros a un nuevo propietario. El nuevo propietario podrá ser cualquier login (nombre) o número de identificación de usuario (uid) que esté dado de alta en el sistema. Sólo puede cambiarlo el propietario del fichero o el superusuario. Todos los atributos del fichero se mantienen. Para volver a ser propietario, lo tiene que devolver el nuevo propietario. El fichero permanece físicamente en el directorio del primer propietario, a no ser que lo mueva o copie al directorio del nuevo propietario.(deberá tener los correspondientes permisos, de poder escribir en el directorio destino(w) y en el fichero origen). Opciones: - R permite el cambio de propietario de forma recursiva desde un determinado directorio hacia abajo, de todos los ficheros y subdirectorios. Para cambiar el propietario de un fichero tenemos que usar la orden chown (change owner). 11
  • 12. La orden chown se utiliza de la siguiente forma: $ chown nuevojpropietario fíchero_o_dir La orden chown también se puede utlizar para cambiar también el grupo de un fichero o directorio; esto se hace con la siguientes sintaxis de la orden chown: $ chown nuevo_usuario.nuevo_grupo ííchero_o_dir o bien $ chown nuevo_usuario:nuevo_grupo fichero_o_dir poniendo el nuevo usuario y el nuevo grupo separados por un punto. De esta forma ahora el fichero o el directorio pertenecen al nuevo usuario y al nuevo grupo. Si omitimos el usuario pero ponemos el punto o los dos puntos sólo se cambia el grupo. chgrp -5> chgrp [ -R ] nuevo-grupo fichero (s) y/o directorio(s) Descripción: Traspasa la propiedad de uno o más ficheros a un nuevo grupo. El nuevo grupo podrá ser cualquier nombre o número de grupo (GID) que esté dado de alta en el sistema. Los ficheros mantienen el mismo propietario. Opciones: -R cambia de grupo de forma recursiva desde un determinado directorio hacia abajo, a lo largo de todos los ficheros y subdirectorios. Ejemplos: 1°.- Sea el fichero texto, cuyo propietario es pepe y pertenece al grupo profes. $ Is -1 texto -rw- rw - r - - 1 pepe profes (grupo) - Cambio el fichero texto al grupo alumnos $ chgrp alumnos texto $ Is -1 texto y aparece este fichero (texto) en el grupo alumnos, pero con el mismo propietario pepe. 2°.- $ Is —1 articulos.e -rwxr-xr-xl carmen almacén 49068 Feb 11 09: 33 artieulos.e 12
  • 13. $ chgrp gestión artículos, c -rwx r-x r-x 1 carmen gestión 49068 Feb 1 1 O9:33 articulos.c Se tiene un fichero llamado articulos.c que está asociado al grupo almacén, la ejecución del comando hace que este fichero pase a estar asociado al grupo gestión. 3°.- $ chgrp gjal (grupo) PRUEBA2 (directorio) PRUEBA2 pasa del grupo (group- el que tiene por defecto) al grupo (gjal). newgrp [ -I ] [grupo] newgrp [ - ] [ grupo] - y -1 son equivalentes. Descripción: Orden que permite cambiar a un nuevo grupo. El nuevo grupo podrá ser cualquier nombre o número de GID que esté dado de alta en el sistema. El usuario debe pertenecer al grupo al que cambio. A partir de ese momento, todos los ficheros que cree pertenecerán al nuevo grupo. Sin el argumento grupo, (sólo newgrp) devuelve o cambia al grupo activo inicial al que se nos asocia en el proceso login (cuando hago login), contenido en el fichero /etc/passwd . david:x:205:50 este 50 es el identificador de grupo. En el fichero /etc/group está la lista de los grupos v usuarios que pertenecen a ellos. Notas: En /etc/group está la lista de los nombres de grupos y usuarios que pertenecen a los grupos. En /etc/passwd contiene el login del grupo para cada usuario. Crear grupos; Desde Servidor: administrador de cuentas -gf»pos —aftadir grupos Para ver que usuarios componen los grupos: selecciono grupo y doble clic. 13
  • 14. su su [ - ] [usuario [argumentos ...]] Descripción: Permite cambiar nuestro identificador de usuario (uid) en superusuario o en cualquier otro usuario del sistema (siempre que se conozca la clave o password si la tiene), sin hacer logoff. Es útil cuando un usuario tiene diferentes cuentas. - Si indico $ su - quiere decir que accedo a la shell del superusuario. Si no se indica usuario, se entiende que se está intentando acceder como superusuario (root). Ej: Estoy en $/home/david. Si quiero pasar a superusuario: $su <intro> tecleo la password y estoy en root, pero en el directorio de /home/david. La orden su abre una nueva subsesión en UNIX y para regresar al identificador inicial se usará la orden exit. - La orden su obliga a cambiar de nombre de usuario pero NO de directorio y puede que con ello perdamos el acceso a los archivos que antes controlábamos. Si se desea cambiar las características de la sesión para disponer de la configuración asociada al nuevo usuario, como si se hubiera accedido a él con un proceso logín, hay que utilizar la sintaxis su - usuario (con guión delante del nuevo identificador). Ej: Estoy en root # . Si quiero ir a /home/pepe debo poner: - su - pepe y estaré en /home/pepe Opciones: Accede al nuevo usuario con todos sus privilegios (adquiere sus variables etc.). argumentos Ejemplos: $ su - enrique password: La ejecución de este comando hace que se acceda al usuario enrique, con todos sus privilegios (se presupone que conocemos su password). Para salir de este usuario y volver al propio se teclea CTRL - D o exit.. 14
  • 15. id id [ -1 ] [ -s] [usuario] id -G [-n] [ usuario] id -g [ -n ] [ -r] [ usuario] id -u [ rn ][-r | -1 ] [ usuario] id -u [-n] [-r¡ [usuario] Descripción : Muestra la Identificación del usuario al sistema, informando sobre el: el n° de uid, el nombre de usuario, el n° de identificación de grupo, nombre del grupo por defecto y a los grupos que pertenece el usuario. IMPORTANTE: El permiso suid se utiliza en varios programas de usuario, que necesitan escribir o leer archivos propiedad de root. Por ejemplo: cuando se ejecuta la orden passwd para cambiar una contraseña, se tienen los mismos permisos que root. Esto permite leer y escribir en los archivos /etc/passwd y /etc/shadow cuando modifica la contraseña, aunque ordinariamente NO se tienen privilegios de acceso a ellos. Opciones: -I -s -G Visualiza el n° de los grupos suplementarios. -n Visualiza el nombre del grupo o del usuario, en vez del n° de identificador. Requiere -u, -g o G. -g Visualiza sólo el identificador de grupo. -r Visualiza el identificador real, en vez del efectivo, de usuario o de grupo. -u Sólo visualiza el identificador de usuario. Ejemplos: 0°.- $ id uid=203(alejan ) gid=50(group) groups = SO(group) uid=203(alejan ) gid=50(group) luid - 203( alejan) groups =50 (group) 2°.-$id-G 50 50 50 3°.-$id-g-r $id-g $id-g-r $id-g-n 50 50 group 4°.- $ id -u -1 -n $id-u 15
  • 16. 203 id del usuario alejan 5°.-$ id alejan uid=203(alejan) gid=50(group) groups=50(gropup) 6°.- $id-s es igual al 5°. 16
  • 17. Convenciones en nombres de archivos y directorios. /bin archivos ejecutables, comandos de usuario /boot archivos de arranque /cdrom punto de montaje para la uniad de CD-ROM /dev archivos especiales de dispositivos [subdirectorios propios de System V] ./dsk dispositivos de disco ./fd dispositivos descriptores de archivo ./kd dispositivos de teclado y despliegue ./kmem memoria ./nuil dispositivo para descarte de salidas ./osm mensajes de error del núcleo ./pts pseudo ttys; igual que /dev/pts* ./rdsk dispositivos crudos de disco ./term terminales; igual que /dev/tty* ./xt pseudo ttys; para capas DMD /dosc punto de montaje para la partición DOS /etc configuración de paquetes, configuración de sistema ./init.d scripts de arranque y detención de programas ./rc?.d enlaces a scripts, con K o S (Kill o Start), y número de secuencia para controlar el arranque ./skel archivos de inicialización para nuevos usuarios /export directorios de usuarios en sistemas grandes /floppy para montar una unidad de disquete /home objetos relacionados con los usuarios /lib bibliotecas de desarrollo y material de apoyo /lost+found archivos perdidos /mnt punto de montaje de dispositivos externos /proc archivos de control de procesos /root directorio propio para el supervisor (root) /sbin archivos ejecutables de administración /tmp archivos temporales /usr ejecutables, documentación, referencia ./X11R6 sistema X-Windows ./bin más ejecutables ./doc documentos de paquetes de software ./include encabezados .h de bibliotecas en C ./info archivos de info, información de UNIX (GNU) ./lib más bibliotecas en C ./local ejecutables instalados por el administrador ./man subdirectorios de páginas del manual ./sbin más archivos ejecutables de administración ./share compartidos ./src (source) código fuente del kernel /var archivos de log, auxiliares, archivos que crecen ./backup respaldo de algunos archivos del sistema ./catman páginas man ya formateadas ./lib información propia de programas . /lock control de bloqueos ./log archivos de registro de mensajes (log) del sistema ./spool colas de impresión, intermedios de correo y otros ./run información de procesos (PIDs) 17