Fórum Ubuntu Linux - PT
22 de Maio de 2013, 01:54 *
Olá, Visitante. Faça o login ou registre-se.
Perdeu o seu e-mail de ativação?

Login com nome de usuário, senha e duração da sessão
Notícias: Informações da última versão: Ubuntu Linux 13.04 -Raring Ringtail
 
   Home   Ajuda Regras Pesquisa Login Registre-se  
Anúncios
Páginas: 1 ... 274 275 [276] 277 278 ... 282   Ir para o fundo
  Imprimir  
Autor Tópico: Kernel Omnislash (Unofficial) - Aprendendo a voar sem segredos!!!  (Lida 560378 vezes)
Stivekx
Usuário Ubuntu
*
Deslogado Deslogado

Mensagens: 126


Ver Perfil
« Responder #4125 em: 15 de Abril de 2012, 11:56 »

fglrx foi fácil aqui, sem problemas...

Aquilo é um arquivo de configuração, ele desabilita/habilita várioas recursos do kernel com a intenção de otimizar ele, reduzir a latencia melhor dizendo.
Não peça pra explicar como porque dai vai além dos meus conhecimentos ;p
Registrado
Metalbobolic
Usuário Ubuntu
*
Deslogado Deslogado

Mensagens: 216


Ver Perfil WWW
« Responder #4126 em: 15 de Abril de 2012, 11:59 »

fglrx foi fácil aqui, sem problemas...

Aquilo é um arquivo de configuração, ele desabilita/habilita várioas recursos do kernel com a intenção de otimizar ele, reduzir a latencia melhor dizendo.
Não peça pra explicar como porque dai vai além dos meus conhecimentos ;p

Meu kernel não compila..sempre da erro no stage 2 ......
Registrado
Stivekx
Usuário Ubuntu
*
Deslogado Deslogado

Mensagens: 126


Ver Perfil
« Responder #4127 em: 15 de Abril de 2012, 12:39 »

Hm, que patchs tás usando?

Estou compilando o 3.3.2 aqui devido a um bug com wireless que foi corrigido, to terminando de configurar, já vejo então.

Edit:
Usando meu script pra adicionar -Ofast em tudo, deu erro, não usando ele tá indo :s :s :s

Editei apenas no Makefile então, acredito que seja eficiente pra algo.

Edit 2:
Tive um problema no arquivo:
drivers/base/firmware_class.c

Baixei a versão 3.3.1, depois o patch pra 3.3.2.
Mandei substituir o drivers/base/firmware_class.c.org por drivers/base/firmware_class.c e tá indo normal agora.

Pra substituir, basta:
# mv drivers/base/firmware_class.c.orig drivers/base/firmware_class.c
« Última modificação: 15 de Abril de 2012, 13:21 por Stivekx » Registrado
Metalbobolic
Usuário Ubuntu
*
Deslogado Deslogado

Mensagens: 216


Ver Perfil WWW
« Responder #4128 em: 15 de Abril de 2012, 13:28 »

Hm, que patchs tás usando?

Estou compilando o 3.3.2 aqui devido a um bug com wireless que foi corrigido, to terminando de configurar, já vejo então.

Edit:
Usando meu script pra adicionar -Ofast em tudo, deu erro, não usando ele tá indo :s :s :s

Editei apenas no Makefile então, acredito que seja eficiente pra algo.

Edit 2:
Tive um problema no arquivo:
drivers/base/firmware_class.c

Baixei a versão 3.3.1, depois o patch pra 3.3.2.
Mandei substituir o drivers/base/firmware_class.c.org por drivers/base/firmware_class.c e tá indo normal agora.

Pra substituir, basta:
# mv drivers/base/firmware_class.c.orig drivers/base/firmware_class.c

Erro aqui:


