[ 
https://issues.apache.org/jira/browse/HADOOP-7610?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13101720#comment-13101720
 ] 

Hudson commented on HADOOP-7610:
--------------------------------

Integrated in Hadoop-Mapreduce-trunk-Commit #876 (See 
[https://builds.apache.org/job/Hadoop-Mapreduce-trunk-Commit/876/])
    HADOOP-7610. Fix for hadoop debian package. Contributed by Eric Yang

gkesavan : 
http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1167428
Files : 
* /hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt
* 
/hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/packages/update-hadoop-env.sh


> /etc/profile.d does not exist on Debian
> ---------------------------------------
>
>                 Key: HADOOP-7610
>                 URL: https://issues.apache.org/jira/browse/HADOOP-7610
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: scripts
>    Affects Versions: 0.20.204.0, 0.23.0
>         Environment: Java 6, Debian
>            Reporter: Eric Yang
>            Assignee: Eric Yang
>             Fix For: 0.20.205.0, 0.23.0
>
>         Attachments: HADOOP-7610-branch-0.20-security.patch, HADOOP-7610.patch
>
>
> As part of post installation script, there is a symlink created in 
> /etc/profile.d/hadoop-env.sh to source /etc/hadoop/hadoop-env.sh.  Therefore, 
> users do not need to configure HADOOP_* environment.  Unfortunately, 
> /etc/profile.d only exists in Ubuntu.  [Section 9.9 of the Debian 
> Policy|http://www.debian.org/doc/debian-policy/ch-opersys.html#s9.9] states:
> {quote}
> A program must not depend on environment variables to get reasonable 
> defaults. (That's because these environment variables would have to be set in 
> a system-wide configuration file like /etc/profile, which is not supported by 
> all shells.)
> If a program usually depends on environment variables for its configuration, 
> the program should be changed to fall back to a reasonable default 
> configuration if these environment variables are not present. If this cannot 
> be done easily (e.g., if the source code of a non-free program is not 
> available), the program must be replaced by a small "wrapper" shell script 
> which sets the environment variables if they are not already defined, and 
> calls the original program.
> Here is an example of a wrapper script for this purpose:
> {noformat}
>      #!/bin/sh
>      BAR=${BAR:-/var/lib/fubar}
>      export BAR
>      exec /usr/lib/foo/foo "$@"
> {noformat}
> Furthermore, as /etc/profile is a configuration file of the base-files 
> package, other packages must not put any environment variables or other 
> commands into that file.
> {quote}
> Hence the default environment setup should skip for Debian.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to