Construa Seu Próprio Servidor de Atualização do FreeBSD
Anterior |  | Próxima

# 4 Instalação & Configuração

Para efetuar o download do software freebsd-update-server instale o `devel/subversion` e execute:

    % svn co http://svn.freebsd.org/base/user/cperciva/freebsd-update-build freebsd-update-server

Atualize o `scripts/build.conf` de forma adequada. Ele é usado durante as operações de compilação.

Aqui está o `build.conf` padrão, que deverá ser modificado para se adequar ao seu ambiente.

    # Main configuration file for FreeBSD Update builds.  The
    # release-specific configuration data is lower down in
    # the scripts tree.

    # Location from which to fetch releases
    export FTP=ftp://ftp2.freebsd.org/pub/FreeBSD/releases

    # Host platform
    export HOSTPLATFORM=`uname -m`

    # Host name to use inside jails
    export BUILDHOSTNAME=${HOSTPLATFORM}-builder.daemonology.net

    # Location of SSH key
    export SSHKEY=/root/.ssh/id_dsa

    # SSH account into which files are uploaded
    MASTERACCT=builder@wadham.daemonology.net

    # Directory into which files are uploaded
    MASTERDIR=update-master.freebsd.org

Parâmentros que devem ser considerados:

  Este é o local de onde serão feitos os downloads das imagens ISO (pela sub-rotina `fetchiso()` do `scripts/build.subr`). O local a ser configurado não é limitado a URIs de FTP. Qualquer URI suportada pela ferramenta fetch(1) pode ser usada.

  Customizações do código da `fetchiso()` podem ser feitas copiando o script padrão `build.subr` para o local da sua versão e arquitetura específica `scripts/RELEASE/ARCHITECTURE/build.subr` e alterando o arquivo.

  O nome do computador que fará a compilação. Esta informação será exibida durante a atualização dos sistemas:

      % uname -v

  A chave SSH para enviar os arquivos para o servidor de atualização. O par de chaves pode ser criado digitando `ssh-keygen -t dsa`. Este parâmetro é opcional; a autenticação por senha será usada como método de autenticação quando a variável `SSHKEY` não estiver definida.

  A página do manual ssh-keygen(1) tem informações mais detalhadas sobre o SSH e os passos apropriados para criar e usar chaves.

  Conta para enviar os arquivos para o servidor de atualização.
  Diretório do servidor de atualização para o qual os arquivos serão enviados.

O arquivo `build.conf` padrão, distribuído com o fonte do freebsd-update-server, está preparado para compilar a versão i386 do FreeBSD. A titulo de exemplo sobre como compilar um servidor de atualização para outras arquiteturas, as seguintes modificações são necessárias para a arquitetura amd64:

1. Crie um ambiente de compilação para o amd64:

       % mkdir -p /usr/local/freebsd-update-server/scripts/7.2-RELEASE/amd64

2. Copie o arquivo `build.conf` para o diretório recém criado. As configurações de compilação para o FreeBSD 7.2-RELEASE na arquitetura amd64 devem ser similares a:

       # SHA256 hash of RELEASE disc1.iso image.
       export RELH=1ea1f6f652d7c5f5eab7ef9f8edbed50cb664b08ed761850f95f48e86cc71ef5

       # Components of the world, source, and kernels
       export WORLDPARTS="base catpages dict doc games info manpages proflibs lib32"
       export SOURCEPARTS="base bin contrib crypto etc games gnu include krb5  \
                       lib libexec release rescue sbin secure share sys tools  \
                       ubin usbin cddl"
       export KERNELPARTS="generic"

       # EOL date
       export EOL=1275289200

     A chave hash sha256(1) da versão desejada, ela é publicada no anúncio da versão.
     Para gerar o número "End of Life" (Fim da Vida) para o `build.conf`, consulte a informação sobre o "Estimated EOL" publicada no Site de Segurança do FreeBSD. O valor do `EOL` pode ser derivado a partir da data listada no site, usando a ferramenta date(1), por exemplo:

         % date -j -f '%Y%m%d-%H%M%S' '20090401-000000' '+%s'

Anterior | Principal | Próxima
Pré-Requisitos |  | Preparando a atualização

Este, e outros documentos, podem ser obtidos em ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

Para perguntas sobre FreeBSD, leia a documentação antes de contatar <questions@FreeBSD.org>.
Para perguntas sobre esta documentação, envie e-mail para <doc@FreeBSD.org>.