免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 7991 | 回复: 4
打印 上一主题 下一主题

[新手入门] 请问各位为什么LIBPATH变量在CDE界面失效? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-11-05 12:47 |只看该作者 |倒序浏览
一个用户的 $HOME/.profile下设置了LIBPATH
同时将$HOME/.dtprofile的最后一行注释已经去掉只保留了DTSOURCEPROFILE=true,
按照理论来讲应该在通过CDE界面访问时 .profile应该起作用了.但是测试发现
通过XMANAGER连接该服务器,用这个用户登录,LIBPATH就为空,
而通过TELNET,同样用这个用户连接,LIBPATH就存在.
同样如果用root用户SU到这个用户,他的LIBPATH就起作用了
哪位高手知道是什么原因?急急急。。。。。。。。。

论坛徽章:
0
2 [报告]
发表于 2008-11-05 13:40 |只看该作者
其它变量起作用了吗?
在控制台上用图形界面进呢?

论坛徽章:
0
3 [报告]
发表于 2008-11-05 14:06 |只看该作者
其它变量起作用了。
谢谢,我已经解决了。
是看别人的帖子解决的。原因如下:
如果用户在配置文件中设置了LIBPATH环境变量(将export LIBPATH=xxx加入~/.profile,然后在~/.dtprofile中设置DTSOURCEPROFILE=true)并使用CDE环境和AIX Term,就会发现在打开的AIX Term中LIBPATH变量被清除了。
这是因为出于安全性的考虑,AIX会在执行SUID的程序之前清除LIBPATH变量(防止恶意用户通过设置LIBPATH使SUID程序调用破坏性的代码)。aixterm就是这样的SUID程序。
要想在AIX Term中预设LIBPATH环境变量,您需要创建~/.kshrc文件。这个文件应该包括以下内容:
export LIBPATH=/usr/lib,/lib,<您想添加的路径>
同时,为了使命令行登录也有同样的效果,您需要修改~/.profile,使其包括以下内容:
export ENV=$HOME/.kshrc
这样启动AIX Term后,LIBPATH环境变量就可以正常使用了。

论坛徽章:
0
4 [报告]
发表于 2008-11-05 16:35 |只看该作者
原来是这样。
谢谢!

论坛徽章:
0
5 [报告]
发表于 2014-07-18 12:37 |只看该作者
谢谢!:wink:
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP