Stivekx
Usuário Ubuntu
Deslogado
Mensagens: 126
|
 |
« Responder #4155 em: 18 de Abril de 2012, 21:25 » |
|
for i in "${arquivos
}" Ele comeu um bags que tinha ali, tinha um [ @ ] ele fez virar emoticon, rs Deve ter ferrado mais algo.
|
|
|
|
|
Registrado
|
|
|
|
|
Metalbobolic
|
 |
« Responder #4156 em: 18 de Abril de 2012, 21:29 » |
|
Tente gerar o arquivo de configuracao com make localmodconfig, esse driver, você pode nem precisar dele talvez  ---- 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 aqui vai uma nova versão do script com a correção desse problema: #!/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
######### ########## puxando o config antigo ##########
config_file=$(locate /boot/config-* | sort -r | head -1)
sudo cp $config_file /usr/src/linux-$patchkernel-$ckk
#sudo sed 's/CONFIG_RTS5139=m/#CONFIG_RTS5139/g' .config > cc && mv cc .config
####################################
#sudo gedit Makefile
sleep 3
sudo make menuconfig
sudo sed 's/CONFIG_RTS5139=m/#CONFIG_RTS5139/g' /usr/src/linux-$patchkernel-$ckk/.config > /usr/src/linux-$patchkernel-$ckk/cc && mv /usr/src/linux-$patchkernel-$ckk/cc /usr/src/linux-$patchkernel-$ckk/.config
############ 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/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'
faiz um teste novamete aé, valeu Esqueci de cita..uso o ubuntu 11.04, terá problema? Outra coisa...é pra 64bits, pis meu pc é 32 E deu erro HOSTCC scripts/kconfig/lxdialog/checklist.o HOSTCC scripts/kconfig/lxdialog/inputbox.o HOSTCC scripts/kconfig/lxdialog/menubox.o HOSTCC scripts/kconfig/lxdialog/textbox.o HOSTCC scripts/kconfig/lxdialog/util.o HOSTCC scripts/kconfig/lxdialog/yesno.o HOSTCC scripts/kconfig/mconf.o HOSTLD scripts/kconfig/mconf scripts/kconfig/mconf Kconfig *** End of the configuration. *** Execute 'make' to start the build or try 'make help'. ./scriptkernel.sh: 134: Syntax error: "(" unexpected
|
|
|
|
« Última modificação: 18 de Abril de 2012, 21:40 por Metalbobolic »
|
Registrado
|
|
|
|
|
4d4c47
Visitante
|
 |
