여기 있는 모든 컴퓨터가 모든 것을 독립적으로 다시 다운로드할 필요가 없도록 패키지 다운로드를 캐시하는 Squid 웹 캐시를 설정했습니다. 설치 프로그램에서 이미지와 에이전트를 묻는 메시지를 표시합니다. 각 머신이 정확히 동일한 이미지(여기)와 프록시를 사용하는 한 http.us.debian.org
작동할 것입니다.
이는 "정보를 수동으로 입력"하고 매번 입력해야 하기 때문에 약간 짜증나는 일입니다(설치 프로그램이 하는 것처럼 ftp.us.debian.org
, Squid는 그것이 동일하다는 것을 깨닫지 못합니다).
설치 프로그램의 기본값은 바로 그것입니다 mirror
. 작동하게 하는 방법이 있습니까? 그럼 게으른 상태에서 그냥 여러 단어를 입력해도 되나요?
답변1
내 데비안 서버 팜을 제공하기 위한 로컬 deb 캐시를 갖기 위해 실제로는 apt-cacher-ng
(소프트웨어 저장소용 캐싱 프록시 서버)를 사용하는 것을 선호합니다.
APT/deb를 특별히 지원하고 사용자 정의가 가능하며 상당한 시간 동안 deb 파일을 캐시할 수 있는(구성 가능) 프록시입니다.
다음 명령을 사용하여 설치할 수 있습니다.
apt-get install apt-cacher-ng
기본적으로 repositories/debs 를 캐시합니다 /home/apt-cacher-ng
. 이 디렉터리 아래에 Debian/Ubuntu 서버에서 사용되는 각 저장소에 대한 디렉터리를 만든 다음 미러 구조와 매우 유사한 배포판을 사용합니다. 추가 보너스로 Squid 서버보다 여기 캐시에서 deb를 수동으로 가져오는 것이 훨씬 쉽습니다.
모든 서버에서 사용하려면 /etc/apt/apt.conf.d
다음 콘텐츠가 포함된 파일을 디렉터리에 추가하세요.02proxy
Acquire::http { Proxy "http://your_proxy_APT_server:3142"; };
이 파일이 추가되면 데비안 패키지 관리자는 구성된 http APT 프록시를 통해 구성된 모든 저장소를 프록시합니다.
또한 활동에 대한 상담을 위한 흥미로운 정적 페이지도 있습니다.
서버가 새 프록시 APT 서버와 통신할 수 있도록 방화벽에서 3142/TCP를 열어야 할 수도 있습니다.
이 설정의 장점은 서버 버킷에 대해 하나의 deb 복사본만 다운로드하는 것 외에도 대역폭과 공용 저장소 사용량을 절약하고 인터넷 액세스가 필요하지 않은 내부 서버(예: DHCP 서버)를 업데이트할 수도 있다는 것입니다. .
에 기록된 대로공식 설치 가이드 부록 B, DHCP 서버 구성에 다음을 추가하여 프로필을 내보낼 수 있습니다.
if substring (option vendor-class-identifier, 0, 3) = "d-i" {
filename "http://host/preseed.cfg";
}
그런 다음 이러한 사전 설정 옵션을 사용하여 미러 및 프록시를 자동으로 구성할 수 있습니다.
d-i mirror/protocol string http
d-i mirror/country string manual
d-i mirror/http/hostname string http.us.debian.org
d-i mirror/http/directory string /debian
d-i mirror/http/proxy string http://your_proxy_APT_server:3128/
답변2
편집하다:내가 편집한 사전 설정 방법Ruy F. Ribeiro의 답변Squid나 다른 프록시와 함께 사용할 수도 있으며 (DHCP를 사용하는 한) 아마도 더 나은 접근 방식일 것입니다.
먼저 mirror
시스템 도메인 이름이 완성되므로 DNS 항목을 추가합니다 mirror.yourdomain.com
. 이 예에서는 Apache를 실행하는 서버를 가리키며 동일한 서버도 Squid를 실행합니다.
Apache에서 mod_proxy 및 mod_proxy_http가 활성화되어 있는지 확인하세요(예: a2enmod proxy; a2enmod proxy_http
Debian의 경우). 그런 다음 새 가상 호스트를 추가합니다.
<VirtualHost *:80>
ServerName mirror.yourdomain.com
ServerAlias mirror
ProxyPass /debian http://http.us.debian.org/debian
ProxyRemote http http://localhost:3128/
ProxyVia off
</VirtualHost>
Apache를 다시 시작한 후 Debian 미러 "미러"에서 다운로드한 패키지는 캐시를 전달해야 합니다.