AIX下用su切换用户时不能加载环境变量的问题解决
2010-03-22 21:44
886 查看
前些日子在ibm-aix下安装sybase15.0.3时遇到了一个su切换用户时不能加载该用户环境变量的问题。现在问题情况及解决方法整理一下。
在aix下用sybase用户安装并配置完服务后,要设定成开机自动启动。
startsybase.sh的脚本为:
su - sybase -c "startserver -f RUN_servername
-f RUN_servername_BS
"
这句脚本的意思是:从当前用户(root)切换到sybase用户下,并以sybase用户的身份执行startserver -f RUN_servername
-f RUN_servername_BS。
遗憾的是:执行该脚本的时候,提示找不到找不到SYBASE环境变量。 导致不能启动sybase主服务和备份服务器。
上面的语句在Linux运行没有任何问题,但在AIX环境就会报错。
然而,用su - sybase手动切换到sybase用户下,再执行env却能够看到所有SYBAE,SYBAE_ASE,SYBASE_OCS等相关的环境变量。
也就是说用su手动切换到sybase用户时,自动加载了sybase的环境变量。在脚本中执行su - sybase -c ..... 不会自动加载环境变量。
经过苦苦的搜索和自己的实验,最后问题解决了。如果想要加载sybase用户的环境变量,需加一个参数:-l
su - sybase -l -c "startserver -f RUN_servername
-f RUN_servername_BS
"
但是很奇怪的是: -l这个参数在AIX下的man su 中根本就没有提到。
这么一个小小的问题的确苦恼了我很长时间。最后终于解决了。
参考:http://linux.chinaunix.net/bbs/viewthread.php?tid=1059910&extra=&page=1
在aix下用sybase用户安装并配置完服务后,要设定成开机自动启动。
startsybase.sh的脚本为:
su - sybase -c "startserver -f RUN_servername
-f RUN_servername_BS
"
这句脚本的意思是:从当前用户(root)切换到sybase用户下,并以sybase用户的身份执行startserver -f RUN_servername
-f RUN_servername_BS。
遗憾的是:执行该脚本的时候,提示找不到找不到SYBASE环境变量。 导致不能启动sybase主服务和备份服务器。
上面的语句在Linux运行没有任何问题,但在AIX环境就会报错。
然而,用su - sybase手动切换到sybase用户下,再执行env却能够看到所有SYBAE,SYBAE_ASE,SYBASE_OCS等相关的环境变量。
也就是说用su手动切换到sybase用户时,自动加载了sybase的环境变量。在脚本中执行su - sybase -c ..... 不会自动加载环境变量。
经过苦苦的搜索和自己的实验,最后问题解决了。如果想要加载sybase用户的环境变量,需加一个参数:-l
su - sybase -l -c "startserver -f RUN_servername
-f RUN_servername_BS
"
但是很奇怪的是: -l这个参数在AIX下的man su 中根本就没有提到。
这么一个小小的问题的确苦恼了我很长时间。最后终于解决了。
参考:http://linux.chinaunix.net/bbs/viewthread.php?tid=1059910&extra=&page=1
相关文章推荐
- 关于AIX下的su不能使用环境变量问题的解决
- 解决crontab不加载环境变量问题
- 【ZYNQ LINUX】使用问题04 ubuntu12 环境变量修改错误,不能进入root 修改的解决办法
- Ubuntu英文环境下解决chrome evernote插件不能切换到中文印象笔记-剪藏以及印象笔记-悦读的问题
- linux 切换用户并加载用户本身的环境变量
- .Net环境水晶报表在98下发布,出现"不能加载报表..."问题的解决
- ubuntu修改用户环境变量解决音乐播放器Rhythmbox乱码问题
- oracle11g问题:新建oracle用户后,在oracle用户下找不到.bash_profile文件;不能修改环境变量配置。
- linux中修改环境变量之后导致系统崩溃(用户所有命令不能使用)的解决办法
- linux 中切换用户:su和su -的使用环境变量详解
- 亲测!JDK环境变量设置——或找不到或无法加载主类con.sun.tools.javac.Main的问题解决
- 切换用户导致环境变量无法生效解决办法
- 控制shell脚本执行频率、解决shell脚本不能修改环境变量等问题
- 解决”在root用户下可以echo 环境变量但是在普通用户下无法echo“问题
- 关于XP注销和切换用户选项不能弹出的问题解决
- root用户Linux 环境变量的配置解决(-bash: jps: command not found)有关问题
- android中webView加载H5,JS不能调用问题的解决
- 解决文本框在updatepanel中得到焦点,输入法不能切换到中文的问题
- 解决vbe6ext.olb不能被加载 内存溢出 问题
- ubuntu 12.04配置变量后切换到root下环境变量无效的解决办法。