PASE环境默认发布并使用korn shell。 ibmpaseforishell变量可用于更改默认值,但适用于所有用户。在使用SSH登录后,如何更改用户的默认shell?
答案 0 :(得分:1)
将.profile
文件添加到其主目录(即.home / aaron / .profile),其中包含以下内容:
# detect if we're in a PASE shell
/QSYS.LIB/QSHELL.LIB/UNAME.PGM > /dev/null 2>&1
if [ $? != 0 -a "$SHELL" != "/QOpenSys/usr/bin/bash" ]
then
exec /QOpenSys/usr/bin/bash
fi
注意.profile
文件是korn寻找的文件。如果你的默认shell是bash,那么它将按顺序查找.bash_profile
,.bash_login
和.profile
。
答案 1 :(得分:0)
如今,最好的方法是使用QSYS2.SET_PASE_SHELL_INFO()
SQL过程。
-- set current user's shell
CALL QSYS2.SET_PASE_SHELL_INFO('*CURRENT', '/QOpenSys/pkgs/bin/bash');
-- set a specific user's shell
-- (requires *SECADM special auth plus *USE and *OBJMGT to the user profile)
CALL QSYS2.SET_PASE_SHELL_INFO('THATUSER', '/QOpenSys/pkgs/bin/bash');
-- set the default shell which is returned for users that do not have
-- (requires *SECADM special auth plus *USE and *OBJMGT to QSYS)
CALL QSYS2.SET_PASE_SHELL_INFO('*DEFAULT', '/QOpenSys/pkgs/bin/bash');
有关此主题的更详细的文章是here。