Chinaunix首页 | 论坛 | 博客
  • 博客访问: 826483
  • 博文数量: 330
  • 博客积分: 9641
  • 博客等级: 中将
  • 技术积分: 3181
  • 用 户 组: 普通用户
  • 注册时间: 2007-01-19 14:41
文章分类

全部博文(330)

文章存档

2012年(17)

2011年(135)

2010年(85)

2009年(57)

2008年(36)

我的朋友

分类:

2008-11-28 14:58:17

乐哥的话-关于env-update




env-update脚本

/etc/env.d中的好几个文件都定义了PATH变量。这并没有错:当你运行env-update的时候,它会在更新环境变量之前把这些定义都追加到PATH里,因此对于软件包(或者用户)来说将会很容易地设置他们自己的环境变量,而不影响到现有变量的值。

env-update脚本会根据/etc/env.d里文件的字母顺序来附加变量的值。这些文件名必须要以两位数字开头。

代码 2.3: env-update所用的更新顺序

00basic 99kde-env 99local
+-------------+----------------+-------------+
PATH="/bin:/usr/bin:/usr/kde/3.2/bin:/usr/local/bin"

变量并不总是被串联起来,只有下列变量才会被串联:KDEDIRS、PATH、LDPATH、MANPATH、INFODIR、INFOPATH、 ROOTPATH、CONFIG_PROTECT、CONFIG_PROTECT_MASK、PRELINK_PATH以及 PRELINK_PATH_MASK。对于(/etc/env.d里的文件中按照字母顺序排列后)其他所有变量,最新定义的值才会被使用到。

当你运行env-update的时候,它会在文件/etc/profile.env里(会被/etc/profile使用)创建所有的环境变量。它也会从 变量LDPATH中获取信息用来建立/etc/ld.so.conf。这些完成以后,它将运行ldconfig来重建动态链接器需要的文件/etc /ld.so.cache。

如果你想在运行env-update后立即看到效果,执行下面的命令来更新你的环境。自己安装过Gentoo的用户可能已经记住了这个安装指南中提到过的命令:

代码 2.4: 更新环境

# env-update && source /etc/profile

注意: 上面的命令只会更新你当前终端里的环境变量、新控制台以及它们的子程序。因此,假如你正在X11里工作,你要么在每一个你打开的终端里输入source /etc/profile,要么重新启动X,这样所有新的终端才能引用到新的变量。如果你使用了登录管理器,登陆成root然后输入/etc /init.d/xdm restart。如果不是这样,你需要注销然后重新登录回X这样才能产生使用新变量值的子程序。

重要: 你在定义其他变量时不能使用shell变量。这意味着这样的定义FOO="$BAR"(此处$BAR是另外一个变量)是不允许的。
阅读(2844) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~