BuildForge Help

Troubleshooting an Agent on UNIX, Linux, or MacOS

To troubleshoot an agent on UNIX, Linux, or MacOS, try the following steps.
  1. Run bfagent from a shell. You should get the following response:
    200 HELLO - Build Forge Agent v7.0.1.122
    You should get messages if there are shared library problems. They can usually be resolved by setting the path correctly.
  2. Check that the agent is listening. Use the following command (assuming the port is the default, 5555):
    telnet localhost 5555
    You should again get a 200 HELLO response. If you do not, check your systems network configuration. Verify that the inetd configuration is correct, or check with your Linux or UNIX system administrator.
  3. Check authentication. Execute the following commands, using your login credentials:
    telnet localhost 5555
    username <user name>
    password <password>
    cmd ping
    go
    You should see a message like the following:
    AUTH: set user account to <user name>
    If the above tests work but builds are failing, and a test of your server shows a user authentication error, check the pluggable authentication modules (PAM) configuration. If you see a message like the following, proceed to the next step.
    AUTH: unable to set user account to <user name>: unknown account (1)
  4. Check PAM (Pluggable Authentication Module) configuration. This is a common issue on AIX platforms. Depending on your operating system, PAM is configured in one of two ways: with a line in the pam.conf file or with a file in thepam.d directory.
    • pam.conf: see if /etc/pam.conf exists. If it does not, go to the instructions for pam.d below. If it does, create an entry for bfagent. Copy the lines for another application (sshd or login are good choices) and substitute bfagent for the [application] field.

      The format for each line of the file:

      [application] [when] [mode] [module]
      The fields are as follows:
      • [application] - name of the application that needs to authenticate users
      • [when] - type of authentication request
      • [mode] - actions to take (based on authentication success or failure)
      • [module] - authentication module to invoke
      The following is an example of entries copied from login to bfagent. Note that the module names may be different from system to system.
      bfagent auth requisite          pam_authtok_get.so.1
      bfagent auth required           pam_dhkeys.so.1
      bfagent auth required           pam_unix_cred.so.1
      bfagent auth required           pam_unix_auth.so.1
      Important: Solaris 10 exception: delete any lines that specify a module of pam_dial_auth, for example pam_dial_auth.so.1. Agent authentication does not work if that module is included.
    • pam.d: The /etc/pam.d directory contains several files, each named for an application. Within each file, each line is of the format
      [when] [mode] [module]

      Create a file named bfagent by copying it from another application (suggested: sshd or login).

    Testing: after you set up the PAM entries, try to log in again as described in step 3.

    For more information, see PAM documentation at http://www.sun.com/software/solaris/pam/.