FreeBSD is a registered trademark of the FreeBSD Foundation.
CVSup is a registered trademark of John D. Polstra.
Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this document, and the FreeBSD Project was aware of the trademark claim, the designations have been followed by the “™” or the “®” symbol.
Este artigo aborda a configuração de um site espelho destinado à distribuição do FreeBSD e tem como público alvo os administradores destes sites. Este é um trabalho em andamento.
Neste momento nós não estamos aceitando novos sites espelho.
Os coordenadores do sistema de sites espelho podem ser
contatados por email no endereço
<mirror-admin@FreeBSD.org>
. Também existe a
lista de discussão
sobre sites espelhos do FreeBSD.
Espaço em disco é um dos requisitos mais importantes. Dependendo do conjunto de releases, de arquiteturas e do grau de cobertura que você deseja que seu site espelho tenha, uma enorme quantia de espaço em disco pode ser consumida. Também tenha em mente que os sites oficiais provavelmente precisam estar completos. O repositório CVS e as páginas web devem ser sempre espelhados de forma completa. Também observe que os números mencionados neste artigo estão refletindo o estado atual (9.3-RELEASE/10.3-RELEASE). Desenvolvimentos futuros e novas releases apenas irão aumentar o espaço requerido. Certifique-se de manter algum espaço extra (entre 10 e 20%) disponível, em relação as estimativas abaixo, apenas por segurança. Aqui estão algumas estimativas aproximadas:
Distribuição FTP completa: 1.0 TB
Repositório CVS: 5.4 GB
Deltas CTM: 3.2 GB
Páginas Web: 463 MB
O uso atual de espaço em disco pela distribuição FTP pode ser encontrada em ftp://ftp.FreeBSD.org/pub/FreeBSD/dir.sizes.
É claro que você precisa estar conectado à Internet. A largura de banda que será necessária dependerá do uso previsto para o seu site espelho. Se você só quer espelhar algumas partes do FreeBSD para uso local no seu Site/Intranet, a demanda pode ser muito menor do que se você quiser tornar os arquivos disponíveis publicamente. Se você pretende se tornar um site espelho oficial, a largura de banda necessária será ainda maior. Desta forma, nós só podemos dar estimativas grosseiras em relação a este item:
Site local, sem acesso público: basicamente nenhum, mas um link menor que 2 Mbps pode tornar o processo de sincronismo muito lento.
Site público não oficial: um link de 34 Mbps é provavelmente um bom ponto de partida.
Site oficial: recomenda-se um link de no mínimo 100 Mbps, e o seu servidor deverá estar conectado o mais próximo possível do seu roteador de borda.
O dimensionamento destes itens depende do número esperado de clientes simultâneos, o que é determinado pela política de uso do servidor. Estes requisitos também são afetados pelo tipo de serviço que você deseja oferecer. Serviços básicos de FTP ou HTTP podem não necessitar de uma grande quantidade de recursos. Mas fique atento se você for disponibilizar os serviços de CVSup, rsync ou mesmo de AnonCVS. Estes serviços podem ter um enorme impacto nos requisitos de CPU e de memória. Especialmente o rsync, o qual é considerado um devorador de memória, e o CVSup certamente consome um pouco da CPU. No caso do AnonCVS pode ser interessante configurar um sistemas de arquivos residente em memória (MFS) de no mínimo 300 MB, desta forma você precisa considerar este consumo quando avaliar a quantidade de memória requerida. A seguir você irá encontrar alguns exemplos, os quais visam apenas lhe dar uma idéia por alto das necessidades.
Para um site de visitação moderada o qual ofereça o serviço de Rsync, você pode considerar uma CPU entre 800 MHz e 1 GHz, e pelo menos 512 MB de memória RAM. Esta é provavelmente a configuração mínima para um site espelho oficial.
Para um site de visitação frequente, você definitivamente vai precisar de mais memória RAM (considere 2 GB como um bom ponto de partida) e possivelmente de mais poder de processamento (CPU), o que pode significar que você precisará ir para um sistema multiprocessado (SMP).
Você também pode considerar o uso de um subsistema de discos rápidos. As operações em um repositório CVS necessitam de um subsistema de discos rápido (o uso de RAID é altamente desejável). Uma controladora SCSI que possua cache dedicado também pode melhorar a velocidade uma vez que a maioria destes serviços incorre na realização de um grande número de pequenas modificações no disco.
Todo site espelho é obrigado a disponibilizar um conjunto de serviços básicos. Em adição a estes serviços obrigatórios, existe um grande número de serviços opcionais os quais o administrador do servidor pode optar por oferecer. Esta sessão irá detalhar quais serviços você pode oferecer, bem como implementá-los.
Este é um dos serviços mais básicos, e ele é
requerido em todos os sites espelhos que oferecem
acesso público às distribuições
via FTP. O acesso ao FTP deve ser anônimo, e não
é permitido o uso de nenhum controle nas taxas de
upload/download (o que seria uma coisa ridícula de
qualquer maneira). Não é necessário
ter o upload de arquivos habilitado (e isso
nunca deve ser permitido na área
onde os arquivos do FreeBSD são mantidos). Os
arquivos do FreeBSD devem ficar disponíveis sob o
caminho /pub/FreeBSD
.
Existem diversos softwares disponíveis os quais podem ser configurados para operar como um servidor de FTP anônimo. Por exemplo (em ordem alfabética).
/usr/libexec/ftpd
: Este
é o servidor de FTP nativo do FreeBSD.
Certifique-se de ler o ftpd(8).
ftp/ncftpd: Um pacote comercial, gratuito para uso com fins educacionais.
ftp/oftpd: Um servidor de FTP desenvolvido tendo a segurança como seu foco principal.
ftp/proftpd: Um servidor FTP modular e muito flexível.
ftp/pure-ftpd: Outro servidor de FTP desenvolvido tendo a segurança em mente.
ftp/twoftpd: Mais um servidor desenvolvido com foco em segurança.
ftp/vsftpd: Um ftpd “muito seguro”.
ftp/wu-ftpd: O ftpd da universidade de Washington. Ele se tornou impopular, por causa da enorme quantidade de problemas de segurança que foram descobertos nele. Se você optar por utilizar este software, certifique-se de mantê-lo atualizado.
O ftpd nativo do FreeBSD, o proftpd, o wu-ftpd e talvez o ncftpd são alguns dos servidores de FTP mais comumente utilizados. Os demais não possuem uma grande base de usuários entre os sites espelhos. Um item a ser considerado é que você pode precisar de flexibilidade para controlar quantas conexões simultâneas serão permitidas no servidor, limitando desta forma o consumo do seu link IP e dos demais recursos do sistema.
O Rsync é muitas vezes
oferecido para acesso ao conteúdo da área de
FTP de um site espelho do FreeBSD, desta forma outros sites
espelhos podem utilizar o seu sistema como fonte para se
espelhar. O protocolo do rsync é diferente do FTP em
muitos aspectos. Ele é muito mais amigável em
relação ao consumo de banda IP, uma vez que
quando um arquivo é alterado ao invés de
transferí-lo por completo novamente, ele transfere
apenas as diferenças entre as duas versões do
arquivo. O Rsync requer uma
grande quantidade de memória para cada
instância. A quantidade de memória alocada
depende do tamanho do modulo sincronizado em termos do
número de diretórios e de arquivos. O
Rsync pode utilizar o
rsh
e o ssh
(que agora
é padrão) para transporte dos dados, ou
então utilizar o seu próprio protocolo para
acesso stand-alone (este é o método preferido
para um servidor público de
Rsync). Obrigatoriedade de
autenticação, limites ao número de
conexões simultâneas e outras restrições
podem ser aplicadas. Há apenas um pacote de software
disponível para se implementar um servidor de
Rsync:
Se você deseja disponibilizar as páginas web do FreeBSD, você vai precisar instalar um servidor web. Opcionalmente você poderá oferecer acesso a sua árvore de FTP via HTTP. A escolha do software do servidor web é uma escolha do administrador do site espelho. As opções mais populares são:
www/apache22: O Apache é o servidor web mais amplamente utilizado na internet. Ele é usado extensivamente pelo projeto FreeBSD.
www/thttpd: Se você for servir uma grande quantidade de conteúdo estático, você pode constatar que o uso de uma aplicação como o thttpd é mais eficiente do que o uso do Apache. Ele está otimizado para operar sob a máxima performance no FreeBSD.
www/boa: O Boa é uma outra alternativa ao thttpd e ao Apache. Ele deve prover uma performance consideravelmente melhor que a do Apache para conteúdos puramente estáticos. Ele não possui, pelo menos até o momento em que esse artigo está sendo escrito, o mesmo conjunto de otimizações para o ambiente FreeBSD que encontramos disponíveis no thttpd.
O CVSup é um meio muito eficiente de distribuição de arquivos. Ele trabalha de forma semelhante ao rsync, mas foi especialmente projetado para uso com repositórios CVS. Se você deseja disponibilizar o repositório CVS do FreeBSD, você deve considerar seriamente fazê-lo via CVSup. É possível oferecer acesso a um repositório CVS via AnonCVS, FTP, rsync ou HTTP, mas as pessoas vão se beneficiar muito mais de um acesso via CVSup. O CVSup foi desenvolvido pelo John Polstra. É um pouco complicado instalá-lo em uma plataforma diferente do FreeBSD, uma vez que ele foi escrito em Modula-3 e consequentemente necessita de um ambiente Modula-3 disponível. O John Polstra preparou uma versão simplificada do M3 a qual é suficiente para executar o CVSup, e que pode ser facilmente instalada. Consulte Ezm3 para maiores detalhes. Os ports relacionados são:
net/cvsup: O port nativo do CVSup (cliente e servidor) o qual requer a instalalação do lang/ezm3.
net/cvsup-mirror: O kit de espelhamento do CVSup, o qual requer o net/cvsup-without-gui, e que o configura para atuar no espelhamento dos serviços. Alguns administradores podem preferir utilizar uma forma diferente de configurar um site espelho.
Existem alguns outros, como o net/cvsup-without-gui o qual você pode desejar olhar. Se você preferir um pacote binário, compilado estaticamente, de uma olhada aqui. Esta página continua mencionando o erro SG1, o qual esteve presente no CVSup. Talvez o John venha a criar no futuro um site genérico para download de binários estáticos para várias plataformas.
É possível utilizar o CVSup para disponibilizar qualquer tipo de arquivo, e não apenas repositórios CVS, mas a configuração pode ser complexa. O CVSup é conhecido por consumir um pouco de CPU tanto no servidor quanto no cliente, uma vez que ele precisa comparar muitos arquivos.
Se você possui o repositório CVS, você pode desejar disponibilizá-lo via cvs anônimo. Um pequeno aviso antes: Não existe muita demanda para este tipo de acesso, ele requer alguma experiência, e você precisa saber o que está fazendo.
Geralmente há duas formas de se acessar um
repositório CVS remotamente: via
pserver ou via ssh
(nós não consideramos o
rsh
). Para acesso anônimo, o uso
do pserver é bastante adequado,
mas alguns optam por também oferecer acesso via
ssh
. Existe um wrapper
customizado no repositório CVS, para ser utilizado
como shell para uma conta anônima de ssh. Ele faz um
chroot, e portanto requer que o repositório CVS
esteja disponível no diretório home do
usuário anônimo. Isto pode não ser
possível para todos os sites. Se você for
oferecer apenas acesso via pserver,
esta restrição não se aplica, mas
você pode ficar sujeito a um risco maior de
segurança. Você não precisa instalar
nenhum software especial, uma vez que o cvs(1) vem por
padrão na instalação básica do
FreeBSD. Você precisa habilitar o acesso
através do inetd
, para isto basta
adicionar uma entrada ao seu
/etc/inetd.conf
semelhante a
esta:
cvspserver stream tcp nowait root /usr/bin/cvs cvs -f -l -R -T /anoncvstmp --allow-root=/home/ncvs pserver
Consulte o manual para detalhes das
opções. Consulte também a
página de info do CVS sobre
formas adicionais de certificar-se de que o acesso ao
repositório está configurado apenas para
leitura. Recomenda-se que você crie uma conta
não privilegiada, preferencialmente chamada
anoncvs
.
Você também precisa criar um arquivo
passwd
no seu
/home/ncvs/CVSROOT
e atribuir um
password (em branco ou anoncvs) para acesso deste
usuário ao CVS. O diretório
/anoncvstmp
é um sistema de
arquivo baseado em memória que tem um
propósito especial. Ele não é
obrigatório mas seu uso é recomendado, uma
vez que o cvs(1) cria uma estrutura de
diretórios ocultos no seu /tmp
a qual não é utilizada depois da
operação, mas que deixa as coisas
dramaticamente lentas se forem necessárias
operações reais de escrita e leitura para o
disco. Aqui está um exemplo de configuração no
/etc/fstab
, de como configurar um
MFS:
/dev/da0s1b /anoncvstmp mfs rw,-s=786432,-b=4096,-f=512,-i=560,-c=3,-m=0,nosuid 0 0
Esta é (naturalmente) uma sintaxe otimizada ao máximo, e foi sugerida pelo John Polstra.
Ok, agora você conhece os requisitos e sabe como oferecer os serviços, mas não sabe como começar. :-) Esta sessão explica como realizar realmente o espelhamento de várias partes do FreeBSD, que ferramentas utilizar e a partir de onde espelhar.
A área de FTP representa o maior volume de dados a serem espelhados. Ele inclui os conjuntos de distribuição os quais são requeridos para as instalações via rede, os ramos (branches) do sistema dos quais se tira snapshots a partir da árvore de código fonte, as imagens ISO para gravar CDs de instalação do sistema, um sistema de arquivos vivo, a árvore do ports, os distifiles (código fonte necessários para compilar o ports) e uma quantidade enorme de pacotes. Tudo, é claro, para as várias versões do FreeBSD, e para as várias arquiteturas.
Você pode utilizar um aplicativo de espelhamento de FTP para obter os arquivos. Alguns dos mais utilizados são:
O ftp/mirror era muito popular, mas parece ter alguns inconvenientes, como ele está escrito em perl(1) ele possui alguns problemas reais para espelhar grandes diretórios como os de um site espelho do FreeBSD. Existem rumores de que a versão atual corrigiu isso ao permitir que seja especificado um algoritmo diferente para comparar a estrutura de diretórios.
Em geral o FTP não é muito bom para tarefas de espelhamento. Ele transfere o arquivo inteiro se o mesmo for alterado, e não cria um fluxo único de dados do qual ele se beneficiaria no caso de ocorrer uma grande janela de congestionamento TCP.
A melhor forma de espelhar a área FTP é
através do uso do rsync.
Você pode instalar o port net/rsync e então
utilizá-lo para sincronizar com o seu servidor de
upstream
. O
rsync já foi mencionado na
Seção 2.4.2, “Rsync (opcional para o conjunto de arquivos
do FTP)”. Uma vez que a
disponibilização de acesso via
rsync não é
obrigatória, o seu site preferido de
upstream
pode não disponibilizá-lo.
Você pode precisar gastar algum tempo procurando até
encontrar um servidor que permita o acesso via
rsync.
Uma vez que o número de clientes
rsync gera um impacto
significativo no servidor, muitos administradores
definem limites para o número de acessos
simultâneos aos seus servidores. Você deve
consultar o responsável pelo servidor de
upstream
que você está
utilizando, sobre as regras do servidor, e sobre a
possibilidade dele abrir uma exceção para o seu
servidor (uma vez que você é um site
espelho).
A linha de comando para espelhar o FreeBSD será parecida com esta:
%
rsync -vaz --delete ftp4.de.FreeBSD.org::FreeBSD/ /pub/FreeBSD/
Consulte a documentação do rsync, a qual está disponível em http://rsync.samba.org/, para conhecer as várias opções que podem ser utilizadas com o rsync. Se você sincronizar o módulo inteiro (ao contrário de apenas alguns subdiretórios), esteja ciente de que o módulo-diretório (normalmente "FreeBSD") não será criado, de forma que você não deve omitir o diretório alvo. Além disso, você pode desejar criar um script de trabalho para ser executado pelo cron(8), para automatizar o processo de espelhamento.
Alguns sites, incluindo o ftp-master.FreeBSD.org
oferecem acesso via CVSup para
espelhamento do conteúdo da área de FTP.
Você precisa instalar um cliente
CVSup, preferencialmente a partir
do port net/cvsup.
(consulte também a Seção 2.4.4, “CVSup (desejado para repositórios CVS)”). Abaixo você encontra um
exemplo de arquivo supfile
pronto para
uso com o
ftp-master.FreeBSD.org
:
# # FreeBSD archive supfile from master server # *default host=ftp-master.FreeBSD.org *default base=/usr *default prefix=/pub #*default release=all *default delete use-rel-suffix *default umask=002 # If your network link is a T1 or faster, comment out the following line. #*default compress FreeBSD-archive release=all preserve
Ao que parece o CVSup seria a melhor opção para espelhar os arquivos em termos eficiência, mas infelizmente ele só está disponível em alguns poucos sites.
Por favor, consulte a documentação do
CVSup, como por exemplo a
cvsup(1) e considere o uso da opção
-s
. Esta opção reduz as
operações de leitura e escrita para o seu
disco rígido, assumindo que as
informações gravadas sobre cada arquivo
estão corretas.
Existem várias formas de se espelhar o repositório CVS. O CVSup é o método mais comum.
O CVSup foi descrito com algum detalhe na Seção 2.4.4, “CVSup (desejado para repositórios CVS)” e na Seção 3.1.3, “Espelhando com o CVSup”.
É muito fácil configurar um site espelho com o CVSup. Basta instalar o port net/cvsup-mirror para que você tenha todos os programas necessários instalados, e para que todas as informações necessárias para a configuração do site espelho sejam coletadas.
Por favor não se esqueça de avaliar a sugestão mencionada na nota acima
A utilização de outros métodos que
não o CVSup geralmente
não é recomendada. De qualquer forma,
nós vamos descrevê-los rapidamente aqui. Uma
vez que a maioria dos sites oferece o repositório
CVS como parte da área de FTP, sob o caminho
/pub/FreeBSD/development/FreeBSD-CVS
,
os seguintes métodos podem ser utilizados:
FTP
Rsync
HTTP
O AnonCVS não pode ser utilizado para espelhar o repositório CVS, uma vez que o CVS não permite que você acesse o próprio repositório em si (arquivos ",v"), permitindo o acesso somente as versões limpas dos módulos.
A melhor forma é realizar um “check
out
” da distribuição www do
servidor de CVS. Se você tem um mirror local do
repositório CVS, isto será tão simples
quanto executar:
%
cvs -d /home/ncvs co www
e agendar uma tarefa no cron,
que execute periodicamente o comando
cvs up -d -P
, imediatamente
após a execução do processo que atualiza
o seu repositório. É claro que os arquivos
precisam ser colocados em um diretório disponível para
acesso público via WWW. A instalação e
configuração de um servidor web não
serão abordadas neste artigo.
Se você não tem um repositório local,
você pode utilizar o CVSup
para manter uma “cópia atualizada” das
páginas www. Um supfile de exemplo para esta tarefa
pode ser encontrado em
/usr/share/examples/cvsup/www-supfile
, o
qual irá se parecer com isto:
# # WWW module supfile for FreeBSD # *default host=cvsup3.de.FreeBSD.org *default base=/usr *default prefix=/usr/local *default release=cvs tag=. *default delete use-rel-suffix # If your network link is a T1 or faster, comment out the following line. *default compress # This collection retrieves the www/ tree of the FreeBSD repository www
A utilização do ftp/wget ou de outras ferramentas
de espelhamento web (web-mirror
)
não é recomendado.
Uma vez que a documentação é referenciada em diversas páginas web, é recomendado que você também espelhe a documentação do FreeBSD. No entanto, isto não é tão trivial quanto o espelhamento das páginas www isoladamente.
Em primeiro lugar, você deve obter os fontes da documentação, e recomendamos que você faça isso preferencialmente via CVSup. Aqui está um exemplo de supfile para esta tarefa:
# # FreeBSD documentation supfile # *default host=cvsup3.de.FreeBSD.org *default base=/usr *default prefix=/usr/share *default release=cvs tag=. *default delete use-rel-suffix # If your network link is a T1 or faster, comment out the following line. #*default compress # This will retrieve the entire doc branch of the FreeBSD repository. # This includes the handbook, FAQ, and translations thereof. doc-all
Então você precisará instalar alguns
ports. Mas você está com sorte pois existe um
meta-port, o textproc/docproj, para fazer o
trabalho por você. Você precisa configurar
algumas variáveis de ambiente, como por exemplo
SGML_CATALOG_FILES
. Também de uma
olhada no seu /etc/make.conf
(faça uma cópia do
/usr/share/examples/etc/make.conf
se
você não possuir um), e verifique a
variável DOC_LANG
. Agora
você provavelmente já está pronto para
executar o comando make
dentro do
diretório com os fontes da documentação
(/usr/share/doc
por padrão) para
construí-la. De novo, você precisa tornar os arquivos
acessíveis através do seu servidor web, certificando-se de
que os links apontam para o local correto.
A construção da documentação, assim como as diversas tarefas associadas ao processo, estão documentadas no FreeBSD Documentation Project Primer. Por favor, leia este documento, especialmente se você está tendo problemas para construir a documentação.
Todo site espelho deve ser atualizado regularmente. Você certamente irá precisar de alguns scripts para automatizar este processo de atualização com a ajuda do cron(8). Uma vez que praticamente cada administrador implementa este procedimento do seu próprio jeito, nós não temos como fornecer instruções específicas de como proceder. O processo poderia ser resumido em:
Coloque o comando para executar a sua
aplicação de espelhamento em um script. O
uso de um script simples em /bin/sh
é recomendado.
Adicione alguns redirecionamentos para arquivo das mensagens dos programas, de forma que possa usar o mesmo com a finalidade de diagnóstico de problemas.
Teste se o seu script funciona. Verifique o arquivo de log.
Utilize o crontab(1) para adicionar o script ao crontab(5) do usuário apropriado. O qual deve ser um usuário diferente do usuário sob o qual o servidor de FTP é executado, desta forma não será permitido o acesso via FTP anônimo aos arquivos presentes na área de FTP, os quais não possuam permissões que possibilitem a leitura por todos os demais usuários. Isto é utilizado para a fase de “stage” das novas distribuições — garantindo que todos os sites espelhos oficiais possuam todos os arquivos necessários de uma distribuição, no dia em que a mesma é liberada.
Aqui estão alguns exemplos da periodicidade recomendada para atualização de um site espelho:
Conjunto de arquivos do FTP: diária
Repositório CVS: horária
Páginas WWW: diária
Esta é uma questão importante. Portanto, esta
seção irá gastar algum esforço para
explicá-la. Vamos dizer isso várias vezes: em
nenhuma circunstância você deve espelhar a partir do
ftp.FreeBSD.org
.
Os sites espelhos são organizados por país.
Todos os sites espelhos oficiais possuem uma entrada de DNS no
formato ftpN.CC.FreeBSD.org
. No
qual CC (i.e. código do
país / country code) é o domínio de
primeiro nível (TLD) do país no qual
o site espelho está localizado. O
N é um número, o qual diz
que o servidor é o de número
N naquele país. (o mesmo se
aplica para cvsupN.CC.FreeBSD.org
,
wwwN.CC.FreeBSD.org
, etc.) Existem sites
espelho que não possuem os componentes
CC em suas entradas de DNS. Estes
são os sites espelhos que estão muito bem
conectados e que permitem um grande número de
usuários simultâneos. O ftp.FreeBSD.org
é composto
atualmente por 2 servidores, um está localizado a
Dinamarca e o outro nos Estados Unidos. Ele
NÃO é um site mestre e
não deve nunca ser utilizado como servidor de upstream
para o seu espelhamento. Um grande número de
documentos online conduzem de forma interativa o
usuário para ftp.FreeBSD.org
, de forma que os sistemas
de espelhamento automático devem buscar um servidor
diferente para usar como fonte.
Adicionalmente existe uma hierarquia para os sites espelhos, a qual é descrita em termos de níveis (tiers). Os sites mestres não são referenciados, mas eles poderiam ser descritos como sendo um Tier-0. Os sites espelhos construídos a partir destes servidores podem ser considerados Tier-1, os espelhos dos espelhos-Tier-1 são considerados Tier-2, etc. Os sites oficiais são encorajados a serem um tier baixo, porém quanto mais baixo o tier, maiores as exigências nos termos descritos na Seção 2, “Requisitos para espelhar o FreeBSD”. O acesso aos sites espelhos de baixo tier pode ser restito, e o acesso aos sites mestres é definitivamente restrito. A hierarquia de tier não é refletida pelo DNS, e geralmente não é documentada em nenhum lugar exceto para os sites mestres. Entretanto, os sites espelhos oficiais com números baixos, de 1 a 4, normalmente são Tier-1 (esta é apenas uma sugestão aproximada, pois não existe uma regra).
Sob nenhuma circunstância você deve espelhar
o seu servidor a partir do ftp.FreeBSD.org
. A resposta curta
é: A partir do site que for mais próximo de
você em termos de saltos na internet, ou então do
que lhe disponibilizar o acesso mais rápido.
Se você não possui nenhuma intenção ou necessidade especial, as instruções da Seção 4.2, “Ok, mas de onde eu devo obter o material agora?” se aplicam. Isso significa:
Verifique os sites espelhos disponíveis no seu país. O Banco de dados de sites espelho do FreeBSD pode ajudá-lo neste processo.
Verifique qual deles disponibiliza o acesso mais rápido (número de saltos, tempo de latência, etc.) e que oferece os serviços que você planeja utilizar (tal como rsync ou CVSup).
Entre em contato com o administrador do site que você escolheu, mencione sua intenção e pergunte sobre os termos e regras para uso do servidor.
Configure o seu site espelho como foi descrito anteriormente.
Em geral a orientação da Seção 4.2.1, “Eu quero apenas espelhar a partir de algum lugar!” continua válida. É claro que você pode querer colocar algum peso sobre o fato de que o seu site de upstream deveria ser um servidor de tier baixo. Existem algumas outras considerações sobre sites espelhos oficiais que estão descritos na Seção 5, “Sites Espelhos Oficiais”.
Se você tem boas razões e bons
pré-requisitos, você pode querer e ter acesso a
um dos servidores mestres. O acesso a estes sites
geralmente é restrito e existem regras especiais para o
acesso. Se você já é um site espelho
oficial, isto certamente irá
ajudá-lo a conseguir o acesso. Em qualquer outro
caso, certifique-se de que o seu país realmente
necessita de outro site espelho. Se ele já possui 3
ou mais, pergunte ao “administrador da zona”
(<hostmaster@CC.FreeBSD.org>
) ou primeiro na
lista de discussão
sobre sites espelhos do FreeBSD.
Quem o ajudou a se tornar um site espelho
oficial, deveria tê-lo ajudado a
ganhar acesso a um servidor apropriado de upstream, seja
à um dos servidores mestre ou a um servidor Tier-1
adequado. Se isso não ocorreu, você pode
enviar um email para o endereço
<mirror-admin@FreeBSD.org>
e solicitar ajuda
com isto.
Existem 3 servidores mestres para o conjunto de arquivos do FTP e um para o repositório de CVS (as páginas web e os demais documentos são obtidos a partir do CVS, por isso não existe necessidade de se ter um servidor mestre para eles).
Este é o servidor mestre para o conjunto de arquivos do FTP.
O ftp-master.FreeBSD.org
disponibiliza os serviços de
rsync e de
CVSup, além do
serviço de FTP. Consulte a
Seção 3.1.2, “Espelhando com o Rsync” e a
Seção 3.1.3, “Espelhando com o CVSup” para maiores
informações sobre como acessar utilizando
estes protocolos.
Os sites espelhos são encorajados a também disponibilizarem acesso via rsync à área de FTP, desde que sejam sites espelho-Tier-1.
Este é o servidor mestre do repositório de CVS.
O cvsup-master.FreeBSD.org
disponibiliza apenas o serviço de
CVSup. Consulte a
Seção 3.2.1, “Usando o CVSup” para maiores
detalhes.
Para obter acesso, você vai precisar entrar em
contato com o Coordenador de sites espelho CVSup
<cvsup-master@FreeBSD.org>
. Certifique-se de ter
lido antes as Regras
de Acesso ao CVSup do FreeBSD!
Configure a autenticação
necessária seguindo
estas
instruções. Certifique-se de que
você especificou o servidor como sendo
freefall.FreeBSD.org
na linha de comando
do cvpasswd
, como descrito no documento
anterior, mesmo quando você estiver contatando o
cvsup-master.FreeBSD.org
.
Um site espelho oficial é um site espelho que:
a) Possui uma entrada FreeBSD.org
no DNS (usualmente um CNAME).
b) Está listado como um site espelho oficial na documentação do FreeBSD (como por exemplo no Handbook).
Por enquanto isto deve ser o suficiente para que você possa distinguir os sites espelhos oficiais. Os sites espelhos oficiais não são necessariamente espelhos-Tier-1. Entretanto, você provavelmente não irá encontrar um site espelho-Tier-1, que não seja oficial.
Não é assim fácil indicar exigências para todos os sites espelho oficiais, uma vez que o projeto é um tanto quanto tolerante neste ponto. É mais fácil dizer o que é exigido dos sites espelhos oficiais Tier-1. Todos os outros sites espelhos oficiais devem considerar a lista abaixo apenas como orientação.
O que está descrito a seguir aplica-se basicamente à árvore de FTP, uma vez que o repositório de CVS deve ser sempre espelhado completamente, e as páginas web são um caso à parte.
Os sites espelho Tier-1 devem:
Carregar o conjunto completo de arquivos do FTP.
Permitir o acesso de outros sites espelho.
Disponibilizar os serviços de FTP e de rsync
Além disso, os administradores devem se inscrever na lista de discussão sobre sites espelhos do FreeBSD. Consulte este link para maiores informações sobre como se inscrever.
É muito importante para um administrador de um site espelho, especialmente para os administradores de um site espelho Tier-1, verificar o calendário de lançamento da próxima versão do FreeBSD. Isto é importante porque ele irá lhe dizer para quando está previsto o lançamento da próxima versão, dando a você tempo para se preparar para o grande pico de tráfego que se segue a este tipo de evento.
Também é importante para um administrador de um site espelho tentar manter o seu servidor o mais atualizado possível (de novo, isto é ainda mais crucial para os sites espelhos Tier-1). Se os sites espelhos Tier-1 ficarem um bom tempo sem se atualizarem, os sites espelhos de tiers mais elevados vão começar a espelhar dados antigos a partir dos sites espelhos Tier-1, começando desta forma uma espiral descendente... Portanto, mantenham os seus sites espelhos atualizados!
Aqui você encontra links para as páginas de estatísticas de acesso aos seus sites espelhos favoritos (isto é, pelo menos para os sites que as disponibilizam).
ftp.is.FreeBSD.org -
<hostmaster@is.FreeBSD.org>
-
(Consumo de banda IP) (Processos FTP)
(Processos HTTP)
ftp.cz.FreeBSD.org - <cejkar@fit.vutbr.cz>
-
(Consumo de banda IP)
(Processos FTP)
(Processos rsync)
ftp2.ru.FreeBSD.org - <mirror@macomnet.ru>
-
(Consumo de banda IP)
(Usuários HTTP e FTP)
cvsup[23456].jp.FreeBSD.org - <kuriyama@FreeBSD.org>
- (Processos CVSup)
cvsup.cz.FreeBSD.org - <cejkar@fit.vutbr.cz>
-
(Processos CVSup)
cvsup4.ru.FreeBSD.org - <maxim@FreeBSD.org>
-
(Processos CVSup)