Criando e mantendo um mirror do Slackware em seu próprio micro

Muitas pessoas, como eu, administram várias máquinas e necessitam instalar aplicações ou patches de segurança nelas. Ao invés de buscarmos os pacotes em cds ou diretamente na net, por que não termos um repositório pessoal em um micro nas nossas redes?

Algumas das vantagens de termos um repositório pessoal são listadas abaixo:

  • O mesmo pacote não necessita ser baixado duas vezes na net;
  • Atualizações de versão do repositório são extremamente rápidas, pois apenas são baixados os pacotes novos;
  • Para os viciados na versão Current, o mirror pessoal pode ser sincronizado com ele também

Bem, chega de papo e vamos ao que interessa. Para sincronizarmos o mirror, utilizaremos o rsync que vem na série N do Slackware.

Uma vez instalado o rsync, podemos executar o seguinte comando:

rsync -vazP --delete-after --partial-dir=.partial-dir \
--exclude=bootdisks --exclude=rootdisks --exclude=zipslack \
--exclude=pasture --exclude=source --exclude=testing \
--delete-excluded \
--filter='+ */' \
--filter='+ **/aspell-0*' \
--filter='+ **/aspell-pt*' \
--filter='- **/aspell*' \
--filter='+ **/kde-i18n-pt_BR*' \
--filter='- **/kde-i18n*' \
--filter='+ **/koffice-l10n-pt_BR*' \
--filter='- **/koffice-l10n*' \
rsync://slackware.mirrors.tds.net/slackware/slackware-11.0/ slackware-11.0/

Este comando cria um diretório chamado slackware-11.0 com o conteúdo do servidor rsync://slackware.mirrors.tds.net/slackware/slackware-11.0/ e alguns filtros:

  • É permitida a continuação de downloads quebrados;
  • bootdisks, rootdisks, zipslack, pasture, source e testing são excluídos;
  • apenas os pacotes de internacionalização pt-BR do aspell, kde e koffice são baixados, impedindo assim o download de outras línguas que não nos interessam.

É interessante observar que esse comando deve sempre ser chamado de dentro do diretório pai do slackware-11.0, senão ele não encontrará os pacotes para verificação/atualização e criará outro repositório.
Atente também para o fato de que o mirror pode ser modificado. Procure por outros mirrors em http://www.slackware.com/getslack/.
Daqui por diante basta compartilhar a pasta via ftp, nfs ou como você achar melhor e configurar o slackpkg para buscar pacotes em seu mirror oficial-personalizado-proprietário-power-mega-blaster. :-P

9 Responses to “Criando e mantendo um mirror do Slackware em seu próprio micro”


  1. Gravatar Icon 1 gtludwig Jun 4th, 2007 at 3:48 pm

    Boa dica! Procurava exatamente por isso! Mas ficou uma dúvida: quando dizes “É interessante observar que esse comando deve sempre ser chamado de dentro do diretório pai do slackware-11.0, (…)”, isso é no host, certo? Algo como “{$HOME}/rsync $”?

  2. Gravatar Icon 2 Ellington Jun 4th, 2007 at 5:35 pm

    Exatamente isso. O rsync deve sempre ser executado de dentro do mesmo diretório, pois tudo que ele baixa é armazenado em um subdir chamado slackware-11.0. Caso o rsync seja executado em outro local, toda a árvore será baixada novamente.

  3. Gravatar Icon 3 gtludwig Jun 5th, 2007 at 9:32 am

    Estou fazendo o rsync agora. Com o comando acima eu faço o repositório local, ok! Mas e se eu quiser gravar uma iso-dvd disso? Ou algum CD de boot que aponte para esse diretório, como fazer?

  4. Gravatar Icon 4 gtludwig Jun 7th, 2007 at 7:54 pm

    pelo o que eu entendi, o caminho “rsync://slackware.mirrors.tds.net/slackware/slackware-11.0/ slackware-11.0/” é do Slacware 11 e não do slackware-current. Tentei mas não consegui fazer o rsync apontar para o diretório do slack-current alterando esse caminho. Tens alguma dica de como fazer?

  5. Gravatar Icon 5 Ellington Jun 8th, 2007 at 6:57 am

    gtludwig, vc pode fazer a iso seguindo o passo a passo que encontra-se no arquivo isolinux/README.TXT dentro da árvore do Slack.
    Quanto ao current, eu uso os seguintes mirrors:

    rsync://slackware.mirrors.tds.net/slackware/slackware-current/
    rsync://rsync.slackware.at/slackware/slackware-current/
    rsync://ftp.slackware.com/slackware/slackware-current/

    []s

  6. Gravatar Icon 6 gtludwig Jun 8th, 2007 at 11:10 am

    Ellington, consigo conectar a todos os mirrors para o slackware-current que você sugeriu, porém o rsync recebe a lista dos pacotes e não baixa nada. Tentei remover os “–exclude” e os “–filter”, mas não percebo diferença alguma. Alguma idéia?

  7. Gravatar Icon 7 Ellington Jun 8th, 2007 at 12:07 pm

    geralmente isso acontece qdo vc jah estah syncado.

  8. Gravatar Icon 8 gtludwig Jun 8th, 2007 at 12:23 pm

    Ok, eu baixei a árvore quando testei o comando e acredito ter ficado syncado. Depois percebi que tinha baixado o slackware-11.0. Apaguei o que tinha baixado (já tenho essa iso queimada) e desde então não consigo baixar mais nada. Tentei mudar de diretório e também não funcionou. Alguma idéia?

  9. Gravatar Icon 9 Ellington Jun 8th, 2007 at 12:59 pm

    Façamos o seguinte: me add no msn ou no jabber (ellingtonsantos at gmail.com) e a gente discute por lah. no final, postamos a resolução do problema aqui para todos.

Leave a Reply

You must login to post a comment.





FireStats icon Produzido pelo FireStats