패키지 관리 · dpkg 저수준 · 퀴즈
퀴즈: dpkg 저수준
문항 6개. 정답과 해설은 풀어 본 뒤에 보여 드립니다.
`dpkg -l` 출력에서 상태가 `iU` 인 패키지는 어떤 상태인가요?
- 설치를 요청했고 설정까지 정상적으로 끝난 상태
- unpack 은 됐지만 configure 가 끝나지 않은 상태
- 패키지 본체는 제거됐고 설정 파일만 남은 상태
- 설치 요청이 취소되어 아무것도 남지 않은 상태
`.deb` 파일 안에서 `postinst` 스크립트가 들어 있는 곳은?
- data.tar
- debian-binary
- md5sums
- control.tar
낯선 서버에서 `/usr/local/bin/deploy` 라는 파일을 발견했습니다. `dpkg -S /usr/local/bin/deploy` 가 아무것도 못 찾았다면?
- 어떤 패키지도 그 파일을 깔지 않았다 — 사람이 직접 놓은 파일이다
- 패키지 데이터베이스가 손상된 것이다
- 그 파일이 심볼릭 링크라서 검색되지 않는다
- dpkg -S 는 /usr/local 을 검색하지 않는다
업그레이드 중 설정 파일 충돌 프롬프트가 뜨는 원리는?
- dpkg 가 현재 파일의 수정 시각을 새 파일과 비교한다
- apt 가 설치 전에 뜬 백업본과 diff 를 떠서 비교한다
- 패키지 서명 키가 바뀌면 설정 파일마다 확인을 요구한다
- conffiles 에 등록된 파일의 md5 를 기억해 두고 사람이 고쳤는지 판별한다
`dpkg -i pkg.deb` 가 의존성 부족으로 실패했습니다. 저장소가 정상일 때 가장 표준적인 다음 단계는?
- apt-get -f install 로 미해결 의존을 마저 푼다
- dpkg -i --force-depends 로 강제 설치
- dpkg --configure -a 로 재설정
- 패키지를 다시 내려받는다
`dpkg -l` 에 `rc` 로 표시된 패키지를 완전히 없애려면?
- apt-get autoremove
- apt-get clean
- dpkg --configure -a
- dpkg --purge <패키지>