Domino Mail file inventory/Cleanup

We have several hundred user that have left , How can I find out who has person documents vs mail files on the server. We don't have a access to mailfile acl. I would like to create a list of mail files with no person documents, and a list of person document with no mail file.
Is there such an agent. The help software by "Power Tools" require admin access to the database. P.S. This is an AIX env.
dgardinAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

qwaleteeCommented:
You can use the DbDirectory object to get a list of files, and match them up.  or, you can use catalog or statlog data.
0
qwaleteeCommented:
Note: DbDirectory will not show items that have "show in open file dialog" turned off in database properties.  However, the catalog and statlog ALWAYS show ALL files.
0
qwaleteeCommented:
Correctoon: The catalog always CONTAINS al files, but the regular views in the catalog do not show item that have ben marked as "do not show in catalog" in database properties.
0
Cloud Class® Course: Microsoft Exchange Server

The MCTS: Microsoft Exchange Server 2010 certification validates your skills in supporting the maintenance and administration of the Exchange servers in an enterprise environment. Learn everything you need to know with this course.

p_parthaCommented:
You have to write a lotusscript agent to find out whether the user has mail fiel or not...

something on these lines
      Dim db As New NotesDatabase("notes007", "mail\b\test.nsf")
      Dim acl As NotesACL
      Dim entry As NotesACLEntry
      Set acl = db.ACL
      
      Set entry = acl.GetFirstEntry
      flag = Entry.IsGroup
      Msgbox flag

You will get the error cannot open if it is found. If the mail file is not found then it will say "it is not opened yet"
depending on the error number u can find out whether mail fiel exists or not

HTH
partha
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
qwaleteeCommented:
Const serverName = "your server"
Const dbFiles = "c:\mail_dbs.txt" 'for running on a windows PC
Const malUserFiles = "c:\mailuser.txt" 'ditto, for output of listed filenames on person docs
Dim db as new notesDatabase (serverName , "log.nsf" )
Dim view as notesView
Open dbFiles for output as #1
set view = db.getView("DatabaseSizes")
dim doc as notesDOcument
set doc = view.getFirstDocument
Dim fileName as string
Do Until doc is nothing
  fileName = lcase(doc.PathName(0))
  if Left$(fileName, 5) = "mail/" Then Print #1, fileName
  set doc = view.getNextDocument(doc)
Loop
Close #1

dim nab as new notesDatabase ( servername , "names.nsf" )
set view = nab.getView("Mail Users")
open mailUserFiles for output as #2
set doc = view.getFirstDocument
Do Until doc is nothing
  fileName = lcase(doc.MailFile(0))
  if fileName <> "" Then Print #1, fileName
  set doc = view.getNextDocument(doc)
Loop
Close #1


Now, srt the two files, and compare.  the differences will show where there is a file in the mail directory with no user, or a mail user with no mail file.  This assumes you have a single server, consistently use / instead of \ in person doc mail file names, and all mail files are in the mail directory.

While this will not identify teh USER NAME with the missing mail file directly, you can probably find those pretty easily based on the reported file name.  Being a Unix shop, I'm sure youknow how to use the shell commands to sort and compare the files.  The Windows eqivalents are sort.exe and fc.exe
0
qwaleteeCommented:
One more assumption: You run statlog nightly.  If not, just type LOAD STATLOG on the server console right now, and wait for it to complete before running this script.
0
p_parthaCommented:
Qwalette,
You seem to be too busy today in EE

CHeers
Partha
0
qwaleteeCommented:
Find somebody to pay me, I'll go away.
0
dgardinAuthor Commented:
Yes You guys are great. Ive never been to a forum so responsive.
0
dgardinAuthor Commented:
One other thing I forgot to mention, this is a clustered env.
0
qwaleteeCommented:
dgardin,
CLustering adds a bit of complexity, but nothing terrible.  Run the script against both servers.  The user list will be identical, becaus ethe NABs should be identical.  The dbs files MAY be identical, because typically in a clistered environment, you try to have all files on all servers (well, in a two-server cluster, anyway; on a three way, you may be load balancing and providing failover for each user to only one of the other servers).

I would actually identify the clustrer file differences first, and validate the "missing" fles from each server.  They may bemissing because someone got rid of a user, but only deleted one of the replicas instead of both... or it may help you find users you forgot to cluster or whose cluster creation failed.

Once you figure out what to do with the clustr imbalances, re-run the script, sort and merge the db lists, and compare to the sorted user list, as described above.  Any mismatches are an indicator of a file without a useror a user without a file.
0
Bozzie4IT ArchitectCommented:
I've used this tool from the sandbox in the past.

http://www-10.lotus.com/ldd/sandbox.nsf/ecc552f1ab6e46e4852568a90055c4cd/f5f9b19404adedba00256c38004abfb8?OpenDocument&Highlight=0,mail

Does the same as the other posters suggest, but it's an application that's ready to roll.

cheers,

Tom
0
Bozzie4IT ArchitectCommented:
And if you save your agents with the server.id, you can have admin access to all your databases.

I generally don't recommend saving agents using a server id, but in this case (on R5, I presume), it's a good way to do it.

If you are on R6 by any chance, you can use the Full Access Administrator feature to examine the mailfiles more closely ...  You won't need to save your agent with a server.id then, either, since you can use the 'Run on behalf of' feature

cheers,

Tom
0
qwaleteeCommented:
Bozzie4,

I've seen that tool.  Pretty good, but there are a few things coded to either IEEE's or Sumitomo's server configuration.
0
Bozzie4IT ArchitectCommented:
Can't remember, it's been 2 years since I used it myself (modified it to incorporate in a bigger analysis tool)
It does the job ...

cheers,

Tom
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Lotus IBM

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.