这是CentOS 5.我创build/etc/profile.d/java.sh文件,我设置和导出JAVA_HOME 。 一切工作正常在terminal。 当我试图在PHP下从PHP获得这个环境variables时,我使用shell_exec("env")后得到以下内容: TERM=xterm-color _=/bin/env PWD=/home/… LANG=C SHLVL=3 甚至没有JAVA_HOME的标志。 我应该在哪里宣布它为可见的阿帕奇?
我正在尝试使用SetEnvIf(Apache2,通过.htaccess文件)来存储一个环境variables,其中要分配给variables的值需要包含空格。 例如,试图设置环境variables“AUTH_KEY”的值为“ab”: SetEnvIf Request_URI "^/example" AUTH_KEY="a\ b" 无论我做什么,我都无法逃离价值空间 – 空间作为要创build的env vars之间的分隔符(在上面的AUTH_KEY中创build了值“a”和第二个env var被创build为“b”“)。 我也试过单引号也没有运气。 我如何逃避太空angular色?
朋友们, 我在Linux上使用GNU bash作为我的shell: $ bash –version GNU bash, version 4.2.45(1)-release (x86_64-pc-linux-gnu) Copyright (C) 2011 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software; you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. $ 当我设置一个FSpath作为它的值的环境variables时,它的行为非常奇怪。 假设我想将/ opt / database […]
在我的pipe理员工作期间,我需要login到几个远程的ssh服务器。 我与三个不同的计算机客户端工作,所有这些都是Debian GNU / Linux系统。 我保留一个工作空间目录,我把我需要做的所有工作都放在这个目录下,该目录包含一个bashrc文件和一个ssh_config文件。 我手动同步该目录内容与脚本,使用rsync从一台客户端计算机到其他客户端,因为我移动并开始使用不同的客户端。 三个客户端上的本地用户都需要最less的configuration,所以如果我需要创build一个新的本地用户或重新安装一个客户端,我只需要rsync工作空间,并添加一个引用到我的自定义workspace/bashrc在真实用户的$HOME/.bashrc 。 我的自定义workspace/bashrc创build了几个别名,我得到我平常的环境,无论我使用的客户端。 我的自定义workspace/bashrc创build别名以这种方式连接到远程服务器: alias s1='ssh -F ~/workspace/etc/ssh_config server1.example.com' 我只需在任何客户端的terminal中键入s1loginserver1,因为我的自定义ssh_config设置了所需的公钥authentication选项,正确的端口server1正在侦听并且正确的用户。 现在这就像一个魅力,只要ssh命令是我所需要的。 不幸的是,一旦我需要另外一个使用ssh命令,事情变得更加混乱。 例如,如果我需要rsync什么东西到其中一台服务器,我不得不写下整个ssh命令: rsync -Pavz –delete -e "ssh -F $HOME/workspace/etc/ssh_config" … 其他命令(如scp , ssh-copy-id等) scp发生类似的情况。 我希望能写 rsync -Pavz –delete -e "ssh" … 而是让ssh从环境variables中取出它的configuration文件名,这样我就可以在我的bashrc设置这个环境variables,并且每个ssh调用都能自动工作。 有这样的环境variables还是有不同的解决scheme?
我试图引入一个variables,并将其添加到Ubuntu 10.04的全局path。 根据官方文档 ,/ etc / environment是正确的地方。 这是我的例子看起来像: GRADLE_HOME=/etc/gradle-0.9-preview-3 PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:$GRADLE_HOME/bin" GRADLE_HOMEvariables被添加到环境中,但是在PATH赋值过程中不会解释$ GRADLE_HOMEvariables。 硬编码它工作正常。 没有什么大不了的,但是我想知道是否支持variablesreplace,或者是否有更好的方法来做到这一点? 谢谢!
在我的设置(debian etch,lighttpd)中,我的网站之一正在调用通过PHP进行image processing的程序。 我想改变这个程序的行为,通过设置一个环境variables,最好不改变networking应用程序。 这个怎么做? =) 为www-data用户拥有的所有进程设置environemtvariables也是可以的,但是我很喜欢在这个场景中,如果.bashrc(?)中的条目被尊重。 谢谢!
在/ etc / ssh / sshd_config中,有一个名为AcceptEnv的选项,允许ssh客户端发送环境variables。 我需要能够发送大量的环境variables,我该怎么做?
我想为每一个login到我的linux的用户做以下的事情: export PATH=$PATH:~/.path 我不知道怎么做,除了在每个〜/ .bashrc文件中手动添加这行。 此外,我的一个cron工作运行一个程序,我想(为该cronjob)PYTHONPATH设置为特定的东西。 任何.bashrc文件会影响cronjob的环境吗? 我如何改变一个cronjob的环境。 此外,我现在好奇如何改变什么PATHvariables启动。 其他程序似乎在安装时会这样做,那么我该如何去做呢?
我最近在Ubuntu 8.04服务器上编译了Ruby Enterprise Edition(REE)。 我想更新我的path,以确保这个新版本的Ruby(在/opt/ruby_ee/bin )取代/usr/local/bin的旧版本。 (尽pipe如此,我仍然想要旧版本。) 我想这些PATH更改影响所有用户和crontabs。 尝试解决scheme#1: REE文档build议将REE bin文件夹放置在/etc/environment中的全局PATH开头。 我改变了这个文件中的PATH来读取: PATH="/opt/ruby_ee/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" 这完全不影响我的PATH 。 试图解决scheme2: 接下来,我按照这些说明更新了/etc/login.defs和/etc/crontab的PATH设置。 (我没有改变/etc/sudoers 。) 即使注销并重新启动服务器,也不会影响我的PATH 。 其他信息: 我似乎在这里描述了同样的问题 。 我正在使用命令“ echo $PATH ”和“ ruby -v ”进行testing。 我的壳是bash。 我的.bashrc不覆盖我的path。 是的,我听说过Ruby Version Manager项目。 ;)
我在那里创build了文件〜/ .ssh / environment: LEVEL=0 当我通过ssh运行脚本来获取环境variables级别时,它将返回0。 在authorized_keys文件中,我有几个键,并试图改变一些值,所以当我在另一侧运行脚本时,它可以修改它如何处理信息。 我在正常的键之前join以下内容: command="/path/to/script" environment="LEVEL=1" 如果我没有环境段,脚本执行的很好,但是如果我设置了环境部分,脚本将不会运行。 我不完全确定我做错了什么。 我甚至正确地接近这个? 基本上我有4个不同的键,在某些情况下,我希望人们有1级或2级别的默认值为0,但我想设置谁拥有级别,并只有在他们login时才设置执行他们的命令。 我觉得我几乎不了解应该如何工作,所以我的理解可能完全错误,这应该如何工作。 有任何想法吗?