sábado, 20 de noviembre de 2010

Alternativa al milagroso parche del kernel de Linux


Seguro que habréis leído mucho estos últimos días sobre el parche de 200 lineas que mejora extraordinariamente el rendimiento, pues aquí tenemos una alternativa que hace exactamente lo mismo.

Edita el archivo /etc/rc.local:
sudo gedit /etc/rc.local
Y añade encima de la linea exit 0:
mkdir -p /dev/cgroup/cpu
mount -t cgroup cgroup /dev/cgroup/cpu -o cpu
mkdir -m 0777 /dev/cgroup/cpu/user
echo "/usr/local/sbin/cgroup_clean" > /dev/cgroup/cpu/release_agent
Haz el archivo anterior ejecutable:
sudo chmod +x /etc/rc.local
Edita tu ~/.bashrc (esto lo tendrás que hacer con todo los usuarios que tengas):
gedit  ~/.bashrc
Y añade al final:
if [ "$PS1" ] ; then
mkdir -p -m 0700 /dev/cgroup/cpu/user/$$ > /dev/null 2>&1
echo $$ > /dev/cgroup/cpu/user/$$/tasks
echo "1" > /dev/cgroup/cpu/user/$$/notify_on_release
fi
Edita el archivo /usr/local/sbin/cgroup_clean:
sudo gedit /usr/local/sbin/cgroup_clean
Pega esto:
#!/bin/sh
rmdir /dev/cgroup/cpu/$*
Y haz el archivo ejecutable:
sudo chmod +x /usr/local/sbin/cgroup_clean
Reinicia para que los cambios tengan efecto.

Vía WebUpd8
Eduardo Parra Estudiante de Ingeniería Infmática


9 comentarios :

Domingopv dijo...

Realizados todos los pasos ,al abrir el terminal me sale siempre lo siguiente:
mkdir: no se puede crear el directorio «/dev/cgroup/cpu/user/1844»: No existe el archivo o directorio
bash: /dev/cgroup/cpu/user/1844/tasks: No existe el archivo o directorio
bash: /dev/cgroup/cpu/user/1844/notify_on_release: No existe el archivo o directorio
domingopv@pc1:~$
Todo funciona bien incluso el terminal,¿realice algo mal?

Soker dijo...

Te sale eso al abrir el terminal?
As realizado todos los pasos correctamente? lo que hay en cursiva no hay que meterlo en el terminal, sino añadirlo a los ficheros que digo

Luis Jaiime dijo...

yo ya lo hice, no me salio ningun tipo de error, reinicie y no veo ninguna diferencia :/
como puedo saber si hice todo bien?

Realidad Ensordecedora dijo...

mi pregunta es otra, ya que hice la modificacion sobre /etc/rc.local pero, en las instrucciones de webup8 y las de aca, dice Above the "exit 0"

pero eso significa poner el codigo antes de "exit 0" dejando este al final? o simplemente borrando el "exit 0" y solo dejando el codigo del tutorial?

Soker dijo...

Pues comprueba si estan los archivos que tienes que editar como digo aqui

Realidad Ensordecedora dijo...

mi pregunta es otra, ya que hice la modificacion sobre /etc/rc.local pero, en las instrucciones de webup8 y las de aca, dice Above the "exit 0"

pero eso significa poner el codigo antes de "exit 0" dejando este al final? o simplemente borrando el "exit 0" y solo dejando el codigo del tutorial?

Soker dijo...

Hay que dejar exit 0 al final y escribir encima el codigo.

Luis Jaiime dijo...

yes, ya lo hice, volvi a poner los permisos de ejecucion, bueno la verdad es q no entiendo donde puedo notar la diferencia, simplemente la compu sera mas rapida?

Soker dijo...

Notaras la diferencia por ejemplo al ver videos en alta definicion o con procesos que consuman mucho, ya que el procesador no estará sometido a tanta carga