from drivers/gpu/drm/radeon/r600_audio.c:26:
include/linux/vmalloc.h:1:0: internal compiler error: Abortado
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.6/README.Bugs> for instructions.
make[5]: ** [drivers/gpu/drm/radeon/r600_audio.o] Erro 1
make[4]: ** [drivers/gpu/drm/radeon] Erro 2
make[3]: ** [drivers/gpu/drm] Erro 2
make[2]: ** [drivers/gpu] Erro 2
make[1]: ** [drivers] Erro 2
make[1]: Saindo do diretório `/usr/src/linux-3.3.1'
make: ** [debian/stamp/build/kernel] Erro 2
Registrado
Stivekx
Usuário Ubuntu
*
Deslogado Deslogado

Mensagens: 126


Ver Perfil
« Responder #4129 em: 15 de Abril de 2012, 14:37 »

Tente gerar o arquivo de configuracao com make localmodconfig, esse driver, você pode nem precisar dele talvez Sorridente

----
localmodconfig pode não ser legal não...
Compilei 2 vezes hoje já, mesmo ativando todos os drivers de disco/hd/ata e todos os tipos de sistema de arquivo, ele não consegue montar o disco, o driver que identifica ele ou que identifica o sistema de arquivos não tá sendo compilado junto :T

soda que tenho que compilar todos os drivers existentes porque não sei qual exatamente devo ativar gg
« Última modificação: 15 de Abril de 2012, 14:52 por Stivekx » Registrado
Metalbobolic
Usuário Ubuntu
*
Deslogado Deslogado

Mensagens: 216


Ver Perfil WWW
« Responder #4130 em: 15 de Abril de 2012, 15:22 »

Tente gerar o arquivo de configuracao com make localmodconfig, esse driver, você pode nem precisar dele talvez Sorridente

----
localmodconfig pode não ser legal não...
Compilei 2 vezes hoje já, mesmo ativando todos os drivers de disco/hd/ata e todos os tipos de sistema de arquivo, ele não consegue montar o disco, o driver que identifica ele ou que identifica o sistema de arquivos não tá sendo compilado junto :T

soda que tenho que compilar todos os drivers existentes porque não sei qual exatamente devo ativar gg

Eu coloquei multimedia e sound em built in ...agora deixei multimedia em built in e coloquei sound em modulo..estar compilando...vou ver se dará o erro...

Agora o segundo erro:


Building modules, stage 2.
  MODPOST 3496 modules
ERROR: "__modver_version_show" [drivers/staging/rts5139/rts5139.ko] undefined!
WARNING: modpost: Found 12 section mismatch(es).
To see full details build your kernel with:
'make CONFIG_DEBUG_SECTION_MISMATCH=y'
make[2]: ** [__modpost] Erro 1
make[1]: ** [modules] Erro 2
make[1]: Saindo do diretório `/usr/src/linux-3.3.1'
make: ** [debian/stamp/build/kernel] Erro 2
« Última modificação: 15 de Abril de 2012, 15:44 por Metalbobolic » Registrado
4d4c47
Visitante
« Responder #4131 em: 16 de Abril de 2012, 00:06 »

Tente gerar o arquivo de configuracao com make localmodconfig, esse driver, você pode nem precisar dele talvez Sorridente

----
localmodconfig pode não ser legal não...
Compilei 2 vezes hoje já, mesmo ativando todos os drivers de disco/hd/ata e todos os tipos de sistema de arquivo, ele não consegue montar o disco, o driver que identifica ele ou que identifica o sistema de arquivos não tá sendo compilado junto :T

soda que tenho que compilar todos os drivers existentes porque não sei qual exatamente devo ativar gg

Eu coloquei multimedia e sound em built in ...agora deixei multimedia em built in e coloquei sound em modulo..estar compilando...vou ver se dará o erro...

Agora o segundo erro:


Building modules, stage 2.
  MODPOST 3496 modules
ERROR: "__modver_version_show" [drivers/staging/rts5139/rts5139.ko] undefined!
WARNING: modpost: Found 12 section mismatch(es).
To see full details build your kernel with:
'make CONFIG_DEBUG_SECTION_MISMATCH=y'
make[2]: ** [__modpost] Erro 1
make[1]: ** [modules] Erro 2
make[1]: Saindo do diretório `/usr/src/linux-3.3.1'
make: ** [debian/stamp/build/kernel] Erro 2


depois desse erro eu executei:

# make modules
 e
#make modules_install

instalei tudo manualmente, foi tudo belezinha, só drive 3d deu problema aqui.
Registrado
Metalbobolic
Usuário Ubuntu
*
Deslogado Deslogado

Mensagens: 216


Ver Perfil WWW
« Responder #4132 em: 16 de Abril de 2012, 00:26 »

Tente gerar o arquivo de configuracao com make localmodconfig, esse driver, você pode nem precisar dele talvez Sorridente

----
localmodconfig pode não ser legal não...
Compilei 2 vezes hoje já, mesmo ativando todos os drivers de disco/hd/ata e todos os tipos de sistema de arquivo, ele não consegue montar o disco, o driver que identifica ele ou que identifica o sistema de arquivos não tá sendo compilado junto :T

soda que tenho que compilar todos os drivers existentes porque não sei qual exatamente devo ativar gg

Eu coloquei multimedia e sound em built in ...agora deixei multimedia em built in e coloquei sound em modulo..estar compilando...vou ver se dará o erro...

Agora o segundo erro:


Building modules, stage 2.
  MODPOST 3496 modules
ERROR: "__modver_version_show" [drivers/staging/rts5139/rts5139.ko] undefined!
WARNING: modpost: Found 12 section mismatch(es).
To see full details build your kernel with:
'make CONFIG_DEBUG_SECTION_MISMATCH=y'
make[2]: ** [__modpost] Erro 1
make[1]: ** [modules] Erro 2
make[1]: Saindo do diretório `/usr/src/linux-3.3.1'
make: ** [debian/stamp/build/kernel] Erro 2