« Responder #4157 em: 18 de Abril de 2012, 22:48 » |
|
Tente gerar o arquivo de configuracao com make localmodconfig, esse driver, você pode nem precisar dele talvez  ---- 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 aqui vai uma nova versão do script com a correção desse problema: #!/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
######### ########## puxando o config antigo ##########
config_file=$(locate /boot/config-* | sort -r | head -1)
sudo cp $config_file /usr/src/linux-$patchkernel-$ckk
#sudo sed 's/CONFIG_RTS5139=m/#CONFIG_RTS5139/g' .config > cc && mv cc .config
####################################
#sudo gedit Makefile
sleep 3
sudo make menuconfig
sudo sed 's/CONFIG_RTS5139=m/#CONFIG_RTS5139/g' /usr/src/linux-$patchkernel-$ckk/.config > /usr/src/linux-$patchkernel-$ckk/cc && mv /usr/src/linux-$patchkernel-$ckk/cc /usr/src/linux-$patchkernel-$ckk/.config
############ 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/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'
faiz um teste novamete aé, valeu Esqueci de cita..uso o ubuntu 11.04, terá problema? Outra coisa...é pra 64bits, pis meu pc é 32 E deu erro HOSTCC scripts/kconfig/lxdialog/checklist.o HOSTCC scripts/kconfig/lxdialog/inputbox.o HOSTCC scripts/kconfig/lxdialog/menubox.o HOSTCC scripts/kconfig/lxdialog/textbox.o HOSTCC scripts/kconfig/lxdialog/util.o HOSTCC scripts/kconfig/lxdialog/yesno.o HOSTCC scripts/kconfig/mconf.o HOSTLD scripts/kconfig/mconf scripts/kconfig/mconf Kconfig *** End of the configuration. *** Execute 'make' to start the build or try 'make help'. ./scriptkernel.sh: 134: Syntax error: "(" unexpected @Metalbobolic, fiz um teste aqui em um processador 32 bits e foi belezinha, tenta esse script aqui que acabei de testar: #!/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
######### ########## puxando o config antigo ##########
config_file=$(locate /boot/config-* | sort -r | head -1)
sudo cp $config_file /usr/src/linux-$patchkernel-$ckk
#sudo sed 's/CONFIG_RTS5139=m/#CONFIG_RTS5139/g' .config > cc && mv cc .config
####################################
#sudo gedit Makefile
sleep 3
sudo make menuconfig
sudo sed 's/CONFIG_RTS5139=m/#CONFIG_RTS5139/g' /usr/src/linux-$patchkernel-$ckk/.config > /usr/src/linux-$patchkernel-$ckk/cc && mv /usr/src/linux-$patchkernel-$ckk/cc /usr/src/linux-$patchkernel-$ckk/.config
############ 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'
ou então tenta executa-lo com a tela do gnome-terminal maximizada (ou via terminal puro mesmo) uma OBS aqui: na parte de processador coloca a seu processador exato aé, talvez isso resolve Sobre o ubuntu 11.04 32 bits, acho que não vai ter problema nenhum não, acabei de fazer um teste aqui no debian 6 32 bits e foi 100%, ele tem instrução pra lidar com 32 ou 64 bits automaticamente. valeu.
|
|
|
|
« Última modificação: 18 de Abril de 2012, 23:28 por 4d4c47 »
|
Registrado
|
|
|
|
|
Metalbobolic
|
 |
« Responder #4158 em: 18 de Abril de 2012, 23:55 » |
|
Fiz uma maluquice...
o script funcionou até a parte do menuconfig..quando sair deu erro...
Dai, entrei no diretório, e terminei de compilar da maneira tradicional make | make_modules_install ...
Vou reiniciar e amanha digo o que deu....valeus meu povo
|
|
|
|
|
Registrado
|
|
|
|
|
4d4c47
Visitante
|
 |
« Responder #4159 em: 19 de Abril de 2012, 03:10 » |
|
for i in "${arquivos
}" Ele comeu um bags que tinha ali, tinha um [ @ ] ele fez virar emoticon, rs Deve ter ferrado mais algo. @Stivekx, meu irmão, tenho que lhe dizer que vc está absolutamente correto, existe varios erros no codigo, acabei de corrigir todos e agora acho que funciona corretamente : #!/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.sh # # pra começar a compilação: # time sudo scriptkernel.sh # ################################################################################################
############################################ #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 patch -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
config_file=$(locate /boot/config-* | sort -r | head -1)
sudo cp $config_file /usr/src/linux-$patchkernel-$ckk
#########################
#sudo gedit Makefile
sleep 3
sudo make menuconfig
sudo sed 's/CONFIG_RTS5139=m/# CONFIG_RTS5139 is not set/g' /usr/src/linux-$patchkernel-$ckk/.config > /usr/src/linux-$patchkernel-$ckk/cc && mv /usr/src/linux-$patchkernel-$ckk/cc /usr/src/linux-$patchkernel-$ckk/.config
sleep 3
############ 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 "Path 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
################
sleep 3
#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'
descobri também que quando abrir a tela do MENUCONFIG, deve ser escolhido a sua arquitetura exata do processador, se não, as cflags são rejeitadas. pra quem ainda tem paciência e quiser testar, coloquei o codigo no sourceforge também, quanto mais gente olhando, mais bugs serão descobertos, https://sourceforge.net/projects/scriptkernel/valeu @Stivekx pela correção.
|
|
|
|
« Última modificação: 19 de Abril de 2012, 03:49 por 4d4c47 »
|
Registrado
|
|
|
|
Stivekx
Usuário Ubuntu
Deslogado
Mensagens: 126
|
 |
