Cambiar permisos únicamente directorios o a archivos recursivamente en CentOS

A veces es necesario asignar ciertos permisos a directorios o carpetas y otros permisos distintos a los archivos contenidos en éstos. Para asignar los permisos a los directorios exclusivamente utilizamos:

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

El comando anterior busca todos las carpetas o directorios que se encuentran dentro de la posición actual donde nos encontramos en el sistema de arechivos y le asigna a cada uno de ellos los permisos 755. Mientras que, el comando:

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

Actuaría parecido al comando anterior, sólo que únicamente cambiará los permisos a los elementos tipo archivo.

Espero les sirva.

¡Saludos!

Mensaje IP access control using TCP-wrappers is not available. Webmin in CentOS 6

Al configurar el control de acceso  por medio de IP, en la opción de configuración de webmin me aparecía el mensaje:

IP access control using TCP-wrappers is not available, as the Authen::Libwrap Perl module is not installed. Click here to have Webmin automatically install the missing Perl module.

Al dar querer hacer la instalación automática mostrada en el mensaje anterior (Click here) mandaba una serie de mensajesque iniciaba con esto:

This module requires Module::Build to install itself.
Install Module::Build now from CPAN? [y] y
Sorry, we have to rerun the configuration dialog for CPAN.pm due to
some missing parameters…

y al final el mensaje de que el módulo Authen::Libwrap no se había instalado.

Para que funcione la instalación automática hay que instalar los siguientes paquetes antes:

perl-Module-Buildtcp_wrappers-devel

Ya sea desde linea de comando ejecutando:

yum install perl-Module-Build
yum install tcp_wrappers-devel

O a través del mismo webmin.

Una vez instalados dichos paquetes la instalación automática indicada arriba deberá funcionar.

Espero les sirva. ¡Saludos!

Instalar SubVersion en CentOS 6.5

Para instalar y configurar Subversion en CentOS 6.5 siga los siguientes pasos:

# 1. Cambiar a usuario root
sudo -i

# 2. Instalar los paquetes necesarios.
yum install mod_dav_svn subversion

# 3. Editar archivo /etc/httpd/conf.d/subversion.conf para que quede parecido a esto:

LoadModule dav_svn_module     modules/mod_dav_svn.so
LoadModule authz_svn_module   modules/mod_authz_svn.so
 
<Location /svn>
   DAV svn
   SVNParentPath /var/www/svn
   AuthType Basic
   AuthName "Repositorios subversion"
   AuthUserFile /etc/usuarios-svn
   Require valid-user
</Location>

# 4. Agregar los usuarios (note que sólo al agregar el primer usuario se usa la opcion -c para crear el archivo):

htpasswd -cm /etc/usuarios-svn usuario1

htpasswd -m /etc/usuarios-svn usuario2

# 5. Crear y configurar el repositorio (el nombre asignado puede ser cualquiera, en el ejemplo se nombró "repositorio")

mkdir /var/www/svn
cd /var/www/svn
 
svnadmin create repositorio
chown -R apache:apache repositorio
 
 
## Los siguientes comandos sólo se darán si se tiene SELinux habilitado. El segundo comando es para permitir commit desde http.
 
chcon -R -t httpd_sys_content_t /var/www/svn/testrepo
chcon -R -t httpd_sys_rw_content_t /var/www/svn/testrepo

# 6. Reinicie el servidor web

service httpd restart

# 7. Configure el repositorio para impedir acceso anónimo y habilitar el control de accesos

## Edite el archivo /var/www/svn/repositorio/conf/svnserve.conf y agreggue lo siguiente:

anon-access = none
authz-db = authz

Si todo se hizo correctamente, podrá acceder al repositorio a través de un navegador web desde esta dirección local:

http://localhost/svn/repositorio

¡Saludos!