jupyterhub / systemdspawner

Spawn JupyterHub single-user notebook servers with systemd
BSD 3-Clause "New" or "Revised" License
92 stars 49 forks source link

Dynamic users' home directories are set to '/' #96

Open simonello opened 2 years ago

simonello commented 2 years ago

Here are the details of the dynamic user created.

(base) [root@jupyter jupyterenv]# getent passwd jupyter-someuser-singleuser
jupyter-someuser-singleuser:*:65492:65492:Dynamic User:/:/sbin/nologin
(base) [root@jupyter jupyterenv]# 

And here is one of the issues it causes.

[jupyter-someuser-singleuser@jupyter ~]$ ssh-keygen 
Generating public/private rsa key pair.
Enter file in which to save the key (//.ssh/id_rsa): 
Could not create directory '//.ssh': Read-only file system
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Saving key "//.ssh/id_rsa" failed: No such file or directory
[jupyter-someuser-singleuser@jupyter ~]$ 

Here are the relevant variables.

USER=jupyter-someuser-singleuser
PWD=/var/lib/someuser
HOME=/var/lib/someuser
MAIL=/var/spool/mail/jupyter-someuser-singleuser
LOGNAME=jupyter-someuser-singleuser

How do I configure systemdspawner to set users to the correct home directory?

welcome[bot] commented 2 years ago

Thank you for opening your first issue in this project! Engagement like this is essential for open source projects! :hugs:
If you haven't done so already, check out Jupyter's Code of Conduct. Also, please try to follow the issue template as it helps other other community members to contribute more effectively. welcome You can meet the other Jovyans by joining our Discourse forum. There is also an intro thread there where you can stop by and say Hi! :wave:
Welcome to the Jupyter community! :tada:

simonello commented 2 years ago

Looks like this is an old existing issue with systemd..

https://github.com/systemd/systemd/issues/9652

ivan-tkatchev commented 1 year ago

Looks like this is an old existing issue with systemd..

systemd/systemd#9652

No, it is an entirely different issue. @simonello pasted the output of getent - user entries exist, but contain incorrect information.