« Responder #4160 em: 19 de Abril de 2012, 11:40 » |
|
To fazendo edições no script agora! Vou fazer ele configurável...
Por enquanto ele: Le a versao do kernel que a pessoa digita Le a versao do patch do kernel Escolhe opcoes avancadas Escolhe se usa os patchs do ubuntu Escolhe se altera as cflags Escolhe se usa os patchs do kolivas Escolhe se usa o BFS Escolhe se usa 1000mhz Escolhe se usa o que reduz o dirty ratio #Mais opcoes em breve #Mais em breve
A se fazer: Ler um arquivo de configuracao e usar suas respectivas opções Fazer a função que verifica se o kernel escolhido existe Ver os patchs do con kolivas disponiveis para aquele kernel. Tem mais coisa, mas to na faculdade e tá acabando a aula, depois eu posto, rs
Vc nao prefere deixar o código no github? Melhor pra enviar patchs
|
|
|
|
|
Registrado
|
|
|
|
|
4d4c47
Visitante
|
 |
« Responder #4161 em: 19 de Abril de 2012, 14:11 » |
|
To fazendo edições no script agora! Vou fazer ele configurável...
Por enquanto ele: Le a versao do kernel que a pessoa digita Le a versao do patch do kernel Escolhe opcoes avancadas Escolhe se usa os patchs do ubuntu Escolhe se altera as cflags Escolhe se usa os patchs do kolivas Escolhe se usa o BFS Escolhe se usa 1000mhz Escolhe se usa o que reduz o dirty ratio #Mais opcoes em breve #Mais em breve
A se fazer: Ler um arquivo de configuracao e usar suas respectivas opções Fazer a função que verifica se o kernel escolhido existe Ver os patchs do con kolivas disponiveis para aquele kernel. Tem mais coisa, mas to na faculdade e tá acabando a aula, depois eu posto, rs
Vc nao prefere deixar o código no github? Melhor pra enviar patchs
@Stivekx , vai ficar massa demais bicho, Vc nao prefere deixar o código no github? Melhor pra enviar patchs
coloca vc mesmo ele lá, e passa o link aqui pra nois poder acompanhar a construção, vai ficar bom demais. outra coisa, acho que quanto menos opção pra escolher e deixa-lo mais automatico seria bem melhor, por exemplo: ALTA PEFORMANCE MEDIA PEFORMANCE BAIXA PEFORMANCE assim ficaria mais simples as escolhas, entede... o negocio seria mais ou menos executar ele e esquecer de se preocupar com mais nada valeu
|
|
|
|
« Última modificação: 19 de Abril de 2012, 15:15 por 4d4c47 »
|
Registrado
|
|
|
|
|
Metalbobolic
|
 |
« Responder #4162 em: 19 de Abril de 2012, 19:05 » |
|
Compilou o kernel...instalou o kernel...mais não iniciou..vou fazer do zero..com o make make modules_install make install
|
|
|
|
|
Registrado
|
|
|
|
|
4d4c47
Visitante
|
 |
« Responder #4163 em: 19 de Abril de 2012, 19:38 » |
|
Compilou o kernel...instalou o kernel...mais não iniciou..vou fazer do zero..com o make make modules_install make install
quanto de ram vc tem aé ? acredito que ele só funciona com pelo menos 2 GB ou até mais, o -Ofast puxa muita memoria. tenta tirar o -Ofast e recompila denovo, deve ir 100% agora antes disso não esqueça de deletar a pasta /usr/src/linux-3.3.2-ck1 (kernel que deu probelema) se não o script vai da erro
|
|
|
|
« Última modificação: 19 de Abril de 2012, 19:40 por 4d4c47 »
|
Registrado
|
|
|
|
Stivekx
Usuário Ubuntu
Deslogado
Mensagens: 126
|
 |
« Responder #4164 em: 19 de Abril de 2012, 19:57 » |
|
http://pastebin.com/mpdxYU4mTá ai o .sh quase pronto. To fazendo um trabalho de aula, não posso terminar hoje, fim de semana fico fora, então se quiserem... Ali em @todo tem a lista do que se deve fazer... Basicamente, o script lê todas as opções que precisa pra compilar o kernel depois na função confirmar, mostra os dados que você escolheu
|
|
|
|
|
Registrado
|
|
|
|
|
Metalbobolic
|
 |
