GNU/Linux >> Tutoriales Linux >  >> Linux

Linux:¿cómo habilitar los espacios de nombres de usuario en el kernel? (para `no compartir` sin privilegios.)?

Mi kernel de Linux debe haber sido configurado con espacios de nombres de usuario cuando se creó, pero su uso está restringido después del arranque y debe habilitarse explícitamente. ¿Qué sistema debo usar?

(Si esto estuviera activado, permitiría ejecutar un comando de aislamiento como unshare --user --map-root-user --mount-proc --pid --fork y luego ejecute chroot sin ser root, una característica muy esperada de Linux).

Respuesta aceptada:

Se sabe que Debian (y, por lo tanto, probablemente también Ubuntu) incluye un kernel con tal restricción de espacios de nombre de usuario, y la forma de habilitarlo era/es:

sysctl -w kernel.unprivileged_userns_clone=1

(Fuente:https://blog.mister-muffin.de/2015/10/25/unshare-without-superuser-privileges/.)

ALT también tiene una restricción de este tipo en kernel-image-std-def. A diferencia de Debian, se llama kernel.userns_restrict .

Normalmente, es 1 (es decir, "restringido"):

$ cat /proc/sys/kernel/userns_restrict 
1

Para habilitar esto, echo 0 > /proc/sys/kernel/userns_restrict (o use sysctl como arriba, por supuesto).


Linux
  1. Linux:¿Cómo encontrar el controlador de dispositivo utilizado para un dispositivo?

  2. Linux:¿cómo determinar qué módulo contamina el kernel?

  3. ¿Cómo encontrar la aplicación para un tipo Mime en Linux?

  4. ¿Cómo puedo reservar un bloque de memoria del kernel de Linux?

  5. ¿Cómo mostrar los parámetros de la línea de comandos del kernel de Linux dados para el arranque actual?

Cómo compilar un kernel de Linux en el siglo XXI

Cómo verificar la versión del kernel en Linux

Comando Sysctl en Linux

Cómo habilitar Sudo sin contraseña para usuarios en Linux

¿Cómo deshabilitar el inicio de sesión SSH para el usuario raíz en Linux?

¿Cómo carga Linux la imagen 'initrd'?