“Conocimiento Sistemas>Linux

¿Qué hace chroot en un sistema operativo Linux?

2015/11/26
La llamada al sistema chroot cambia el directorio raíz del proceso de llamada y sus hijos. Esto significa que el proceso y sus hijos verán el directorio especificado como la raíz del sistema de archivos. Todos los nombres de ruta se interpretarán en relación con esta nueva raíz, en lugar de la raíz real del sistema de archivos.

Chroot se utiliza a menudo para crear un entorno restringido para un proceso o grupo de procesos. Por ejemplo, un proceso de servidor web podría tener un chroot en su propio directorio, de modo que no pueda acceder a ningún otro archivo en el servidor. Esto puede ayudar a mejorar la seguridad al evitar que un usuario malintencionado comprometa el servidor web.

Chroot también se puede utilizar para crear una zona de pruebas para código que no es de confianza. Por ejemplo, un usuario podría querer ejecutar un programa descargado de Internet en un entorno chroot para evitar que dañe su sistema.

Para utilizar chroot, el proceso debe tener la capacidad CAP_SYS_CHROOT. Esta capacidad normalmente se otorga a procesos que se ejecutan como root.

La sintaxis de la llamada al sistema chroot es:

`int chroot(const char *nombre de ruta);`

Dónde:

nombre de ruta:la ruta al nuevo directorio raíz.

Aquí hay un ejemplo de cómo usar chroot:

```

#incluir

#incluir

#incluir

int principal()

{

// Cambia el directorio raíz a /tmp

si (chroot("/tmp") ==-1) {

perror("chroot");

salir(EXIT_FAILURE);

}

// Imprime el directorio de trabajo actual

char cwd[1024];

si (getcwd(cwd, tamaño de(cwd)) ==NULL) {

perror("getcwd");

salir(EXIT_FAILURE);

}

printf("Directorio de trabajo actual:%s\n", cwd);

devolver EXIT_SUCCESS;

}

```

Cuando se ejecuta este programa, imprimirá el siguiente resultado:

```

Directorio de trabajo actual:/tmp

```

Esto muestra que el directorio de trabajo actual se ha cambiado a /tmp.

Linux
Cómo quitar la basura de los escritorios Linux
Cómo reemplazar Gnome WM con WindowMaker
Cómo instalar SSL en Tomcat
Cómo configurar una impresora en Kubuntu
Cómo modificar la raíz Sources.Lst.Linux
Cómo actualizar libCurl en CentOS
Cómo instalar Eclipse en un cachorro Java Client
Cómo construir un controlador VGA Linux
Conocimiento de la computadora © http://www.ordenador.online