depois desse erro eu executei:

# make modules
 e
#make modules_install

instalei tudo manualmente, foi tudo belezinha, só drive 3d deu problema aqui.

Aqui agora estar indo....bastou eu colocar em M a sessão multimedia e sound e desmarcar na sessão drivers do kernel o driver rts5139 .. Esse driver é para placas pci usb ....e agora estar compilando....

Amanhã posto o resultado...valeus meu povo

RESULTADO:

Erro


make[1]: Saindo do diretório `/usr/src/linux-3.3.1'
/usr/bin/make  EXTRAVERSION=-liquorix  ARCH=i386 \
                             -C Documentation/lguest
make: *** Documentation/lguest: Arquivo ou diretório não encontrado.  Pare.
make: ** [debian/stamp/build/kernel] Erro 2

Desisto
« Última modificação: 16 de Abril de 2012, 00:38 por Metalbobolic » Registrado
4d4c47
Visitante
« Responder #4133 em: 16 de Abril de 2012, 02:50 »

Tente gerar o arquivo de configuracao com make localmodconfig, esse driver, você pode nem precisar dele talvez Sorridente

----
localmodconfig pode não ser legal não...
Compilei 2 vezes hoje já, mesmo ativando todos os drivers de disco/hd/ata e todos os tipos de sistema de arquivo, ele não consegue montar o disco, o driver que identifica ele ou que identifica o sistema de arquivos não tá sendo compilado junto :T

soda que tenho que compilar todos os drivers existentes porque não sei qual exatamente devo ativar gg

Eu coloquei multimedia e sound em built in ...agora deixei multimedia em built in e coloquei sound em modulo..estar compilando...vou ver se dará o erro...

Agora o segundo erro:


Building modules, stage 2.
  MODPOST 3496 modules
ERROR: "__modver_version_show" [drivers/staging/rts5139/rts5139.ko] undefined!
WARNING: modpost: Found 12 section mismatch(es).
To see full details build your kernel with:
'make CONFIG_DEBUG_SECTION_MISMATCH=y'
make[2]: ** [__modpost] Erro 1
make[1]: ** [modules] Erro 2
make[1]: Saindo do diretório `/usr/src/linux-3.3.1'
make: ** [debian/stamp/build/kernel] Erro 2


então faiz o seguinte, comenta a linha do driver rts5139 no .config e recomaçe a compilar do 0,

fiz isso e agora não deu erro nenhum, kernel 3.3.2 .deb compilado perfeitamente ( sem usar make modules && make modules_install) pode tentar que vai dar certo agora, valeu


Registrado
4d4c47
Visitante
« Responder #4134 em: 16 de Abril de 2012, 03:18 »

fiz esse script aqui de compilaçao do kernel 3.3.2 com o 3.3.0-ck1 e tudo compilado em -march=native + -Ofast

obs: antes de tudo, você só vai ter o trabalho de copiar o seu .config para a pasta /boot com o nome de config-atual e de comentar o driver RTS5139 no arquivo /boot/config-atual:

OBS= tenha certeza que tem pelo menos 15 GB livre no hd

Código:
#!/bin/bash

# script PARA USUARIOS DO UBUNTU 11.10 baixa e compila kernel tudo automaticamente CRIADO PELOS USUÁRIOS DO FORUM UBUNTU BR:
# http://ubuntuforum-br.org/index.php/topic,29799.3960.html

# totalmente GPL-3

# vc vai ter o trabalho so de mudar a versão do kernel e a versão do patch do koliva

