domingo, 16 de junio de 2019

Mega Tutorial para hacer que un sistema GNU/Linux funcione mas rápido


Mega Tutorial para hacer que un sistema GNU/Linux funcione mas rápido



Todos los puntos que vamos a tratar en esté Mega Tutorial están basados en la experiencia personal en configuración, realizados mediante ensayo y error en varios sistemas GNU/Linux, dando como resultado un aumento de rendimiento y una mejor eficiencia de los recursos del sistema para aplicaciones, en vez de que sean consumidos por el propio entorno de escritorio.

En pocas palabras digamos que son los resultados obtenidos en las pruebas para la realización de la Distribución Trasuntu, pensada para equipos de bajos recursos, y no tan bajos, ideal para equipos antiguos. Una distro amable y equilibrada, para todos los usuarios.


Trasuntu
https://trasuntu.blogspot.com/2017/09/trasuntu.html



Cuando necesitemos escribir algún comando lo haremos desde la Terminal

Los comandos que vamos a introducir en la Terminal están en color rojo, lo aconsejable es copiar y pegar el comando en la Terminal para no obtener errores.

Después de haber puesto los comandos que hallamos usado, saldremos de Terminal con el comando:
exit





1.- Tener todos los repositorios activados


Activar repositorios.
sudo sed 's/# deb/deb/' -i /etc/apt/sources.list

sudo sed 's/# deb/deb/' -i /etc/apt/sources.list



Actualizamos la biblioteca de paquetes.
sudo apt update

Actualizamos el sistema.
sudo apt upgrade -y





2.- Acelerar los menús y submenús, Eventos de sonidos, Animaciones más rápidas en GTK+ 2 y GTK+ 3



Vamos a modificar algunos parámetros de GTK+

gtk-menu-popup-delay
Tiempo mínimo que el puntero debe permanecer sobre un elemento del menú antes de que aparezca el submenú.
Valor por defecto: 225

gtk-menu-popdown-delay
El tiempo antes de ocultar un submenú cuando el puntero se está moviendo hacia el submenú.
Valor por defecto: 1000

gtk-menu-bar-popup-delay
Retraso antes de que aparezcan los submenús de una barra de menú.
Valor por defecto: 0

gtk-enable-animations
Para habilitar animaciones en todo el conjunto de herramientas.
Valor por defecto: TRUE

gtk-timeout-expand
Ampliar el valor de los tiempos de espera, cuando un widget está expandiendo una nueva región.
Valor por defecto: 500

gtk-timeout-initial
Repita el valor para los tiempos de espera, cuando se presiona el botón.
Valor por defecto: 50

gtk-timeout-repeat
Repita el valor para los tiempos de espera, cuando se presiona el botón.
Valor por defecto: 20

gtk-enable-event-sounds
Para reproducir cualquier evento de sonido en absoluto.
Valor por defecto: TRUE

gtk-enable-input-feedback-sounds
Si, reproducir sonidos de eventos como retroalimentación a la entrada del usuario.
Valor por defecto: TRUE

gtk-xft-antialias
Para fuentes antialias Xft; 0 = no, 1 = sí, -1 = predeterminado.
Mejora la calidad gráfica al disminuir los dientes de sierra generando un suavizado
Valor por defecto: -1






2.1- Modificar parámetros de GTK+ 2


Ponemos los siguientes comandos en Terminal copiando y pegando en bloque, una vez copiados pulsamos la tecla Intro del teclado, estos parámetros son solo para el usuario que ha iniciado la sesión:

echo gtk-menu-popup-delay = 0 >> ~/.gtkrc-2.0
echo gtk-menu-popdown-delay = 0 >> ~/.gtkrc-2.0
echo gtk-menu-bar-popup-delay = 0 >> ~/.gtkrc-2.0
echo gtk-enable-animations = 0 >> ~/.gtkrc-2.0
echo gtk-timeout-expand = 0 >> ~/.gtkrc-2.0
echo gtk-timeout-initial = 0 >> ~/.gtkrc-2.0
echo gtk-timeout-repeat = 0 >> ~/.gtkrc-2.0
echo gtk-enable-event-sounds=1 >> ~/.gtkrc-2.0
echo gtk-enable-input-feedback-sounds=1 >> ~/.gtkrc-2.0
echo gtk-xft-antialias=1 >> ~/.gtkrc-2.0



gtkrc-2.0

gtkrc-2.0






2.2.- Modificar parámetros de GTK+ 3


Ponemos los siguientes comandos en Terminal copiando y pegando en bloque, una vez copiados pulsamos la tecla Intro del teclado, estos parámetros son solo para el usuario que ha iniciado la sesión:

echo gtk-menu-popup-delay = 0 >> ~/.config/gtk-3.0/settings.ini
echo gtk-menu-popdown-delay = 0 >> ~/.config/gtk-3.0/settings.ini
echo gtk-menu-bar-popup-delay = 0 >> ~/.config/gtk-3.0/settings.ini
echo gtk-enable-animations = 0 >> ~/.config/gtk-3.0/settings.ini
echo gtk-timeout-expand = 0 >> ~/.config/gtk-3.0/settings.ini
echo gtk-timeout-initial = 0 >> ~/.config/gtk-3.0/settings.ini
echo gtk-timeout-repeat = 0 >> ~/.config/gtk-3.0/settings.ini
echo gtk-enable-event-sounds=1 >> ~/.config/gtk-3.0/settings.ini
echo gtk-enable-input-feedback-sounds=1 >> ~/.config/gtk-3.0/settings.ini
echo gtk-xft-antialias=1 >> ~/.config/gtk-3.0/settings.ini






2.3.- Modificar parámetros de GTK+ 3, para todos los usuarios


Para modificar /etc/gtk-3.0/settings.ini tenemos que tener momentáneamente los privilegios de root.


Ponemos los siguientes comandos para tener privilegios de root, en Terminal:
sudo -i


Pulsamos la tecla Intro del teclado.


Acelerar los menús y submenús. Animaciones más rápidas en GTK+ 3 para todos los usuarios


Ponemos los siguientes comandos en Terminal copiando y pegando en bloque, una vez copiados pulsamos la tecla Intro del teclado:
echo gtk-menu-popup-delay = 0 >> /etc/gtk-3.0/settings.ini
echo gtk-menu-popdown-delay = 0 >> /etc/gtk-3.0/settings.ini
echo gtk-menu-bar-popup-delay = 0 >> /etc/gtk-3.0/settings.ini
echo gtk-enable-animations = 0 >> /etc/gtk-3.0/settings.ini
echo gtk-timeout-expand = 0 >> /etc/gtk-3.0/settings.ini
echo gtk-timeout-initial = 0 >> /etc/gtk-3.0/settings.ini
echo gtk-timeout-repeat = 0 >> /etc/gtk-3.0/settings.ini
echo gtk-enable-event-sounds=1 >> /etc/gtk-3.0/settings.ini
echo gtk-enable-input-feedback-sounds=1 >> /etc/gtk-3.0/settings.ini
echo gtk-xft-antialias=1 >> /etc/gtk-3.0/settings.ini


Para dejar de tener privilegios de root:
exit






3.- Reducir el uso de la partición SWAP



La memoria RAM está para usarse.

La memoria Swap o memoria de intercambio, la utiliza el equipo cuando la memoria RAM comienza a escasear.

Es mas rápido para el sistema extraer datos desde la memoria RAM, que del disco duro.

Podemos modificar el porcentaje de memoria swap a utilizar, de manera que apuremos el uso de memoria RAM antes de comenzar a usar la memoria de intercambio o swap.


El kernel de Linux tiene una serie de búferes de escritura de memoria ajustables, que definen cómo el sistema usa la memoria para retrasar las escrituras en el disco.


