Re: [FUG-BR] Atualização maciça: Dicas
2008/8/19 Paulo Henrique [EMAIL PROTECTED]: Olhando no handbook agorinha, vi que um port legal no caso que já não consta mais o disponivel para workstation mais tem ainda o para server Para mais informações acesse /usr/ports/misc/instant-server creio que para facilitar a vida de usuários leigos, recriar o instant-workstation, informações em http://doc.fug.com.br/handbook/desktop-summary.html, já do instalação sem interferencia do usuário seria um passo legal para o FreeBSD com relação a desktop. Afinal levar 7 dias para deixar um sistema BSD redondo com tudo que se precisa é foda... Eu levei menos de 3 dias, mas eu mesmo não fiz todas as coisas que falei nas minhas dicas. Poderia ter feito em 2 dias se tivesse seguido tudo o que eu falei, mas bolei as dicas enquanto fazia. Mas a minha máquina é um AMD Athlon 3000+ (1800 GHz). O PCBSD, é para fazer instalações rápidas de desktops. João Rocha. BOm fica ai a dica. -- Atenciosamente Paulo Henrique. - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd -- Sempre se apanha mais com as menores besteiras. Experiência própria. [EMAIL PROTECTED] - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Atualização maciça: Dicas
On Mon, Aug 18, 2008 at 4:56 PM, Leonardo Linden [EMAIL PROTECTED] wrote: eu to cagado de medo... tenho que atualizar um 6.2 de producao com trocentas mil coisas... só que faco simulacoes numa maquina aqui.. e sempre trava no reboot o tal do mergemaster eu simplesmente nao consigo distinguir o que ele me mostra na tela como tendo que atualizar ou nao... ate uma atualizacao que faco de um 7 para um 7 trava e nao to errando no kernel nem nada... é o mesmo kernel recompilado que funcionava antes do upgrade.. nao é falta de driver nao da pra ignorar tudo que esse mergemaster propoe ? Realmente ignorar o que o mergemaster propões pode inclusive fazer com que seu equipamento não suba mais. Você já considerou a possibilidade de usar atualização binária? Com o freebsd-update Eu estou trabalhando em um projeto diretamente usando esse cara, e por conta disso fiz muitos testes, inclusive atualizei máquinas do 6.2 para o 6.3 e do 6.3 para o 7.0, ele funciona muito bem. []s -- Renato Botelho - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Atualização maciça: Dicas
Obrigado por todos os comentarios... Bom... vou tentar denovo agora a tarde... Eu ja fiz uma vez uma atualizacao assim do 6.1 para o 6.2 e tudo foi normal.. Estou instalando um 7.0 zerado e so fiz o cvsup para atualizar o bendito do named... Pq ai quero migrar tudo para essa maquina nova, para entao atualizar a atual... Só que nunca vi uma atu dar tando xabu.. o santo... to ate voltando pro 6.3 daqui a pouco :) Pq o named do 6.3 é mais atual que o do 7.0 ??? nao entendi essa - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Atualização maciça: Dicas
2008/8/16 Joao Rocha Braga Filho [EMAIL PROTECTED]: Eu estou fazendo uma atualização maciça na minha estação de trabalho, e cometi alguns erros e acertos. Acho que aprendi com os dois. Ela ainda está em andamento, mas resolvi escrever algumas dicas aqui. Não vou ensinar a compilar kernel, atualizar ports e os fontes do sistema, etc, mas vou dar uma sequência para paralelizar muitas das tarefas para que a atualização maciça seja executada o mais rápido possível. O roteiro envolve atualização do sistema, compilando na máquina, e dos pacotes. Eu estou fazendo isto para passar do FreeBSD 6.3-RELENG pro 7.0-RELENG, para o KDE 4.1 e ainda para o XOrg 7.3, e mais muitas outras atualizações. Muitas tarefas podem ser paralelizadas, por exemplo, downloads ocupam mais banda e um pouco de CPU e acesso à disco, e as compilações usam muita CPU, memória e acesso à disco, mas nada de download. Atualizar o sistema compilando na máquina faz as duas coisas alternadamente. E por que não paralelizar? Começando: 1 ) Pode-se fazer cvsup atualizando os fontes e os ports ao mesmo tempo. Isto consumirá um pouco CPU, mas muito acesso à Internet e acesso à disco. Estas duas tarefas podem ser paralelizadas sem problemas. 2.a ) Depois de atualizar os fontes, pode-se começar a compilar o sistema e o kernel. Eles podem ser em paralelo, creio eu, mas isto pode degradar a máquina. Usando o comando nice +20 antes do make pode-se atenuar a degradação do sistema. Exemplo: nice +20 make buildworld 2.b) Uma vez que o ports tree esteja atualizado, pode-se começar a fazer os downloads, mas não se pode compilar ainda, pois a compilação será feita com o sistema que está instalado na máquina, e não o novo que será instalado. Neste ponto tem uma decisão séria a ser tomada relativa ao espaço em disco do sistema de arquivos. Se no /usr/ports/distfiles tiver muitos arquivos, se eles forem antigos e desatualizados, e tiver pouco espaço no sistema de arquivos, é conveniente esvaziar no /usr/ports/distfiles. Mas se a maioria estiver atualizada, é desaconselhável esvaziá-lo. É uma decisão entre o que serve dali e o espaço em disco disponível. Para fazer o download dos fontes de um programa dos ports, e de todas as suas dependências, use: make fetch-recursive Isto nem sequer descompactará os arquivos, Só fará o download deles. Pra melhor eficiência, faça de algo grande que você use. Por exemplo, se você usa o KDE, vá para o diretório do KDE nos ports e faça este comando acima. Se vai instalar o Firefox, faça no diretório do firefox. Tem programas que não são instalados pelas depenências de grandes programas, e até não tem as mesmas dependências, como o portaudit e o screen, portanto podem ser feitos make fetch-recursive deles em paralelo. 2.c) Note: A máquina continuará usável neste tempo, mas ela ficará meio ocupada. 3 ) Uma vez que o kernel e o sistema compilaram, pode-se fazer a atualização do sistema em si. Neste ponto cabe outra decisão. Espera o make fetch-recursive dos ports terminarem, ou para ele para continuar depois, e fazer a instalação do sistema agora. Eu voto pela interrução, no início de um arquivo que esteja sendo baixado, para minimizar os prejuízos. Este arquivo interrompido deverá ser removido do /usr/ports/distfiles. Este é o último ponto de usabiilidade do sistema antes da atualização estar quase pronta. Instale o kernel atualizado (Durante este tempo o download pode continuar.). 4 ) Entre e mono-usuário e faça o make installworld e o mergemaster. Depois de reboot. Ao final desta etapa, o sistema estará atualizado, mas os ports nele instalados não estarão. 5.a ) Pode-se retomar o make fetch-recursive 5.b ) Fazer a remoção de todos os ports instalados com pkg_delete -a. Isto pode demorar um pouco, e vai fazer acessos ao disco intensamente. 5.c ) Se julgar que o espaço em disco possa ser insuficiente, pode esvaziar o diretório /usr/obj, que são os arquivos do sistema compilados para serem instalados. Neste ponto não necessita mais deles. A presença deles pode diminuir o tempo de compilação duma nova atualização do sistema, mas consome um bom espaço em disco. Esta tarefa pode ser adiada tranquilamente, e a decisão de fazê-la ou não ficar dependendo do consumo do espaço em disco. 6.a e b ) Comece a compilar os ports, e continuar com o download. A condição é que o download esteja adiantado em relação à compilação. Para impedir um disco cheio, pode fazer um make clean depois de cada final de compilação dos ports. De vez em quando olhe como anda a compilação, pois é comum pedidos de intervenção do operador, para decisões. Por exemplo, o XOrg pergunta quais drivers de vídeo devem ser compilados. Compilações podem ser feitas em paralelo, desde que não conflitem, i.e., não tentem compilar a mesma dependência ao mesmo tempo. Eu passei por isto. A sugestão é compilar algo pequeno em paralelo com algo grande, ou que
Re: [FUG-BR] Atualização maciça: Dicas
eu to cagado de medo... tenho que atualizar um 6.2 de producao com trocentas mil coisas... só que faco simulacoes numa maquina aqui.. e sempre trava no reboot o tal do mergemaster eu simplesmente nao consigo distinguir o que ele me mostra na tela como tendo que atualizar ou nao... ate uma atualizacao que faco de um 7 para um 7 trava e nao to errando no kernel nem nada... é o mesmo kernel recompilado que funcionava antes do upgrade.. nao é falta de driver nao da pra ignorar tudo que esse mergemaster propoe ? sei la.. acho que pode ser alguma coisa errada que to fazendo ai - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Atualização maciça: Dicas
2008/8/18 Renato Botelho [EMAIL PROTECTED]: 2008/8/16 Joao Rocha Braga Filho [EMAIL PROTECTED]: Eu estou fazendo uma atualização maciça na minha estação de trabalho, e cometi alguns erros e acertos. Acho que aprendi com os dois. Ela ainda está em andamento, mas resolvi escrever algumas dicas aqui. Não vou ensinar a compilar kernel, atualizar ports e os fontes do sistema, etc, mas vou dar uma sequência para paralelizar muitas das tarefas para que a atualização maciça seja executada o mais rápido possível. O roteiro envolve atualização do sistema, compilando na máquina, e dos pacotes. Eu estou fazendo isto para passar do FreeBSD 6.3-RELENG pro 7.0-RELENG, para o KDE 4.1 e ainda para o XOrg 7.3, e mais muitas outras atualizações. Muitas tarefas podem ser paralelizadas, por exemplo, downloads ocupam mais banda e um pouco de CPU e acesso à disco, e as compilações usam muita CPU, memória e acesso à disco, mas nada de download. Atualizar o sistema compilando na máquina faz as duas coisas alternadamente. E por que não paralelizar? Começando: 1 ) Pode-se fazer cvsup atualizando os fontes e os ports ao mesmo tempo. Isto consumirá um pouco CPU, mas muito acesso à Internet e acesso à disco. Estas duas tarefas podem ser paralelizadas sem problemas. 2.a ) Depois de atualizar os fontes, pode-se começar a compilar o sistema e o kernel. Eles podem ser em paralelo, creio eu, mas isto pode degradar a máquina. Usando o comando nice +20 antes do make pode-se atenuar a degradação do sistema. Exemplo: nice +20 make buildworld 2.b) Uma vez que o ports tree esteja atualizado, pode-se começar a fazer os downloads, mas não se pode compilar ainda, pois a compilação será feita com o sistema que está instalado na máquina, e não o novo que será instalado. Neste ponto tem uma decisão séria a ser tomada relativa ao espaço em disco do sistema de arquivos. Se no /usr/ports/distfiles tiver muitos arquivos, se eles forem antigos e desatualizados, e tiver pouco espaço no sistema de arquivos, é conveniente esvaziar no /usr/ports/distfiles. Mas se a maioria estiver atualizada, é desaconselhável esvaziá-lo. É uma decisão entre o que serve dali e o espaço em disco disponível. Para fazer o download dos fontes de um programa dos ports, e de todas as suas dependências, use: make fetch-recursive Isto nem sequer descompactará os arquivos, Só fará o download deles. Pra melhor eficiência, faça de algo grande que você use. Por exemplo, se você usa o KDE, vá para o diretório do KDE nos ports e faça este comando acima. Se vai instalar o Firefox, faça no diretório do firefox. Tem programas que não são instalados pelas depenências de grandes programas, e até não tem as mesmas dependências, como o portaudit e o screen, portanto podem ser feitos make fetch-recursive deles em paralelo. 2.c) Note: A máquina continuará usável neste tempo, mas ela ficará meio ocupada. 3 ) Uma vez que o kernel e o sistema compilaram, pode-se fazer a atualização do sistema em si. Neste ponto cabe outra decisão. Espera o make fetch-recursive dos ports terminarem, ou para ele para continuar depois, e fazer a instalação do sistema agora. Eu voto pela interrução, no início de um arquivo que esteja sendo baixado, para minimizar os prejuízos. Este arquivo interrompido deverá ser removido do /usr/ports/distfiles. Este é o último ponto de usabiilidade do sistema antes da atualização estar quase pronta. Instale o kernel atualizado (Durante este tempo o download pode continuar.). 4 ) Entre e mono-usuário e faça o make installworld e o mergemaster. Depois de reboot. Ao final desta etapa, o sistema estará atualizado, mas os ports nele instalados não estarão. 5.a ) Pode-se retomar o make fetch-recursive 5.b ) Fazer a remoção de todos os ports instalados com pkg_delete -a. Isto pode demorar um pouco, e vai fazer acessos ao disco intensamente. 5.c ) Se julgar que o espaço em disco possa ser insuficiente, pode esvaziar o diretório /usr/obj, que são os arquivos do sistema compilados para serem instalados. Neste ponto não necessita mais deles. A presença deles pode diminuir o tempo de compilação duma nova atualização do sistema, mas consome um bom espaço em disco. Esta tarefa pode ser adiada tranquilamente, e a decisão de fazê-la ou não ficar dependendo do consumo do espaço em disco. 6.a e b ) Comece a compilar os ports, e continuar com o download. A condição é que o download esteja adiantado em relação à compilação. Para impedir um disco cheio, pode fazer um make clean depois de cada final de compilação dos ports. De vez em quando olhe como anda a compilação, pois é comum pedidos de intervenção do operador, para decisões. Por exemplo, o XOrg pergunta quais drivers de vídeo devem ser compilados. Compilações podem ser feitas em paralelo, desde que não conflitem, i.e., não tentem compilar a mesma dependência ao mesmo tempo. Eu passei por isto. A sugestão é compilar algo pequeno
Re: [FUG-BR] Atualização maciça: Dicas
On Mon, Aug 18, 2008 at 4:56 PM, Leonardo Linden [EMAIL PROTECTED] wrote: eu to cagado de medo... tenho que atualizar um 6.2 de producao com trocentas mil coisas... só que faco simulacoes numa maquina aqui.. e sempre trava no reboot o tal do mergemaster eu simplesmente nao consigo distinguir o que ele me mostra na tela como tendo que atualizar ou nao... ate uma atualizacao que faco de um 7 para um 7 trava e nao to errando no kernel nem nada... é o mesmo kernel recompilado que funcionava antes do upgrade.. nao é falta de driver nao da pra ignorar tudo que esse mergemaster propoe ? sei la.. acho que pode ser alguma coisa errada que to fazendo ai Deve estar errando alguma besteira (Ver no final do meu e-mail rs). O Merge master ajuda a atualizar os arquivos de comfiguração. Ele dá a escolha de usar o arquivo novo (opção i), que é boa para os arquivos que você não editou, configurou, modificou etc. A opção d é para arquivos que você editou e quer manter como está. A opção de merge permite que edite as diferenças, escolhendo o que sai e o que fica de cada um dos arquivos. Espero ter ajudado. João Rocha. - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd -- Sempre se apanha mais com as menores besteiras. Experiência própria. [EMAIL PROTECTED] - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Atualização maciça: Dicas
Olá Leonardo, Por causa do DNS Poison, atualizei um Servidor DNS mês passado de 6.2 pra 6.3 usando o Upgrade do sysinstall e o CD do 6.3. O unico problema é que ao final da instalação o novo Kernel não boota, ai basta dar um load kernel.old e compilar o novo Kernel. O ports atualizei tudo pelo portsnap + portmanager. Abraços. -- Atenciosamente, Victor Gustavo Volpe Diretor Executivo Grupo Total Serviços de Internet LTDA - ME CNPJ: 08.776.401/0001-40 (17) 3227-0686 / 9105-5392 - Original Message - From: Leonardo Linden [EMAIL PROTECTED] To: Lista Brasileira de Discussão sobre FreeBSD (FUG-BR) freebsd@fug.com.br Sent: Monday, August 18, 2008 4:56 PM Subject: Re: [FUG-BR] Atualização maciça: Dicas eu to cagado de medo... tenho que atualizar um 6.2 de producao com trocentas mil coisas... só que faco simulacoes numa maquina aqui.. e sempre trava no reboot o tal do mergemaster eu simplesmente nao consigo distinguir o que ele me mostra na tela como tendo que atualizar ou nao... ate uma atualizacao que faco de um 7 para um 7 trava e nao to errando no kernel nem nada... é o mesmo kernel recompilado que funcionava antes do upgrade.. nao é falta de driver nao da pra ignorar tudo que esse mergemaster propoe ? sei la.. acho que pode ser alguma coisa errada que to fazendo ai - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd __ NOD32 3362 (20080817) Information __ This message was checked by NOD32 antivirus system. http://www.eset.com - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Atualização maciça: Dicas
kde4 pra mim ficou lento nao sei se pq tenho so 256 de ram, no meu notebook. 2008/8/18 Victor [EMAIL PROTECTED]: Olá Leonardo, Por causa do DNS Poison, atualizei um Servidor DNS mês passado de 6.2 pra 6.3 usando o Upgrade do sysinstall e o CD do 6.3. O unico problema é que ao final da instalação o novo Kernel não boota, ai basta dar um load kernel.old e compilar o novo Kernel. O ports atualizei tudo pelo portsnap + portmanager. Abraços. -- Atenciosamente, Victor Gustavo Volpe Diretor Executivo Grupo Total Serviços de Internet LTDA - ME CNPJ: 08.776.401/0001-40 (17) 3227-0686 / 9105-5392 - Original Message - From: Leonardo Linden [EMAIL PROTECTED] To: Lista Brasileira de Discussão sobre FreeBSD (FUG-BR) freebsd@fug.com.br Sent: Monday, August 18, 2008 4:56 PM Subject: Re: [FUG-BR] Atualização maciça: Dicas eu to cagado de medo... tenho que atualizar um 6.2 de producao com trocentas mil coisas... só que faco simulacoes numa maquina aqui.. e sempre trava no reboot o tal do mergemaster eu simplesmente nao consigo distinguir o que ele me mostra na tela como tendo que atualizar ou nao... ate uma atualizacao que faco de um 7 para um 7 trava e nao to errando no kernel nem nada... é o mesmo kernel recompilado que funcionava antes do upgrade.. nao é falta de driver nao da pra ignorar tudo que esse mergemaster propoe ? sei la.. acho que pode ser alguma coisa errada que to fazendo ai - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd __ NOD32 3362 (20080817) Information __ This message was checked by NOD32 antivirus system. http://www.eset.com - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd -- Alessandro de Souza Rocha Administrador de Redes e Sistemas FreeBSD-BR User #117 Long live FreeBSD Powered by (__) \\\'',) \/ \ ^ .\._/_) www.FreeBSD.org - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Atualização maciça: Dicas
Entao... Pela sei la que vez ja, perdi a conta.. .estou tentando atualizar um 7.0 para o current do mesmo (7.0).. Aí faço o cvsup, vai ate o final blz, sem erro, aí vou no /usr/src e dou make buildworld... O resultado apos um tempo esta abaixo (trava tudo) = ... mkdep -f .depend -a-DBSDTAR_VERSION_STRING=\2.5.5\ -DPLATFORM_CONFIG_H=\config_freebsd.h\ -I/usr/src/usr.bin/tar -DRESCUE /usr/src/usr.bin/tar/bsdtar.c getdate.c /usr/src/usr.bin/tar/matching.c /usr/src/usr.bin/tar/read.c /usr/src/usr.bin/tar/siginfo.c /usr/src/usr.bin/tar/subst.c /usr/src/usr.bin/tar/tree.c /usr/src/usr.bin/tar/util.c /usr/src/usr.bin/tar/write.c echo bsdtar: /usr/obj/usr/src/tmp/usr/lib/libc.a /usr/obj/usr/src/tmp/usr/lib/libarchive.a /usr/obj/usr/src/tmp/usr/lib/libbz2.a /usr/obj/usr/src/tmp/usr/lib/libz.a .depend cc -O2 -pipe -funroll-loops -ffast-math -march=pentiumpro -DBSDTAR_VERSION_STRING=\2.5.5\ -DPLATFORM_CONFIG_H=\config_freebsd.h\ -I/usr/src/usr.bin/tar -DRESCUE -fstack-protector -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wcast-align -Wunused-parameter -Wno-pointer-sign -c /usr/src/usr.bin/tar/bsdtar.c cc -O2 -pipe -funroll-loops -ffast-math -march=pentiumpro -DBSDTAR_VERSION_STRING=\2.5.5\ -DPLATFORM_CONFIG_H=\config_freebsd.h\ -I/usr/src/usr.bin/tar -DRESCUE -fstack-protector -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wcast-align -Wunused-parameter -Wno-pointer-sign -c getdate.c cc -O2 -pipe -funroll-loops -ffast-math -march=pentiumpro -DBSDTAR_VERSION_STRING=\2.5.5\ -DPLATFORM_CONFIG_H=\config_freebsd.h\ -I/usr/src/usr.bin/tar -DRESCUE -fstack-protector -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wcast-align -Wunused-parameter -Wno-pointer-sign -c /usr/src/usr.bin/tar/matching.c /usr/src/usr.bin/tar/matching.c: In function 'pathmatch': /usr/src/usr.bin/tar/matching.c:316: error: 'FNM_LEADING_DIR' undeclared (first use in this function) /usr/src/usr.bin/tar/matching.c:316: error: (Each undeclared identifier is reported only once /usr/src/usr.bin/tar/matching.c:316: error: for each function it appears in.) /usr/src/usr.bin/tar/matching.c:316: error: too many arguments to function 'bsdtar_fnmatch' *** Error code 1 Stop in /usr/src/usr.bin/tar. *** Error code 1 Stop in /usr/obj/usr/src/rescue/rescue. *** Error code 1 Stop in /usr/src/rescue/rescue. *** Error code 1 Stop in /usr/src/rescue. *** Error code 1 Stop in /usr/src. *** Error code 1 Stop in /usr/src. *** Error code 1 Stop in /usr/src. = Bom, as configuracoes relevantes estou colocando abaixo... /etc/make.conf CPUTYPE= i686 CFLAGS= -O2 -pipe -funroll-loops -ffast-math COPTFLAGS= -O2 -pipe -funroll-loops -ffast-math WITHOUT_X11=yes NO_X=yes # added by use.perl 2008-08-11 20:53:15 PERL_VER=5.8.8 PERL_VERSION=5.8.8 o cvsup foi assim, cvsup -g -L 2 supfile, que esta como segue *default host=cvsup5.FreeBSD.org *default base=/var/db *default prefix=/usr *default release=cvs tag=RELENG_7 *default delete use-rel-suffix *default compress *default tag=. src-all uname -a FreeBSD localhost.localdomain 7.0-RELEASE FreeBSD 7.0-RELEASE #0: Wed Aug 13 16:16:39 UTC 2008 [EMAIL PROTECTED]:/usr/obj/usr/src/sys/KERNEL1 i386 Sera que pode ser o kernel que recompilei ? nao fiz nada de mais no kernel alem de capar uns drivers que nao sao utilizados... E agora ? eheh reinstalo tudo denovo ? :( - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Atualização maciça: Dicas
On Mon, Aug 18, 2008 at 8:44 PM, Leonardo Augusto [EMAIL PROTECTED] wrote: Entao... Pela sei la que vez ja, perdi a conta.. .estou tentando atualizar um 7.0 para o current do mesmo (7.0).. Tente fazer o upgrade para o STABLE, e não o CURRENT: *default release=cvs tag=RELENG_7 João Rocha. Aí faço o cvsup, vai ate o final blz, sem erro, aí vou no /usr/src e dou make buildworld... O resultado apos um tempo esta abaixo (trava tudo) = ... mkdep -f .depend -a-DBSDTAR_VERSION_STRING=\2.5.5\ -DPLATFORM_CONFIG_H=\config_freebsd.h\ -I/usr/src/usr.bin/tar -DRESCUE /usr/src/usr.bin/tar/bsdtar.c getdate.c /usr/src/usr.bin/tar/matching.c /usr/src/usr.bin/tar/read.c /usr/src/usr.bin/tar/siginfo.c /usr/src/usr.bin/tar/subst.c /usr/src/usr.bin/tar/tree.c /usr/src/usr.bin/tar/util.c /usr/src/usr.bin/tar/write.c echo bsdtar: /usr/obj/usr/src/tmp/usr/lib/libc.a /usr/obj/usr/src/tmp/usr/lib/libarchive.a /usr/obj/usr/src/tmp/usr/lib/libbz2.a /usr/obj/usr/src/tmp/usr/lib/libz.a .depend cc -O2 -pipe -funroll-loops -ffast-math -march=pentiumpro -DBSDTAR_VERSION_STRING=\2.5.5\ -DPLATFORM_CONFIG_H=\config_freebsd.h\ -I/usr/src/usr.bin/tar -DRESCUE -fstack-protector -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wcast-align -Wunused-parameter -Wno-pointer-sign -c /usr/src/usr.bin/tar/bsdtar.c cc -O2 -pipe -funroll-loops -ffast-math -march=pentiumpro -DBSDTAR_VERSION_STRING=\2.5.5\ -DPLATFORM_CONFIG_H=\config_freebsd.h\ -I/usr/src/usr.bin/tar -DRESCUE -fstack-protector -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wcast-align -Wunused-parameter -Wno-pointer-sign -c getdate.c cc -O2 -pipe -funroll-loops -ffast-math -march=pentiumpro -DBSDTAR_VERSION_STRING=\2.5.5\ -DPLATFORM_CONFIG_H=\config_freebsd.h\ -I/usr/src/usr.bin/tar -DRESCUE -fstack-protector -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wcast-align -Wunused-parameter -Wno-pointer-sign -c /usr/src/usr.bin/tar/matching.c /usr/src/usr.bin/tar/matching.c: In function 'pathmatch': /usr/src/usr.bin/tar/matching.c:316: error: 'FNM_LEADING_DIR' undeclared (first use in this function) /usr/src/usr.bin/tar/matching.c:316: error: (Each undeclared identifier is reported only once /usr/src/usr.bin/tar/matching.c:316: error: for each function it appears in.) /usr/src/usr.bin/tar/matching.c:316: error: too many arguments to function 'bsdtar_fnmatch' *** Error code 1 Stop in /usr/src/usr.bin/tar. *** Error code 1 Stop in /usr/obj/usr/src/rescue/rescue. *** Error code 1 Stop in /usr/src/rescue/rescue. *** Error code 1 Stop in /usr/src/rescue. *** Error code 1 Stop in /usr/src. *** Error code 1 Stop in /usr/src. *** Error code 1 Stop in /usr/src. = Bom, as configuracoes relevantes estou colocando abaixo... /etc/make.conf CPUTYPE= i686 CFLAGS= -O2 -pipe -funroll-loops -ffast-math COPTFLAGS= -O2 -pipe -funroll-loops -ffast-math WITHOUT_X11=yes NO_X=yes # added by use.perl 2008-08-11 20:53:15 PERL_VER=5.8.8 PERL_VERSION=5.8.8 o cvsup foi assim, cvsup -g -L 2 supfile, que esta como segue *default host=cvsup5.FreeBSD.org *default base=/var/db *default prefix=/usr *default release=cvs tag=RELENG_7 *default delete use-rel-suffix *default compress *default tag=. src-all uname -a FreeBSD localhost.localdomain 7.0-RELEASE FreeBSD 7.0-RELEASE #0: Wed Aug 13 16:16:39 UTC 2008 [EMAIL PROTECTED]:/usr/obj/usr/src/sys/KERNEL1 i386 Sera que pode ser o kernel que recompilei ? nao fiz nada de mais no kernel alem de capar uns drivers que nao sao utilizados... E agora ? eheh reinstalo tudo denovo ? :( - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd -- Sempre se apanha mais com as menores besteiras. Experiência própria. [EMAIL PROTECTED] - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Atualização maciça: Dicas
On Mon, Aug 18, 2008 at 9:19 PM, Joao Rocha Braga Filho [EMAIL PROTECTED] wrote: On Mon, Aug 18, 2008 at 8:44 PM, Leonardo Augusto [EMAIL PROTECTED] wrote: Entao... Pela sei la que vez ja, perdi a conta.. .estou tentando atualizar um 7.0 para o current do mesmo (7.0).. Tente fazer o upgrade para o STABLE, e não o CURRENT: *default release=cvs tag=RELENG_7 Desculpe-me. Fui apressadinho... rs Eu costumo compilar o kernel e o sistema. Instalo o kernel, dou boot em mono-usuário (Single User), e então faço a atualização do sistema. Nunca tive problemas. Uma hipótese é que seus fontes do sistema estajam corrompidos de alguma forma. Mova o diretório /usr/src, crie um novo /usr/src, e faça cvsup para repopulálo com os arquivos corretos. Copie o arquivo de configuração do kernel e então compile-o, e o sistema inteiro. Tente depois disto fazer a instalação, e veja o que acontece. Boa sorte, João Rocha. João Rocha. Aí faço o cvsup, vai ate o final blz, sem erro, aí vou no /usr/src e dou make buildworld... O resultado apos um tempo esta abaixo (trava tudo) = ... mkdep -f .depend -a-DBSDTAR_VERSION_STRING=\2.5.5\ -DPLATFORM_CONFIG_H=\config_freebsd.h\ -I/usr/src/usr.bin/tar -DRESCUE /usr/src/usr.bin/tar/bsdtar.c getdate.c /usr/src/usr.bin/tar/matching.c /usr/src/usr.bin/tar/read.c /usr/src/usr.bin/tar/siginfo.c /usr/src/usr.bin/tar/subst.c /usr/src/usr.bin/tar/tree.c /usr/src/usr.bin/tar/util.c /usr/src/usr.bin/tar/write.c echo bsdtar: /usr/obj/usr/src/tmp/usr/lib/libc.a /usr/obj/usr/src/tmp/usr/lib/libarchive.a /usr/obj/usr/src/tmp/usr/lib/libbz2.a /usr/obj/usr/src/tmp/usr/lib/libz.a .depend cc -O2 -pipe -funroll-loops -ffast-math -march=pentiumpro -DBSDTAR_VERSION_STRING=\2.5.5\ -DPLATFORM_CONFIG_H=\config_freebsd.h\ -I/usr/src/usr.bin/tar -DRESCUE -fstack-protector -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wcast-align -Wunused-parameter -Wno-pointer-sign -c /usr/src/usr.bin/tar/bsdtar.c cc -O2 -pipe -funroll-loops -ffast-math -march=pentiumpro -DBSDTAR_VERSION_STRING=\2.5.5\ -DPLATFORM_CONFIG_H=\config_freebsd.h\ -I/usr/src/usr.bin/tar -DRESCUE -fstack-protector -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wcast-align -Wunused-parameter -Wno-pointer-sign -c getdate.c cc -O2 -pipe -funroll-loops -ffast-math -march=pentiumpro -DBSDTAR_VERSION_STRING=\2.5.5\ -DPLATFORM_CONFIG_H=\config_freebsd.h\ -I/usr/src/usr.bin/tar -DRESCUE -fstack-protector -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wcast-align -Wunused-parameter -Wno-pointer-sign -c /usr/src/usr.bin/tar/matching.c /usr/src/usr.bin/tar/matching.c: In function 'pathmatch': /usr/src/usr.bin/tar/matching.c:316: error: 'FNM_LEADING_DIR' undeclared (first use in this function) /usr/src/usr.bin/tar/matching.c:316: error: (Each undeclared identifier is reported only once /usr/src/usr.bin/tar/matching.c:316: error: for each function it appears in.) /usr/src/usr.bin/tar/matching.c:316: error: too many arguments to function 'bsdtar_fnmatch' *** Error code 1 Stop in /usr/src/usr.bin/tar. *** Error code 1 Stop in /usr/obj/usr/src/rescue/rescue. *** Error code 1 Stop in /usr/src/rescue/rescue. *** Error code 1 Stop in /usr/src/rescue. *** Error code 1 Stop in /usr/src. *** Error code 1 Stop in /usr/src. *** Error code 1 Stop in /usr/src. = Bom, as configuracoes relevantes estou colocando abaixo... /etc/make.conf CPUTYPE= i686 CFLAGS= -O2 -pipe -funroll-loops -ffast-math COPTFLAGS= -O2 -pipe -funroll-loops -ffast-math WITHOUT_X11=yes NO_X=yes # added by use.perl 2008-08-11 20:53:15 PERL_VER=5.8.8 PERL_VERSION=5.8.8 o cvsup foi assim, cvsup -g -L 2 supfile, que esta como segue *default host=cvsup5.FreeBSD.org *default base=/var/db *default prefix=/usr *default release=cvs tag=RELENG_7 *default delete use-rel-suffix *default compress *default tag=. src-all uname -a FreeBSD localhost.localdomain 7.0-RELEASE FreeBSD 7.0-RELEASE #0: Wed Aug 13 16:16:39 UTC 2008 [EMAIL PROTECTED]:/usr/obj/usr/src/sys/KERNEL1 i386 Sera que pode ser o kernel que recompilei ? nao fiz nada de mais no kernel alem de capar uns drivers que nao sao utilizados... E agora ? eheh reinstalo tudo denovo ? :( - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd -- Sempre se apanha
Re: [FUG-BR] Atualização maciça: Dicas
Em Monday 18 August 2008 16:56:55 Leonardo Linden escreveu: eu to cagado de medo... tenho que atualizar um 6.2 de producao com trocentas mil coisas... só que faco simulacoes numa maquina aqui.. e sempre trava no reboot o tal do mergemaster eu simplesmente nao consigo distinguir o que ele me mostra na tela como tendo que atualizar ou nao... ate uma atualizacao que faco de um 7 para um 7 trava e nao to errando no kernel nem nada... é o mesmo kernel recompilado que funcionava antes do upgrade.. nao é falta de driver nao da pra ignorar tudo que esse mergemaster propoe ? sei la.. acho que pode ser alguma coisa errada que to fazendo ai - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd Eu fiz a atualização de um servidor de produção, 6.2 para 6.3, via ssh com cerca de 1 ano sem nenhuma atualização. Via ssh mas tranüquilo pois a máquina estava na empresa mesmo. Tava funcionando lindo, mas 23 pacotes vulneráveis... O servidor é extra-bombril-multi-tarefa: firewall, servidor de impressão, servidor FAMP (FreeBSD+Apache+Mysql+PHP), svn, compartilhamento de arquivos via samba e mais tudo o que puder imaginar. Da atualização, o mais tranqüilo foi o sistema base+kernel. Meu único cuidado foi com o bash, setado como shell padrão de todo mundo, até do root, com bibliotecas dinâmicas! Recompilei ele estático. E então make kernel make buildworld reboot ... mergemaster -p make installworld make delete- old mergemaster reboot. Agora, ports... aprendi uma lição. É melhor deixar pra fazer isso num fim de semana, portupgrade -a do que no meio da semana, em plena produção. Houve momentos em que aplicações python quebraram, conflitos com php, etc. Com paciência, recompilando ports quebrados um a um mesmo depois da atualização, tudo foi se normalizando. Medo mesmo terei no dia que eu for atualizar ele pro 7.x... Mas o EOL do 6.x é só em 2010 mesmo... -- Aline de Freitas - Chave pública: ID DE632016 / keys.indymedia.org gpg --keyserver keys.indymedia.org --recv-keys DE632016 -- Computers are unreliable, but humans are even more unreliable. Any system which depends on human reliability is unreliable. -- Gilb signature.asc Description: This is a digitally signed message part. - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Atualização maciça: Dicas
Olhando no handbook agorinha, vi que um port legal no caso que já não consta mais o disponivel para workstation mais tem ainda o para server Para mais informações acesse /usr/ports/misc/instant-server creio que para facilitar a vida de usuários leigos, recriar o instant-workstation, informações em http://doc.fug.com.br/handbook/desktop-summary.html, já do instalação sem interferencia do usuário seria um passo legal para o FreeBSD com relação a desktop. Afinal levar 7 dias para deixar um sistema BSD redondo com tudo que se precisa é foda... BOm fica ai a dica. -- Atenciosamente Paulo Henrique. - Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Re: [FUG-BR] Atualização maciça: Dicas
2008/8/16 Joao Rocha Braga Filho [EMAIL PROTECTED] Eu estou fazendo uma atualização maciça na minha estação de trabalho, e cometi alguns erros e acertos. Acho que aprendi com os dois. Ela ainda está em andamento, mas resolvi escrever algumas dicas aqui. Não vou ensinar a compilar kernel, atualizar ports e os fontes do sistema, etc, mas vou dar uma sequência para paralelizar muitas das tarefas para que a atualização maciça seja executada o mais rápido possível. O roteiro envolve atualização do sistema, compilando na máquina, e dos pacotes. Eu estou fazendo isto para passar do FreeBSD 6.3-RELENG pro 7.0-RELENG, para o KDE 4.1 e ainda para o XOrg 7.3, e mais muitas outras atualizações. Muitas tarefas podem ser paralelizadas, por exemplo, downloads ocupam mais banda e um pouco de CPU e acesso à disco, e as compilações usam muita CPU, memória e acesso à disco, mas nada de download. Atualizar o sistema compilando na máquina faz as duas coisas alternadamente. E por que não paralelizar? Começando: 1 ) Pode-se fazer cvsup atualizando os fontes e os ports ao mesmo tempo. Isto consumirá um pouco CPU, mas muito acesso à Internet e acesso à disco. Estas duas tarefas podem ser paralelizadas sem problemas. 2.a ) Depois de atualizar os fontes, pode-se começar a compilar o sistema e o kernel. Eles podem ser em paralelo, creio eu, mas isto pode degradar a máquina. Usando o comando nice +20 antes do make pode-se atenuar a degradação do sistema. Exemplo: nice +20 make buildworld 2.b) Uma vez que o ports tree esteja atualizado, pode-se começar a fazer os downloads, mas não se pode compilar ainda, pois a compilação será feita com o sistema que está instalado na máquina, e não o novo que será instalado. Neste ponto tem uma decisão séria a ser tomada relativa ao espaço em disco do sistema de arquivos. Se no /usr/ports/distfiles tiver muitos arquivos, se eles forem antigos e desatualizados, e tiver pouco espaço no sistema de arquivos, é conveniente esvaziar no /usr/ports/distfiles. Mas se a maioria estiver atualizada, é desaconselhável esvaziá-lo. É uma decisão entre o que serve dali e o espaço em disco disponível. Para fazer o download dos fontes de um programa dos ports, e de todas as suas dependências, use: make fetch-recursive Isto nem sequer descompactará os arquivos, Só fará o download deles. Pra melhor eficiência, faça de algo grande que você use. Por exemplo, se você usa o KDE, vá para o diretório do KDE nos ports e faça este comando acima. Se vai instalar o Firefox, faça no diretório do firefox. Tem programas que não são instalados pelas depenências de grandes programas, e até não tem as mesmas dependências, como o portaudit e o screen, portanto podem ser feitos make fetch-recursive deles em paralelo. 2.c) Note: A máquina continuará usável neste tempo, mas ela ficará meio ocupada. 3 ) Uma vez que o kernel e o sistema compilaram, pode-se fazer a atualização do sistema em si. Neste ponto cabe outra decisão. Espera o make fetch-recursive dos ports terminarem, ou para ele para continuar depois, e fazer a instalação do sistema agora. Eu voto pela interrução, no início de um arquivo que esteja sendo baixado, para minimizar os prejuízos. Este arquivo interrompido deverá ser removido do /usr/ports/distfiles. Este é o último ponto de usabiilidade do sistema antes da atualização estar quase pronta. Instale o kernel atualizado (Durante este tempo o download pode continuar.). 4 ) Entre e mono-usuário e faça o make installworld e o mergemaster. Depois de reboot. Ao final desta etapa, o sistema estará atualizado, mas os ports nele instalados não estarão. 5.a ) Pode-se retomar o make fetch-recursive 5.b ) Fazer a remoção de todos os ports instalados com pkg_delete -a. Isto pode demorar um pouco, e vai fazer acessos ao disco intensamente. 5.c ) Se julgar que o espaço em disco possa ser insuficiente, pode esvaziar o diretório /usr/obj, que são os arquivos do sistema compilados para serem instalados. Neste ponto não necessita mais deles. A presença deles pode diminuir o tempo de compilação duma nova atualização do sistema, mas consome um bom espaço em disco. Esta tarefa pode ser adiada tranquilamente, e a decisão de fazê-la ou não ficar dependendo do consumo do espaço em disco. 6.a e b ) Comece a compilar os ports, e continuar com o download. A condição é que o download esteja adiantado em relação à compilação. Para impedir um disco cheio, pode fazer um make clean depois de cada final de compilação dos ports. De vez em quando olhe como anda a compilação, pois é comum pedidos de intervenção do operador, para decisões. Por exemplo, o XOrg pergunta quais drivers de vídeo devem ser compilados. Compilações podem ser feitas em paralelo, desde que não conflitem, i.e., não tentem compilar a mesma dependência ao mesmo tempo. Eu passei por isto. A sugestão é compilar algo pequeno em paralelo com algo grande, ou que
Re: [FUG-BR] Atualização maciça: Dicas
2008/8/17 Paulo Henrique [EMAIL PROTECTED]: 2008/8/16 Joao Rocha Braga Filho [EMAIL PROTECTED] Eu estou fazendo uma atualização maciça na minha estação de trabalho, e cometi alguns erros e acertos. Acho que aprendi com os dois. Ela ainda está em andamento, mas resolvi escrever algumas dicas aqui. Não vou ensinar a compilar kernel, atualizar ports e os fontes do sistema, etc, mas vou dar uma sequência para paralelizar muitas das tarefas para que a atualização maciça seja executada o mais rápido possível. O roteiro envolve atualização do sistema, compilando na máquina, e dos pacotes. Eu estou fazendo isto para passar do FreeBSD 6.3-RELENG pro 7.0-RELENG, para o KDE 4.1 e ainda para o XOrg 7.3, e mais muitas outras atualizações. Muitas tarefas podem ser paralelizadas, por exemplo, downloads ocupam mais banda e um pouco de CPU e acesso à disco, e as compilações usam muita CPU, memória e acesso à disco, mas nada de download. Atualizar o sistema compilando na máquina faz as duas coisas alternadamente. E por que não paralelizar? Começando: 1 ) Pode-se fazer cvsup atualizando os fontes e os ports ao mesmo tempo. Isto consumirá um pouco CPU, mas muito acesso à Internet e acesso à disco. Estas duas tarefas podem ser paralelizadas sem problemas. 2.a ) Depois de atualizar os fontes, pode-se começar a compilar o sistema e o kernel. Eles podem ser em paralelo, creio eu, mas isto pode degradar a máquina. Usando o comando nice +20 antes do make pode-se atenuar a degradação do sistema. Exemplo: nice +20 make buildworld 2.b) Uma vez que o ports tree esteja atualizado, pode-se começar a fazer os downloads, mas não se pode compilar ainda, pois a compilação será feita com o sistema que está instalado na máquina, e não o novo que será instalado. Neste ponto tem uma decisão séria a ser tomada relativa ao espaço em disco do sistema de arquivos. Se no /usr/ports/distfiles tiver muitos arquivos, se eles forem antigos e desatualizados, e tiver pouco espaço no sistema de arquivos, é conveniente esvaziar no /usr/ports/distfiles. Mas se a maioria estiver atualizada, é desaconselhável esvaziá-lo. É uma decisão entre o que serve dali e o espaço em disco disponível. Para fazer o download dos fontes de um programa dos ports, e de todas as suas dependências, use: make fetch-recursive Isto nem sequer descompactará os arquivos, Só fará o download deles. Pra melhor eficiência, faça de algo grande que você use. Por exemplo, se você usa o KDE, vá para o diretório do KDE nos ports e faça este comando acima. Se vai instalar o Firefox, faça no diretório do firefox. Tem programas que não são instalados pelas depenências de grandes programas, e até não tem as mesmas dependências, como o portaudit e o screen, portanto podem ser feitos make fetch-recursive deles em paralelo. 2.c) Note: A máquina continuará usável neste tempo, mas ela ficará meio ocupada. 3 ) Uma vez que o kernel e o sistema compilaram, pode-se fazer a atualização do sistema em si. Neste ponto cabe outra decisão. Espera o make fetch-recursive dos ports terminarem, ou para ele para continuar depois, e fazer a instalação do sistema agora. Eu voto pela interrução, no início de um arquivo que esteja sendo baixado, para minimizar os prejuízos. Este arquivo interrompido deverá ser removido do /usr/ports/distfiles. Este é o último ponto de usabiilidade do sistema antes da atualização estar quase pronta. Instale o kernel atualizado (Durante este tempo o download pode continuar.). 4 ) Entre e mono-usuário e faça o make installworld e o mergemaster. Depois de reboot. Ao final desta etapa, o sistema estará atualizado, mas os ports nele instalados não estarão. 5.a ) Pode-se retomar o make fetch-recursive 5.b ) Fazer a remoção de todos os ports instalados com pkg_delete -a. Isto pode demorar um pouco, e vai fazer acessos ao disco intensamente. 5.c ) Se julgar que o espaço em disco possa ser insuficiente, pode esvaziar o diretório /usr/obj, que são os arquivos do sistema compilados para serem instalados. Neste ponto não necessita mais deles. A presença deles pode diminuir o tempo de compilação duma nova atualização do sistema, mas consome um bom espaço em disco. Esta tarefa pode ser adiada tranquilamente, e a decisão de fazê-la ou não ficar dependendo do consumo do espaço em disco. 6.a e b ) Comece a compilar os ports, e continuar com o download. A condição é que o download esteja adiantado em relação à compilação. Para impedir um disco cheio, pode fazer um make clean depois de cada final de compilação dos ports. De vez em quando olhe como anda a compilação, pois é comum pedidos de intervenção do operador, para decisões. Por exemplo, o XOrg pergunta quais drivers de vídeo devem ser compilados. Compilações podem ser feitas em paralelo, desde que não conflitem, i.e., não tentem compilar a mesma dependência ao mesmo tempo. Eu passei por isto. A sugestão é compilar algo
Re: [FUG-BR] Atualização maciça: Dicas
2008/8/17 Joao Rocha Braga Filho [EMAIL PROTECTED] 2008/8/17 Paulo Henrique [EMAIL PROTECTED]: 2008/8/16 Joao Rocha Braga Filho [EMAIL PROTECTED] Eu estou fazendo uma atualização maciça na minha estação de trabalho, e cometi alguns erros e acertos. Acho que aprendi com os dois. Ela ainda está em andamento, mas resolvi escrever algumas dicas aqui. Não vou ensinar a compilar kernel, atualizar ports e os fontes do sistema, etc, mas vou dar uma sequência para paralelizar muitas das tarefas para que a atualização maciça seja executada o mais rápido possível. O roteiro envolve atualização do sistema, compilando na máquina, e dos pacotes. Eu estou fazendo isto para passar do FreeBSD 6.3-RELENG pro 7.0-RELENG, para o KDE 4.1 e ainda para o XOrg 7.3, e mais muitas outras atualizações. Muitas tarefas podem ser paralelizadas, por exemplo, downloads ocupam mais banda e um pouco de CPU e acesso à disco, e as compilações usam muita CPU, memória e acesso à disco, mas nada de download. Atualizar o sistema compilando na máquina faz as duas coisas alternadamente. E por que não paralelizar? Começando: 1 ) Pode-se fazer cvsup atualizando os fontes e os ports ao mesmo tempo. Isto consumirá um pouco CPU, mas muito acesso à Internet e acesso à disco. Estas duas tarefas podem ser paralelizadas sem problemas. 2.a ) Depois de atualizar os fontes, pode-se começar a compilar o sistema e o kernel. Eles podem ser em paralelo, creio eu, mas isto pode degradar a máquina. Usando o comando nice +20 antes do make pode-se atenuar a degradação do sistema. Exemplo: nice +20 make buildworld 2.b) Uma vez que o ports tree esteja atualizado, pode-se começar a fazer os downloads, mas não se pode compilar ainda, pois a compilação será feita com o sistema que está instalado na máquina, e não o novo que será instalado. Neste ponto tem uma decisão séria a ser tomada relativa ao espaço em disco do sistema de arquivos. Se no /usr/ports/distfiles tiver muitos arquivos, se eles forem antigos e desatualizados, e tiver pouco espaço no sistema de arquivos, é conveniente esvaziar no /usr/ports/distfiles. Mas se a maioria estiver atualizada, é desaconselhável esvaziá-lo. É uma decisão entre o que serve dali e o espaço em disco disponível. Para fazer o download dos fontes de um programa dos ports, e de todas as suas dependências, use: make fetch-recursive Isto nem sequer descompactará os arquivos, Só fará o download deles. Pra melhor eficiência, faça de algo grande que você use. Por exemplo, se você usa o KDE, vá para o diretório do KDE nos ports e faça este comando acima. Se vai instalar o Firefox, faça no diretório do firefox. Tem programas que não são instalados pelas depenências de grandes programas, e até não tem as mesmas dependências, como o portaudit e o screen, portanto podem ser feitos make fetch-recursive deles em paralelo. 2.c) Note: A máquina continuará usável neste tempo, mas ela ficará meio ocupada. 3 ) Uma vez que o kernel e o sistema compilaram, pode-se fazer a atualização do sistema em si. Neste ponto cabe outra decisão. Espera o make fetch-recursive dos ports terminarem, ou para ele para continuar depois, e fazer a instalação do sistema agora. Eu voto pela interrução, no início de um arquivo que esteja sendo baixado, para minimizar os prejuízos. Este arquivo interrompido deverá ser removido do /usr/ports/distfiles. Este é o último ponto de usabiilidade do sistema antes da atualização estar quase pronta. Instale o kernel atualizado (Durante este tempo o download pode continuar.). 4 ) Entre e mono-usuário e faça o make installworld e o mergemaster. Depois de reboot. Ao final desta etapa, o sistema estará atualizado, mas os ports nele instalados não estarão. 5.a ) Pode-se retomar o make fetch-recursive 5.b ) Fazer a remoção de todos os ports instalados com pkg_delete -a. Isto pode demorar um pouco, e vai fazer acessos ao disco intensamente. 5.c ) Se julgar que o espaço em disco possa ser insuficiente, pode esvaziar o diretório /usr/obj, que são os arquivos do sistema compilados para serem instalados. Neste ponto não necessita mais deles. A presença deles pode diminuir o tempo de compilação duma nova atualização do sistema, mas consome um bom espaço em disco. Esta tarefa pode ser adiada tranquilamente, e a decisão de fazê-la ou não ficar dependendo do consumo do espaço em disco. 6.a e b ) Comece a compilar os ports, e continuar com o download. A condição é que o download esteja adiantado em relação à compilação. Para impedir um disco cheio, pode fazer um make clean depois de cada final de compilação dos ports. De vez em quando olhe como anda a compilação, pois é comum pedidos de intervenção do operador, para decisões. Por exemplo, o XOrg pergunta quais drivers de vídeo devem ser