[FUG-BR] Montar Servidor tipo wsus

Giancarlo Rubio gianrubio em gmail.com
Quinta Junho 21 15:56:37 BRT 2007


Boa tarde Bruno

A um tempo atras eu comecei a escrever um tutorial sobre atualizacao
de pacotes. Pode estar meio incompleto, tenho q terminar ela mais acho
q ja da uma boa ajuda.

Segue
#################################
Criando um repositório de pacotes compilados no FreeBSD

Como todo bom usuário de software livre, sempre estou ligado nas
últimas versões e gosto de sempre estar com as atualizações em dia.
Quando se tem apenas 1 máquina para atualizar é até fácil de fazer,
mais muitas vezes necessitamos atualizar várias máquinas. Sou admin de
alguns servidores FreeBSD e atualizar os pacotes de 1 por 1 demorar
muito pois esperar fazer o download, compilar (nem sempre temos
máquinas potentes) e as vezes dar erro não é nada bom.

Comecei a vasculhar em busca de repósitorios de pacotes pré compilados
do FreeeBSD, achei alguns específicos de gnome, kde entre outros.
Descobri até coisas que não sabia como funcionava como no caso o
pointhat (http://pointyhat.freebsd.org/errorlogs/) que é um cluster
(build farm como eles chamam) para compilar pacotes dos ports para
todas as plataformas. Quando se usa o comando pkg_add, muitas vezes
são utilizados pacotes compilados pelo pointyhat.

Começando
Instale as ferramentas abaixo tanto no repositorio quanto nos clientes.

portupgrade (/usr/ports/sysutils/portupgrade)
portsnap (/usr/ports/sysutils/portsnap) (A partir do 6, ja esta presente)

#############
## Servidor##
#############
Vamos configurar o arquivo pkgtools.conf(5), todos os arquivos dos
ports leem este antes de qualquer tarefa.
Abra ele, que deverá estar em /usr/local/etc/

procure a linha
 #   ENV['PACKAGES'] ||= ENV['PORTSDIR'] + '/packages'
e troque por
ENV['PACKAGES'] ||= '/home/ftp/'

Esta variavel diz aonde irao ficar os pacotes compilados pelo
servidor.Feito isso crie um servidor ftp apontando para /home/ftp e
com acesso de anonimo, assim toda vez que um cliente se conectar este
poderá pegar os pacotes.

A fim de facilitar a compilação crie um shell script para atualização
no servidor.

#!/bin/sh
export PATH=.:/usr/local/sbin:/usr/sbin
portsnap fetch update
portupgrade -Parv
portsclean -DP

Explicando
Linha 1 exportamos o path, para evitar ter que coloca um a um
Linha 2 atualizamos o ports via portsnap(8)
Linha 3 atualizamos os pacotes opcoes (-P tenta baixar pacotes
pré-compilados, -a atualizar todos os pacotes, -r Recursivo -v
Verbose)
Linha 4 Limpamos o diretorio dos ports (-D limpa o diretorio
/usr/ports/distclean de pacotes que nao estao no ports mais, por
exemplo uma versao antiga -P limpa o diretorio que setamos no
pkgtolls.conf que sera o repositorio dos pacotes


##############
###CLIENTE####
##############

No cliente somente será necessário descomentar a variável PKG_SITES,
no arquivo pkgtools.conf(8)
Ficando assim

     PKG_SITES = [
       sprintf('ftp://servidor/diretorio/'),
       pkg_site_builder(true),
       pkg_site_builder(),
       pkg_site_mirror(),
       pkg_site_primary(),
     ]


Em 21/06/07, Joao Paulo Marques Mattos<jampa25 em gmail.com> escreveu:
> Bruno,
>
> o MASTER-SERVER exporta via NFS readonly o diretorio /usr/ports, o workdir
> do ports vc altera no make.conf em todos os servidores
>
> vc pode manter o distfiles, mas vai ter que baixar os pacotes sempre no
> MASTER, make fetch-recursive resolve o problema.
>
> Dai pra frente vc atualiza somente o ports do MASTER
>
> consulte a man page abaixo...
>
> http://www.freebsd.org/cgi/man.cgi?query=development
>
>
> []´s
>
> JP-Ux
>
> ----- Original Message -----
> From: "Bruno Torres Viana" <btviana em gmail.com>
> To: <freebsd em fug.com.br>
> Sent: Thursday, June 21, 2007 1:37 PM
> Subject: [FUG-BR] Montar Servidor tipo wsus
>
>
> Pessoal,
>
>           Sou novo com FreeBSD. Temos aqui na empresa 6 servidores. Estou
> preciando montar um servidor para fazer atualizações, isto se da para que eu
> não tenha dos os servidores entrando na internet e fazendo sempre a mesma
> coisa. Seria lago parecido com o Wsus da Microsoft. Alguém pode me dar uma
> luz?
>
> Obrigado!
>
> --
> -------------------------------
> Profº Bruno Torres Viana
> Cel: (73) 8123-7620
> http://www.fatmsg.edu.br
>
> Todos nós somos ignorantes, porém em assuntos diferentes. Não seja ignorante
> por opção!
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>


-- 
Giancarlo Rubio

"Linux is for people who hate Windows,
BSD is for people who love UNIX"
100% Rwindow$-Free
Freebsd-BR User #88


Mais detalhes sobre a lista de discussão freebsd