From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 69455 invoked by alias); 27 May 2019 15:59:58 -0000 Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner@cygwin.com Mail-Followup-To: cygwin@cygwin.com Received: (qmail 69184 invoked by uid 89); 27 May 2019 15:59:58 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-3.1 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_LOW autolearn=ham version=3.3.1 spammy=maayan, Maayan, Apelboim, apelboim X-HELO: smtp-out-no.shaw.ca Received: from smtp-out-no.shaw.ca (HELO smtp-out-no.shaw.ca) (64.59.134.13) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 27 May 2019 15:59:56 +0000 Received: from [192.168.1.114] ([24.64.172.44]) by shaw.ca with ESMTP id VI2UhS7lLsAGkVI2VhIlXM; Mon, 27 May 2019 09:59:55 -0600 Reply-To: Brian.Inglis@SystematicSw.ab.ca Subject: Re: getent doesn't show all domain users To: cygwin@cygwin.com References: From: Brian Inglis Openpgp: preference=signencrypt Message-ID: <3a2c51fe-894d-8959-70b9-22a9d8f980aa@SystematicSw.ab.ca> Date: Mon, 27 May 2019 15:59:00 -0000 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.7.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-IsSubscribed: yes X-SW-Source: 2019-05/txt/msg00237.txt.bz2 On 2019-05-27 03:15, Maayan Apelboim wrote: > I have a server in the domain (duplicated from another domain if it matters). > At first "getent passwd" run I see the user from the different domain, but > after a few runs it disappears. > Even after it disappears getent doesn't return all domain users while > mkpasswd -d returns all users. > When I try to chown user /home/user I get "invalid user" error - but this > user exists in the domain. > After a few restarts to the server or logging with the user the problem is > solved. > But I don't have a constant work around that works smoothly. Systems may have tens to hundreds of local user accounts, and domains may have hundreds to hundreds of thousands of user accounts. The system probably caches only active users, and getent enumerates those if no /etc/passwd file exists, as it was designed to enumerate only a few entries from local files. As it is, getent will not even enumerate hosts from the local hosts files or resolver. It appears that mkpasswd enumerates all local and system accounts in the Security Accounts Manager file at $SYSTEMROOT/System32/config/SAM loaded into /proc/registry/HKEY_LOCAL_MACHINE/SAM/, so it probably does the same for domain accounts from Active Directory Domain Service. -- Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada This email may be disturbing to some readers as it contains too much technical detail. Reader discretion is advised. -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple