[FUG-BR] Atualizando ports com várias dependências

Otacílio otacilio.neto em bsd.com.br
Quinta Março 1 14:51:03 BRT 2012


On 01/03/2012 14:35, Renato Botelho wrote:
> 2012/3/1 Otacílio<otacilio.neto em bsd.com.br>:
>> On 01/03/2012 14:18, Cleyton Agapito wrote:
>>> Em 1 de março de 2012 14:08, Otacílio<otacilio.neto em bsd.com.br>    escreveu:
>>>> On 01/03/2012 14:03, Marcel Bonnet wrote:
>>>>> (desculpe o top posting)
>>>>> tem um jeito tosco, mas funcionou no meu note:
>>>>> portupgrade -nfr perl>      lista
>>>>> como preferir salve a parte da lista q nao quer atualizar e use:
>>>>> portupgrade -x port
>>>>> confere se a opt eh x (confundo com portmaster)
>>>>> mas a idea eh entrar -x port1 -x port2 ...
>>>>> ele fara tudo menos os ports indicados.
>>>>> abcs,
>>>>> ===============================================
>>>>> Desculpe-me se esta msg foi curta. Escrevi de um dispositivo móvel: lento
>>>>> p/ teclar e posso dispor de pouco tempo agora.
>>>>> Marcel Bonnet
>>>>>
>>>>> Em 01/03/2012 13:41, "Otacílio"<otacilio.neto em bsd.com.br>escreveu:
>>>>>
>>>>> Olá pessoal
>>>>>
>>>>> Estou eu atualizando o meu sistema. Seguindo o UPDATING do perl eu tenho
>>>>> que reinstalar tudo o que depende do perl
>>>>>
>>>>> portupgrade -fr perl
>>>>>
>>>>> Mas aí é o problema, são mais de 600 ports e esta máquina é o meu
>>>>> notebook. Eu não posso deixar essa máquina parada até terminar de
>>>>> compilar a tralha toda, e existem uns ports bem pesados nessa lista,
>>>>> como java, libreoffice, firefox, thunderbird, eclipse, etc etc.
>>>>>
>>>>> Tem alguma forma do portupgrade guardar o que já foi feito para que eu
>>>>> possa parar a atualização e continuar depois?
>>>>>
>>>>> Se eu mandar atualizar vários ports de uma vez só, em um único comando o
>>>>> portupgrade é inteligente o suficiente para descobrir quais deles são
>>>>> dependentes uns dos outros para atualizar na ordem certa?
>>>>>
>>>>>
>>>>> Obrigado!
>>>>
>>>> Eu fiz isso em outra ocasião, mas tinha a dúvida se ele não atualizava
>>>> cada port depois do -x ou apenas o último depois do último -x.
>>>>
>>>> Fica ainda a outra pergunta, como faço para "pausar" a atualização?
>>>>
>>>
>>> Olá Otacílio,
>>>
>>> Olha, pausar acho que não dá não, já andei vendo gente pedindo essa
>>> funcionalidade mas nada foi feito até hoje.
>>>
>>> Eu tenho parado no tapa mesmo (^C), só que tem que cuidar pra não
>>> fazer isso na hora em que ele está mexendo no banco de dados, se
>>> corromper é um saco, tem que apagar o velho e mandar fazer outro. A
>>> título de informação vc pode ligar o log no
>>> /usr/local/etc/pkgtools.conf (a linha que tem PORTUPGRADE_ARGS = e a
>>> -L /var/tmp/portupgrade-%s::%s.log), na prática não tem muita
>>> utilidade mas vc já fica esperto no que pode dar problema por estar
>>> desatualizado.
>>>
>>> Até hoje tive poucos problemas, o chato é que até terminar tudo vc
>>> corre o risco de algo parar de funcionar, normalmente uma recompilada
>>> na mão já resolve, nada grave, mas é o risco é do tamanho do port
>>> (tipo, os grandes são mais complicados).
>>>
>>> Agora mesmo estou num notebook todo frankestein pelo mesmo motivo, se
>>> encontrar alguma forma melhor avise ;-)
>>>
>>> []'s
>>
>>
>> Eu estava pensando que se existir uma forma de ligar um log de cada port
>> que foi atualizado exatamente depois de ser atualizado, não no fim de
>> tudo, dava para fazer um script que removesse esse port da lista de
>> dependências quando fosse continuar a atualização de onde parou. Alguém
>> sabe se é possível ligar um log para cada port atualizado assim que isso
>> é feito?
>
> O portmaster faz isso. Se você executar
>
> portmaster -fr perl
>
> ele vai marcar, colocando um arquivo dentro de /var/db/pkg/PORTNAME,
> todos os que já foram recompilados. Se parar na metade e quiser
> continuar, basta rodar:
>
> portmaster -frR perl
>


A forma de parar na metade é com o CTRL+C mesmo?


Mais detalhes sobre a lista de discussão freebsd