# salve em /bin com o nome scriptkernel e de permissão de execução
# sudo chmod +x /bin/scriptkernel

# pra começar a compilação:
# time sudo scriptkernel

################################################################################################



############################################
#vc só vai ter o trabalho de editar aqui:

#versão do kernel a ser compilado
kernel=3.3

#path de atualização
patchkernel=3.3.2


#patch ck
patchck=3.3-ck1

#sufixo
ckk=ck1


#.config antigo
kernelantigo=atual

############################################

# não precisa mexer em mais nada aqui

##################################
#arquitetura: amd64 ou i386
arqt=$(dpkg --print-architecture)


#CL=CONCURRENCY_LEVEL do processador
CL=$(grep -c processor /proc/cpuinfo)
##################################

sudo apt-get update
sudo apt-get install kernel-package gcc-4.6 libncurses5 libncurses5-dev build-essential -y


cd /usr/src
wget -c http://www.kernel.org/pub/linux/kernel/v3.x/linux-$kernel.tar.bz2


sudo tar -jxpvf /usr/src/linux-$kernel.tar.bz2
sudo mv /usr/src/linux-$kernel /usr/src/linux-$patchkernel-$ckk


wget -c http://www.kernel.org/pub/linux/kernel/v3.x/patch-$patchkernel.bz2
wget -c http://ck.kolivas.org/patches/3.0/$kernel/$patchck/patch-$patchck.bz2

#ubuntu patch
wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.3.2-precise/0001-base-packaging.patch
wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.3.2-precise/0002-debian-changelog.patch
wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.3.2-precise/0003-default-configs.patch



sudo bunzip2 /usr/src/patch-$patchkernel.bz2
sudo bunzip2 /usr/src/patch-$patchck.bz2


cd /usr/src/linux-$patchkernel-$ckk

sudo patch -p1 < /usr/src/patch-$patchkernel
sudo patch -p1 < /usr/src/patch-$patchck
sudo patch -p1 < /usr/src/0001-base-packaging.patch
sudo patch -p1 < /usr/src/0002-debian-changelog.patch
sudo patch -p1 < /usr/src/0003-default-configs.patch



sudo cp /boot/config-$kernelantigo /usr/src/linux-$patchkernel-$ckk/.config

#sudo gedit Makefile  

sleep 3

sudo make menuconfig

############ script do grande Stivekx #######################
#!/bin/bash

#Script para automatizar a mudança das flags na hora de compilar o kernel.
#Mais informações sobre como compilar o kernel para seu processador:
#http://ubuntuforum-br.org/index.php/topic,81718.0.html

#Modo de usar:
#Após baixar o kernel, descompactar, criar um link simbólico para ele no /usr/src/linux:
# cd /usr/src/linux
# sudo su
# chmod +x script.sh
# ./script.sh
#O script deve ser executado como root. Recomendo que use sudo su - e rode o script ao invés de sudo sh script.sh


#Script criado por André Steinn

#Aqui é a lista de arquivos que ele vai dar replace no -march= por -march=native. Você pode mudar essa lista de arquivos passando a lista pela opção a e separados pro virgula
#e.g.: ./script.sh -a arch/x86/boot/compressed/Makefile,arch/x86/boot/Makefile,arquivo1,arquivo2,arquivo3

arquivos=( "arch/x86/boot/compressed/Makefile" "arch/x86/boot/Makefile" "arch/x86/kernel/acpi/realmode/Makefile" "arch/x86/Kconfig.cpu" "arch/x86/Makefile" "arch/x86/Makefile_32.cpu")

#Aqui eu verifico se a pessoa passou algum argumento na hora de executar o script
while getopts ":a:c" opt; do
  case $opt in
    a)
      echo "Você setou uma lista de arquivos personalizada: $OPTARG" >&2
IFS=',' read -ra arquivos <<< "$OPTARG"
      ;;
    \?)
      echo "Opção inválida: -$OPTARG" >&2
      exit 1
      ;;
  esac
done

#Aqui eu faço um loop e altero os arquivos, removendo o -march=() por -march=native
for i in "${arquivos[@]}"
do
echo "Patch no arquivo:"$i
sed -e 's/-march=\([A-Z0-9a-z]\+\)/-march=native -Ofast/g'  $i > "$i.file_changed"
mv "$i.file_changed" $i
done


################

#time sudo CONCURRENCY_LEVEL=2 make-kpkg --initrd kernel_image kernel_headers modules_image

