사람들이 어떻게 환경에서 FreeBSD의 포트를 배포하고 있는지 궁금합니다. 필자는 FreeBSD를 사용하는 대부분의 사람들이 실제로 포트를 사용한다고 가정합니다 (그리고 종종 바이너리로 업그레이드하기 위해 포트 업그레이드). 그러나 최근 버전에서 작동하는 방식에 만족하지 않기 때문에이 설정을 사용하는 방법에 관심이 있습니다. 현재 FreeBSD 9.0을 실행 중이며 문제가 있습니다.
다음과 같이 설정했습니다.
- / usr / ports는 한 노드에서 NFS를 통해 공유됩니다 (야간 'portsnap fetch update').
- 각 노드는 / usr / ports를 읽기 / 쓰기로 마운트합니다.
- 모든 노드의 /etc/make.conf에서 "WRKDIRPREFIX = / usr / tmp"를 설정했습니다
- /usr/local/etc/pkgtools.conf에 다음을 추가하여 로컬 색인을 사용하도록 Portsnap을 구성했습니다.
ENV['LOCALINDICES'] ||= '/var/db'
ENV['PORTS_INDEX'] ||= ENV['LOCALINDICES'] + '/INDEX.local'
portupgrade -p package
패키지를 빌드 한 다음 portupgrade -P package
다른 노드에 바이너리를 설치 하기 위해 성공적으로 실행할 수 있습니다 .
그러나 때로는 다음과 같은 문제가 발생합니다. /var/db/INDEX.local:23265:dbm_store failed
색인이 로컬에 상주하기 때문에 시스템에 수행 할 수있는 다른 최적화 방법을 생각할 수 없으며 실제로 내 보낸 유일한 것은 포트 트리이며 노드에서 아무것도 기록되지 않습니다.