vm.swappiness
Puede tener un valor entre 0 y 100, el valor predeterminado es 60. Un valor bajo hace que el kernel evite el intercambio, un valor más alto hace que el kernel intente usar el espacio de intercambio, los valores más pequeños reducen el uso del intercambio o swap.

vm.vfs_cache_pressure
El valor predeterminado es 100. Controla la tendencia del kernel a recuperar la memoria que se usa para el almacenamiento en caché de cachés VFS, en lugar de pagecache y swap, poner un valor bajo permite que las operaciones se realicen en RAM, para ganar velocidad, así como bajar la cantidad de operaciones en disco SSD, aumentando su vida util.

vm.dirty_writeback_centisecs
El valor predeterminado 500 ó 5 segundos. Escrituras en el disco del búfer/retraso, es la frecuencia con la que los procesos pdflush/flush/kdmflush se activan y comprueban si es necesario trabajar.

vm.dirty_expire_centisecs
El valor predeterminado 3000 ó 30 segundos. Escrituras en el disco del búfer/retraso. Esto define el intervalo entre las operaciones de reescritura.

vm.dirty_ratio
El valor predeterminado es 20%, es el porcentaje máximo de memoria que se debe usar, que puede consumir páginas sucias antes de que todos los procesos deban escribir buffers sucios de nuevo en el disco, y cuando se alcanza este valor, se bloquea toda la I/O para cualquier escritura nueva hasta que se hayan vaciado las páginas sucias.

vm.dirty_background_ratio
El valor predeterminado es 10%, Cuando la cantidad de pagecache sucio excede este porcentaje, los hilos de reescritura comienzan a escribir en la memoria sucia. es el porcentaje máximo de memoria ((Caché + Libre) - Asignada)






3.1.- Parámetros para reducir el uso de la partición SWAP


Para cambiar el uso de SWAP tenemos que tener momentáneamente los privilegios de root:


Ponemos los siguientes comandos tener privilegios de root, en Terminal:
sudo -i


Pulsamos la tecla Intro del teclado.


Ponemos los siguientes comandos en Terminal copiando y pegando en bloque, una vez copiados pulsamos la tecla Intro del teclado:
echo vm.swappiness=1 >> /etc/sysctl.conf
echo vm.vfs_cache_pressure=50 >> /etc/sysctl.conf
echo vm.dirty_writeback_centisecs=1500 >> /etc/sysctl.conf
echo vm.dirty_expire_centisecs=4500 >> /etc/sysctl.conf
echo vm.dirty_ratio=30 >> /etc/sysctl.conf
echo vm.dirty_background_ratio=15 >> /etc/sysctl.conf


Para dejar de tener privilegios de root:
exit


De esta forma, solo cuando es estrictamente necesario y como último recurso, se hace uso de la memoria swap o memoria de intercambio.






4.- Preload


Preload es un demonio (daemon) que se encarga de cargar en la memoria RAM los archivos necesarios de las aplicaciones que más utilizamos, mejorando considerablemente la carga de dichos programas. Carga las aplicaciones mas rápidamente.


Para Instalar preload, ponemos los siguientes comandos en Terminal:
sudo apt install preload -y

sudo apt install preload -y




Una vez que se instala el demonio de Preload funciona ejecutándose en segundo plano y monitoreando qué aplicaciones se utilizan con más frecuencia





5.- Prelink


Prelink es un programa que modifica las bibliotecas compartidas ELF y ELF enlazadas dinámicamente, pre-enlazar binarios y bibliotecas ELF compartidas para acelerar su tiempo de inicio.


Primero recopila los binarios de ELF para ser pre-enlazados. Luego asigna un espacio de dirección virtual único a cada biblioteca y vuelve a vincularlo.
Para Instalar prelink, ponemos los siguientes comandos en Terminal:
sudo apt install prelink -y

sudo apt install prelink -y



Una vez Instalado prelink cambiamos una línea dentro del archivo de configuración, en Terminal ponemos los siguientes comandos:
sudo nano /etc/default/prelink


