리눅스 초기 환경변수는 어디서 지정하나요?

이한길의 이미지

리눅스에서

# export

하면 환경변수가 쭉~ 나오잖아요...
여기에 있는 환경 변수들은 다 어디서 만들어주는 거에요?
물론 사용자 디렉토리에 있는

.bash_profile
.bash_rc

이거에서 지정한거 말구요..

좀 편집을 해서 몇개 없애고...
몇가지 고치고 싶은데.. 안되네요..
특히 PATH에서 좀 빼고 싶은것도 있구요..

그럼 부탁드립니다.

sykes의 이미지

/etc/profile 파일 수정하세요.......

망설이지 말고 해보는거야~

laffer의 이미지

/etc/profile에 저장하면 쉘이 실핼될때마다 실행되는거 아닌가요?

X에서 터미널을 띄울때마다 실행되던데요.

전역변수로 한번만 실행되게 하려면 어떻게 해야 합니까?

kdsman83의 이미지

저도 궁금합니다...
PATH를 손보고 싶은데 레드햇 리눅스 9.0에서 /etc/profile문서를 열어봐도 잘 모르겠더라구요..
고수분들의 자세한 답변을 부탁드립니다.

인간의 인생에서 운명의 힘은 반이상 작용하지 않는다. 운명보다 중요한것은 인간 스스로의 의지이다..

cinsk의 이미지

Redhat 기준. login shell 기준. bash 기준
(읽어 들이는 순서 보장 못함, 빠진 거 있을 수 있음.)

