우분투의 Repository 서버를 만드는 방법 – 02

“일단 미러다, 미러를 만들어보자!”

저 구석에 설치만 해두고는 아무도 안쓰는 머신 하나를 발견했다. (하나는 내가 가끔 다른 플젝 한답시고 건드려서 조금씩 쓰는데 다른 한대는 아예 손도 안대고 있는 게 있어서..(사실 손 댈 생각도 안하고 있는 거 같다만.. 디스하기 시작하면 끝도 없겠다. 그냥 말자.))

그럼 여기서 내가 미러를 위해 뭘 설치하고 수정해야 하는지 확인해야 겠다.

우선 apt-mirror를 위해 필요한 패키지와 권장사양을 찾아봤다.

  • apt-mirror paackage(sudo aptitude install apt-mirror)
  • apache2 package(sudo aptitude install apache2)
  • roughly 15G of storage per release, per architecture

….스토리지는 넉넉하게 준비해 두세요. ㅇㅅㅇ; (역시 미러서버)

일단 저 둘의 패키지를 설치했다면 설정을 해줘야 합니다. /etc/apt/mirror.list 파일에 기본적인 설정과 설치된 패키지들이 어디에 위치할 지 등등의 정보를 설정하게 됩니다.

Screenshot - 2016년 05월 24일 - 17시 45분 31초.png

설정 파일을 까 보면 기본 경로와 미러 경로, 그리고 별도의 스크립트 작업들이 전부입니다. 그 외에는 어느 미러에서 복제해 올 것인지를 설정하는 곳인데, 이 부분은 /etc/apt/source.list에 있는 사이트 경로와 비슷합니다. 저 밑에 경로가 버전마다 다 적혀 있으면 버전마다 있는 대형 서버가 되는 것이겠군요. 근데 용량을 생각하면…/먼산

설정 안하고 그대로 실행해 보겠습니다.

apt-mirror

Screenshot - 2016년 05월 24일 - 17시 40분 57초

14.04만 하는데도 144.8GiB…..

이런 건 스토리지에 여유가 넘쳐나시는 분들이 아니라면 그냥 public repository 쓰세요..ㅇㅅㅇ;;

아, 참고로 저 [20], [19] 저것들 쓰레드 개수입니다. 용량이 용량이다보니 병렬로 받는군요. ㅇㅂㅇ;;

다 받아지면 apt-mirror를 통해 받은 패키지들을 다른 클라이언트들이 접속해서 쓸 수 있게 할 수 있는 방법에 대해서 보여드리겠습니다. ㅇㅅㅇ/

perl: warning: Please check that your locale settings:

우분투 사용 도중에 나오는 오류입니다. 로케일 셋팅이 잘못되어 있어서 나오는 오류더군요. ㅇㅅㅇ

해결책은 의외로 간단하더군요. 로케일을 셋팅해 주면 됩니다.

sudo locale-gen [로케일] [로케일] …

로케일은 물론 여럿 설정 가능합니다.

우분투의 Repository 서버를 만드는 방법 – 01

“왜 이짓을 하려 하냐…”

첨에 들었을 때 했던 소리다. 타음카카오나 네오위즈나 서버 빠른 데 갖다 쓰면 되잖아? 라고 나도 모르게 자동으로 반사적으로 말했다. 근데 떠들고 보니… 나도 궁금해졌다. ㅇㅅㅇ!

그러고 보니 어차피 귀찮으면 네트워크 설치를 해야 될 수도 있는데.. 그럴 꺼면 아예 내부에 미러 서버 있다고 해서 나쁠 껀 없잖아? 어차피 뭐 다른 곳에 있는 공개용 ftp와는 달리 매번 쓰는 것도 아니고..!

그래서 지금 시스템 백업하고 새로 설치해야 하는 시간도 있다 보니 검색 ㄱㄱㄱ!

방법이 두 가지가 존재한다. 그래서…. 다 실험해보려 한다! (이 글을 쓸 때는 지금 연구실 주분투 망가져서 백업중인 상황임을 알려드립니다. ㅇㅅㅇ!)

  • APT-MIRROR

이름 그대로 미러 서버를 만드는 것이다. (ㅇㅅㅇ!)

perl 기반의 유틸리티를 통해서 public repository의 모든 컨텐트를 다운로드와 미러링을 한다고 한다. 모든 걸 죄다 미러링 하게 되면 내가 필요로 하지 않는 것까지 전부 다 가지고 온다는 것이기도 하니 용량은 엄청 먹을 거 같긴 하다. 하지만 public repository의 모든 패키지를 다 갖고 있다는 것을 좋아하는 사람도 있을 것이다. (…)

  • APT-CACHE

이름 그대로 캐시 서버이다.

미러 서버의 모든 컨텐츠를 다 가져오는 apt-mirror와는 다르다. 그러나, 해당 네트워크에 접속한 클라이언트가 요구한 패키지에 대해서는 public repository에서 받아와서 저장하고 제공해주는 역할을 한다. 다시 말하면, public repository에서 중간에 받아와서 처리해주는 역할이다. 이 캐시 서버에 없는 컨텐츠에 대해서는 받아와야 할 시간이 필요하지만, 이미 있는 컨텐츠에 대해서는 캐시 서버에서 제공받으면 된다.서버의 용량을 아낄 수 있는 점에 있어서는 이쪽이 더 좋아보일지도 모르겠다. 동일한 설치를 하는 컴퓨터들이 다수 있다면 더더욱 서버의 용량은 아껴지겠지. 한곳에서 설치 작업하기 위해 받아놓은 데이터를 통해 다른 곳도 계속 쓸 테니깐.

그럼 한번 구현 해볼까. ㅇㅅㅇ;;