환경설정(path)에서 /usr/bin/X11이라는 경로를 삭제하고 싶습니다.
레드햇 9입니다.
/usr/bin/X11이라는 경로를 path에서 삭제하려고 합니다.
---------------------
/etc/profile
/etc/profile.d/*
/etc/bashrc
.bash_profile
.bashrc
---------------------
위 파일에는 /usr/bin/X11이라는 경로가 없습니다.
그럼에도 echo $PATH 로 보면 /usr/bin/X11이라는 경로가 나옵니다.
/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin/X11:/root/bin
/usr/bin/X11을 경로에서 좀 삭제하고 싶습니다.
아무리 찾아봐도 없는데 계속 path에는 나옵니다.
xwindow를 사용하지 않아서 /usr/bin/X11 디렉토리 자체를 삭제 시켜 놓은 상태입니다.
.bash_profile의 PATH=$PATH:$HOME/bin 중 $PATH가 어디에 설정되어 있던 path를 가져오는지 모르겠습니다.
(PATH=/bin:/sbin:$HOME/bin 등으로 $PATH를 빼고 설정하면 /usr/bin/X11 경로가 안나오기는 하는데 어디에 있던 $PATH를 가져오는지 알고 싶습니다.)
어디를 더 찾아봐야 하는지 알고 싶습니다.
/etc/rc.d/rc.sysinit
/etc/rc.d/rc.local 파일들도 보았는데 /usr/bin/X11은 없었습니다.
.bashrc .bash_profile와 /etc/profile 를 삭제 해 보았는데
------------------------------------------------------------------
shell> echo $PATH
/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin/X11
여전히 /usr/bin/X11의 경로명이 나옵니다.
뿐만 아니라
/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin도
.bashrc .bash_profile, /etc/profile를 다 삭제 했는데 어디에 있던 PATH가 출력된 것인지 궁금합니다.
------------------------------------------------------------------
또 혹시나 해서 다른 컴퓨터에서 .bashrc .bash_profile /etc/bashrc /etc/profile를 복사해서 넣어주어 봤는데도 같습니다.
.bashrc내용
------------------------------
# .bashrc
# User specific aliases and functions
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
------------------------------
.bash_profile내용
------------------------------
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
BASH_ENV=$HOME/.bashrc
USERNAME="root"
export USENAME BASH_ENV PATH
------------------------------
/etc/bashrc
------------------------------
# /etc/bashrc
# System wide functions and aliases
# Environment stuff goes in /etc/profile
# by default, we want this to get set.
# Even for non-interactive, non-login shells.
if [ "`id -gn`" = "`id -un`" -a `id -u` -gt 99 ]; then
umask 002
else
umask 022
fi
# are we an interactive shell?
if [ "$PS1" ]; then
if [ -x /usr/bin/tput ]; then
if [ "x`tput kbs`" != "x" ]; then # We can't do this with "dumb" terminal
stty erase `tput kbs`
elif [ -x /usr/bin/wc ]; then
if [ "`tput kbs|wc -c `" -gt 0 ]; then # We can't do this with "dumb" terminal
stty erase `tput kbs`
fi
fi
fi
case $TERM in
xterm*)
if [ -e /etc/sysconfig/bash-prompt-xterm ]; then
PROMPT_COMMAND=/etc/sysconfig/bash-prompt-xterm
else
PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME%%.*}:${PWD/#$HOME/~}\007"'
fi
;;
screen)
if [ -e /etc/sysconfig/bash-prompt-screen ]; then
PROMPT_COMMAND=/etc/sysconfig/bash-prompt-screen
else
PROMPT_COMMAND='echo -ne "\033_${USER}@${HOSTNAME%%.*}:${PWD/#$HOME/~}\033\\"'
fi
;;
*)
[ -e /etc/sysconfig/bash-prompt-default ] && PROMPT_COMMAND=/etc/sysconfig/bash-prompt-default
;;
esac
# Turn on checkwinsize
shopt -s checkwinsize
[ "$PS1" = "\\s-\\v\\\$ " ] && PS1="[\u@\h \W]\\$ "
if [ "x$SHLVL" != "x1" ]; then # We're not a login shell
for i in /etc/profile.d/*.sh; do
if [ -r "$i" ]; then
. $i
fi
done
fi
fi
# vim:ts=4:sw=4
----------------------------
/etc/profile 에서 아래 부분을 주석 처리해도
echo $PATH에
/sbin, /usr/sbin, /usr/local/sbin이 나오는데 도대체 어디에 있던 PATH에 추가되는 것인지요..
---------------------------------------------------
#pathmunge () {
# if ! echo $PATH | /bin/egrep -q "(^|:)$1($|:)" ; then
# if [ "$2" = "after" ] ; then
# PATH=$PATH:$1
# else
# PATH=$1:$PATH
# fi
# fi
#}
# Path manipulation
#if [ `id -u` = 0 ]; then
# pathmunge /sbin
# pathmunge /usr/sbin
# pathmunge /usr/local/sbin
#fi
#pathmunge /usr/X11R6/bin after
#unset PATH
---------------------------------------------------
/usr/X11R6/bin은 주석처리 하니까 echo $PATH에 나오지 않습니다.
$path로 kldp에서 검색하여 글을 꽤 보았는데 왜 그런지 모르겠습니다.
죄송하지만 관련내용이 이미 있었다면 링크나 검색어 부탁드리겠습니다.
한번 /etc/init.d 도 살펴보심이... (이미 보셨다면 낭패)
한번 /etc/init.d 도 살펴보심이... (이미 보셨다면 낭패)
해당 init 런레벨에서 돌리고 있는 데몬의 init 스크립트가 path 지정을 할지도 모르니깐요.
참고하시기 바랍니다.
반드시 정답이라고는 할 수 없습니다 :)
RET ;My life :P
답변 감사드립니다./etc/init.d도 찾아 보았는데 /usr/
답변 감사드립니다.
/etc/init.d도 찾아 보았는데 /usr/bin/X11의 PATH를 설정하는 부분은 없었습니다. $PATH가 어디서 /usr/bin/X11을 가져오는지.....
/etc/X11/xdm/Xsession 살펴보새여
/etc/X11/xdm/Xsession
살펴보새여
즐린
답변 감사드립니다./etc/X11 디렉토리 자체를 지워버렸었습니다
답변 감사드립니다.
/etc/X11 디렉토리 자체를 지워버렸었습니다. 현재 디렉토리 자체가 없네요..
또 살펴볼 것은 없을까요?
댓글 달기