Dentro del archivo de configuración, cambiamos la siguiente línea:

PRELINKING=unknown
a
PRELINKING=yes


PRELINKING=yes

PRELINKING=yes



El resto de opciones por defecto funcionan bien.


Guardamos los cambios con las teclas del teclado:
Ctrl + o

Pulsamos la tecla Intro del teclado.

Cerramos con:
Ctrl + x


Hacemos pre-enlazado (la primera vez puede llevar algo de tiempo):
sudo /etc/cron.daily/prelink


El demonio Prelink se ejecutará periódicamente para optimizar los ejecutables recién instalados.






6.- Mover los archivos temporales a la RAM


Montar directorios temporales en memoria RAM, nos permite obtener más velocidad en la escritura y lectura de datos.

/tmp, es un directorio volátil donde se almacenan los datos temporales utilizados por las aplicaciones y usuarios, la ventaja de montar /tmp en la memoria RAM, es que los datos temporales son mas rápidos de leer y escribir, también evitamos la escritura constante en el disco, y por consiguiente extendemos su vida, sea disco mecánico (HDD) o de estado solido (SSD).

tmpfs, normalmente también usa espacio de intercambio en situaciones en las que hay poca memoria volátil disponible.

fstab (file systems table), se encuentra en el directorio /etc/ como parte de la configuración del sistema, es usado para definir cómo las particiones, los distintos dispositivos de bloques o sistemas de archivos remotos deben ser montados e integrados en el sistema.


Para mover los archivos temporales a la RAM tenemos que tener momentáneamente los privilegios de root:


Ponemos los siguientes comandos tener privilegios de root, en Terminal:
sudo -i


Pulsamos la tecla Intro del teclado.


Ponemos los siguientes comandos en Terminal copiando y pegando en bloque, una vez copiados pulsamos la tecla Intro del teclado:
echo tmpfs /tmp tmpfs noatime,nodiratime,nodev,nosuid,mode=1777,defaults 0 0 >> /etc/fstab
echo tmpfs /var/tmp tmpfs noatime,nodiratime,nodev,nosuid,mode=1777,defaults 0 0 >> /etc/fstab


/etc/fstab

/etc/fstab





Para dejar de tener privilegios de root:
exit






7.- Reducir el tiempo de carga del gestor de arranque


Para reducir el tiempo empleado por el sistema operativo en el arranque, podemos modificar el tiempo de espera del Grub.


Para reducir el tiempo de carga del gestor de arranque tenemos que cambiar una línea dentro del archivo de configuración del Grub, en Terminal ponemos los siguientes comandos:
sudo nano /etc/default/grub

/etc/default/grub

/etc/default/grub




Dentro del archivo de configuración nos movemos con las flechas del teclado, cambiamos la siguiente línea (Tiempo de espera en segundos):

GRUB_TIMEOUT=10
a
GRUB_TIMEOUT=3

Guardamos los cambios con las teclas del teclado:
Ctrl + o

Pulsamos la tecla Intro del teclado.

Cerramos con:
Ctrl + x


Después de modificar el archivo, debemos actualizar el Grub con el comando:
sudo update-grub





8.- Zram


Zram incrementa el rendimiento evitando la paginación en disco, utiliza un dispositivo de bloques comprimidos en la memoria RAM. Dado que el uso de RAM es más rápido que el uso de disco reduce los tiempos de espera y los ciclos de la CPU.

Lo que hace es crear bloques comprimidos en RAM para que funcionen como Swap, pero comprimido y almacenado en la memoria RAM en lugar de la partición de intercambio(swap), de esta forma se logra incrementar la velocidad y la cantidad de memoria disponible antes de que el sistema comience a utilizar la Swap.


Para instalar y activar Zram en Terminal ponemos los siguientes comandos:

Actualizamos la biblioteca de paquetes:
sudo apt update