time sudo CONCURRENCY_LEVEL=$CL make-kpkg --initrd kernel_image kernel_headers modules_image


cd /usr/src
sudo dpkg -i linux-image-$patchkernel-$ckk\_$patchkernel-$ckk-10.00.Custom_$arqt.deb linux-headers-$patchkernel-$ckk\_$patchkernel-$ckk-10.00.Custom_$arqt.deb

sleep 3

cd /lib/modules
sudo mkinitramfs -o /boot/initrd.img-$patchkernel-$ckk $patchkernel-$ckk
sudo update-grub

sleep 5
echo 'tudo belezinha'

execute o script como root ou com o sudo

OBS: certa hora vai abrir o menuconfig e na parte de processador escolha a sua arquitetura exata

qualquer coisa é só falar, valeu
« Última modificação: 16 de Abril de 2012, 15:57 por 4d4c47 » Registrado
Stivekx
Usuário Ubuntu
*
Deslogado Deslogado

Mensagens: 126


Ver Perfil
« Responder #4135 em: 16 de Abril de 2012, 15:12 »

ótimo script @4d4c47, quando der eu testo certinho ele!!!

Ahh, obs, na parte onde tá usando o meu script, tem que adicionar o MakeFile junto pra ele colocar ele no HOSTCFLAGS e no HOSTCXXFLAGS.
Se eu não me engano, o meu script alterava uma parte no MakeFile e adicionava o retorno das flags que o cc permitia, se editar lá deve dar certinho tmb

E no texto eu digitei echo "Path no arquivo:"$i, é echo "Patch no arquivo:"$i
hehe

Registrado
4d4c47
Visitante
« Responder #4136 em: 16 de Abril de 2012, 15:59 »

ótimo script @4d4c47, quando der eu testo certinho ele!!!

Ahh, obs, na parte onde tá usando o meu script, tem que adicionar o MakeFile junto pra ele colocar ele no HOSTCFLAGS e no HOSTCXXFLAGS.
Se eu não me engano, o meu script alterava uma parte no MakeFile e adicionava o retorno das flags que o cc permitia, se editar lá deve dar certinho tmb

E no texto eu digitei echo "Path no arquivo:"$i, é echo "Patch no arquivo:"$i
hehe



corrigido e operante,

tô fazendo um teste dele aqui em outro pc, e até agora sem problema nenhum, vamos ver o que que vai dá, valeu

Registrado
Stivekx
Usuário Ubuntu
*
Deslogado Deslogado

Mensagens: 126


Ver Perfil
« Responder #4137 em: 16 de Abril de 2012, 18:05 »

Usando o localmodconfig, o kernel não carrega o meu hd aparentemente o ou driver dele ou até a partição...

O erro é similar a esse:
Código:
Gave up wating for root device. Commom problems:
Boot args (cat /proc/cmdline)
Check rootdelay = (did the system wait long enough?)
Check root = (did the system wait for the rigth device?)
Missing modules (cat / proc/modules; ls/dev)

ALERT:  /dev/disk/by-uuid/<número do dispositivo> does not exist. Dropping to a shell!

BusyBox v1.17.1 (Debian 1:1.17.1-10) built-in shell (ash)
Enter 'help' for a list of built-in commands.

Já tentei passar root=/dev/sda1 e root=UUID=xxx no parametro, mas em nenhum deles deu certo :s

Com identificar se eu esqueci alguma opção e ativá-la?


Edit:
A opção tava desativada *dumb*
  • SCSI disk support
« Última modificação: 16 de Abril de 2012, 18:43 por Stivekx » Registrado
Metalbobolic
Usuário Ubuntu
*
Deslogado Deslogado

Mensagens: 216


Ver Perfil WWW
« Responder #4138 em: 16 de Abril de 2012, 20:18 »

fiz esse script aqui de compilaçao do kernel 3.3.2 com o 3.3.0-ck1 e tudo compilado em -march=native + -Ofast

obs: antes de tudo, você só vai ter o trabalho de copiar o seu .config para a pasta /boot com o nome de config-atual e de comentar o driver RTS5139 no arquivo /boot/config-atual:

OBS= tenha certeza que tem pelo menos 15 GB livre no hd

Código:
#!/bin/bash

# script PARA USUARIOS DO UBUNTU 11.10 baixa e compila kernel tudo automaticamente CRIADO PELOS USUÁRIOS DO FORUM UBUNTU BR:
# http://ubuntuforum-br.org/index.php/topic,29799.3960.html

