Академический Документы
Профессиональный Документы
Культура Документы
CATOLICA
FACULTAD DE INGENIERA
Huaraz_2017
ADMINISTRACIN DE SERVIDORES
COMANDO chmod
Donde:
-f: no visualiza los posibles mensajes de error que puedan ocurrir debido a
conflictos en la asignacin de permisos.
-v: lista los ficheros y directorios a los que se les va aplicando el comando a medida
que el mismo se ejecuta
-h:
-R: aplica el comando chmod recursivamente a todos los ficheros y de los
subdirectorios.
-H:
-L:
-P:
-C: igual a -v con excepcin que solo lista los ficheros modificados.
-E:
Esto significa que f, h y v pueden ser usados todos a la vez, e independientemente de los
valores de los dems modificadores; H, L y P son ignorados salvo que se especifique
explcitamente la opcin R
permisos corresponde a uno de los modos que se describen a continuacin, y enumera los
tipos de permisos que se brindan a las clases de usuarios.
Permisos bsicos
Existen tres permisos independientes, llamados permisos bsicos, que pueden ser
permitidos (estado 1) o denegados (estado 0) a un fichero y/o directorio
r - lectura
w - escritura
x ejecucin
2
ADMINISTRACIN DE SERVIDORES
Lectura Ver el contenido Ver el nombre de los ficheros dentro del directorio (pero sin
del fichero. poder saber nada ms sobre ellos como: el tipo de archivo,
tamao, propietario, permisos, etc. )
Escritura Modificar o Agregar, eliminar y renombrar ficheros del directorio
eliminar el
fichero.
Ejecucin Ejecutar el Recorrer su rbol para acceder ficheros y subdirectorios, pero no
fichero. ver los ficheros dentro del directorio (excepto que se le de el
permiso de lectura)
Clases de usuarios
Los permisos de sistemas UNIX se dividen en cuatro clases, conocidas como usuario,
grupo, otros y todos (con frecuencia abreviado UGOA por sus siglas en ingls).
Por lo tanto, las clases de usuarios a los cuales se les puede asignar los permisos bsicos
anteriormente mencionados son:
Modo octal
3
ADMINISTRACIN DE SERVIDORES
La base 8 se utiliza habitualmente para que exista un dgito por cada combinacin de
permisos (un bit a modo de bandera por cada permiso, con valor 1 0 segn el permiso est
concedido o denegado).
As, las posibles combinaciones se resumen en nmeros octales de tres dgitos del 000 al
777, cada uno de los cuales permite establecer un tipo de permiso distinto a cada clase de
usuario:
Por ejemplo:
Por ejemplo:
4
ADMINISTRACIN DE SERVIDORES
# los usuarios
chmod u=rw,go= arch.txt # establece los permisos de lectura y
escritura
# al dueo y elimina todos los permisos a
# los dems usuarios
Permisos adicionales
Los sistemas UNIX emplean tpicamente tres permisos o modos adicionales. Estos
permisos especiales se asignan a ficheros o directorios en conjunto, no a cada clase de
forma separada (como suceda con los permisos bsicos).
Permiso set user ID, setuid o SUID: cuando un fichero que tiene este permiso
asignado se ejecuta, el proceso resultante asumir el identificador de usuario
efectivo dado a la clase de usuario. El ejemplo tpico es el cambio de una clave de
usuario: ningn usuario debera poder modificar /etc/passwd/ directamente. La
nica forma de poder modificarlo debera ser a travs del comando correspondiente,
que necesariamente tendr que tener asignado el setuid. Es decir, el comando
/usr/bin/passwd ejecutado por un usuario se ejecutar como si lo hubiese invocado
el superusuario, para que pueda modificar /etc/passwd.
Permiso set group ID, setgid o SGID: cuando un fichero que tiene este permiso
asignado se ejecuta, el proceso resultante asumir el identificador de grupo efectivo
dado a la clase de grupo. Cuando el setgid le es asignado a un directorio, ficheros
nuevos y directorios creados debajo de ese directorio heredarn el grupo de ese
directorio, a diferencia del comportamiento por defecto, que es usar el grupo
primario del usuario efectivo al asignar el grupo de ficheros nuevos y directorios.
Permiso de sticky bit (o menos comn, bit pegadizo): El comportamiento tpico del
sticky bit en ficheros ejecutables fuerza al ncleo a retener la imagen del proceso
resultante luego de su terminacin. Originalmente, esta era una caracterstica para
ahorrar memoria, pero hoy en da, los precios de las memorias han disminuido y
exiten mejores tcnicas para manejarlo, as que no se lo suele utilizar ms para
optimizaciones en ficheros. En un directorio, por el contrario, el sticky bit (llamado
tambin "Restricted Deletion Flag" o "Bandera de restriccin de borrado") previene
que los usuarios renombren, muevan o borren los ficheros que all se encuentran,
pertenecientes a usuarios otros que ellos mismos, incluso si tienen permiso de
escritura en el directorio. Solo el propietario del directorio y el superusuario quedan
exentos de esto.
Estos tres permisos (especificables de forma independiente), un bit por cada uno de ellos,
permiten 8 combinaciones posibles que se expresan con un dgito en base 8 (del 0 al 7, uno
por cada combinacin posible) que se antepone al modo de permisos. As, el modo se
ampliara ahora del 0000 al 7777.
Por ejemplo:
5
ADMINISTRACIN DE SERVIDORES
Cambio de permisos
Para cambiar los permisos de un archivo o una carpeta es necesario disponer del permiso de
escritura (w) sobre dicho archivo o carpeta. Para hacerlo, se utiliza el comando chmod. La
sintaxis del comando chmod es la siguiente:
Los permisos se pueden representar de dos formas. La primera es mediante las iniciales de
a quin va dirigido el permiso (usuario=u, grupo=g, resto=o (other)), seguido de un signo +
si se quiere aadir permiso o un signo - si se quiere quitar y seguido del tipo de permiso
(lectura=r, escritura=w y ejecucin=x). Ejemplos:
6
ADMINISTRACIN DE SERVIDORES
// Dar todos los permisos al usuario y de lectura al resto, sobre todos los archivos
chmod 744 *
Existe la posibilidad de cambiar los permisos utilizando el explorador de archivos. Para ello
tan solo hay que seleccionar los archivos o carpetas y haciendo clic sobre la seleccin con
el botn derecho del ratn > Propiedades, nos aparecer la ventana de propiedades.
Haciendo clic en la pestaa Permisos podremos establecer los permisos de una forma
sencilla y haciendo clic en 'Permisos avanzados' de una forma avanzada.
7
ADMINISTRACIN DE SERVIDORES
Habiendo entendido lo anterior, es ahora fcil cambiar los permisos de cualquier archivo o
directorio, usando el comando chmod (change mode), cuya sintaxis es la siguiente:
ejemplos:
ejemplo (chmod 700 julio*) cambiar los permisos a todos los archivos que empiezen con
julio (julio01, julio02, julio_respaldo, etc.) debido al caracter '*' que es parte de las
expresiones regulares que el shell acepta, e indica lo que sea. El ltimo ejemplo por lo tanto
cambiar los permisos a los archivos dentro del directorio actual.
8
ADMINISTRACIN DE SERVIDORES
Una opcin comn cuando se desea cambiar todo un rbol de directorios, es decir, varios
directorios anidados y sus archivos correspondientes, es usar la opcin -R, de recursividad:
Esto cambiar los permisos a 755 (rwxr-xr-x) del directorio respaldos y de todos los
subdirectorios y archivos que estn contenidos dentro de este.
Para cambiar los permisos de un archivo o directorio del servidor, tienes que utilizar el
comando chmod.
En general, cualquier comando de linux o unix tiene una ayuda, que puedes ver invocando
al comando, seguido con el parmetro -help. Algo como esto:
chmod --help
Este comando en concreto tiene varias sintaxis permitidas. De entre ellas por ejemplo
puedes utilizar:
Las opciones podemos indicarlas o no, segn queramos. Opciones tpicas son:
El modo en octal es un nmero en base 8 (octal) que especifique el permiso. Los nmeros
en octal se especifican empezando el nmero por un 0. Por ejemplo, 0777 es indica todos
los permisos posibles para todos los tipos de usuario. 0666 indica que se dan permisos de
lectura y escritura, pero no de ejecucin. 0766 indica que se dan permisos de lectura y
escritura, pero slo tienen permiso de ejecucin para los usuarios que son dueos del
archivo. 0755 indica permisos para lectura y ejecucin, pero escritura slo para el usuario
que es dueo del archivo.
Por ejemplo:
chmod 0666 *
9
ADMINISTRACIN DE SERVIDORES
chmod -R 0644 *
Esto da permisos a todos los archivos y directorios del directorio donde se invoca el
comando y de todos los directorios que cuelgan de l. Los permisos asignados son de
lectura a todos los usuarios, de escritura slo al dueo del archivo y de ejecucin a nadie.
Luego tambin se pueden asignar permisos de otra manera, utilizando otra posible sintaxis
de chmod, que tal vez resulte ms til si no queremos tratar con los valores en octal.
Para ello tenemos que tener claros los distintos grupos de usuarios:
Tambin hay que saber la letra que abrevia cada tipo de permiso:
Ejemplos
chmod o=rwx *
Asigna permisos de lectura, escritura y ejecucin para los usuarios "otros" a todos los
archivos de la carpeta
Asigna todos los permisos a todos los usuarios para el archivo fichero.txt
chmod go= *
Quita todos los permisos para los usuario del grupo y los usuarios otros.
chmod u=rwx,g=rw,o= *
Da todos los permisos al dueo del fichero, a los del grupo del dueo le asigna permisos de
lectura y escritura y a los otros usuarios les quita todos los permisos.
10
ADMINISTRACIN DE SERVIDORES
Nota: Un espacio despus de la coma "," en los distintos modos de permisos que se indiquen hace
fallar el comando.
chmod a=r *
chmod a-wrx *
chmod a+r,gu+w *
Este comando asigna permisos de lectura a todos los usuarios y permisos de escritura al
dueo del archivo y el grupo del dueo.
chmod u=w,a+r *
Este comando asigna permisos de escritura al usuario dueo y a todos los usuarios les
aade permiso de lectura
11