This article is from the Frequently Asked Questions for Linux, the Free/Open Source UNIX-like operating system kernel that runs on many modern computer systems. Maintained by David C. Merrill with numerous contributions by others. (v1.0).
A: You probably have some permission problems, or you have a file /etc/ nologin.
In the latter case, put rm -f /etc/nologin in your /etc/rc.local or /etc/rc.d /* scripts.
Otherwise, check the permissions on your shell, and any file names that appear in error messages, and also the directories that contain these files, up to and including the root directory.
 
Continue to: