$HOME could be unset then homedir is looked in passwd. I had the same issue when I was trying to map homedir with Shared Filesystem Isolator but I thought it was issue with my setup. It will be great if this get resolved.
pt., 17.06.2016, 19:11 użytkownik Jie Yu <[email protected]> napisał: > Hansel, I think it was definitely not intentional. I am wondering what > happens if the user does not have a home directory, what should $HOME be? > > - Jie > > On Fri, Jun 17, 2016 at 9:08 AM, <[email protected]> wrote: > >> Hi Haosdent, >> >> Yes, I had confirmed that setuid does get called correctly, and the shell >> environment is not set up. My question is more along the lines of "is this >> expected? is it a bug? is it intentional?" >> If it wasn't intentional, I was thinking maybe I'll try a making a small >> patch to see if it works out. >> >> I couldn't find the JIRA ticket. Happen to know what it was or anything >> it might be referring to? >> >> Thanks, >> -Hansel >> >> On Jun 16, 2016, at 8:00 PM, haosdent <[email protected]> wrote: >> >> Hi, @Hansel Chung As I checked, if --swithc_user=true (default variable >> is true) when you launch Mesos agent, executor would call os::setuid >> and os::setgroups before launch your tasks. But the shell environment may >> not set. (I remember we have a ticket for this.) You could use `id` as your >> task command to verify if user set correctly. >> >> >> On Fri, Jun 17, 2016 at 9:17 AM, Hansel Chung <[email protected]> >> wrote: >> >>> Hi, >>> >>> I had a question, I noticed that if mesos frameworks request that >>> executors use a certain user, the env variables aren't set up for that >>> user, but what the agent daemon was run as. >>> >>> As an example: >>> Run mesos-slave as root: >>> HOME=/root >>> USER=root >>> >>> If I have an executor to be launched as testuser, the env looks like: >>> HOME=/root >>> USER=root >>> instead of: >>> HOME=/home/testuser >>> USER=testuser >>> >>> This is normally set by login or sudo when running as a user, but I >>> can't seem to find a way to use these to set up a proper environment as the >>> target user. Is there a reason we don't call getpwuid() to set a >>> $HOME during setup of execlp() from executor.cpp? (Oh, and might as well >>> populate $USER while we're at it) >>> >>> Thanks, >>> -Hansel >>> >> >> >> >> -- >> Best Regards, >> Haosdent Huang >> >> >> >

