9장. 데비안 시스템 최신으로 유지하기

차례

9.1. 어떻게 내 데비안 시스템을 현재로 유지하나요?
9.1.1. aptitude
9.1.2. apt-get 및 apt-cdrom
9.2. 패키지를 업그레이드하려면 꼭 단일 사용자 모드로 가야 하나요?
9.3. 디스크에 .deb 보관 파일을 모두 보관해야 하나요?
9.4. 시스템에 추가한 패키지의 로그를 보관하려면 어떻게 해야 하나요? 업그레이드 및 제거가 언제 발생했는지, 어떤 패키지에 발생했는지 알고 싶습니다!
9.5. 자동으로 시스템을 업데이트 할 수 있나요?
9.6. 컴퓨터 여러 대 있습니다. 한 번에 업데이트를 다운로드하려면 어떻게 하나요?

데비안 목표 중 하나는 일관된 업그레이드 경로와 안전한 업그레이드 프로세스를 제공하는 것입니다. 우리는 항상 새로운 버전으로 업그레이드하려고 최선을 다합니다. 업그레이드 프로세스에 추가해야 할 중요한 참고 사항이 있으면 패키지는 사용자에게 경고를 보내며, 발생 가능한 문제에 대한 해결책을 종종 제공합니다.

특정 업그레이드에 대한 자세한 내용을 설명하는 릴리스 노트 문서도 읽어야 합니다. 이것은 데비안 웹사이트 https://www.debian.org/releases/stable/releasenotes에서 구할 수 있으며, 데비안 CD, DVD 및 블루레이 디스크로도 제공됩니다.

9.1. 어떻게 내 데비안 시스템을 현재로 유지하나요?

데비안 아카이브를 방문한 다음 원하는 파일을 찾을 때까지 디렉토리를 읽고 가져온 다음 dpkg 을 사용하여 설치할 수 있습니다. 실행 중인 시스템에도 dpkg 업그레이드 파일이 설치됩니다. 때때로 수정된 패키지는 다른 패키지의 새로 수정된 버전을 설치해야 하며, 이 경우 다른 패키지가 설치되기 전까지는 설치가 실패합니다.

데비안이 매우 빠르게 진화하기 때문에 이 접근 방식이 시간이 너무 많이 걸린다고 많은 사람이 생각합니다. 보통 매주 12개 이상의 새로운 패키지를 업로드합니다. 이 수는 새 주요 릴리스 직전에 더 큽니다. 이 눈사태에 대처하려고 많은 사람은 더 자동화된 방법을 사용하는 것을 좋아합니다. 이 목적으로 여러 가지 다른 패키지를 사용할 수 있습니다:

9.1.1. aptitude

aptitude 는 추천하는 Debian GNU/Linux 시스템 용 패키지 매니저이고, 설명은 8.1.3절. “aptitude” 에 있습니다.

aptitude를 사용하여 업그레이드를 만들기 전에 /etc/apt/sources.list 파일을 편집해야 합니다. 데비안의 최신 안정 버전으로 업그레이드하려면 다음과 같은 소스를 사용하는 것이 좋습니다:

http://deb.debian.org/debian stable main contrib

The mirror https://deb.debian.org/ is backed by a content-delivery network and requests to it will be directed to the closest instance to you. If you have a faster Debian mirror close to you, you can replace deb.debian.org with that one. See the mirror list at https://www.debian.org/mirror/list for more information.

또는 데비안 미러를 선택하는 문제를 해결하는 것을 목표로 하는 리디렉터 서비스 httpredir.debian.org를 사용할 수도 있습니다. 사용자의 지리적 위치와 기타 정보를 사용하여 파일을 처리할 수 있는 가장 좋은 미러를 선택합니다. 이를 활용하려면 다음과 같은 소스를 사용하십시오:

http://httpredir.debian.org/debian stable main contrib

더 자세한 것은 sources.list(5) 매뉴얼 페이지에 있습니다.

명령행에서 시스템을 업데이트 하려면 실행하기를

aptitude update

그 다음에

aptitude full-upgrade

나오는 질문에 답하면 시스템이 업그레이드 될 겁니다.

주의: aptitude는 Debian GNU/Linux 릴리스에서 다른 것으로 업그레이드 하는 권장 도구는 아닙니다. apt-get 을 대신 쓰세요. 릴리스 간 업데이트를 하려면 Release Notes를 읽으세요. 이 문서에서는 이전 릴리스에서 업그레이드에 권장되는 단계와 업그레이드 전에 고려해야 하는 알려진 문제에 대해 자세히 설명합니다.

자세한 것은 매뉴얼 페이지 aptitude(8), 그리고 파일 /usr/share/aptitude/README 읽어보세요.

9.1.2. apt-get 및 apt-cdrom

aptitude 대안은 apt-get 이며 이는 APT-기반 명령행 도구 (이미 8.1.2절. “APT”에 설명)입니다.

