GNU/Linux >> Tutoriels Linux >  >> Linux

Linux - Comment activer les espaces de noms utilisateur dans le noyau ? (pour "unshare" non privilégié.) ?

Mon noyau Linux doit avoir été configuré avec user_namespaces lors de sa construction, mais leur utilisation est restreinte après le démarrage et doit être explicitement activée. Quel sysctl dois-je utiliser ?

(Si cela était activé, cela permettrait d'exécuter une commande d'isolation comme unshare --user --map-root-user --mount-proc --pid --fork , puis exécutez chroot sans être root - une fonctionnalité très attendue de Linux.)

Réponse acceptée :

Debian (et donc probablement Ubuntu aussi) est connu pour fournir un noyau avec une telle restriction d'espaces de noms d'utilisateurs, et là, la façon de l'activer était/est :

sysctl -w kernel.unprivileged_userns_clone=1

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

ALT a également une telle restriction dans kernel-image-std-def. Contrairement à Debian, il s'appelle kernel.userns_restrict .

Normalement, c'est 1 (c'est-à-dire "restreint") :

$ cat /proc/sys/kernel/userns_restrict 
1

Pour l'activer, echo 0 > /proc/sys/kernel/userns_restrict (ou utilisez sysctl comme ci-dessus, bien sûr).


Linux
  1. Comment activer le transfert IP sur Linux

  2. Linux - Comment trouver les implémentations des appels système du noyau Linux ?

  3. Linux - Comment déterminer quel module corrompt le noyau ?

  4. Comment trouver l'application pour un type MIME sous Linux ?

  5. Comment utiliser kdump pour l'analyse de plantage du noyau Linux

Comment compiler un noyau Linux au 21e siècle

Comment vérifier la version du noyau sous Linux

Commande Sysctl sous Linux

Comment activer le sudo sans mot de passe pour l'utilisateur sous Linux

Comment désactiver la connexion SSH pour l'utilisateur root sous Linux ?

Comment Linux charge-t-il l'image 'initrd' ?