Blog sobre seguridad informática, privacidad, anonimato, hacking ético, programación y sistemas operativos en general.

martes, 18 de octubre de 2016

¿Como optimizar el rendimiento del sistema GNU/Linux de manera avanzada?


Optimizando el rendimiento del sistema.

 Cuando el sistema de ficheros raíz utilizado en el dispositivo es una tarjeta de memoria flash o de memoria flash como a menudo será el caso, la velocidad y el rendimiento se pueden ver afectados debido al menudo acceso de escritura al sistema de archivos raíz. Por tanto, es beneficioso para el rendimiento general del sistema reducir la escritura innecesaria mediante el uso de métodos tales como los sistemas de archivos de disco RAM, tmpfs, y la reducción de la actividad de registro del sistema.
También es posible modificar los dispositivos del kernel y hardware para mejorar el rendimiento.

Reducir la actividad de registro del sistema.
En una instalacion por defecto, el registro del sistema se configura a menudo totalmente adecuado para un servidor o un sistema multi-usuario. Sin embargo, en un sistema de un solo usuario la escritura constante de muchos archivos de registro del sistema podría reducir el rendimiento del sistema interactivo, y la reducción de la actividad de registro será beneficioso para el rendimiento, así como la vida útil de la memoria flash.
En una instalación de Debian, el registrador del sistema por defecto es rsyslog, y el archivo de configuración es /etc/rsyslog.conf. En la sección de reglas, los siguientes registros a menudo se activan de forma predeterminada:
auth, authpriv. * /var/log/auth.log
*. *; auth, authpriv.none -/var/log/syslog
cron. * /var/log/cron.log
daemon.* - /var/log/daemon.log
kern.* -/var/log/kern.log
lpr.* - /var/log/lpr.log
mail.* -/var /log/mail.log
user.* -/var/log/user.log

También puede haber reglas para -/var/log/debug y -/var/log/messages, y |/dev/xconsole.

Observe que los mensajes del kernel se registran en tanto kern.log y syslog, además de estar disponible desde el comando dmesg en la memoria del kernel. En un sistema de único usuario, es posible desactivar la mayoría o la totalidad de estos registros mediante la colocación de un carácter "#" al inicio de las líneas correspondientes. Los registros se pueden volver a activar si es necesario depurar los problemas del sistema.
Optimización de directorios de caché
Las aplicaciones como navegadores y gestores de ventanas que utilizan un caché de disco puede ajustarse a la norma del Directorio XDG Base. En ese caso, la variable de entorno XDG_CACHE_HOME define el directorio donde se almacenan los archivos de caché. Al establecer esta variable en una ubicación de disco RAM, es posible acelerar considerablemente el rendimiento de ciertos navegadores que de otra parada con la escritura pesada a la caché de disco en la memoria flash. Por ejemplo, en una instalación de Debian Wheezy con LXDE, puede haber un archivo de configuración llamado /etc/alternatives/x-session-manager. Mediante la adición de la línea
export XDG_CACHE_HOME = "/dev/shm/.cache"
al inicio de este archivo, los programas que se ejecutan en X conforme a la norma va a utilizar el disco RAM en /dev/shm para almacenar archivos de caché. Un popular navegador de configuraciones de peso ligero que se beneficia de esto es Midori. El disco de tamaño de caché predeterminado en Midori es de 100 MB, que puede bajar esto si usted no tiene la cantidad de memoria disponible del sistema, pero puede configurar Midori para limpiar la caché al salir y así devolverle la memoria al sistema en Herramientas > Borrar Los datos privados.
En los sistemas de archivos raiz más recientes de distribuciones basadas en Debian, el dispositivo tmpfs se llama /run/shm (que debe estar presente en /etc/fstab), y x-session-manager es un archivo binario, pero puede agregar la misma línea de un nuevo archivo en /etc/profile.d/, por ejemplo /etc/profile.d/velocidad.sh, que se ejecutará en el inicio de cada inicio de sesión. El archivo debe tener este aspecto:
#!/bin/bash
export XDG_CACHE_HOME = "/run/shm/.cache"

usando tmpfs
Para montar /tmp y /var/tmp (los directorios de archivos temporales utilizados por los programas) en un disco de memoria, se puede añadir las siguientes líneas a /etc/fstab:
tmpfs     /tmp            tmpfs     defaults 0 0
tmpfs     /var /tmp     tmpfs     defaults 0 0
También debe haber una línea para habilitar /run/shm como tmpfs:
tmpfs     /run/shm/    tmpfs      defaults 0 0
Consulte a más fuentes de documentación general para su distribución para más detalles. 

Volver a compilar el kernel

Por defecto, el kernel se puede configurar con un gran conjunto de drivers para soportar un gran número de configuraciones. Es posible desactivar los controladores que no necesitas para reducir el tamaño del núcleo. El núcleo también puede configurarse con una amplia gama de opciones de depuración. La reducción de las opciones de depuración se reducirá el tamaño del kernel y mejorará el rendimiento un poco, aunque puede hacer que los problemas de depuración de hardware o software sean más difícil.


Optimización de la velocidad de arranque
Todos los pasos anteriores pueden contribuir a reducir el tiempo de arranque. Pequeñas cargas más rápidas del núcleo, de la memoria flash y descomprir más rápido. Reduciendo el log y el almacenamiento en caché optimizado provoca un menor número de cargas en el proceso de arranque. Configurando por defecto el gobernador "performance" de la CPU y la memoria de alta velocidad como sea posible acorta el tiempo requerido para las tareas intensivas de la CPU durante el arranque. Sin embargo, la selección de su init también es importante y tiene impacto muy grande con todo lo demás.
sysvinit es antiguo y lento . Si su distribución lo usa por defecto cambiate a upstart o systemd.
  
Optimizando la frecuencia de la CPU.

Por defecto la BIOS y el sistema operativo toman los parametros de configuracion por defecto del procesador, si ajustamos estos parametros de la manera adecuada podremos notar una gran diferencia en la velocidad de ejecucion. El uso de CPU "ondemand" esta roto desde su creacion y afecta el rendimiendo del sistema en general.
Fuente: https://linux-sunxi.org/Optimizing_system_performance


Usando OptiSHL.



OptiSHl es un script de codigo abierto, disponible en github, que se encarga de optimizar tu sistema operativo de manera avanzada, modificando parametros directos de tu procesador, tus puntos de montaje, parametros de memoria SWAP y otros componentes. El script esta hecho de tal manera que no cause problemas en tu computadora y que sea 100% funcional. El script puede estar sujeto a fallos, aunque ya ha sido testeado en 4 distribuciones (ArchLinux, Debian, Ubuntu y RedHat) y ha funcionado de manera satisfactoria, por lo que debería funcionar de la misma manera en las demas distribuciones. Este script necesita ser ejecutado con privilegios de usuario ROOT. 

Uso:

1) git clone https://github.com/SecHackLabs/optishl.git
2) cd optishl
3) chmod +x optishl
4) sudo ./optishl

## Si desea que estas optimizaciones se hagán automaticamente al inicio del sistema, ejecute los siguientes comandos ##

1) sudo mv optishl /usr/bin/optishl
2) echo -e 'bash /usr/bin/optishl' | tee -a /etc/rc.local

Cualquier bug, sugerencia o comentario comunicarlo via Email y/o XMPP a la dirección tolosaeduard@cock.li o mediante IRC en:

Server irc.stormbit.net | Canal #SHL | Puerto 6697 (SSL)

Si te ha gustado este post y te sirvió regálanos un Like en facebook y síguenos en Twitter =D

3 comentarios:

  1. ./optishl: línea 63: echo: error de escritura: Invalid argument

    ResponderBorrar
    Respuestas
    1. Hola, Roberto. Estos fallos fueron solucionados y además se añadieron más carácteristicas con estas dos actualizaciones: "Push 1" y "Push 2".

      Borrar