Instalarmos Zram:
sudo apt install zram-config -y

Pulsamos la tecla Intro del teclado.



Iniciamos Zram:
sudo /usr/bin/init-zram-swapping





9.- Arranque más rápido


Cuando el arranque de Ubuntu lo notamos mas lento, podemos solucionarlo haciendo que el Kernel utilice en el arranque el parámetro "noresume".


Para reducir el exceso de tiempo empleado por el sistema operativo en el arranque, tenemos que modificar el Grub. Cambiar una línea dentro del archivo de configuración, en Terminal ponemos los siguientes comandos:
sudo nano  /etc/default/grub


Dentro del archivo de configuración nos movemos con las flechas del teclado, para situarnos en la línea a modificar (GRUB_CMDLINE_LINUX_DEFAULT), poniéndole "noresume" delante. Nos quedará la línea de la siguiente forma:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash noresume"


noresume

noresume


Guardamos los cambios con las teclas del teclado:
Ctrl + o

Pulsamos la tecla Intro del teclado.

Cerramos con:
Ctrl + x

Después de modificar el archivo, debemos actualizar el Grub con el comando:
sudo update-grub





10.- Acelerador para Firefox


Firefox, creado por Mozilla, la organización sin ánimo de lucro que impulsa un Internet saludable. Es multiplataforma, es decir, podemos utilizarlo en diversos entornos o sistemas operativos de escritorio, como: Windows, OS X, Linux


Acerca de Mozilla Firefox

Acerca de Mozilla Firefox



Este es el Firefox más rápido. Sobresale tanto en parámetros técnicos como en las tareas diarias más frecuentes. Para navegar con total confianza con el más rápido de la Web


El nuevo Firefox

El nuevo Firefox



Página de Firefox:
https://www.mozilla.org/es-ES/



Si queremos tener una navegación más rápida y/o más fluida en Internet, podemos modificar una serie de parámetros, para conseguirlo podemos usar el Acelerador para Firefox


Acelerador para Firefox

Acelerador para Firefox




El Acelerador para Firefox, contiene una serie de parámetros que ya he ajustado lo máximo posible (Luis Cordero), dichos parámetros se encuentran en un archivo de texto con el nombre de user con la extensión .js para que lo reconozca Firefox como un archivo propio


El Acelerador para Firefox, (llamado user.js) lo podemos descargar de la siguiente página:
https://mega.nz/#!JZIRAQAB!pBlepvo9PgTXaSFwuK5EeaiSAteb2OJitSKN790QTzU



Podemos modificar el archivo user.js y adaptarlo a nuestras necesidades, eso sí, una vez modificado lo guardamos con el nombre y su extensión:

user.js


En el listado del Acelerador para Firefox he puesto algunas descripciones y comentarios extensos para ayudar a comprender que hace cada parámetro, los comentarios se encuentran después de las líneas o parámetros, están comentados con dos barras inclinadas // para que las salte el sistema al leerlas


Antes de usar este archivo user.js, si es necesario, debe cambiar, eliminar o comentar con dos barras inclinadas // cualquier línea o parámetro con la que no esté satisfecho o no esté seguro




Como utilizar el Acelerador para Firefox


Una vez que tenemos el archivo user.js abrimos Firefox. En la barra de menú del navegador (si no la vemos pulsamos la tecla Alt del teclado) escogemos:

Ayuda

Nos sale un despegable donde podemos elegir varias opciones, elegimos y pulsamos la opción:

Información para solucionar problemas


Firefox Ayuda Información para solucionar problemas

Firefox Ayuda Información para solucionar problemas






Se abre una pestaña de Información para solucionar problemas en el navegador, en dicha pestaña elegimos y pulsamos la opción:


Restablecer Firefox


NOTA: Restablecemos Firefox para que no quede “contaminado” con parámetros que tengamos de versiones anteriores


Restablecer Firefox

Restablecer Firefox





