강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

레벨235-1 : 리눅스 서버로 로그인하는 모든 사용자들의 기본 사용환경 설정을 위한 /etc/profile의 역할과 용도

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

레벨235-1 : 리눅스 서버로 로그인하는 모든 사용자들의 기본 사용환경 설정을 위한 /etc/profile 역할과 용도

 

[권고사항]

이장의 설명을 보시기 이전에 bash명령어편을 반드시 보시기 바랍니다.

 

개별사용자들의 홈디렉토리에 있는 .bash_profile이라는 파일은 사용자들의 개별적인 설정환경을 적용하기 위한 파일이라면 /etc/profile 리눅스 서버로 로그인하는 모든 사용자에게는 공통으로 적용되는 설정환경파일입니다.  , /etc/profile 모든 사용자를 위한 시스템의 전반적인 사용환경 적용을 위한 설정파일입니다.      

 

따라서 리눅스 서버관리자들은 모든 사용자에게 공통적으로 적용하고자 하는 사항이 있을 경우에는 파일에 추가적인 설정을 하시면 됩니다.

 

/etc/profile파일의 기본적이고 주된 역할을 간단히 정리해 보면 다음과 같습니다.

 

- 사용자의 기본적인 명령어 사용경로(PATH) 설정합니다.

- 사용자의 core파일에 사이즈를 설정합니다. (기본은 생성되지 않도록 합니다.)

- 사용자의 쉘환경변수 USER 해당사용자의 사용자명(id -un) 저장합니다.

 

- 사용자의 쉘환경변수 LOGNAME USER 저장된 사용자명을 저장합니다.

 

- 사용자의 쉘환경변수 MAIL 사용자의 메일저장파일경로를 저장합니다.

 

- 사용자의 쉘환경변수 HOSTNAME 시스템 호스트네임을 저장합니다.

 

- 사용자의 쉘환경변수 HISTSIZE 히스토리파일(.bash_history) 저장될 최대 개수를 지정합니다.

 

- 기타 필요한 기능설정과 사용환경설정을 위한 초기파일들을 불러들입니다.

 

 

이와 같이 /etc/profile 용도와 기능은 로그인하는 개별 사용자들에게 시스템의 기본적인 사용환경설정을 제공하기 위한 용도로 사용됩니다.

 

앞서 말씀 드린 바와 같이 리눅스 서버로 로그인하는 모든 사용자들에게 공통적으로 적용할 사항이 있다면 /etc/profile 적용하시면 됩니다.

 

참고로 아래는 파일의 기본적인 내용을 나타낸 것입니다.

 

[root@su249 ~]# cat /etc/profile

# /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

}

# ksh workaround

if [ -z "$EUID" -a -x /usr/bin/id ]; then

        EUID=`id -u`

        UID=`id -ru`

fi

 

# Path manipulation

if [ "$EUID" = "0" ]; then

        pathmunge /sbin

        pathmunge /usr/sbin

        pathmunge /usr/local/sbin

fi

 

# No core files by default

ulimit -S -c 0 > /dev/null 2>&1

 

if [ -x /usr/bin/id ]; then

        USER="`id -un`"

        LOGNAME=$USER

        MAIL="/var/spool/mail/$USER"

fi

 

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

unset pathmunge

[root@su249 ~]#

 

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,157 명
  • 현재 강좌수 :  36,515 개
  • 현재 접속자 :  271 명