设为首页
收藏本站
用户名
Email
自动登录
找回密码
密码
登录
注册
快捷导航
平台
Portal
论坛
BBS
文库
项目
群组
Group
我的博客
Space
搜索
搜索
热搜:
shell
linux
mysql
本版
用户
LinuxSir.cn,穿越时空的Linuxsir!
»
论坛
›
Linux 综合讨论区 —— LinuxSir.cn
›
shell进阶应用、shell编程
›
redhat9.0 bash PATH问题[已解决]
返回列表
查看:
918
|
回复:
6
redhat9.0 bash PATH问题[已解决]
[复制链接]
boqiang
boqiang
当前离线
积分
8
IP卡
狗仔卡
发表于 2003-9-1 15:00:21
|
显示全部楼层
|
阅读模式
redhat9.0 bash 发现以root登录后的PATH和普通用户的PATH竟然不同,导致在root下安装的软件在普通用户下无法正常使用,请教该修改哪个文件使它们相同.
另在etc下的profile和bashrc下都没有找到该软件的PATH设置,难道有其它文件是记录PATH的吗?
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
显身卡
KornLee
KornLee
当前离线
积分
6960
IP卡
狗仔卡
发表于 2003-9-1 15:06:32
|
显示全部楼层
1,root用户和普通用户的PATH当然不同
2,root安装的程序出于安全,普通用户是不能用的,除非给普通用户授权,像修改/etc/sudoers,给某些普通用户使用一些系统命令的权限.
3,在/etc/profile中,用export PATH=~/DIRNAME这样的形式导出一下就可以啦~
本版这样的讨论很多,请先搜索一下!
GOODLUCK~~~
回复
支持
反对
使用道具
举报
显身卡
boqiang
boqiang
当前离线
积分
8
IP卡
狗仔卡
楼主
|
发表于 2003-9-1 15:25:08
|
显示全部楼层
谢谢版主的回复,我想请教一下?
普通用户的PATH是写在/etc/profile内
那么这个root记录PATH的文件是哪个呢,因为这个程序所涉及的PATH比较多,所以用export比较复杂,我想比较一下两者的区别,这样比较好改
回复
支持
反对
使用道具
举报
显身卡
KornLee
KornLee
当前离线
积分
6960
IP卡
狗仔卡
发表于 2003-9-1 17:50:55
|
显示全部楼层
/etc/profile是个全局的环境文件,他包含了root和所有用户的环境变量,你可以用不同身份运行env,比较一下他们的区别,那么每个用户的PATH是不同的.
建议修改PATH时要仔细.
在脚本中使用export很方便,怎么会复杂呢?:ask
回复
支持
反对
使用道具
举报
显身卡
boqiang
boqiang
当前离线
积分
8
IP卡
狗仔卡
楼主
|
发表于 2003-9-1 19:22:47
|
显示全部楼层
这是我的profile,但找不到PATH的设置,感觉它调用了另外一个文件,想请教是否调用了另外一个储存PATH的文件
# /etc/profile
# System wide environment and startup programs, for login setup
# Functions and aliases go in /etc/bashrc
pathmunge () {
if ! echo $PATH | /bin/egrep -q "(^|
$1($|
" ; then
if [ "$2" = "after" ] ; then
PATH=$PATH
1
else
PATH=$1
PATH
fi
fi
}
# Path manipulation
if [ `id -u` = 0 ]; then
pathmunge /sbin
pathmunge /usr/sbin
pathmunge /usr/local/sbin
fi
pathmunge /usr/X11R6/bin after
unset pathmunge
# No core files by default
ulimit -S -c 0 > /dev/null 2>&1
USER="`id -un`"
LOGNAME=$USER
MAIL="/var/spool/mail/$USER"
HOSTNAME=`/bin/hostname`
HISTSIZE=1000
if [ -z "$INPUTRC" -a ! -f "$HOME/.inputrc" ]; then
INPUTRC=/etc/inputrc
fi
export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC
for i in /etc/profile.d/*.sh ; do
if [ -r "$i" ]; then
. $i
fi
done
unset i
回复
支持
反对
使用道具
举报
显身卡
KornLee
KornLee
当前离线
积分
6960
IP卡
狗仔卡
发表于 2003-9-1 19:27:26
|
显示全部楼层
看我的/etc/profile是怎么用export导出PATH的.
..
export PATH USER LOGNAME HOSTNAME HISTSIZE INPUTRC PS1 HISTFILE
[color=red]export PATH=${PATH}:~/myshell
export PATH=${PATH}:~/myperl[/color]
...
复制代码
红字是我后添加的.
用env显示环境
[/home/javalee/myshell]env
_=/usr/bin/env
PATH=/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:[color=red]/home/javalee/myshell:/home/javalee/myperl:/home/javalee/myshell:/home/javalee/myperl[/color]
....
复制代码
回复
支持
反对
使用道具
举报
显身卡
tonyoung
tonyoung
当前离线
积分
126
IP卡
狗仔卡
发表于 2004-2-27 14:15:47
|
显示全部楼层
不错,顶顶
回复
支持
反对
使用道具
举报
显身卡
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册
本版积分规则
发表回复
回帖后跳转到最后一页
浏览过的版块
网络技术\网络安全讨论
服务器架设、应用、维护
Gentoo Linux
Debian Linux
SuSE Linux
Mandriva Linux
Redhat/Fedora/CentOS Linux
Linux 程序设计专题讨论
Linux小型、嵌入式系统
Copyright © 2002-2023
LinuxSir.cn
(http://www.linuxsir.cn/) 版权所有 All Rights Reserved.
Powered by
RedflagLinux!
技术支持:
中科红旗
|
京ICP备19024520号
快速回复
返回顶部
返回列表