HOME directory not found

Hey, I have set up a new instance of OOD for the first time and when I log in I get this home directory not found error. I can see previous discussions from a while ago but none of the solutions there helped. Of note regarding my setup: there is only one node and OOD is running on the same node. The home directory has been changed from /home to a separate directory in /project/home. If I patch the ruby code as suggested in an old topic to always accept the home directory then it tries to create folders in /scratch and /project which already exist.

I can use the ssh app if I navigate there directly and it says permission denied for .ssh/known_hosts under the correct home directory which is odd.

Yea changing home directories can be problematic. I mean if we can’t rely on LDAP as the source of truth, then it sort of all falls apart.

Is there a reason why you can’t change this value in LDAP? Or mabye you can create a symlink from /home to /project/home.

We aren’t using LDAP. I can make a symlink, but is there a reason that OOD doesn’t just use the environment variables?

Symlinking the home directory didn’t work - still showing the same error.

So these are local users?

I’m not sure how you mean changed. If you’re not using LDAP, then the users must be local. If they’re local, then you must have changed the HOMEs in /etc/passwd.

We can’t rely on just the HOME variable because of the Ruby libraries that we and other parts of the system use. Specifically the Etc library - module Etc - Documentation for Ruby 3.4

This library is going to find the users home not from the enviornment variable, but from a Linux system call getpwnam(3) - Linux manual page or similar which ultimately hits the /etc/passwd file for local users or LDAP for LDAP users.

Did you just change the HOME environment variables without changing /etc/passwd data?

These are local users yes, for which the HOMEs were changed in /etc/passwd

I tried toggling SELinux and it seems to have progressed further, perhaps it was an SELinux issue? However now when accessing the dashboard I get error 403 which in the logs is ‘[ActionDispatch::HostAuthorization::DefaultResponseApp] Blocked host: <login / compute host IP>’. Seems like it’s not wanting to go through to its own IP. SSH app seems to work fine now. I have tried setting ALLOWED_HOSTS in /etc/ood/profile to no avail.

Manually editing the dashboard config to add the host IP worked and I can access the dashboard.

Setting the servername manually to my host IP worked (it was previously set to servername: null).
Allow ips by johrstrom · Pull Request #2998 · OSC/ondemand · GitHub seems related

I am now getting file permission errors when accessing trivial things such as ssh-keygen, cloning directories etc. and an InvalidAuthenticityToken when accessing job templates. The dashboard is able to create files however. Am I missing something with the IP / user configuration?

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.