NOTA: El restablecimiento de Firefox nos crea una carpeta en el escritorio, dicha carpeta la podemos eliminar (es la carpeta del anterior perfil de Firefox)



Cerramos Firefox y lo volvemos a abrir



Una vez que lo abrimos de nuevo, nos vamos otra vez a Ayuda y pulsamos la opción:
Información para solucionar problemas

Se vuelve a abrir la pestaña de Información para solucionar problemas en el navegador, en dicha pestaña elegimos y pulsamos la opción:

Abrir directorio



Firefox Abrir directorio

Firefox Abrir directorio




Se nos abre una ventana con carpetas y archivos (esta es la carpeta “Profiles” o del perfil de Firefox), donde pegamos después de haberlo copiado el archivo user.js


Pegado de user.js en directorio

Pegado de user.js en directorio





NOTA MUY IMPORTANTE: Primero cerramos el navegador Firefox y después de cerrado, cerramos la ventana que teníamos abierta (la carpeta “Profiles”), si no lo hacemos en este orden no quedará guardado


A partir de este momento ya tenemos en marcha el Acelerador para Firefox



_____________________________

Más información:


_____________________________


Autor de las imágenes: Luis Cordero

domingo, 24 de febrero de 2019

Optimizar disco SSD en Ubuntu

Optimizar disco SSD en Ubuntu

TRIM, informa a una unidad de estado sólido (SSD) los bloques de datos que ya no están en uso cuando borramos un fichero, el sistema operativo lo marca como espacio utilizable para asegurar las posteriores operaciones de escritura a plena velocidad.

Es recomendable no llenar en exceso el disco, ya que los SSD no pueden sobrescribir los datos existentes, deben ser borrados antes de escribir los nuevos.

TRIM, es un protocolo que debe tener tanto el sistema operativo como el disco SSD.



1.- Comprobar si TRIM es soportado por el SSD


Para comprobar si TRIM es soportado por nuestro disco SSD escribimos en Terminal (Abrir Terminal presionando Ctrl + Alt + T del teclado) el siguiente comando:
sudo hdparm -I /dev/sda | grep "TRIM supported"
sudo hdparm -I /dev/sda | grep "TRIM supported"




TRIM soportado

TRIM soportado




Nota: La unidad sda la debemos substituir por el disco donde se encuentra la (/) raiz del sistema operativo, ya que puede ser sdb, sdc, no poner el número de partición, en este caso es sda.



1.1- Activar TRIM

miércoles, 13 de febrero de 2019

Solución error drm_kms_helper

Solución error drm_kms_helper

Editado 14 de Febrero de 2019


Arranque muy lento debido a errores, drm_kms_helper.


drm_atomic_helper_wait_for_flip_done

drm_atomic_helper_wait_for_flip_done




Tiempo de arranque muy largo con mensajes de error en pantalla:

[drm:drm_atomic_helper_wait_for_flip_done [drm_kms_helper]] *ERROR* [CRTC:34:pipe B] flip_done timed out
[drm:drm_atomic_helper_wait_for_dependencies [drm_kms_helper]] *ERROR* [CRTC:34:pipe B] flip_done timed out
[drm:drm_atomic_helper_wait_for_dependencies [drm_kms_helper]] *ERROR* [PLANE:28:plane A] flip_done timed out


sábado, 2 de febrero de 2019

He creado dos canales en Telegram

Debido a que la cuenta de Google+(cuentas personales) dejará de estar disponible el 2 de abril del 2019

He creado dos canales en Telegram

Canal Trastetes
https://t.me/Trastetes

Manuales o tutoriales relacionados con Ubuntu Linux, y algunas cosillas mas.


Canal Trastetes






Canal Trasuntu
https://t.me/Trasuntu

Trasuntu es una distribución GNU/Linux, pensada para equipos de bajos recursos, y no tan bajos, completa y lista para usar, es extremadamente eficiente con los recursos.


Canal Trasuntu




Autor de las imágenes: Luis Cordero