OCS Inventory is an open-source system inventory package that comes with agents for both linux machines and windows. I don’t have a significant inventory at my new job, and certainly didn’t want to go around with a pad of paper collecting information, so I’ve installed this on a debian VM (my first install of debian ever, btw).
There wasn’t a deb for it as far as I could find, so I compiled the source by hand. To meet dependencies I had tagged the box as a web server during the initial network install. You can find a list of packages to install here and here. I used the later list, a few of the packages were already installed but apt played nice.
Once installed, I put the windows agent on my workstation, but nothing really happened. I ran “Ocsinventory.exe /NP /server:servername /DEBUG” from the command prompt (/NP means don’t use the IE proxy) which creates a couple .log files. in my hostname.log I was getting a “ERROR: Http error: 500”. I checked the Apache2 error.log and found “… Column ‘NAME’ cannot be null at …” A little searching revealed a db design problem which required running the sql statement “ALTER TABLE softwares CHANGE NAME NAME VARCHAR(255) default NULL; ” to resolve. I could tell from the error how to fix it, but I didn’t realize it wasn’t a problem with my configuration. I guess it’s a common problem. As soon as I did this, things started working and my workstation showed up in the web interface, windows xp key and all.
This is certainly going to help inventory. Why create a table of computers and IP addresses manually when it can all be pushed into here? The software license benefits aside, this is going to save a lot of time.
After I deploy the agent on a few more workstations and test out the linux agent, I’ll start taking a look at installing GLPI and see what exact benefits I can get from teaming these two pieces of software.