# totalmente GPL-3

# vc vai ter o trabalho so de mudar a versão do kernel e a versão do patch do koliva

# salve em /bin com o nome scriptkernel e de permissão de execução
# sudo chmod +x /bin/scriptkernel

# pra começar a compilação:
# time sudo scriptkernel

################################################################################################



############################################
#vc só vai ter o trabalho de editar aqui:

#versão do kernel a ser compilado
kernel=3.3

#path de atualização
patchkernel=3.3.2


#patch ck
patchck=3.3-ck1

#sufixo
ckk=ck1


#.config antigo
kernelantigo=atual

############################################

# não precisa mexer em mais nada aqui

##################################
#arquitetura: amd64 ou i386
arqt=$(dpkg --print-architecture)


#CL=CONCURRENCY_LEVEL do processador
CL=$(grep -c processor /proc/cpuinfo)
##################################

sudo apt-get update
sudo apt-get install kernel-package gcc-4.6 libncurses5 libncurses5-dev build-essential -y


cd /usr/src
wget -c http://www.kernel.org/pub/linux/kernel/v3.x/linux-$kernel.tar.bz2


sudo tar -jxpvf /usr/src/linux-$kernel.tar.bz2
sudo mv /usr/src/linux-$kernel /usr/src/linux-$patchkernel-$ckk


wget -c http://www.kernel.org/pub/linux/kernel/v3.x/patch-$patchkernel.bz2
wget -c http://ck.kolivas.org/patches/3.0/$kernel/$patchck/patch-$patchck.bz2

#ubuntu patch
wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.3.2-precise/0001-base-packaging.patch
wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.3.2-precise/0002-debian-changelog.patch
wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.3.2-precise/0003-default-configs.patch



sudo bunzip2 /usr/src/patch-$patchkernel.bz2
sudo bunzip2 /usr/src/patch-$patchck.bz2


cd /usr/src/linux-$patchkernel-$ckk

sudo patch -p1 < /usr/src/patch-$patchkernel
sudo patch -p1 < /usr/src/patch-$patchck
sudo patch -p1 < /usr/src/0001-base-packaging.patch
sudo patch -p1 < /usr/src/0002-debian-changelog.patch
sudo patch -p1 < /usr/src/0003-default-configs.patch



sudo cp /boot/config-$kernelantigo /usr/src/linux-$patchkernel-$ckk/.config

#sudo gedit Makefile  

sleep 3

sudo make menuconfig

############ script do grande Stivekx #######################
#!/bin/bash

#Script para automatizar a mudança das flags na hora de compilar o kernel.
#Mais informações sobre como compilar o kernel para seu processador:
#http://ubuntuforum-br.org/index.php/topic,81718.0.html

#Modo de usar:
#Após baixar o kernel, descompactar, criar um link simbólico para ele no /usr/src/linux:
# cd /usr/src/linux
# sudo su
# chmod +x script.sh
# ./script.sh
#O script deve ser executado como root. Recomendo que use sudo su - e rode o script ao invés de sudo sh script.sh


#Script criado por André Steinn

#Aqui é a lista de arquivos que ele vai dar replace no -march= por -march=native. Você pode mudar essa lista de arquivos passando a lista pela opção a e separados pro virgula
#e.g.: ./script.sh -a arch/x86/boot/compressed/Makefile,arch/x86/boot/Makefile,arquivo1,arquivo2,arquivo3

arquivos=( "arch/x86/boot/compressed/Makefile" "arch/x86/boot/Makefile" "arch/x86/kernel/acpi/realmode/Makefile" "arch/x86/Kconfig.cpu" "arch/x86/Makefile" "arch/x86/Makefile_32.cpu")

#Aqui eu verifico se a pessoa passou algum argumento na hora de executar o script
while getopts ":a:c" opt; do
  case $opt in
    a)
      echo "Você setou uma lista de arquivos personalizada: $OPTARG" >&2
IFS=',' read -ra arquivos <<< "$OPTARG"
      ;;
    \?)
      echo "Opção inválida: -$OPTARG" >&2
      exit 1
      ;;
  esac
done

#Aqui eu faço um loop e altero os arquivos, removendo o -march=() por -march=native
for i in "${arquivos[@]}"
do
echo "Patch no arquivo:"$i
sed -e 's/-march=\([A-Z0-9a-z]\+\)/-march=native -Ofast/g'  $i > "$i.file_changed"
mv "$i.file_changed" $i
done


