Назад | Перейти на главную страницу

Файловый сервер Samba показывает уже удаленных пользователей как владельца каталога / разрешение имени winbind

Я на Файловый сервер Samba (openSUSE Leap 15), каталог с подкаталогами, в которых некоторые не должно больше иметь владельца. Разрешение имени пользователя выполняется winbind. Я хочу удалить все директории без владельца.

Проблема в том, что ls -la показывает мне, что некоторые подкаталоги все еще есть пользователь в качестве владельца, которого больше не существует в AD. wbinfo -u не показывает мне удаленного пользователя, и в AD этот пользователь определенно больше не существует. Также getent passwd не показывает пользователей, которых ls -la показывает как владельца.

Что я уже сделал:

Очень странно, есть ли другой кеш, который не очищался бы очисткой чистого кеша?

PS: демон nscd тоже работает на файловом сервере Samba

Здесь smb.conf для конфигурации 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

Право собственности на файл хранится в файловой системе. Простое удаление пользователя из / etc / passwd или другого удаленного управления пользователями не отменяет владение файловой системой. Вы просто больше не можете видеть названия для UID и GID.

Если имя пользователя или группы все еще отображается с getent и ты бежишь NSCD кеширование пароль и группа карты (проверьте /etc/nscd.conf), то вам следует очистить его кеши для этих карт:

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

Предупреждение:

Я бы рекомендовал не удалить файлы, найденные с помощью find -nouser или find -nogroup автоматически, если есть хотя бы небольшая вероятность, что ваше удаленное управление пользователями может быть недоступно.