LabHub
배우기 러닝패스 코스

閉域網へのGPUドライバ搬入と導入

オフラインリポジトリで導入する

LabHub 에서 이어서 보기

한국어 원문으로 표시합니다.

목표

반입한 .deb 묶음으로 저장소를 세워 드라이버를 설치하고, 1차 반입만으로는 툴킷이 설치되지 않는 것을 확인한 뒤, 2차 반입분을 추가해 완성합니다. 실제 폐쇄망 절차 그대로입니다.

왜 중요한가

반입한 파일을 dpkg -i 로 하나씩 설치하면 순서를 사람이 맞춰야 하고, 다음에 또 그 순서를 기억해야 합니다. 저장소로 만들면 apt 가 그래프를 풀어 주고 그 저장소는 계속 재사용됩니다. 그리고 설치 시뮬레이션(-s) 이 반입 성공 여부에 대한 최종 답입니다 — 여기서 unmet dependencies 가 나오면 그 목록이 곧 2차 반입 목록입니다.

앞 실습(gpu-deps)에서 만든 /root/gpu/pool 을 이어서 씁니다.

단계

  1. /root/gpu/poolRelease 파일을 추가하세요. Origin, Label, Suite, Codename, Architectures, Components 여섯 키가 각각 한 줄씩 있어야 하고, Architecturesamd64 가 포함돼야 합니다.
  2. /etc/apt/sources.list.d/gpu-airgap.list 로 이 저장소를 등록하고 색인을 갱신하세요. 그리고 apt-cache policy nvidia-driver-550 출력을 /root/gpu/policy.txt 로 저장하세요.
  3. nvidia-driver-550 설치를 시뮬레이션해 출력을 /root/gpu/sim-driver.txt 로 저장하세요. Inst 로 시작하는 줄이 11개여야 합니다.
  4. nvidia-container-toolkit 설치를 시뮬레이션해 실패하는 것을 확인하고, 출력(표준 에러 포함)을 /root/gpu/sim-toolkit-fail.txt 로 저장하세요. 파일에 libnvidia-container1 이 언급돼야 합니다.
  5. /opt/fixtures/gpu-airgap/src2/ 의 패키지를 빌드해 /root/gpu/pool/ 에 추가하고, 색인을 다시 만들고, 색인을 갱신하세요. Package: 항목이 15개가 돼야 합니다.
  6. nvidia-driver-550nvidia-container-toolkit 을 실제로 설치하세요.
  7. dpkg -lnvidia 또는 libnvidia 로 시작하는 패키지의 상태를 확인해 /root/gpu/installed.txt 로 저장하세요. 모든 줄이 ii 상태여야 합니다.
  8. /root/gpu/install-report.txt 를 다음 4줄로 만드세요. DRIVER_VERSION=<nvidia-driver-550 의 설치된 버전> / TOOLKIT_VERSION=<nvidia-container-toolkit 의 설치된 버전> / INSTALLED=<이름이 nvidia 또는 libnvidia 로 시작하는 설치된 패키지 수> / SECOND_INTAKE=libnvidia-container1

참고

반입분으로 저장소 구성

/root/gpu/poolRelease 파일을 추가하세요. Origin, Label, Suite, Codename, Architectures, Components 여섯 키가 각각 한 줄씩 있어야 하고, Architecturesamd64 가 포함돼야 합니다.

앞 실습에서 만든 pool 을 그대로 씁니다. Release 파일도 함께 만드세요.

저장소 등록과 갱신

/etc/apt/sources.list.d/gpu-airgap.list 로 이 저장소를 등록하고 색인을 갱신하세요. 그리고 apt-cache policy nvidia-driver-550 출력을 /root/gpu/policy.txt 로 저장하세요.

flat 저장소 형식입니다. 등록 후 색인을 갱신해야 패키지가 보입니다.

드라이버 설치 시뮬레이션

nvidia-driver-550 설치를 시뮬레이션해 출력을 /root/gpu/sim-driver.txt 로 저장하세요. Inst 로 시작하는 줄이 11개여야 합니다.

-s 옵션은 아무것도 바꾸지 않고 계획만 출력합니다. Inst 로 시작하는 줄을 세어 보세요.

툴킷 설치가 막히는 것 확인

nvidia-container-toolkit 설치를 시뮬레이션해 실패하는 것을 확인하고, 출력(표준 에러 포함)을 /root/gpu/sim-toolkit-fail.txt 로 저장하세요. 파일에 libnvidia-container1 이 언급돼야 합니다.

같은 시뮬레이션을 툴킷으로 돌리면 실패합니다. 오류 출력을 그대로 저장하세요.

2차 반입분 추가

/opt/fixtures/gpu-airgap/src2/ 의 패키지를 빌드해 /root/gpu/pool/ 에 추가하고, 색인을 다시 만들고, 색인을 갱신하세요. Package: 항목이 15개가 돼야 합니다.

src2 디렉터리에 부족분이 있습니다. 빌드해서 pool 에 넣고 색인을 다시 만드세요.

실제 설치

nvidia-driver-550nvidia-container-toolkit 을 실제로 설치하세요.

드라이버와 툴킷을 한 번에 설치할 수 있습니다. 설치 후 상태를 확인하세요.

설치 상태 검증

dpkg -lnvidia 또는 libnvidia 로 시작하는 패키지의 상태를 확인해 /root/gpu/installed.txt 로 저장하세요. 모든 줄이 ii 상태여야 합니다.

dpkg -l 의 상태 표시가 전부 ii 여야 합니다. 그렇지 않은 것이 있으면 설치가 안 끝난 것입니다.

설치 보고서

/root/gpu/install-report.txt 를 다음 4줄로 만드세요. DRIVER_VERSION=<nvidia-driver-550 의 설치된 버전> / TOOLKIT_VERSION=<nvidia-container-toolkit 의 설치된 버전> / INSTALLED=<이름이 nvidia 또는 libnvidia 로 시작하는 설치된 패키지 수> / SECOND_INTAKE=libnvidia-container1

설치된 패키지 수와 버전을 모으세요. 값은 실제 조회 결과여야 합니다.