지난 08년 여름 썬에서 썬스타들과 함께 하계 인턴프로그램에 참여하여 첫 출근했던날
부장님께 한가지 여쭤봤던 질문이 있었다. 지금 생각하면 앞뒤 다 자르고 여쭤봐서 좀 엉뚱했다는 생각이 든다.
"리눅스 쉘이랑 솔라리스 쉘이랑 왜 같은 bash 로 세팅했는데 다르죠?"
사실 리눅스는 99년 국내에 한참 배포판들이 보급될때부터 지금까지 쭉 사용해왔고
솔라리스는 06년도 여름방학때 아르바이트 했던 회사에서 그때 잠깐 사용했던 정도였다.
고로 사용자(혹은 개발자, 엔지니어 등)들이 직접 참여해서 편리함을 우선으로 만들어진 리눅스에
너무나도 익숙한 나머지 전통 환경에서 전혀 적응을 못해서 생긴 에피소드 였다.
갑자기 이번 겨울부터 뭔가 심심한나머지 장난감이 필요했었다.
그러던중 우연히 중고장터에서 저렴하게 구입한 Sun Ultra 10 머신을 구입하게 되었고,
요세들어 연구실에 앉아서 계속 요놈을 주물럭 거리게 되었다.
여튼... -_- 오늘따라 서론이 좀 길었는데...
결론은 지금부터 솔라리스 운영체제를 리눅스처럼? 환경을 개조시켜 볼것이다.
(주로 사용하는 배포판이 Centos 라 Centos 5.2 기준으로 개조시킬것이다.)
1. Solaris 10 다운로드
http://kr.sun.com/software/solaris/ 여기서 다운로드를 누르고 회원가입후 로그인해서 다운가능
현재 버젼은 Solaris 10 10/08 버젼이다.
2. Solaris 10 설치
이건 다른 블로그들 참조... (그렇게 어렵진 않아요...)
3. SSH 설정 - root 접근 허용 설정(개인적으로 root로 작업하는걸 좋아해서..)
#vi /etc/ssh/sshd_config
(132번줄) PermitRootLogin no -> PermitRootLogin yes
#svcadm disable ssh
#svcadm enable ssh
4. root 유저 기본 쉘 설정
#vi /etc/passwd
root:x:0:0:Super-User:/export/home/root:/usr/bin/bash <-각자 환경에 맞게 홈디렉토리나 등등 설정
5. Coreutils / vim 설치
http://www.sunfreeware.com 에서 자신에 CPU 타입에 맞게 린크 접속
coreutils-6.4-sol10-XXXXX-local.gz / vim-7.2-sol10-XXXX-local.gz 다운로드
및 서버에 업로드 (의존성 걸린 프로그램 있으면 전부 다운로드 및 업로드)
#gzip -d coreutils-6.4-sol10-XXXXX-local.gz
#pkgadd -d coreutils-6.4-sol10-XXXXX-local
#gzip -d vim-7.2-sol10-XXXX-local.gz
#pkgadd -d vim-7.2-sol10-XXXX-local
6. bash 관련 설정파일 생성
##################################################################
~/.bashrc
##################################################################
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
##################################################################
##################################################################
~/.bash_profile
##################################################################
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
MAIL=/usr/mail/${LOGNAME:?}
PATH=/usr/local/bin:/usr/ccs/bin:$PATH
export PATH
##################################################################
##################################################################
/etc/bashrc
##################################################################
if [ "$TERM" = "xterm" ]
then
alias ls='/usr/local/bin/ls --color'
alias grep='/usr/local/bin/grep --color'
alias egrep='/usr/local/bin/egrep --color'
alias vi='vim'
else
alias ls='/usr/local/bin/ls'
alias grep='/usr/local/bin/grep'
alias egrep='/usr/local/bin/egrep'
fi
if [ "$PS1" ]; then
if [ "x`tput kbs`" != "x" ]; then # We can't do this with "dumb" terminal
stty erase `tput kbs`
fi
case $TERM in
xterm*)
PROMPT_COMMAND='echo -ne "\033]0;${USER}
@${HOSTNAME}: ${PWD}\007"'
;;
vt100*)
PROMPT_COMMAND='echo -ne "\033]0;${USER}
@${HOSTNAME}: ${PWD}\007"'
;;
*)
;;
esac
PS1="[\u@\h \W]\\$ "
if [ "x$SHLVL" != "x1" ]; then # We're not a login shell
for i in /etc/profile.d/*.sh; do
if [ -x $i ]; then
. $i
fi
done
fi
fi
##################################################################
7. vim 관련 설정
##################################################################
~/.vimrc 및 /etc/vimrc
##################################################################
if v:lang =~ "utf8$" || v:lang =~ "UTF-8$"
set fileencodings=utf-8,latin1
endif
set nocompatible " Use Vim defaults (much better!)
set bs=indent,eol,start " allow backspacing over everything in insert mode
"set ai " always set autoindenting on
"set backup " keep a backup file
set viminfo='20,\"50 " read/write a .viminfo file, don't store more
" than 50 lines of registers
set history=50 " keep 50 lines of command line history
set ruler " show the cursor position all the time
" Only do this part when compiled with support for autocommands
if has("autocmd")
" In text files, always limit the width of text to 78 characters
autocmd BufRead *.txt set tw=78
" When editing a file, always jump to the last cursor position
autocmd BufReadPost *
\ if line("'\"") > 0 && line ("'\"") <= line("$") |
\ exe "normal! g'\"" |
\ endif
endif
if has("cscope") && filereadable("/usr/bin/cscope")
set csprg=/usr/bin/cscope
set csto=0
set cst
set nocsverb
" add any database in current directory
if filereadable("cscope.out")
cs add cscope.out
" else add database pointed to by environment
elseif $CSCOPE_DB != ""
cs add $CSCOPE_DB
endif
set csverb
endif
" Switch syntax highlighting on, when the terminal has colors
" Also switch on highlighting the last used search pattern.
if &t_Co > 2 || has("gui_running")
syntax on
set hlsearch
endif
if &term=="xterm"
set t_Co=8
set t_Sb=^[[4%dm
set t_Sf=^[[3%dm
endif
##################################################################
8. 설정이 새로운 유저에게도 적용되도록 설정파일 복사
#cp ~/.bashrc /etc/skel/.bashrc
#cp ~/.bash_profile /etc/skel/.bash_profile
#cp ~/.vimrc /etc/skel/.vimrc
위 설정에 <tab> 자동완성 및 vim 을 통하여 컬러설정 ls 시 컬러설정까지 포함되어있다.
사실 솔라리스만 딱 깔고났을때는 너무나 익숙했던 것들이 전부 달라서....
쉘상에서 화살표키를 사용할때나 vi 에서 키이동이나.. 등등... 그게 너무 불편했기에....
이제 새롭게 터미널을 접속해보면... 짜잔~ 거의 흡사하게 리눅스시스템과 비슷하다고
느낄수 있을것이다..^^
p.s. history 체크하면서 올린거라... 혹시 빠진 내용이 있을 수 있으나
중간중간 빠진부분은 체크해서 업데이트 하겠습니다.