I am not too sure about this, since I only have a couple users on my box, but I believe you need to create a home directory for a user before logging in as that user. So, as root:
1. Add a new user (using useradd, userdrake or what-have-you), say, fred.
2. Add fred to any groups you need him to be in (probably you should at least have a group called fred also, which only fred is a member of)
3. Create a home directory for fred: mkdir /home/fred
4. Make sure fred owns and can use his own home directory: chown fred /home/fred, chgrp fred /home/fred
5. Log in as fred
The reason for this (and maybe also the reason for your error message) is that if /home/fred does not exist before fred logs in, it needs to be created, and since fred does not have permission to write to /home, it gives you an error.
I could be way off base on this though
Like I said, I only have a couple of users. Try the above and see if it helps though.