apt-get, APT-기반 명령행 도구는 패키지를 쉽고 안전하게 설치하고 업그레이드할 수 있는 방법을 제공합니다.

apt-get를 쓰려면, /etc/apt/sources.list 파일을 편집해서 설정하세요. 9.1.1절. “aptitude”와 마찬가지입니다.

그다음 실행하기를

apt-get update

그 다음에

apt-get dist-upgrade

나올 수 있는 질문에 답하면 시스템이 업그레이드됩니다. apt-get(8) 매뉴얼 페이지와 8.1.2절. “APT” 보세요.

CD/DVD/BD를 사용하여 패키지를 설치하려면 apt-cdrom 하십시오. 자세한 내용은 Release Note의 "Adding APT sources from optical media" 참조하십시오.

패키지를 가져와 설치할 때 패키지는 /var 디렉터리 계층에 보관됩니다. 파티션이 오버플로우되지 않도록 하려면 apt-get cleanapt-get autoclean을 사용하여 추가 파일을 삭제하거나 다른 곳으로 이동해야 합니다.(힌트: apt-move 사용)

9.2. 패키지를 업그레이드하려면 꼭 단일 사용자 모드로 가야 하나요?

아뇨. 실행 중인 시스템에서도 패키지를 업그레이드할 수 있습니다. 데비안에는 패키지 업그레이드 중에 필요한 경우 실행 프로세스를 다시 시작하는 start-stop-daemon 프로그램이 있습니다.

9.3. 디스크에 .deb 보관 파일을 모두 보관해야 하나요?

아뇨. 패키지를 설치한 후 디스크에 파일을 다운로드했으면, aptitude clean 을 실행하여 해당 파일을 시스템에서 제거할 수 있습니다.

9.4. 시스템에 추가한 패키지의 로그를 보관하려면 어떻게 해야 하나요? 업그레이드 및 제거가 언제 발생했는지, 어떤 패키지에 발생했는지 알고 싶습니다!

--log-옵션을 dpkg에 전달하면 dpkg 로그 상태 변경 업데이트 및 조치가 이루어집니다. dpkg-invokation을 모두 기록합니다.(예를 들어

2005-12-30 18:10:33 install hello 1.3.18 2.1.1-4

) 그리고 결과 (e.g.

2005-12-30 18:10:35 status installed hello 2.1.1-4

) 모든 dpkg 호출을 기록하고 싶다면 (aptitude 같은 프론트엔드 사용한 것 포함), 더하기를

log /var/log/dpkg.log

/etc/dpkg/dpkg.cfg에. 만들어진 로그 파일은 주기적으로 돌아갑니다. logrotate 사용하면, /etc/logrotate.d/dpkg 파일을 아래 행에 더하여 이것이 수행됩니다

/var/log/dpkg {
  missingok
  notifempty
}

dpkg 로깅에 대한 자세한 내용은 dpkg(1) 매뉴얼 페이지에서 확인할 수 있습니다.

aptitude는 실행하려는 패키지 설치, 제거 및 업그레이드를 /var/log/aptitude에 기록한다. 이러한 동작의 결과는 이 파일에 기록되지 않습니다!

작업을 기록하는 또다른 방법은 패키지 관리 세션을 script(1) 프로그램 안에서 실행하는 것입니다.

9.5. 자동으로 시스템을 업데이트 할 수 있나요?

예. cron-apt 쓸 수 있습니다. 이 도구는 cron 작업을 사용하여 정기적으로 시스템을 업데이트합니다. 기본적으로 패키지 목록을 업데이트하고 새 패키지를 다운로드하기만 하지만 설치는 안 합니다.

주의: 패키지 자동 업그레이드는 testing 또는 unstable 시스템에서는 예상치 못한 행동을 초래하고 예고 없이 패키지를 제거할 수 있으므로 권장하지 않습니다.

9.6. 컴퓨터 여러 대 있습니다. 한 번에 업데이트를 다운로드하려면 어떻게 하나요?

네트워크에 둘 이상의 데비안 시스템이 있으면, apt-cacher 를 써서 모든 데비안 시스템을 최신 상태로 유지하는 것이 쓸만합니다.

apt-cacher 는 백엔드에서 패키지, 릴리스 및 소스 파일 업데이트 빈도를 제한하고 프록시의 실제 요청과는 별개로 모든 파일에 대해 단일 가져오기만 수행하여 데비안 미러의 대역폭 요구사항을 줄입니다. apt-cacher는 프록시를 통과하는 요청을 기반으로 데비안 HTTP 미러를 자동으로 구축합니다.

물론, 표준 캐싱 프록시를 이미 사용하고 있고, 모든 시스템이 이 프록시를 사용하도록 구성되었다면 똑같은 이점을 얻을 수 있습니다.