Open a support ticket. also – it shouldn’t be using a nsh path for a os user’s home dir…
you mean that the blcred command should not use NSH UNC path and that's a defect, or I have something not correctly setup ?
I’m not sure why it’s saying the home dir for the user is a nsh path. that doesn’t seem correct. the user’s home dir is not a nsh path right ?
From the OS point of view, this is my homedir : /users/asimon/
from NSH point of view, my homedir is //xxxxxx/users/asimon/
xxxx being the application server which i'm logged on.
asimon@lx......:~> ls -al .bladelogic/
drwx------ 3 asimon unixadm 4096 Apr 21 14:24 .
drwxr-xr-x 11 asimon unixadm 4096 Apr 21 14:42 ..
-rw-r--r-- 1 asimon unixadm 5520 Apr 21 16:00 blcli.log
[asimon@lx....]% ls -al //lx...../users/asimon/.bladelogic
ls: Unable to access directory //lx...../users/asimon/.bladelogic: Permission denied
Do you have the root persmissions on the server?
when you acquire credentials, this goes in your home directory/.bladelogic/blsecc
make sure you have access to this particular directory.
try this.. when you login to your Putty, the place where this lands is your home. Now cd to the NSH install location and cd to bin
./blcred cred -acquire -profile defaultProfile -username <yourUserName> -password <password>
./blcred cred -list
Right – but $HOME doesn’t change to include the server path. and for you to access the directory via the agent there needs to be a mapping in place.
Oh yes, the agent is mapped to the root, so technically, you should have the root permission or Sudo root or Root itself to login to acquire the credentials.
Or probably, if this is mapped to someone else, you need to login as that user..
The session credentials are probably into /root/.bladelogic/blsecc
rajeev - i think you are entirely incorrect.
[asimon@xxxxxx]% blcred cred -acquire -profile defaultProfile -i $HOME/.bladelogic/.user/user_info.dat
--> at this point he's 'asimon', not root. his home dir should be /users/asimon, and he did start nsh. starting nsh doesn't mean you automatically cd into anything. $HOME should still be /users/asimon.
2015-04-21 15:04:15,186 WARN [main] (BlLogger.java:152) - Failed to set permissions on BladeLogic user home dir.2
Created BladeLogic user's home dir : //xxxxxx/users/asimon/.bladelogic
--> here is what doesn't make sense. $HOME should be /users/asimon, not //xxx/users/asimon. even if you cd over to another system $HOME won't change - eg:
prime% echo $HOME
prime% cd //blapp85-red6x64
blapp85-red6x64% echo $HOME
i started nsh and $HOME is a local path. cd'd to another system doesn't change that.
ali - when you start nsh can you echo $HOME - where does that point to ? do you have a .nshrc in your home dir - if so what is in it?
I found the culprit.
asimon@lx1217:~> echo $HOME
[asimon@lx1217]% echo $HOME
This come from the '.nshrc' file I think (but that always worked before the upgrade)
[asimon@lx1217]% cat /etc/skel/.nshrc
export HOME PATH LD_LIBRARY_PATH
if I unload the NSHRC it works as $HOME is now correct.
But anyway there must have been a change in the way it works, cause it worked with the previous version :-P
Ok, you need to change your .nshrc to not reset $HOME.
yes I have modified the .nshrc to not reset the $HOME
What really make me wonder is why it used to work. I think we had this configured this way, because when we "cd" from a remote server, it wasn't going back to the correct source/home dir.
But, this was with 8.2.00 (no SP, no patch, nothing).... So I'll put this on that account :-)
Anyway,We are now live with 8.6 SP1, and that's really great.
when you have a nsh path - a server in the dir path - eg //server1/foo/bar then all access will go through the rscd on that server. so if your os user is mapped to a local account that cannot read //server1/foo/bar you get an error accessing the file. $HOME will always be just the dir path, no //server1 in the path. it's always local to wherever you started nsh. you can always use @ to refer to the box nsh is running from - eg cp //server2/foo/bar //@/foo - or something like that.