/etc/rc.d/rc.sysinit
/etc/rc.d/rc.local
/etc/rc.d/rcN.d # N은 0-6 사이.
/etc/profile
/etc/profile.d/*
/etc/bashrc

$HOME/.bash_profile
$HOME/.bashrc

X를 띄우면, 위에꺼 더하기,

/etc/X11/xinit/xinitrc
/etc/X11/xinit/Xclient
/etc/X11/xinit/xinitrc.d/*
/etc/X11/sysconfig/i18n

$HOME/.xinitrc
$HOME/.Xclient
$HOME/.Xclient-$HOSTNAME

moonhyunjin의 이미지

검색하다가 이글을 봤는데.

/etc/rc.d/rc.local
/etc/rc.d/rcN.d # N은 0-6
이 두개는 순서가 바뀌었어요.

/etc/rc.d/rcN.d # N은 0-6
/etc/rc.d/rc.local
가 맞습니다.

<- 이거면 안되는 게 없어~
정품 소프트웨어 사용 캠패인

<- 이거면 안 되는 게 없어~
정품 소프트웨어 사용 캠패인

youngmo의 이미지

지금 제 작업에 도움이 되었네요.
글은 4년전 글이지만;;
정말 감사합니다~

이한길의 이미지

감사합니다.
그런데 이렇게 읽어들이는 파일은 어디서 지정하나요?
저는 젠투를 사용하는데... 저하고 해당하는 부분은...

etc/profile

$HOME/.bash_profile

이것밖에 없네요.

읽어들이는 파일을 지정하는 무슨 부분이 있을 듯한데..
부탁드려요..

----
먼저 알게 된 것을 알려주는 것은 즐거운 일이다!
http://hangulee.springnote.com
http://hangulee.egloos.com

cdpark의 이미지

hangulee wrote:
읽어들이는 파일을 지정하는 무슨 부분이 있을 듯한데..
부탁드려요..

man bash

McKabi의 이미지

set -x

ㄲ ㅏ ㅂ ㅣ / M c K a b i / 7 7 r b i / T o D y

정태영의 이미지

hangulee wrote:
감사합니다.
그런데 이렇게 읽어들이는 파일은 어디서 지정하나요?
저는 젠투를 사용하는데... 저하고 해당하는 부분은...

etc/profile

$HOME/.bash_profile

이것밖에 없네요.

읽어들이는 파일을 지정하는 무슨 부분이 있을 듯한데..
부탁드려요..

/etc/inittab
/etc/env.d/....
/sbin/rc
/sbin/rc.d/...

/etc/profile 을 수정하면.. env-update가 실행된 순간..
수정했던게 날라갈 수 있습니다.. /etc/env.d안에 있는 걸 고치는게..
젠투식이죠..

-3-33

오랫동안 꿈을 그리는 사람은 그 꿈을 닮아간다...

http://mytears.org ~(~_~)~
나 한줄기 바람처럼..

익명 사용자의 이미지

tcsh의 경우는 어디에 저장되는지요 ^^;;

bash기준이라구 쓰셨는데요..그럼 tcsh의 경우는 해당안되는거지요?

codebank의 이미지

Anonymous wrote:
tcsh의 경우는 어디에 저장되는지요 ^^;;

bash기준이라구 쓰셨는데요..그럼 tcsh의 경우는 해당안되는거지요?


man tcsh
해보세요. FILES부분을 보시면 되겠네요.
tcsh은 csh과 같은 파일을 사용할 수도 있나보네요.

------------------------------
좋은 하루 되세요.

lacovnk의 이미지

/etc/profile에 path를 지정했는데, 반영이 안되는군요;

X윈도우에서 터미널 띄우면 반영이 안되어있고, 여기서 콘솔창으로 전환해서 로긴하면 되어있습니다 -_-

물론 그냥 .bashrc에 박아도 되지만.. 찜찜하고, 궁금해서요 :)

# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).

PATH="/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games"

if [ "$PS1" ]; then
  if [ "$BASH" ]; then
    PS1='\u@\h:\w\$ '
  else
    if [ "`id -u`" -eq 0 ]; then
      PS1='# '
    else
      PS1='$ '
    fi
  fi
fi

export PATH
export PATH="$PATH:/usr/local/java/bin"
export JAVA_HOME="/usr/local/java"

umask 022

# ~/.bashrc: executed by bash(1) for non-login shells.

if [ "$PS1" ]; then
    if [ "$TERM" != "dumb" ]; then
        eval `dircolors -b`
        alias ls='ls --color=auto'
    fi

        PS1="\[\033[1;37m\][\[\033[1;32m\]\u@\[\033[1;31m\]\h\[\033[1;37m\]:\w]$\[\033[1;37m\] "


    case $TERM in
    xterm*)
        PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD}\007"'
        ;;
    *)
        ;;
    esac

    export GTK_IM_MODULE=hangul3f
    export XMODIFIERS="@im=nabi"
    export GDK_USE_XFT=1
fi

# /etc/bash.bashrc : System-wide .bashrc file for interactive bash(1) shells.
if [ "$PS1" ]; then

    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '

    shopt -s checkwinsize
fi

# ~/.bash_profile: executed by bash(1) for login shells.

if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi
이한길의 이미지

저도 왕초보지만.. 혹시 gdm을 쓰시나요?
그렇다면 그럴 수 있습니다..부팅할때 로긴 안하고 바로..
gdm실행되면 ... 제가 그랬거든요...

저는 /etc/gdm/Xsession 에 추가했습니다..

.. 근데 보니까 이거 제가 올린 글이군요..

lacovnk wrote:
/etc/profile에 path를 지정했는데, 반영이 안되는군요;

X윈도우에서 터미널 띄우면 반영이 안되어있고, 여기서 콘솔창으로 전환해서 로긴하면 되어있습니다 -_-

물론 그냥 .bashrc에 박아도 되지만.. 찜찜하고, 궁금해서요 :)

# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).

PATH="/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games"

if [ "$PS1" ]; then
  if [ "$BASH" ]; then
    PS1='\u@\h:\w\$ '
  else
    if [ "`id -u`" -eq 0 ]; then
      PS1='# '
    else
      PS1='$ '
    fi
  fi
fi

export PATH
export PATH="$PATH:/usr/local/java/bin"
export JAVA_HOME="/usr/local/java"

umask 022

# ~/.bashrc: executed by bash(1) for non-login shells.

if [ "$PS1" ]; then
    if [ "$TERM" != "dumb" ]; then
        eval `dircolors -b`
        alias ls='ls --color=auto'
    fi

        PS1="\[\033[1;37m\][\[\033[1;32m\]\u@\[\033[1;31m\]\h\[\033[1;37m\]:\w]$\[\033[1;37m\] "


    case $TERM in
    xterm*)
        PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD}\007"'
        ;;
    *)
        ;;
    esac

    export GTK_IM_MODULE=hangul3f
    export XMODIFIERS="@im=nabi"
    export GDK_USE_XFT=1
fi

# /etc/bash.bashrc : System-wide .bashrc file for interactive bash(1) shells.
if [ "$PS1" ]; then

    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '

    shopt -s checkwinsize
fi

# ~/.bash_profile: executed by bash(1) for login shells.

if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

----
먼저 알게 된 것을 알려주는 것은 즐거운 일이다!
http://hangulee.springnote.com
http://hangulee.egloos.com

망치의 이미지

Quote:
.. 근데 보니까 이거 제가 올린 글이군요..

재밌습니다 -_-;;;

---------------------------------------
http://www.waitfor.com/
http://www.textmud.com/

익명 사용자의 이미지

sudo vi /etc/environment

여기에 PATH 변수가 있더군요.
수정후에

source /etc/environment

입력하니까 잘 동작하네요.

ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ

by. 푸른이(derornos)

Sdsf3qUr의 이미지

제 경험으로는 배포본 별로도 다르고 각 버전 별로도 달라질 수 있습니다. 사용하는 쉘이나 데스크탑 관리자에 따라서도 달라질 수 있습니다.

정석은 없으니 질문하시거나 검색하실 때 배포본과 버전도 고려하시는 게 좋습니다.

우분투와 아치 리눅스의 경우는 /etc/profile.d/ 디렉토리가 그런 용도로 쓰이는 것 같습니다.

예를 들어,

$ cat /etc/profile.d/bash_completion.sh
# Check for interactive bash and that we haven't already been sourced.
if [ -n "$BASH_VERSION" -a -n "$PS1" -a -z "$BASH_COMPLETION_COMPAT_DIR" ]; then
 
# Check for recent enough version of bash.
bash=${BASH_VERSION%.*}; bmajor=${bash%.*}; bminor=${bash#*.}
if [ $bmajor -gt 4 ] || [ $bmajor -eq 4 -a $bminor -ge 1 ]; then
    [ -r "${XDG_CONFIG_HOME:-$HOME/.config}/bash_completion" ] && \
        . "${XDG_CONFIG_HOME:-$HOME/.config}/bash_completion"
    if shopt -q progcomp && [ -r /usr/share/bash-completion/bash_completion ]; then
        # Source completion code.
        . /usr/share/bash-completion/bash_completion
    fi
fi
unset bash bmajor bminor
 
fi

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.