Trans:GentooX86Handbook3-4

Gentoo Korea Wiki
둘러보기로 가기 검색하러 가기

추가 포티지 도구

dispatch-conf

dispatch-conf 는 ._cfg0000_<이름> 파일을 병합하기 위한 조치 도구입니다. ._cfg0000_<이름> 파일은 CONFIG_PROTECT 변수가 보호하는 디렉터리의 파일에 파일을 덮어씌우려 할 때 포티지가 만듭니다.

dispatch-conf를 통해 바뀌는 모든 내용의 과정이 유지되는 동안 여러분의 설정 파일에 업데이트를 적용할 수 있습니다. dispatch-conf는 RCS 리비전 시스템을 사용하거나 패치와 같은 설정 파일 둘 중 하나로 저장해둡니다. 이는 설정 파일 업데이트시 실수 했을 경우 언제든지 여러분의 설정 파일에 대해 이전 버전으로 되돌릴 수 있음을 의미합니다.

dispatch-conf를 사용할 때 설정 파일을 있는 그대로 유지하거나, 새 설정 파일을 사용하거나, 현재 설정 파일을 편집하거나, 대화식 과정을 통해 바뀐 내용을 합치도록 요청할 수 있습니다. dispatch-conf에는 또한 멋들어진 일부 추가 기능도 있습니다.

  • 최신 주석만 들어있을 경우 업데이트 설정 파일 자동 병합
  • 공백 갯수의 차이만 날 경우에 설정 파일 자동 병합

/etc/dispatch-conf.conf를 먼저 편집하고 archive-dir 변수가 참조하는 디렉터리를 만드는 과정을 확실히 해두십시오.


코드 예제 1.1: dispatch-conf 실행
# dispatch-conf


dispatch-conf를 실행할 때 각각 바뀐 설정 파일을 한번에 취할 수 있습니다. u를 누르면 현재 설정 파일을 새로운 설정 파일로 업데이트(바꾸기)하고 다음 파일로 계속 진행합니다. z를 누르면 새로운 설정 파일을 쳐(지워)내고 다음 파일로 계속 진행합니다. 모든 설정 파일을 다루고 나면, dispatch-conf를 빠져나갈 것입니다. 빠져나가기 위해 언제든지 q를 누를 수도 있습니다.

더 많은 내용을 보시려면 dispatch-conf 맨 페이지를 확인하십시오. 여기서는 어떻게 현재 설정 파일과 새로운 설정 파일을 대화형 과정을 통해 합치는지, 새 설정 파일을 어떻게 편집하는지, 파일의 차이점 비교를 어떻게 수행하는지 등에 대해 알려줍니다.


코드 예제 1.2: dispatch-conf 맨 페이지 보기
$ man dispatch-conf


etc-update

설정 파일을 병합하기 위해 etc-update를 사용할 수도 있습니다. dispatch-conf를 사용하는 것처럼 단순하거나 기능적인건 아니지만, 대화식 병합 설정 수단을 제공하며 분명하게 바뀐 내용을 자동으로 병합할 수 있습니다.

그러나, dispatch-conf와는 다르게 etc-update는 이전 설정 파일을 유지해주지 않습니다.파일을 업데이트 하고나면 이전 버전은 완전히 날라갑니다! 따라서 dispatch-conf를 사용할 때보다는 etc-update를 사용하는 것이 상당히 덜 안전하므로 더욱 조심해야 합니다.


코드 예제 2.1: etc-update 실행하기
# etc-update


간단하게 바뀐 내용을 병합하고 나면, 업데이트를 기다리고 있는 보호된 파일의 목록을 보고 질문을 받을 것입니다. 아래와 같은 메시지를 사용할 수 있는 옵션들과 함께 마주치게 됩니다:


코드 예제 2.2: etc-update 옵션
Please select a file to edit by entering the corresponding number.
              (-1 to exit) (-3 to auto merge all remaining files)
                           (-5 to auto-merge AND not use 'mv -i'):


-1을 입력하면, etc-update는 더 이상의 바뀐 내용으로 계속 진행하지 않고 빠져나갑니다. -3이나 -5를 입력하면 나열한 모든 설정 파일을 새 버전으로 덮어씌웁니다. 따라서 자동으로 업데이트 하지 않을 설정 파일을 먼저 선택하는 것이 매우 중요합니다. 나열된 나머지 설정 파일에 대해 숫자를 입력하는 것은 단순한 문제입니다.

아래 예제에서 /etc/pear.conf 설정 파일을 선택해보겠습니다


코드 예제 2.3: 개별 설정 파일 업데이트
Beginning of differences between /etc/pear.conf and /etc/._cfg0000_pear.conf
[...]
End of differences between /etc/pear.conf and /etc/._cfg0000_pear.conf
1) Replace original with update
2) Delete update, keeping original as is
3) Interactively merge original with update
4) Show differences again


이제 두 파일의 차이점을 보실 수 있습니다. 최신 설정 파일을 문제 없이 사용할 수 있을 거라고 믿는다면 1을 입력하십시오. 최신 설정 파일이 필요하지 않다고 믿거나 더이상 새롭거나 쓸모있는 정보가 없다면 2를 입력하십시오. 현재 설정 파일을 대화식 과정을 통해 업데이트 하려면 3을 입력하십시오.

대화식 병합 방법에 대해 여기서 더 자세하게 설명할 것이 없습니다. 설명에 완벽을 기하기 위해 여러분이 두 파일을 대화식으로 병합하는 동안 사용할 수 있는 명령을 보여드립니다. 두 줄(원본 및 새로운 제안)의 내용과 마주칠 것이며 다음 명령 중 하나를 입력할 수 있게 질문을 받을 것입니다:


코드 예제 2.4: 대화식 병합에서 사용할 수 있는 명령
ed:     Edit then use both versions, each decorated with a header.
eb:     Edit then use both versions.
el:     Edit then use the left version.
er:     Edit then use the right version.
e:      Edit a new version.
l:      Use the left version.
r:      Use the right version.
s:      Silently include common lines.
v:      Verbosely include common lines.
q:      Quit.


중요한 설정 파일의 업데이트를 끝내면 이제 나머지 다른 설정 파일을 자동으로 업데이트 할 수 있습니다. etc-update는 더 이상 업데이트 할 수 있는 설정 파일을 찾을 수 없게 되면 끝납니다.

quickpkg

quickpkg를 통해 시스템에 이미 병합한 패키지에 대한 아카이브를 만들 수 있습니다. 이 아카이브는 미리 빌드한 패키지로 사용할 수 있습니다. quickpkg를 실행하는 것은 간단합니다. 아카이브를 만들고 싶은 패키지의 이름을 추가하기만 하면 됩니다.

curl, orage, procps를 아카이브로 만들려면 다음과 같이 실행합니다


코드 예제 3.1: quickpkg 사용 예
# quickpkg curl orage procps


미리 빌드한 패키지는 $PKGDIR(기본 위치는 /usr/portage/packages/)에 저장합니다. 이 패키지들은 $PKGDIR/<카테고리> 에 있습니다.