{"id":80,"date":"2013-02-25T16:39:43","date_gmt":"2013-02-25T16:39:43","guid":{"rendered":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/?p=80"},"modified":"2013-03-04T13:56:28","modified_gmt":"2013-03-04T13:56:28","slug":"gestion-de-permisos","status":"publish","type":"post","link":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/gestion-de-permisos\/","title":{"rendered":"Gesti\u00f3n de permisos"},"content":{"rendered":"<p><\/p>\n<h3>Modificaci\u00f3n de permisos<\/h3>\n<p>Para modificar los permisos de un fichero o directorio se utiliza el comando\u00a0<em>chmod<\/em>. Utilizaremos las letras &#8216;u&#8217;, &#8216;g&#8217; y &#8216;o&#8217; para representar a las categor\u00edas de propietario, grupo y otros, respectivamente. Para indicar los permisos activados o desactivados, usaremos las letras r, w y x para lectura, escritura y ejecuci\u00f3n.\u00a0 Finalmente,\u00a0 usaremos tres operadores &#8216;+&#8217;, &#8216;-&#8216; y &#8216;=&#8217;, para hacer que los permisos se a\u00f1adan a los existentes, se quiten de los que ya hab\u00eda o sean los \u00fanicos aplicables, respectivamente. Por ejemplo, la siguiente secuencia de comandos crea un nuevo directorio llamado temporal y modifica sus permisos para que el propietario pueda leer, escribir y ejecutar, los otros miembros del grupo puedan leer y los dem\u00e1s no tengan ning\u00fan permiso. Los comandos\u00a0<em>ls<\/em>\u00a0permiten ver que se ha realizado la modificaci\u00f3n.<\/p>\n<pre>$ mkdir temporal\r\n$ ls -ld temporal\r\ndrwxrwxr-x\u00a0\u00a0\u00a0 2 user \u00a0\u00a0\u00a0\u00a0user \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 0\u00a0 2013-01-26 02:05\u00a0 temporal\r\n$ chmod u=rwx,g=r,o= temporal\r\n$ ls -ld temporal\r\ndrwxr-----\u00a0\u00a0\u00a0 2\u00a0user\u00a0\u00a0\u00a0\u00a0\u00a0user \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 0\u00a0 2013-01-26 02:05\u00a0 temporal<\/pre>\n<p>Podemos ver otro ejemplo de uso con un operador distinto a\u00f1adiendo permisos de ejecuci\u00f3n al grupo y de lectura al resto de usuarios:<\/p>\n<pre>$ chmod g+x,u+r temporal\r\n$ ls -ld temporal\r\ndrwxr-xr--\u00a0\u00a0\u00a0 2\u00a0user\u00a0\u00a0\u00a0\u00a0\u00a0user \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 0\u00a0 2013-01-26 02:05\u00a0 temporal<\/pre>\n<p>Al usar el comando ls para listar un directorio en concreto, debemos usar la opci\u00f3n -d para listar sus propiedades en lugar de las correspondientes a los ficheros que contiene.<\/p>\n<p>Tambi\u00e9n podemos definir los permisos usando un n\u00famero de tres d\u00edgitos de manera que el primer d\u00edgito se refiere al usuario, el segundo al grupo y el tercero a todos. A su vez cada d\u00edgito puede tener un valor del 0 al 8 con los siguientes criterios (atenci\u00f3n a la codificaci\u00f3n binaria):<\/p>\n<table border=\"1\">\n<tbody>\n<tr>\n<td>&#8211; &#8211; &#8211;<\/td>\n<td>= 0<\/td>\n<td>no se tiene ning\u00fan permiso<\/td>\n<\/tr>\n<tr>\n<td>&#8211; &#8211; x<\/td>\n<td>= 1<\/td>\n<td>solo permiso de ejecuci\u00f3n<\/td>\n<\/tr>\n<tr>\n<td>&#8211; w &#8211;<\/td>\n<td>= 2<\/td>\n<td>solo permiso de escritura<\/td>\n<\/tr>\n<tr>\n<td>&#8211; w x<\/td>\n<td>= 3<\/td>\n<td>permisos de escritura y ejecuci\u00f3n<\/td>\n<\/tr>\n<tr>\n<td>r &#8211; &#8211;<\/td>\n<td>= 4<\/td>\n<td>solo permiso de lectura<\/td>\n<\/tr>\n<tr>\n<td>r &#8211; x<\/td>\n<td>= 5<\/td>\n<td>permisos de lectura y ejecuci\u00f3n<\/td>\n<\/tr>\n<tr>\n<td>r w &#8211;<\/td>\n<td>= 6<\/td>\n<td>permisos de lectura y escritura<\/td>\n<\/tr>\n<tr>\n<td>r w x<\/td>\n<td>= 7<\/td>\n<td>todos los permisos establecidos, lectura, escritura y ejecuci\u00f3n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>As\u00ed, si tenemos la instrucci\u00f3n<\/p>\n<pre>chmod 700 directorio<\/pre>\n<p>Le estamos dando todos los permisos al usuario pero ninguno a los dem\u00e1s. Y<\/p>\n<pre>chmod 766 directorio<\/pre>\n<p>Da permiso total al propietario, y de lectura y escritura (que no de ejecuci\u00f3n) al resto de usuarios.<\/p>\n<h3>Nuevos propietarios<\/h3>\n<p>En algunos casos es necesario asignar a un fichero un propietario distinto al que lo ha creado. Por ejemplo, el administrador del sistema puede a\u00f1adir ficheros de configuraci\u00f3n a los directorios de un usuario y luego hacer que \u00e9ste \u00faltimo sea el propietario para permitir que los modifique a su gusto.<\/p>\n<p>Para realizar este cambio, disponemos del comando\u00a0<em>chown<\/em>. Este comando admite como par\u00e1metros un nuevo propietario y, opcionalmente y separado por un punto, un nuevo grupo. Por ejemplo, la siguiente secuencia de comandos copia un fichero al directorio personal del usuario &#8216;user&#8217; para luego asignarle este mismo usuario como propietario as\u00ed como tambi\u00e9n el grupo &#8216;user&#8217;.<\/p>\n<p>$ sudo cp \/usr\/share\/info\/dir \/home\/user<br \/>\n$ cd \/home\/user<br \/>\n$ ls -l dir<br \/>\n-rw-r&#8211;r&#8211;\u00a0\u00a0\u00a0 2 root\u00a0\u00a0\u00a0\u00a0 root \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 13678\u00a0 Feb 25 02:05\u00a0 dir<br \/>\n$ chown user:user dir<br \/>\n$ ls -l dir<br \/>\n-rw-r&#8211;r&#8211;\u00a0\u00a0\u00a0 2 knoppix\u00a0\u00a0\u00a0\u00a0 knoppix \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 0\u00a0 2003-01-26 02:05\u00a0 a2ps.html<\/p>\n<p style=\"padding-left: 30px;\">Siguiendo las indicaciones que hemos visto con anterioridad, crea un nuevo usuario, as\u00edgnale una contrase\u00f1a e intenta probar las posibilidades de acceso a los ficheros y directorios del usuario &#8216;user&#8217; utilizando diferentes combinaciones de permisos.<\/p>\n<p style=\"padding-left: 30px;\">Sugerencia: Puedes utilizar desde un terminal la orden <em>su<\/em> seguida del nombre del usuario para comenzar una sesi\u00f3n con el nuevo usuario sin tener que pasar al modo texto. Por ejemplo, &#8216;<em>su luis<\/em>&#8216; inicia una sesi\u00f3n con el usuario &#8216;luis&#8217; despu\u00e9s de solicitar la contrase\u00f1a para el mismo.<\/p>\n<p><\/p>","protected":false},"excerpt":{"rendered":"<p>Modificaci\u00f3n de permisos Para modificar los permisos de un fichero o directorio se utiliza el comando\u00a0chmod. Utilizaremos las letras &#8216;u&#8217;, &#8216;g&#8217; y &#8216;o&#8217; para representar a las categor\u00edas de propietario, grupo y otros, respectivamente. Para indicar los permisos activados o desactivados, usaremos las letras r, w y x para lectura, escritura y ejecuci\u00f3n.\u00a0 Finalmente,\u00a0 usaremos &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/multimedia.uoc.edu\/blogs\/linux\/gestion-de-permisos\/\" class=\"more-link\">Seguir leyendo<span class=\"screen-reader-text\"> \u00abGesti\u00f3n de permisos\u00bb<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-80","post","type-post","status-publish","format-standard","hentry","category-gnulinux","entry"],"_links":{"self":[{"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/wp-json\/wp\/v2\/posts\/80","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/wp-json\/wp\/v2\/comments?post=80"}],"version-history":[{"count":3,"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/wp-json\/wp\/v2\/posts\/80\/revisions"}],"predecessor-version":[{"id":112,"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/wp-json\/wp\/v2\/posts\/80\/revisions\/112"}],"wp:attachment":[{"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/wp-json\/wp\/v2\/media?parent=80"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/wp-json\/wp\/v2\/categories?post=80"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/wp-json\/wp\/v2\/tags?post=80"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}