Loading...

fedora-directory-users@redhat.com

[Prev] Thread [Next]  |  [Prev] Date [Next]

Re: [Fedora-directory-users] Re: Total number of LDAP entries Ryan Braun [ADS] Tue Mar 10 12:00:22 2009

On Tuesday 10 March 2009 17:38:33 Branimir wrote:
> David Boreham wrote:
> > Branimir wrote:
> >> well, I know that I can perform search and count them. I hoped that
> >> there is some shell command implemented in FDS that could provide this
> >> number. I administer commercial LDAP solution that provides such
> >> command. In my case this commercial solution charges per directory
> >> entry so I always have to know entry count. I was hoping FDC has some
> >> kind of equivalent command.
> >
> > Pipe the search output through grep and wc to count the entries returned.
>
> Thanks David. I am familiar with UNIX basics :). As I said before, I was
> hoping there is some simple command for this, nothing more.
>
> Cheers,
>
> Branimir
>
Here's an easy perl script you can run,  it will do a sub search on a given 
suffex and output the total entries returned.

Ryan


#!/usr/bin/perl

use strict;
use Net::LDAP;

my $bind_dn = "cn=directory manager";
my $bind_pw = "password";
my @servers = qw(server1.com server2.com);
my $base_dn = "cn=config";

foreach my $server (@servers) {

        my $ldap = Net::LDAP->new($server, port => '389', timeout=>10);
        if ( ! $ldap )
        {
                        
                        # return 0 here for a failed attempt
                        print "failed to connect to $server\n";
                        return 0;
        }
        my $msg = $ldap->bind ( $bind_dn,password => $bind_pw ,version => 3 );

        if ($msg->code) {
                # print error message here because we have access to the $msg 
object
                print "\t$server\t\t\tFAILURE " . $msg->code . " error text is 
" . $msg->error_name . "\n";
                
                return 0;
        }
        
        $msg = $ldap->search(filter=>"objectClass=*",  base=>$base_dn,scope => 
'sub' );
        
        print "Found " . $msg->entries . " total entries in $base_dn on 
$server\n";
}

--
Fedora-directory-users mailing list
[EMAIL PROTECTED]
https://www.redhat.com/mailman/listinfo/fedora-directory-users