1 votes

Le serveur de fichiers Samba affiche les utilisateurs déjà supprimés comme propriétaires de répertoire / résolution de nom winbind

J'ai sur un Serveur de fichiers Samba (openSUSE Leap 15), un répertoire avec des sous-répertoires dans lesquels certains ne devraient plus avoir de propriétaire. La résolution des noms d'utilisateur se fait via winbind. Je veux supprimer chaque répertoire sans propriétaire.

Le problème est que ls -la me montre que certains sous-répertoires ont toujours un utilisateur comme propriétaire qui n'existe plus dans l'AD. wbinfo -u ne me montre pas l'utilisateur supprimé et dans l'AD l'utilisateur n'existe définitivement plus non plus. De plus, getent passwd ne montre pas les utilisateurs que ls -la montre comme propriétaire.

Choses que j'ai déjà faites:

  • Redémarrage
  • net cache flush
  • suppression manuelle de winbindd_cache.tdb et winbindd_idmap.tdb

Très étrange, y a-t-il un autre cache qui ne serait pas vidé par net cache flush?

PS: le démon nscd tourne également sur le Serveur de fichiers Samba

Voici le smb.conf pour la configuration de winbind

[global]
    workgroup = domain
    realm = domain.DOMAIN
    netbios name = name
    security = ADS
    interfaces = 1.2.3.4 127.0.0.1/8
    bind interfaces only = yes

    log level = 1

    template shell = /bin/false

    vfs objects = acl_xattr
    map acl inherit = yes
    store dos attributes = yes

    registry shares = yes

    hide unreadable = yes
    #hide dot files = yes
    hide files = /$*/desktop.ini/RECYCLER/Thumbs.db/

    load printers = no
    printing = bsd
    printcap name = /dev/null
    disable spoolss = yes

    winbind enum users = yes
    winbind enum groups = yes
    winbind expand groups = 4
    username map = /etc/samba/samba_usermapping

    idmap config * : range = 2000 - 999999

    idmap config domain:backend = rid
    idmap config domain:range = 1000000 - 1999999

0voto

Michael Ströder Points 909

La propriété des fichiers est stockée dans le système de fichiers. Supprimer simplement un utilisateur de /etc/passwd ou d'une autre gestion d'utilisateurs à distance ne supprime pas la propriété dans le système de fichiers. Vous ne pouvez tout simplement plus voir le nom pour l'UID et le GID.

Si le nom de l'utilisateur ou du groupe apparaît toujours avec getent et que vous exécutez des caches nscd pour les cartes passwd et group (vérifiez /etc/nscd.conf), vous devriez vider ses caches pour ces cartes :

nscd --invalidate=passwd
nscd --invalidate=group

Un mot de prudence :

Je recommande de ne pas supprimer automatiquement les fichiers trouvés avec find -nouser ou find -nogroup s'il existe ne serait-ce qu'une petite chance que votre gestion d'utilisateurs à distance soit inaccessible.

0 votes

Oui, c'est exactement ce que cela devrait être. Je veux que la propriété soit vide, de sorte que je puisse répertorier tous les répertoires orphelins avec "find -nouser" et les supprimer.

0 votes

Désolé, j'ai mal compris votre question auparavant. J'ai édité ma réponse en conséquence.

0 votes

Merci pour votre conseil, mais malheureusement pas de changement après cela

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X