GNU/Linux >> Tutoriels Linux >  >> Panels >> Docker

« su :Échec de l'authentification » – dans Docker

Le problème

Dans certaines situations, un utilisateur normal dans un conteneur Docker ne peut pas exécuter la commande "su" pour changer d'utilisateur. Lorsque la commande "su" est émise, l'erreur suivante revient.

$ su -
Password: [entering correct password]
su: Authentication failure

La solution

L'autorisation collante peut être manquante dans /usr/bin/su dans le conteneur. Avec le privilège root, vous pouvez corriger comme suit :

1. Vérifiez d'abord les autorisations actuelles pour le fichier binaire /usr/bin/su.

# ls -l /usr/bin/su
-rwxr-xr-x 1 root root 32208 Mar 14 01:39 /usr/bin/su

Comme nous pouvons le voir dans la sortie ci-dessus, les autorisations sticky bit sont manquantes.

2. Ajoutez les autorisations sticky bit au fichier /usr/bin/su comme suit :

# chmod u+s /usr/bin/su

3. Vérifiez à nouveau les autorisations et recherchez le drapeau "x" à la fin du champ d'autorisation.

# ls -l /usr/bin/su
-rwsr-xr-x 1 root root 32208 Mar 14 01:39 /usr/bin/su

4. Essayez à nouveau de faire su dans le conteneur docker.

$ su - postgres
Password:
Last login: Tue Aug 6 12:13:57 JST 2019 on pts/1
postgres@[hostname] $ 


Docker
  1. /usr/bin Vs /usr/local/bin Sous Linux ?

  2. Linux – Fusionner /usr/bin et /usr/sbin dans /bin (gnu/linux) ?

  3. Installer les binaires dans /bin, /sbin, /usr/bin et /usr/sbin, interactions avec --prefix et DESTDIR

  4. Quelle est la différence entre #!/usr/bin/env bash et #!/usr/bin/bash ?

  5. Quand dois-je utiliser /dev/shm/ et quand dois-je utiliser /tmp/?

Linux – /sbin/init n'existe pas ?

Conflits Node.js :/sbin/node Vs /usr/bin/node ?

autorisation refusée pour composer dans /usr/local/bin/

Mise à niveau de Docker sur Amazon Linux AMI

cmake --version pointe vers /usr/bin/cmake tandis que cmake pointe vers /usr/local/bin

Quand dois-je utiliser #!/bin/bash et quand #!/bin/sh ?