Solved

Determine actual file size across Netware Tree

Posted on 2009-05-12
3
524 Views
Last Modified: 2012-05-06
I am trying to determine the actual total file size by volume across our Netware estate. As the volumes are compressed, none of the tools I have tried to use are accurate.

Can someone tell me how I can achieve this?

I am looking for something that will interrogate the Tree to determine all the servers and volumes then enumerate the total size of files on these. I know that the tools I have used previously have been inaccurate as if I right click within windows explorer then the file information is drastically different. I have also verified this by copying the data to an uncompressed location.

Thanks

Aidan
0
Comment
Question by:aideb
3 Comments
 
LVL 28

Accepted Solution

by:
Bill Bach earned 450 total points
ID: 24370256
Therte may be no way to "easily" walk all the volumes, but the first question to be answered is how to determine the "correct" disk space that you expect to see.   Keep in mind that a compressed volume will be not only compressing the disk space, but also can be using a very small block size (512 bytes) and possibly storing full blocks in a different location that partially-filled blocks.  This will tend to make the numbers show differently depending on your display mechanism.

A standard DIR command will give you the file size in bytes, and a DIR /S will attempt to locate for you ALL files in the directory structure (i.e. volume) and sum their sizes.  However, DIR knows nothing about actual block size, which is an indication of how much storage space can be used up.

In a Windows OS, or on a NetWare volume without compress or block suballocation, you must first determine your block size.  Let's say that your block size is 32K.  This means that ALL files less than 32768 bytes will take up exactly 32K of storage, regardless of whether there is one byte in there or 32767.  This makes the reported sizes from DIR a bit less useful.  In fact, you must tally each file separately like this:
    Blocks = FileSize / 32K
    If FileSize % 32K > 0 then Blocks = Blocks + 1
    SizeOnDisk = Blocks * 32K
And them sum all of these for EVERY file in the directory list.   Ouch.  You can get a feel for this by creating a small file on your Windows HDD, then right-clicking it and selecting Properties.  Compare the value for "Size" versus "Size on Disk" and you'll see the difference.

On a compressed NetWare volume with block suballocation enabled (which IIRC is the default), the data is compressed, then stored on a 32K block, and if there are "extra" bytes left over, then these are stored in their own 512-byte block inside a larger 32K block -- making for more efficient disk space usage to be sure.  This means that copying data from a NetWare server with block suballoc enabled) to a Windows server will almost ALWAYS take up more space on the physical disk.  

The NDIR command can give you more information if you include the /VOL or /COMP options -- try "NDIR /VOL /COMP" and see what you get.  Notice, though, that the size reported may or may not be what you want.  You may still have to run the entire directory structure with something like "NDIR /SUB /COMP /C" and let it run to completion.


Anyway -- once you get this figured out for a single given volume, you can then replicate it to all other volumes in a big batch file.  I think you can include a servername and volume in the NDIR command IIRC, so you should be able to build one big batch file with all of your data volumes in it.
0
 
LVL 10

Assisted Solution

by:elf_bin
elf_bin earned 50 total points
ID: 24383771
Use the inventory function of Novell Remote Manager on a per volume basis (I'm assuming NetWare 6.5 here).  That'll list things like: total subdirectories, total files file types, space used, space free, space changes (last day, week , month), ownership, modified times and so on.
0
 
LVL 2

Author Comment

by:aideb
ID: 24439143
We have a mixture of 4 - 6.5. Netware only shows the compressed size of volumes. I have managed to get the information required. Thanks for all the help.
0

Featured Post

Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

Join & Write a Comment

This script will sweep a range of IP addresses (class c only, 255.255.255.0) and report to a log the version of office installed. What it does: 1.)      Creates log file in the directory the script is run from (if it doesn't already exist) 2.)      Sweep…
Not long ago I saw a question in the VB Script forum that I thought would not take much time. You can read that question (Question ID  (http://www.experts-exchange.com/Programming/Languages/Visual_Basic/VB_Script/Q_28455246.html)28455246) Here (http…
This video discusses moving either the default database or any database to a new volume.
This video shows how to remove a single email address from the Outlook 2010 Auto Suggestion memory. NOTE: For Outlook 2016 and 2013 perform the exact same steps. Open a new email: Click the New email button in Outlook. Start typing the address: …

707 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

18 Experts available now in Live!

Get 1:1 Help Now