Archivo de la etiqueta: Bash

Heredar grupo con setgid

Muchas veces nos interesa que todos los archivos nuevos en una carpeta hereden el grupo al que pertenece la carpeta. Son muchos los casos, los más comunes son que se tiene, por ejemplo, un servidor web, y se desea que todos los archivos que vas creando (p.e, instalando módulos de Drupal) estén accesibles para el usuario del web server, claro, sin tener que estar haciendo un chgrp recursivo a cada rato. Otra es si se tiene un volumen o carpeta compartida, cuando un usuario crea un archivo en dicha carpeta por defecto el archivo tiene el dueño y el grupo mapeados al usuario que creó el archivo, y no al grupo donde se encuentra, por ende no es visible a los demás usuarios que usan la carpeta.

Esto es muy fácil de solucionar, solo hay que activar el bit/flag setgid (similar al bit a r-w-x) a la carpeta (ojo, carpeta nada más, en archivos significa otra cosa) para que los nuevos archivos dentro de la misma hereden el grupo de la carpeta. Como vimos en un post anterior, podemos poner dicho bit de forma recursiva a todas las carpetas dentro de una carpeta:

find /ruta/al/directorio -type d -exec chmod g+s '{}' \;

Claro, para que eso tenga sentido lo mejor sería primero ponerle a todos los archivos el grupo que deseamos que hereden:

chgrp -R grupo /ruta/al/directorio

Saludos

Etiquetado , , ,

Cambiar permisos de carpetas y archivos de forma recursiva

Básicamente escribo esta entrada para intentar acordarme cuando deseo hacerlo 😛

Poner todos los subfolder de un folder a 755:

find . -type d -exec chmod 755 {} \;

Todos los archivos a 644:

find . -type f -exec chmod 644 {} \;

Establecer solo los archivos que terminen con .php a 644:

find . -name \*\.php -exec chmod 644 {} \;

Etiquetado , , ,

ShellEd plugin para Eclipse

Hay veces en que tenemos que crear shell scripts para realizar distintas tareas en nuestros proyectos en Eclipse. Yo los suelo utilizar mucho para automatizar tareas o muchas muchas cosas. Normalmente editaba estos archivos de forma externa con gedit hasta que encontré ShellEd:

http://sourceforge.net/projects/shelled/

ShellEd es un excelente editor de shell scripts para Eclipse. Ofrece no sólo resaltado de sintaxis, pero además ofrece integración de manuales de los comandos (man pages) con el asistente de contenido. Es decir, permite que al presionar Ctrl+Espacio sobre un comando pueda visualizar la información del mismo. Puede ver un screenshot del ShellEd funcionando sobre Eclipse Galileo:

ShellEd

Para instalar ShellEd deben descargarse el archivador desde la página oficial (shelled_1_0_4.zip), luego:

  1. Salir de Eclipse.
  2. Extraer el archivo shelled_1_0_4.zip .
  3. Al extraer el archivo se crearán dos carpetas: features/ y plugins/
  4. Copiar todos los archivos de la carpeta plugins/ en la carpeta dropins/ del directorio de instalación de Galileo.
  5. Iniciar Eclipse.

Espero les guste! Saludos!

Etiquetado , , , , , ,