yum과 컴파일중 어떤게 더 나은지?
글쓴이: darkhi / 작성시간: 월, 2008/02/25 - 11:43오전
서버구축시에 yum을 이용한 apm 설치때와 컴파일 방식으로 했을 경우
왠만하면 APM 설치시 기존 패키지를 사용하지 마시고 소스파일을 가져다가 컴파일하셔서 설치하세요.
그래야 나중에 APM업그레이드하기가 좋습니다
라는 말이 있어서 궁금해졌습니다.
yum같은경우 업데이트도 지원되는데 추후 관리하기에도 yum이 더 용의하지 않을까요
아니면 yum이 업데이트르 지원한다고 해도 의존성 등의 문제로 컴파일이 추후 관리하기에 더 용의한건가요?
만일 서버관리자라면 컴파일을 하실껀가요 yum을 이용하실껀가요?
Forums:
yum 같은 경우는 rpm
yum 같은 경우는 rpm기반 시스템에서 바이너리 패키지를 업데이트/설치/삭제를 해주는 프로그램이므로 컴파일과 직접적으로 비교할 수는 없겠고...
바이너리 패키지 설치랑 소스 컴파일 설치 중에 어떤 것이 더 좋은가 하는 질문이 되겠네요.
"왠만하면 APM 설치시 기존 패키지를 사용하지 마시고 소스파일을 가져다가 컴파일하셔서 설치하세요.
그래야 나중에 APM업그레이드하기가 좋습니다"라는 말에는 동의할 수 없습니다.
일반적으론 바이너리 패키지가 제공되지 않는다거나, 제공된다고 해도 커스터마이징하는 작업이 너무 힘들다면 소스 컴파일이 좋고,
그렇지 않은 경우는 바이너리 패키지를 설치하는 것이 좋다고 봅니다.
그 기준에 맞춰 보면 APM 같은 경우는 물어볼 필요도 없이 바이너리 패키지가 더 좋겠죠.
APM 같은 경우는 워낙 많이 쓰이니까 커스터마이징이 필요없게끔 패키지가 잘 만들어지고,
행여 커스터마이징한다고 해도 소스 패키지 가지고 얼마든지 가능합니다.
보통 소스로 컴파일해서 설치하게 되면 /usr/local 밑에 설치하는데,
path, man path 등도 추가적으로 잡아줘야 하고,
startup script 등도 기존과 다르기 때문에 따로 기억해야 하고... (예를 들어 apachectl 같은)
매번 패치 같은 것도 적용해야 하고...
관리자로선 불필요한 업무만 잔뜩 생기게 되죠.
--
academic은 제 고등학교 때 동아리 이름입니다.
academic, 아주 가끔은 저도 이랬으면 좋겠습니다.
----
academic은 제 고등학교 때 동아리 이름입니다.
academic, 아주 가끔은 저도 이랬으면 좋겠습니다.
Yum을 사용하지 않는
Yum을 사용하지 않는 FreeBSD 사용자입니다만....
왠만하면 OS에서 제공하는 패키징을 사용하는게 좋더군요. 소스로 컴파일하고 난 후에 다시 업그레이드할 때면 이게 컴파일한건지.. 패키지로 설치한건지 헷갈리고.. (실지로 소스로 컴파일했으나.. 모르고 package로 다시 설치하는 경우도 있지요..) 또 설치했을때 옵션 같은것도 기억해놓고 있어야하는 번거러움이 있지요..
OS에서 제공하는 방식대로 하는 것이 최고.. 아니라면 OS에서 제공하는 방식대로 custom package를 만드는 방법도 좋습니다.
What do you want to eat?
그냥 소스 가져다
그냥 소스 가져다 컴파일 할 경우 장점은... 최신 버전을 빨리 가져다 해 볼 수 있다는 정도? 그것 말고는 특별히 무슨 이유로 업그레이드하기 좋다고 말하는지는 잘 모르겠군요.
저도 OS에서 제공하는 방식을 쓰는 것에 한 표 입니다.
노루가 사냥꾼의 손에서 벗어나는 것 같이, 새가 그물치는 자의 손에서 벗어나는 것 같이 스스로 구원하라 -잠언 6:5
패키지
당연히 패키지로 설치합니다. 보안 패치가 한 가지 큰 이유이고, 아파치나 PHP는 모듈 기능이 있어서 바이너리 패키지로 설치해도 나중에 패키지로 없는 기능을 추가하는데 큰 불편이 없습니다.
예를 들어 PHP에서 Oracle 데이터베이스에 연결하는 확장 기능처럼 패키지가 없는 경우에는 php-devel을 설치하고 확장 기능 소스만 받아서 phpize로 컴파일하면 PHP 자체를 소스 컴파일하지 않아도 바이너리 패키지와 소스 컴파일한 확장 기능이 잘 맞물려 돌아갑니다.
패키지 관리자가
패키지 관리자가 있는 시스템은 그 패키지 관리자를 통해서 패키지를 설치하는 것이 좋습니다.
이후 관리를 위해서 라도요.
꼭 소스 컴파일이 필요하다면 rpm 관리자라면 rpm패키지를 만들어 설치하고,
dpkg라면 deb파일로 만들어 설치하여,
패키지 관리자가 해당 패키지가 설치되었음을 인지하도록 하는 것이 좋습니다.
컴파일을 해야 할
컴파일을 해야 할 상황이라면, 직접 패키징을 하는 것이 답입니다. install 관리를 source compile 로 하기 쉽다고 하는데 make install 후에 어디에 뭐가 설치되어 있는지 확인하는 방법은 귀찮고도 귀찮은 작업입니다. 패키지로 만들어 놓는다면, 필요한 부분의 migration 및 파일 관리까지 되니까요. :-)
rpm 을 사용한다고 해서 source compile 과 다를 것이 없습니다. 다만, 패키징을 할줄 아느냐 모르느냐의 차이에서 관리 능력의 차이가 발생할 수 있겠죠. :-)
댓글 달기