################

#time sudo CONCURRENCY_LEVEL=2 make-kpkg --initrd kernel_image kernel_headers modules_image

time sudo CONCURRENCY_LEVEL=$CL make-kpkg --initrd kernel_image kernel_headers modules_image


cd /usr/src
sudo dpkg -i linux-image-$patchkernel-$ckk\_$patchkernel-$ckk-10.00.Custom_$arqt.deb linux-headers-$patchkernel-$ckk\_$patchkernel-$ckk-10.00.Custom_$arqt.deb

sleep 3

cd /lib/modules
sudo mkinitramfs -o /boot/initrd.img-$patchkernel-$ckk $patchkernel-$ckk
sudo update-grub

sleep 5
echo 'tudo belezinha'

execute o script como root ou com o sudo

OBS: certa hora vai abrir o menuconfig e na parte de processador escolha a sua arquitetura exata

qualquer coisa é só falar, valeu


Por que tanto espaço assim?

Vou perguntar, como aplica um script, sou velho no uso do linux..agora "malinar" ele assim a fundo..é rescente..tenha paciência comigo..hehehe

valeus brother
Registrado
4d4c47
Visitante
« Responder #4139 em: 16 de Abril de 2012, 22:09 »

fiz esse script aqui de compilaçao do kernel 3.3.2 com o 3.3.0-ck1 e tudo compilado em -march=native + -Ofast

obs: antes de tudo, você só vai ter o trabalho de copiar o seu .config para a pasta /boot com o nome de config-atual e de comentar o driver RTS5139 no arquivo /boot/config-atual:

OBS= tenha certeza que tem pelo menos 15 GB livre no hd

Código:
#!/bin/bash

# script PARA USUARIOS DO UBUNTU 11.10 baixa e compila kernel tudo automaticamente CRIADO PELOS USUÁRIOS DO FORUM UBUNTU BR:
# http://ubuntuforum-br.org/index.php/topic,29799.3960.html

# totalmente GPL-3

# vc vai ter o trabalho so de mudar a versão do kernel e a versão do patch do koliva

# salve em /bin com o nome scriptkernel e de permissão de execução
# sudo chmod +x /bin/scriptkernel

# pra começar a compilação:
# time sudo scriptkernel

################################################################################################



############################################
#vc só vai ter o trabalho de editar aqui:

#versão do kernel a ser compilado
kernel=3.3

#path de atualização
patchkernel=3.3.2


#patch ck
patchck=3.3-ck1

#sufixo
ckk=ck1


#.config antigo
kernelantigo=atual

############################################

# não precisa mexer em mais nada aqui

##################################
#arquitetura: amd64 ou i386
arqt=$(dpkg --print-architecture)


#CL=CONCURRENCY_LEVEL do processador
CL=$(grep -c processor /proc/cpuinfo)
##################################

sudo apt-get update
sudo apt-get install kernel-package gcc-4.6 libncurses5 libncurses5-dev build-essential -y


cd /usr/src
wget -c http://www.kernel.org/pub/linux/kernel/v3.x/linux-$kernel.tar.bz2


sudo tar -jxpvf /usr/src/linux-$kernel.tar.bz2
sudo mv /usr/src/linux-$kernel /usr/src/linux-$patchkernel-$ckk


wget -c http://www.kernel.org/pub/linux/kernel/v3.x/patch-$patchkernel.bz2
wget -c http://ck.kolivas.org/patches/3.0/$kernel/$patchck/patch-$patchck.bz2

#ubuntu patch
wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.3.2-precise/0001-base-packaging.patch
wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.3.2-precise/0002-debian-changelog.patch
wget -c http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.3.2-precise/0003-default-configs.patch



sudo bunzip2 /usr/src/patch-$patchkernel.bz2
sudo bunzip2 /usr/src/patch-$patchck.bz2


cd /usr/src/linux-$patchkernel-$ckk

sudo patch -p1 < /usr/src/patch-$patchkernel
sudo patch -p1 < /usr/src/patch-$patchck
sudo patch -p1 < /usr/src/0001-base-packaging.patch
sudo patch -p1 < /usr/src/0002-debian-changelog.patch
sudo patch -p1 < /usr/src/0003-default-configs.patch



