Como faço para atualizar todos os meus pacotes instalados no LEDE?

12

Estou apenas imaginando qual é o equivalente de

apt-get upgrade
apt upgrade
yum update

com OpenWRT ou LEDE?

    
por Evan Carroll 24.10.2017 / 23:39

2 respostas

30

Não há nenhum único comando ou argumento, mas você pode facilmente fazê-lo. Para atualizar todos os pacotes, o LEDE recomenda ,

opkg list-upgradable | cut -f 1 -d ' ' | xargs opkg upgrade 

Existem outras formas menos eficientes em que as pessoas usam o AWK e outras.

Uma advertência importante geralmente segue com o uso extensivo de LEDE / OpenWRT's opkg

Since LEDE firmware stores the base system in a compressed read-only partition, any update to base system packages will be written in the read-write partition and therefore use more space than it would if it was just overwriting the older version in the compressed base system partition. It's recommended to check the available space in internal flash memory and the space requirements for updates of base system packages.

    
por 24.10.2017 / 23:39
0

Eu criei um pequeno script chamado opkg-upgrade para lidar com a atualização de uma maneira melhor.

Está disponível no github: link

Isso tornará a atualização tão fácil quanto: opkg-upgrade

Instruções de instalação do Curl / Wget aqui!

Como mencionado no arquivo readme.md , pode haver problemas com a atualização Apesar.

Possíveis problemas:

  • O problema do squashfs (a ROM é somente leitura, portanto, as atualizações levam mais espaço em flash ou extroot) .
  • O problema do dev / trunk (beta) (as versões beta podem ser suavizadas em atualizações) .
  • O problema de espaço (precisa de espaço livre suficiente para os downloads e instalações) .

Devo mencionar também que a atualização do CRON é uma péssima ideia!
Eu diria que nem mesmo em um Linux regular as atualizações cegas da distro são uma boa idéia. Há muitas coisas que podem dar errado nas atualizações e como o OpenWrt geralmente roda em dispositivos que podem ser emparedados, faz menos sentido fazê-lo sozinho.

Em suma, os únicos casos em que eu SEMPRE atualizaria são:

  • Se estiver usando o extroot em um pendrive enorme
  • Se o Flash interno tiver 32 MB ou mais
  • Se NÃO estiver usando dev / trunk (beta)
  • Se estiver executando no ext4 FS com muito espaço <(x86 metal, VM, etc.)

Ainda assim, eu nunca atualizaria do cron.
Eu também acho que 20 vezes antes de atualizar o Flash interno (mesmo grandes), uma vez que isso iria degradá-lo mais rápido.

Meu script tem a opção de enviar um relatório de e-mail com as atualizações disponíveis.
Por isso, recomendo adicionar a ferramenta de relatórios ao cron e, em seguida, as pessoas podem atualizar manualmente depois de receber o email. Isso torna as coisas mais seguras e também oferece a opção de revisar as atualizações.

Felicidades!
Gus

    
por 01.12.2018 / 20:12