Anuncios

Bienvenidos sean a este post, hoy veremos una funcion de PHP.

Anuncios

Esta funcion nos permite cambiar el archivo de raiz del proceso actual. Veamos como es su sintaxis:

chroot(nuevo_path);
Anuncios

Simplemente pasamos el nuevo path que reemplazara al actual. Algunos detalles a tener en cuenta, se necesita permisos de root para correrlo. Este funciona solo en sistemas basados en Unix, no funciona en windows, y solo se puede correr en CLI, cgi o embed SAPI. Para entender el concepto, veamos el siguiente ejemplo:

<?php

echo "Root actual: " . getcwd() . "\n";
chroot("/home/tinchicus/lenguajes/cpp/04");
echo "Root nuevo: " . getcwd() . "\n";

?>
Anuncios

Primero veremos como es el root actual de nuestro proceso mediante getcwd. Lo siguiente es el cambio del root y le pasaremos un nuevo path. Por ultimo, mostraremos el nuevo root. Veamos como trabaja:

$ php raiz.php
Root actual: /home/tinchicus/lenguajes/php/c
PHP Warning:  chroot(): Operation not permitted (errno 1) in /home/tinchicus/lenguajes/php/c/raiz.php on line 4
Root nuevo: /home/tinchicus/lenguajes/php/c
$
Anuncios

Recuerdan cuando comente que se necesitan permisos root para ejecutarlo. Para solucionarlo,, deben usar al sudo:

$ sudo php raiz.php
Root actual: /home/tinchicus/lenguajes/php/c
Root nuevo: /
$
Anuncios

En este caso si funciono pero observen el valor que devolvio. Siempre devuelve ese valor para indicar que el cambio fue realizado exitosamente.

Anuncios

En resumen, hoy hemos visto a chroot, que es, para que sirve, como se utiliza, y un ejemplo para verlo en accion. Espero les haya sido de utilidad sigueme en tumblr, Twitter o Facebook para recibir una notificacion cada vez que subo un nuevo post en este blog, nos vemos en el proximo post.

Anuncios

Donatión

It’s for site maintenance, thanks!

$1.50