sudo cp /boot/config-$kernelantigo /usr/src/linux-$patchkernel-$ckk/.config

#sudo gedit Makefile  

sleep 3

sudo make menuconfig

############ script do grande Stivekx #######################
#!/bin/bash

#Script para automatizar a mudança das flags na hora de compilar o kernel.
#Mais informações sobre como compilar o kernel para seu processador:
#http://ubuntuforum-br.org/index.php/topic,81718.0.html

#Modo de usar:
#Após baixar o kernel, descompactar, criar um link simbólico para ele no /usr/src/linux:
# cd /usr/src/linux
# sudo su
# chmod +x script.sh
# ./script.sh
#O script deve ser executado como root. Recomendo que use sudo su - e rode o script ao invés de sudo sh script.sh


#Script criado por André Steinn

#Aqui é a lista de arquivos que ele vai dar replace no -march= por -march=native. Você pode mudar essa lista de arquivos passando a lista pela opção a e separados pro virgula
#e.g.: ./script.sh -a arch/x86/boot/compressed/Makefile,arch/x86/boot/Makefile,arquivo1,arquivo2,arquivo3

arquivos=( "arch/x86/boot/compressed/Makefile" "arch/x86/boot/Makefile" "arch/x86/kernel/acpi/realmode/Makefile" "arch/x86/Kconfig.cpu" "arch/x86/Makefile" "arch/x86/Makefile_32.cpu")

#Aqui eu verifico se a pessoa passou algum argumento na hora de executar o script
while getopts ":a:c" opt; do
  case $opt in
    a)
      echo "Você setou uma lista de arquivos personalizada: $OPTARG" >&2
IFS=',' read -ra arquivos <<< "$OPTARG"
      ;;
    \?)
      echo "Opção inválida: -$OPTARG" >&2
      exit 1
      ;;
  esac
done

#Aqui eu faço um loop e altero os arquivos, removendo o -march=() por -march=native
for i in "${arquivos[@]}"
do
echo "Patch no arquivo:"$i
sed -e 's/-march=\([A-Z0-9a-z]\+\)/-march=native -Ofast/g'  $i > "$i.file_changed"
mv "$i.file_changed" $i
done


################

#time sudo CONCURRENCY_LEVEL=2 make-kpkg --initrd kernel_image kernel_headers modules_image

time sudo CONCURRENCY_LEVEL=$CL make-kpkg --initrd kernel_image kernel_headers modules_image


cd /usr/src
sudo dpkg -i linux-image-$patchkernel-$ckk\_$patchkernel-$ckk-10.00.Custom_$arqt.deb linux-headers-$patchkernel-$ckk\_$patchkernel-$ckk-10.00.Custom_$arqt.deb

sleep 3

cd /lib/modules
sudo mkinitramfs -o /boot/initrd.img-$patchkernel-$ckk $patchkernel-$ckk
sudo update-grub

sleep 5
echo 'tudo belezinha'

execute o script como root ou com o sudo

OBS: certa hora vai abrir o menuconfig e na parte de processador escolha a sua arquitetura exata

qualquer coisa é só falar, valeu


Por que tanto espaço assim?

Vou perguntar, como aplica um script, sou velho no uso do linux..agora "malinar" ele assim a fundo..é rescente..tenha paciência comigo..hehehe

valeus brother

bicho,
depois de compilado o kernel a pasta /usr/src/linux-3.3.2-ck ficou aqui com 12 GB, só ela, mas depende muito também do que vc vai adicionar de modulo, no  meu caso vai tudo na tora, incluo todos os modulos possiveis, mas  vc pode selecionar o que vai usar e o que não vai usar, sendo assim o tamanho da pasta não deve passar de 5 GB

pra aplicar o srcipt, salve ele na pasta /usr/src e executa isso :

# chmod +x scriptcompilarkernel

pra executar ele faz isso:

$ time sudo ./scriptcompilarkernel


valeu.




« Última modificação: 16 de Abril de 2012, 22:12 por 4d4c47 » Registrado
Páginas: 1 ... 274 275 [276] 277 278 ... 282   Ir para o topo
  Imprimir  
 
Ir para:  

Powered by MySQL Powered by PHP Tema desenvolvido por FaBMak e n3t0
Powered by SMF 1.1.18 | SMF © 2006-2009, Simple Machines
© 2013 Canonical Ltd. Ubuntu e Canonical são marcas registradas da Canonical Ltd.
XHTML 1.0 válido! CSS válido!