Usuario Propietario y Grupo Propietario de Un Archivo

download Usuario Propietario y Grupo Propietario de Un Archivo

of 12

Transcript of Usuario Propietario y Grupo Propietario de Un Archivo

  • 7/25/2019 Usuario Propietario y Grupo Propietario de Un Archivo

    1/12

    Usuario propietario y grupo propietario de un archivo

    Anteriormente se ha comentado que en Unix todos los archivos pertenecen

    obligatoriamente a un usuario y a un grupo. Cuando un usuario crea un nuevo archivo, el

    propietario del archivo ser el usuario que lo ha creado y el grupo del archivo ser elgrupo principal de dicho usuario.

    Ejemplo, si un usuario llamado 'pepe' cuyo grupo principal es el grupo 'proesores' crea un

    nuevo archivo, el propietario del archivo ser 'pepe' y el grupo propietario del archivo ser

    'proesores', o lo que es lo mismo, el archivo pertenecer al usuario pepe y al grupo

    proesores. !bligatoriamente, todos los archivos del sistema pertenecen a alg"n usuario y

    a alg"n grupo.

    Con el comando lsa#adiendo la opci$n %l &ormato largo podemos visuali(ar el usuario

    propietario y el grupo propietario del archivo, ejemplo)

    Mostrar el propietario con el comando ls -l

    Comprobamos que el usuario propietario es pepe y el grupo propietario es profesores.

    *a misma inormaci$n podemos verla desde el administrador de archivos si vamos a la

    carpeta +home+pepe y mostramos las columnas correspondientes)

  • 7/25/2019 Usuario Propietario y Grupo Propietario de Un Archivo

    2/12

    Navegador de archivos

    ipos de permisosEn los -istemas Unix, la gesti$n de los permisos que los usuarios y los grupos de

    usuarios tienen sobre los archivos y las carpetas, se reali(a mediante un sencillo

    esquema de tres tipos de permisos que son)

    ermiso de lectura

    ermiso de escritura

    ermiso de ejecuci$n

    El signiicado de estos permisos diiere si se tienen sobre archivos o sobre carpetas. A

    continuaci$n veremos el signiicado para cada uno de los casos)

    ermiso de lectura

    Cuando un usuario tiene permiso de lectura de un archivo signiica que puede leerlo o

    visuali(arlo, bien sea con una aplicaci$n o mediante comandos. Ejemplo, si tenemos

  • 7/25/2019 Usuario Propietario y Grupo Propietario de Un Archivo

    3/12

    permiso de lectura sobre el archivo examen.txt, signiica que podemos ver el contenido

    del archivo. -i el usuario no tiene permiso de lectura, no podr ver el contenido del

    archivo.

    Cuando un usuario tiene permiso de lectura de una carpeta, signiica que puede visuali(ar

    el contenido de la carpeta, es decir, puede ver los archivos y carpetas que contiene, biensea con el comando 'ls' o con un explorador de archivos como /onqueror. -i el usuario no

    tiene permiso de lectura sobre la carpeta, no podr ver lo que contiene.

    El permiso de lectura se simboli(a con la letra 'r' del ingl0s 'read'.

    Permiso de lectura

    ermiso de escrituraCuando un usuario tiene permiso de escritura sobre un archivo signiica que puede

    modiicar su contenido, e incluso borrarlo. ambi0n le da derecho a cambiar los permisos

    del archivo mediante el comando chmod as1 como cambiar su propietario y el grupo

    propietario mediante el comando cho2n. -i el usuario no tiene permiso de escritura, no

    podr modiicar el contenido del archivo.

    Cuando un usuario tiene permiso de escritura sobre una carpeta, signiica que puede

    modiicar el contenido de la carpeta, es decir, puede crear y eliminar archivos y otras

    carpetas dentro de ella. -i el usuario no tiene permiso de escritura sobre la carpeta, no

    podr crear ni eliminar archivos ni carpetas dentro de ella.

    El permiso de escritura se simboli(a con la letra '2' del ingl0s '2rite'.

  • 7/25/2019 Usuario Propietario y Grupo Propietario de Un Archivo

    4/12

    Permiso de escritura

    ermiso de ejecuci$n

    Cuando un usuario tiene permiso de ejecuci$n de un archivo signiica que puede

    ejecutarlo. -i el usuario no dispone de permiso de ejecuci$n, no podr ejecutarlo aunque

    sea una aplicaci$n.

    *os "nicos archivos ejecutables son las aplicaciones y los archivos de comandos &scripts.

    -i tratamos de ejecutar un archivo no ejecutable, dar errores.

    Cuando un usuario tiene permiso de ejecuci$n sobre una carpeta, signiica que puede

    entrar en ella, bien sea con el comando 'cd' o con un explorador de archivos como

    /onqueror. -i no dispone del permiso de ejecuci$n signiica que no puede ir a dicha

    carpeta.

    El permiso de ejecuci$n se simboli(a con la letra 'x' del ingl0s 'e3ecute'.

  • 7/25/2019 Usuario Propietario y Grupo Propietario de Un Archivo

    5/12

    Permiso de ejecucin

    4A qui0n se puede otorgar permisos5

    *os permisos solamente pueden ser otorgados a tres tipos o grupos de usuarios)

    Al usuario propietario del archivo

    Al grupo propietario del archivo

    Al resto de usuarios del sistema &todos menos el propietario

    -e pueden dar permisos de lectura, escritura, ejecuci$n $ combinaci$n de ambos al

    usuario propietario del archivo, al grupo propietario del archivo o al resto de usuarios del

    sistema. En Unix no existe la posibilidad de asignar permisos a usuarios concretos ni agrupos concretos, tan solo se puede asignar permisos al usuario propietario, al grupo

    propietario o al resto de usuarios.

    Ejemplo, si disponemos de un archivo llamado 'examen.txt' cuyo propietario es 'pepe' y

    cuyo grupo propietario es 'proesores', se pueden dar permisos de lectura, escritura,

    ejecuci$n $ combinaci$n de ambos al usuario 'pepe', al grupo 'proesores' y al resto de

    usuarios, pero no podremos dar permisos a otros usuarios distintos de pepe &juan, luis,

    pedro,... ni a otros grupos &alumnos, directivos, personal,... ya que el esquema Unix no

    lo permite.

    -upongamos que la siguiente igura representa los permisos de examen.txt)

    Permisos de archivo

  • 7/25/2019 Usuario Propietario y Grupo Propietario de Un Archivo

    6/12

    El usuario propietario &pepe podr leer y escribir en el documento. *os pertenecientes al

    grupo proesores podrn leerlo y el resto no podr hacer nada.

    -i deseo que otros usuarios tengan alg"n permiso sobre el archivo 'examen.txt', no me

    quedar ms remedio que incluirlos en el grupo proesores u otorgar el permiso al resto

    de usuarios pero si hago esto "ltimo, absolutamente todos los usuarios del sistemago(arn del permiso, por eso no se recomienda salvo que eso sea nuestra intenci$n.

    ara poder cambiar permisos sobre un archivo, es necesario poseer el permiso de

    escritura sobre el mismo. El usuario root puede modiicar los permisos de cualquier

    archivo ya que tiene acceso total sin restricciones a la administraci$n del sistema.

    6isuali(ar los permisos de un archivo o carpeta

    Con el comando ls -lpodemos visuali(ar los permisos de los archivos o carpetas. Al

    ejecutar el comando aparecen todos los archivos, uno por l1nea. El bloque de 78

    caracteres del principio simboli(a el tipo de archivo y los permisos.

    Permisos de archivo

    El primer carcter indica de qu0 tipo de archivo se trata. -i es un gui$n '%' signiica que se

    trata de un archivo normal, la letra 'd' signiica que se trata de una carpeta &directory, la

    letra 'l' signiica que se trata de un enlace &lin9. !tros valores son s, p, b que se reieren a

    soc9ets, tuber1as &pipe y dispositivos de bloque respectivamente.

    *os : caracteres siguientes simboli(an los permisos del usuario propietario &; caracteres,

    los permisos del grupo propietario &; caracteres y los permisos del resto de usuarios &;caracteres. 6ienen codiicados con las letras r, 2 y x que se reieren a los permisos de

    lectura, escritura y ejecuci$n. -i en lugar de aparecer dichas letras aparecen guiones

    signiica que se carece de dicho permiso. Ejemplo, si los die( primeros caracteres son

    %r2%r%%%%% signiica que es un archivo normal, que el usuario propietario dispone de

    permisos de lectura y escritura pero no de ejecuci$n, que el grupo propietario dispone tan

    solo de permiso de lectura y el resto de usuarios no dispone de ning"n permiso. 6emoslo

    en la siguiente imagen)

  • 7/25/2019 Usuario Propietario y Grupo Propietario de Un Archivo

    7/12

    Permisos de lectura y escritura para el propietario y lectura para el grupo

    En el siguiente ejemplo vemos que pepe tiene permiso de lectura y escritura y que el resto

    solo tiene permiso de lectura tanto sobre el archivo 'apuntes.doc' como sobre el archivo

    'examen.txt'.

    ++ 6isuali(aci$n de permisos

    ls %l

    total 877%8:%>< 7 apuntes.doc

    %r2%r%%r%% 7 pepe proesores 77 >877%8:%>? 7:)>@ examen.txt

    Cambio de permisos

    ara cambiar los permisos de un archivo o una carpeta es necesario disponer del permiso

    de escritura &2 sobre dicho archivo o carpeta. ara hacerlo, se utili(a el comando chmod.

    *a sintaxis del comando chmod es la siguiente)

    chmod opcionesB permiso nombrearchivoocarpeta

    *os permisos se pueden representar de dos ormas. *a primera es mediante las iniciales

    de a qui0n va dirigido el permiso &usuarioDu, grupoDg, restoDo &other, seguido de un

    signo si se quiere a#adir permiso o un signo % si se quiere quitar y seguido del tipo depermiso &lecturaDr, escrituraD2 y ejecuci$nDx. Ejemplos)

    ++ Far permiso de escritura al usuario propietario sobre el archivo 'examen.txt'

    G chmod u2 examen.txt

    ++ Huitar permiso de escritura al resto de usuarios sobre el archivo 'examen.txt'

    G chmod o%2 examen.txt

  • 7/25/2019 Usuario Propietario y Grupo Propietario de Un Archivo

    8/12

    ++ Far permiso de ejecuci$n al grupo propietario sobre el archivo '+usr+bin+games+tetris'

    G chmod gx +usr+bin+games+tetris

    ++ Far permiso de lectura al grupo propietario sobre el archivo 'examen.txt'

    G chmod gr examen.txt

    ++ -e pueden poner varios permisos juntos separados por comas

    G chmod u2,g%r,o%r examen.txt

    ++ -e pueden poner varios usuarios juntos

    G chmod ug2 examen.txt

    *a segunda orma de representar los permisos es mediante un c$digo num0rico cuya

    transormaci$n al binario representar1a la activaci$n o desactivaci$n de los permisos. El

    c$digo num0rico est compuesto por tres ciras entre 8 y ?. *a primera de ellas

    representar1a los permisos del usuario propietario, la segunda los del grupo propietario yla tercera los del resto de usuarios.

    En binario, las combinaciones representan el tipo de permisos. El bit ms a la derecha

    &menos signiicativo se reiere al permiso de ejecuci$n &7Dactivar y 8Ddesactivar. El bit

    central se reiere al permiso de escritura y el bit ms a la i(quierda se reiere al permiso de

    lectura. *a siguiente tabla muestra las < combinaciones posibles)

    C$d Iinario ermisos eectivos

    8 8 8 8 % % %

    7 8 8 7 % % x

    > 8 7 8 % 2 %; 8 7 7 % 2 x

    J 7 8 8 r % %

    = 7 8 7 r % x

    @ 7 7 8 r 2 %

    ? 7 7 7 r 2 x

    -i deseamos otorgar s$lo permiso de lectura, el c$digo a utili(ar es el J. -i deseamos

    otorgar s$lo permiso de lectura y ejecuci$n, el c$digo es el =. -i deseamos otorgar s$lo

    permiso de lectura y escritura, el c$digo es el @. -i deseamos otorgar todos los permisos,

    el c$digo es el ?. -i deseamos quitar todos los permisos, el c$digo es el 8. Ejemplos)

    ++ Far todos los permisos al usuario y ninguno ni al grupo ni al resto

    chmod ?88 examen.txt

    ++ Far al usuario y al grupo permisos de lectura y ejecuci$n y ninguno al resto

    chmod ==8 examen.txt

    ++ Far todos los permisos al usuario y lectura y ejecuci$n al grupo y al resto

  • 7/25/2019 Usuario Propietario y Grupo Propietario de Un Archivo

    9/12

    chmod ?== +usr+bin+games+tetris

    ++ Far todos los permisos al usuario y de lectura al resto, sobre todos los archivos

    chmod ?JJ K

    ++ Cambiar permisos a todos los archivos incluyendo subcarpetaschmod %L ?JJ K

    Existe la posibilidad de cambiar los permisos utili(ando el explorador de archivos. ara

    ello tan solo hay que seleccionar los archivos o carpetas y haciendo clic sobre la selecci$n

    con el bot$n derecho del rat$n M ropiedades, nos aparecer la ventana de propiedades.

    Naciendo clic en la pesta#a ermisos podremos establecer los permisos de una orma

    sencilla y haciendo clic en 'ermisos avan(ados' de una orma avan(ada.

    Estableciendo permisos desde el administrador de archivos

    Iits -UOF y -POF

  • 7/25/2019 Usuario Propietario y Grupo Propietario de Un Archivo

    10/12

    El bit SUIes una extensi$n del permiso de ejecuci$n. -e utili(a en escasas ocasiones y

    sirve para que cuando un usuario ejecute una aplicaci$n, 0sta se ejecute con permisos del

    usuario propietario en lugar de hacerlo con los del usuario que ejecuta la aplicaci$n, es

    decir, es equivalente a que sea ejecutada por el propietario.

    ara activar el bit SUI, se puede ejecutar el comando chmod u!s nombre"archivoosumar J888 al n"mero en octal si utili(amos dicho sistema. ambi0n se puede hacer lo

    mismo para el grupo, es el denominado bit S#Isumando >888 al n"mero en octal.

    Activar los bits -UOF $ -POF puede ocasionar problemas de seguridad sobre todo si el

    propietario es root.

    -i aplicamos el bit S#I a una carpeta, todas las subcarpetas y archivos creados dentro

    de dicha carpeta tendrn como grupo propietario el grupo propietario de la carpeta en

    lugar del grupo primario del usuario que ha creado el archivo. Es una ventaja cuando

    varias personas pertenecientes a un mismo grupo, trabajan juntas con archivos

    almacenados en una misma carpeta. -i otorgamos permisos de lectura y escritura al

    grupo, los archivos podrn ser modiicados por todos los miembros del grupo y cuandocualquiera de ellos cree un archivo, 0ste pertenecer al grupo.

    Qscaras

    Cuando se crea un archivo, los permisos originales por deecto son @@@ y cuando se crea

    una carpeta, los permisos por deecto son ???. Fichos permisos por deecto pueden

    modiicarse con el comando umas$.

    Con umas$podemos deinir la mscara de permisos, cuyo valor original es 888. El

    permiso por deecto ser el resultado de restar del permiso original, el valor de la

    mscara. -i deseamos que los archivos se creen con permisos @JJ &lo ms habitual,pondremos mscara 8>> ya que @@@%8>>D@JJ. En el caso de las carpetas, el permiso

    eectivo ser ?== ya que ???%8>>D?==. -i anali(amos el valor de la mscara en binario,

    cada bit a '7' desactiva un permiso y cada bit a '8' lo activa, es decir, si tiene un valor 8>>

    &888 878 878 cuando creemos una carpeta, tendr permisos r2xr%xr%x y cuando creemos

    un archivo tendr permisos r2%r%%r%% ya que el permiso de ejecuci$n para archivos hay que

    ijarle con chmod al tener los archivos el permiso original @@@.

    Cada usuario tiene su mscara. -e puede ijar la mscara por deecto para todos los

    usuarios en el archivo +etc+proile o para cada usuario en el archivo +home+usuario+.bashrc

    ++ Ejemplo de uso de umas9

    pepeRubuntu)+tmpS umas9

    888>

    pepeRubuntu)+tmpS m9dir nueva%carpeta

    pepeRubuntu)+tmpS ls %l

    dr2xr2xr%x > pepe proes 78>J Teb 7> 7:)J@ nueva%carpeta

    pepeRubuntu)+tmpS umas9 8>>

    pepeRubuntu)+tmpS m9dir otra%carpeta

  • 7/25/2019 Usuario Propietario y Grupo Propietario de Un Archivo

    11/12

    pepeRubuntu)+tmpS ls %l

    dr2xr2xr%x > pepe proes 78>J Teb 7> 7:)J@ nueva%carpeta

    dr2xr%xr%x > pepe proes 78>J Teb 7> 7:)J@ otra%carpeta

    pepeRubuntu)+tmpS

    *a modiicaci$n con umas9 de la mascara por deecto no aecta a los archivos y carpetasexistentes sino solo a los nuevos %ue cree ese usuario a partir de ese momento&

    Prupos privados de usuario

    ara hacer ms lexible el esquema de permisos Unix, se recomienda utili(ar grupos

    privados de usuario. Consiste en crear un nuevo grupocon el mismo nombre del usuario,

    cada ve( que se crea un nuevo usuarioy hacer que el grupo principal del nuevo usuario

    sea el nuevo grupo.

    Ejemplo, si creamos un usuario pepe, crearemos tambi0n un grupo llamado pepe y

    haremos que el grupo primario del usuario pepe sea el grupo pepe.

    En el siguiente ejemplo observamos que el UOF del usuario pepe es 788> y que su grupo

    principal es el 788; que corresponde al POF del grupo pepe. ambi0n vemos que si

    creamos un nuevo archivo, pertenecer alusuario pepe y al grupo pepe.

    ++ Ejemplo) Usuario pepe y grupo pepe

    pepeRubuntu)+tmpS more +etc+pass2d grep pepe

    pepe)x)788>)788;))+home+pepe)

    pepeRubuntu)+tmpS more +etc+group grep pepe

    pepe)x)788;)

    pepeRubuntu)+tmpS ls M archivo.txtpepeRubuntu)+tmpS ls %l

    %r2%r2%r%% 7 pepe pepe 7> Teb 7> >8)7? archivo.txt

    pepeRubuntu)+tmpS

    Aunque pare(ca inservible, la creaci$n de un grupo personal para cada usuario, permitir

    crear otros grupos mediante los cuales, dierentes personas puedan trabajar de orma

    colaborativa sobre los archivos dentro de una carpeta concreta. 6emoslo mejor con un

    ejemplo)

    -upongamos que creamos una carpeta llamada 'examenes' que pertene(ca al grupoproesores. -i establecemos el bit -POF en dicha carpeta con el comando 'chmod gs

    examenes', todos los archivos que se creen dentro de dicha carpeta tendrn como grupo

    propietario el grupo proesores. -i todos los usuarios utili(an mscara 88>, los permisos

    de los archivos sern @@J con lo cual, cualquier integrante del grupo proesores podra

    visuali(ar y modiicar los archivos.

    El problema de usar la mscara 88> es que cualquiera que pertene(ca al grupo principal

  • 7/25/2019 Usuario Propietario y Grupo Propietario de Un Archivo

    12/12

    de un usuario, tendr1a acceso de escritura sobre sus archivos, pero esto no suceder

    nunca ya que cada usuario tiene su propio grupo principal y nadie ms pertenece a 0l.

    Cambiar usuario propietario y grupo propietario

    ara poder cambiar el usuario propietario y el grupo propietario de un archivo o carpeta seutili(a el comando cho2n &change o2ner. ara ello hay que disponer de permisos de

    escriturasobre el archivo o carpeta. *a sintaxis del comando es)

    G cho2n nuevousuario.nuevogrupoB nombrearchivo

    En el siguiente ejemplo vemos una secuencia de comandos en la que inicialmente

    comprobamos que el archivo 'examen.txt' pertenece al usuario pepe y al grupo

    proesores. osteriormente hacemos que pertene(ca al usuario luis y luego hacemos que

    pertene(ca al usuario pedro y al grupo alumnos)

    ++ Cambiar propietario y grupo propietario

    rootRubuntu)+tmpG ls %l

    total J%r2%r2%r%% 7 pepe proesores 77 >88=%8:%>< >8)7= examen.txt

    rootRubuntu)+tmpG cho2n luis examen.txt

    rootRubuntu)+tmpG ls %l

    total J

    %r2%r2%r%% 7 luis proesores 77 >88=%8:%>< >8)7= examen.txt

    rootRubuntu)+tmpG cho2n pedro.alumnos examen.txt

    rootRubuntu)+tmpG ls %l

    total J

    %r2%r2%r%% 7 pedro alumnos 77 >88=%8:%>< >8)7= examen.txt

    rootRubuntu)+tmpG