Atualizando o kernel do Chrubuntu 14.04 no Acer C7 (atualmente 3.4.0)

0

Houve outra pergunta semelhante sobre este aqui , mas é para versões antigas do Ubuntu, e o script não funciona mais.

Durante a instalação, o script funciona bem até:

+ vbutil_kernel --verify /dev/sda6 --verbose + tail -1 + sed -e s/$/ disablevmx=off/ /config-2013-05-22-2259-orig.txt + vbutil_kernel --pack /newkernel --keyblock /usr/share/vboot/devkeys/kernel.keyblock --version 1 --signprivate /usr/share/vboot/devkeys/kernel_data_key.vbprivk --config=/config-2013-05-22-2259.txt --vmlinuz /boot/vmlinuz-3.8.0 --arch x86_64 ERROR: Error reading kernel file. + vbutil_kernel --verify /newkernel ERROR: Unable to stat /newkernel: No such file or directory + dd if=/newkernel of=/dev/sda6 dd: opening ‘/newkernel’: No such file or directory

Então o problema é que este / newkernel é chamado, mas não foi criado pelo script, o que aparentemente não foi um problema no passado.

Comentários sobre o site original para o script, mencione o mesmo problema, bem como uma solução para o 14.04. Infelizmente, sou um novato completo neste assunto e não entendo completamente como implementar a solução:

Just a quick note, I used the 3.8 version of the script to get a kernel working on a chrubutu Acer to match the video demands of 14.04. Had to get old_bins in place, like this:

mount -o ro /dev/sda3 /mnt cd /usr/bin cp -a /mnt/usr/bin/old_bins/

And in kernel_next/Makefile comment out the halt-on-warning instruction:

# KBUILD_CFLAGS += -Werror

and to KBUILD_CFLAGS add:

-fno-tree-vrp

and ended up with a 3.8.11 kernel that's working well.

Então eu acho que isso é um pedido. Alguém pode atualizar o script com as alterações necessárias ou descrever com mais detalhes o que precisa ser feito?

    
por Kyle Letham 01.06.2014 / 19:38

1 resposta

0

Eu não possuo um Chromebook, mas sou um usuário Linux ...

mount -o ro /dev/sda3 /mnt
cd /usr/bin
cp -a /mnt/usr/bin/ old_bins/

Estes são comandos que são executados em um emulador de terminal, apenas abra um e faça o login como root com o comando su e os emita depois. (o sinal # em um shell indica que você está executando comandos como root user).

$ su
<enter your root password>
# mount -o ro /dev/sda3 /mnt
# cd /usr/bin
# cp -a /mnt/usr/bin/ old_bins/

Suponho que a parte old_bins/ esteja separada do restante, pois o comando cp precisa de no mínimo 2 parâmetros para funcionar. O que ele faz é copiar o diretório /mnt/usr/bin/ (e seu conteúdo) para o diretório old_bins/ (que ficará dentro de /usr/bin not /mnt/usr/bin ).

E eu suponho que você tenha acesso a este arquivo kernel_next/Makefile , que é um makefile dentro de um diretório chamado kernel_next . Portanto, você precisa abri-lo com seu editor de texto preferido e adicionar um sinal # (significa "comentar a seguinte linha" em vários idiomas) antes da linha KBUILD_CFLAGS += -Werror . Assim:

Antes

KBUILD_CFLAGS += -Werror

Depois de

# KBUILD_CFLAGS += -Werror

Depois, adicione o sinalizador -fno-tree-vrp à instrução KBUILD_CFLAGS , desta forma: KBUILD_CFLAGS += -fno-tree-vrp . Você vai acabar com algo assim em seu makefile:

# KBUILD_CFLAGS += -Werror
KBUILD_CFLAGS += -fno-tree-vrp

Depois, você pode fazer o que estava fazendo. Boa sorte.

    
por 01.06.2014 / 20:08