« Responder #4165 em: 19 de Abril de 2012, 20:23 » |
|
Compilou o kernel...instalou o kernel...mais não iniciou..vou fazer do zero..com o make make modules_install make install
quanto de ram vc tem aé ? acredito que ele só funciona com pelo menos 2 GB ou até mais, o -Ofast puxa muita memoria. tenta tirar o -Ofast e recompila denovo, deve ir 100% agora antes disso não esqueça de deletar a pasta /usr/src/linux-3.3.2-ck1 (kernel que deu probelema) se não o script vai da erro Tenho 4GB de ram....
|
|
|
|
|
Registrado
|
|
|
|
|
4d4c47
Visitante
|
 |
« Responder #4166 em: 19 de Abril de 2012, 20:54 » |
|
http://pastebin.com/mpdxYU4mTá ai o .sh quase pronto. To fazendo um trabalho de aula, não posso terminar hoje, fim de semana fico fora, então se quiserem... Ali em @todo tem a lista do que se deve fazer... Basicamente, o script lê todas as opções que precisa pra compilar o kernel depois na função confirmar, mostra os dados que você escolheu @Stivekx, ficou massa demais bicho, será que já não funciona ? depois vou fazer um teste fino nele, valeu @Metalbobolic, se der erro denovo aé tenta esse script aqui: http://pastebin.com/mpdxYU4mseja o primeiro a testa-lo e manda os bugs aqui no forum mesmo, valeu
|
|
|
|
|
Registrado
|
|
|
|
|
Metalbobolic
|
 |
« Responder #4167 em: 19 de Abril de 2012, 21:13 » |
|
http://pastebin.com/mpdxYU4mTá ai o .sh quase pronto. To fazendo um trabalho de aula, não posso terminar hoje, fim de semana fico fora, então se quiserem... Ali em @todo tem a lista do que se deve fazer... Basicamente, o script lê todas as opções que precisa pra compilar o kernel depois na função confirmar, mostra os dados que você escolheu @Stivekx, ficou massa demais bicho, será que já não funciona ? depois vou fazer um teste fino nele, valeu @Metalbobolic, se der erro denovo aé tenta esse script aqui: http://pastebin.com/mpdxYU4mseja o primeiro a testa-lo e manda os bugs aqui no forum mesmo, valeu Pode deixar
|
|
|
|
|
Registrado
|
|
|
|
|
4d4c47
Visitante
|
 |
« Responder #4168 em: 19 de Abril de 2012, 21:21 » |
|
http://pastebin.com/mpdxYU4mTá ai o .sh quase pronto. To fazendo um trabalho de aula, não posso terminar hoje, fim de semana fico fora, então se quiserem... Ali em @todo tem a lista do que se deve fazer... Basicamente, o script lê todas as opções que precisa pra compilar o kernel depois na função confirmar, mostra os dados que você escolheu @Stivekx, ficou massa demais bicho, será que já não funciona ? depois vou fazer um teste fino nele, valeu @Metalbobolic, se der erro denovo aé tenta esse script aqui: http://pastebin.com/mpdxYU4mseja o primeiro a testa-lo e manda os bugs aqui no forum mesmo, valeu Pode deixar fiz um teste rápido aqui no script do @Stiveky e vi que ainda não está pronto mesmo não, ele pausa quando vc deseja prosseguir P, vamos esperar termina-lo e vai poder ser usado normalmente, se souber programar em bash pode até melhora-lo.
|
|
|
|
« Última modificação: 19 de Abril de 2012, 21:43 por 4d4c47 »
|
Registrado
|
|
|
|
Stivekx
Usuário Ubuntu
Deslogado
Mensagens: 126
|
 |
« Responder #4169 em: 19 de Abril de 2012, 22:59 » |
|
Nao, essa parte que falta implementar ;p Amanhã na aula eu faço ou só semana que vem daí
Importante atualmente nele é, você inserir sem erros a versão do kernel e configurar tudo certinho, depois na tela quando disser as informacoes aparecer tudo certino... ;p
|
|
|
|
|
Registrado
|
|
|
|
|