Reducir el consumo de RAM en Ubuntu

En el momento de escribir este artículo, llevo algo mas de un mes trabajando con Ubuntu 18.04. Esta es la primera versión de largo soporte, LTS, que utiliza GNOME Shell. Mi objetivo es migrar todos mis indicadores a extensiones de GNOME Shell, para que la experiencia de usuario sea la mejor. Esto es así, puesto que GNOME Shell, proporciona mejores posibilidades a los desarrolladores para algo tan útil como los indicadores y otros complementos. Sin embargo, uno de los problemas que he experimentado en este tiempo es el consumo de recursos tan elevado que hace Ubuntu. Y no solo me refiero al bug que publicó OMG!Ubuntu! poco tiempo antes de este artículo. En particular, me refiero a que GNOME en la versión de Ubuntu consume muchos recursos y parte de ellos se pueden reducir, para conseguir una experiencia de usuario mejor. Así, en este artículo veremos algunos consejos para reducir el consumo de RAM en Ubuntu.

Ahora bien, tengo que indicar que aunque Ubuntu con GNOME consume excesivos recursos, siempre se queda a la altura del betún comparado con los navegadores de Internet. Y es que tanto Firefox como Chrome, son auténticos devoradores de recursos, sobre todo este último.

Sin embargo, los navegadores de Internet no son los únicos devoradores de memoria RAM. Las aplicaciones que utilizan la tecnología Electron, como puede ser Typora, Stacer, Tusk, Whatsapp Desktop, Atom o Visual Studio Code, no se quedan cortas. Estas aplicaciones consumen fácilmente desde los 400 MB hasta los 900 MB. Esto lo he visto en particular en el caso de Atom.

Veamos como reducir el consumo de RAM en Ubuntu…

Reducir el consumo de RAM en Ubuntu

Reducir el consumo de RAM en Ubuntu

Es evidente, que una opción para reducir de una forma sencilla el consumo de RAM en Ubuntu, es cambiar el entorno de escritorio. Sin embargo, actualmente no barajo esta opción, porque me gusta el paradigma de uso que ofrece GNOME. Entre otras cosas, me gusta el minimalismo que ofrece GNOME.

Sin lugar a dudas, el minimalismo, que para mi es una ventaja, para otros puede representar un inconveniente. Hay quien prefiere un gestor de archivos sobrecargado de opciones, que raramente utiliza.

Ahora bien, desde mi punto de vista el minimalismo que ofrece GNOME, se puede complementar con la importante integración que ofrecen tanto GNOME Shell como Nautilus a la hora de complementos y extensiones.

Reducir para crecer

Desde mi punto de vista, la ventaja que nos ofrece GNOME con su minimalismo es que no está sobrecargado con opciones que no se utilizan. Sin embargo, nos permite personalizarlo de una forma relativamente sencilla con un gran abanico de herramientas que se integran perfectamente con el entorno de trabajo.

En este sentido, si por ejemplo, habitualmente realizas sencillas operaciones matemáticas, tienes dos opciones. Abrir y cerrar una calculadora. O simplemente instalar una extensión de GNOME Shell que te permite realizar los cálculos directamente con tan solo pulsar la tecla Super. Y esto sin necesidad de estar abriendo y cerrando continuamente la calculadora, o teniéndola en segundo plano.

El problema

Como he comentado en la introducción, a pesar de creo que el paradigma que nos ofrece GNOME para el uso del entorno de escritorio es espectacular, el problema del consumo de recursos, sobre todo para equipos de posibilidades reducidas es un problema.

En la versión 17.10 y 18.04 existen toda una serie de servicios que hacen que se dispare el consumo de RAM. Así evitando estos servicios puedes controlar fácilmente este consumo de recursos. De esta manera, podrás dedicar estos recursos para lo que tu necesites.

Como reducir el consumo de RAM en Ubuntu

Como he comentado existen diferentes servicios que normalmente no utilizas y que puedes prescindir perfectamente de ellos. Sin embargo, aunque no utilizas estos servicios, tienen un importante consumo de recursos.

Evolution

Si utilizas Thunderbird como cliente de correo electrónico o cualquier otro cliente como puede ser Geary no tiene mucho sentido tener detrás Evolution gastando recursos.

Los procesos relacionados con Evolution presentan un elevado consumo de recursos. Así, si abres el monitor del sistema o htop, verás que fácilmente tienes cuatro o cinco procesos relacionados con evolution con un consumo de mas de 100 MB de RAM. Si tu no lo utilizas, ¿para que lo tienes en uso?

El problema con Evolution es que no se puede desinstalar fácilmente del sistema. Sin embargo, puedes utilizar un truco que te permitirá reclamar esa memoria para ti y reducir el consumo de RAM en Ubuntu.

La operación es tan sencilla como renombrar un par de directorios. Para ello, tan solo tienes que ejecutar las siguientes órdenes,

sudo mv /usr/lib/evolution-data-server /usr/lib/evolution-data-server-disabled
sudo mv /usr/lib/evolution /usr/lib/evolution-disabled

Tienes que tener en cuenta que al deshabilitar Evolution no podrás utilizar la sincronización de calendarios, etc.

Otra opción, en lugar renombrar los directorios es quitarles la atribución de ejecutable solo a aquellos servicios que no necesites… Por ejemplo,

sudo chmod -x /usr/lib/evolution/evolution-calendar-factory

Centro de Software

Si de vez en cuando ves que procesos se están ejecutando, utilizando htop o cualquier otra herramienta, verás siempre a gnome-software trabajando en segundo plano. Pero además, gnome-software es uno de esos procesos que está escalando de forma continua en el uso de recursos.Puede ser que empiece en 70 ó 80 MB, pero en poco tiempo alcanza los 120 ó 130 MB de consumo de memoria RAM.

La solución para evitar este problema es desinstalarla, para ello, tan solo tienes que ejecutar la siguiente orden,

sudo apt remove

Si eres un usuario novel o simplemente quieres realizar una búsqueda mediante interfaz necesitarás una alternativa. Y como alternativa al Centro de Software de Ubuntu, te recomiendo sin lugar a dudas AppGrid. AppGrid, es una solución sencilla, simple y liviana, que no recargará tu sistema, y totalmente funcional.

AppGrid

Desinstalando servicios que no utilizas

En particular hay dos servicios que es muy probable que no utilices. Por un lado cups que es el servicio de impresora. En mi caso particular hace mucho tiempo que no hago uso de la impresora. Los documentos que tengo que enviar con mi firma lo hago utilizando GIMP. Para ello lo que hago es abrir el documento y pegar mi firma que he escaneado previamente. De esta forma si no imprimes desinstalar este servicio es tan senciilo como ejecutar la siguiente orden,

sudo apt remove cups

Otro servicio que se instala por defecto es avahi. avahi es un servicio de descubrimiento DNS. De esta forma los diferentes equipos que tenemos en nuestra red pueden conectarse a los servicios sin nuestra intervención. Esto se conoce como compartición sin configuración previa (Zeroconf sharing). Y es particularmente cómodo para aquellos que no quieren realizar ajustes manuales.

Esto de la compartición sin configuración previa no es muy utilizado salvo por Apple. De esta manera, si no utilices ningún chisme de Apple, poco o ningún sentido tiene este servicio. Lo mejor es que si no lo utilizas lo desinstales. Para ello, ejecuta,

sudo apt remove avahi-daemon
Packagekitd

Packagekit es un actualizador automático propio de Ubuntu. Esto tiene un servicio tipo demonio funcionando en segundo plano. Este demonio consume parte de tu ancho de banda y RAM, y sin embargo, es un servicio que no necesitas para el funcionamiento normal de Ubuntu, con lo que lo razonable sería desinstalarlo, sin embargo, no puedes. Este paquete es una dependencia de ubuntu-desktop. De esta manera para dejarlo fuera de juego, tendrás que moverlo a un directorio de respaldo y así evitar su funcionamiento. Para ello, ejecuta las siguientes órdenes,

sudo mkdir /usr/lib/packagekit/backup/
sudo mv -v /usr/lib/packagekit/packagekitd /usr/lib/packagekit/backup/
Snap

Al igual que he comentado con packagekit en Ubuntu hay otro servicio en modo demonio que está funcionando en segundo plano y que consume tanto memoria RAM como ancho de banda de tu conexión de red. Dependiendo del uso que estés haciendo de los paquetes snap, puedes desinstalarlo o bien, deshabilitar el demonio.

En el caso de desinstalar snap, tan solo tienes que ejecutar la siguiente orden,

sudo apt remove snap

En el caso de que solo quieras deshabilitar el demonio, al igual que en el caso anterior, ejecuta las siguientes órdenes,

sudo mkdir /usr/lib/snapd/backup/
sudo mv -v /usr/lib/snapd/snapd /usr/lib/snapd/backup/

Quitando aplicaciones del arranque que no utilizamos

Otra sencilla forma de reducir el consumo de RAM en Ubuntu es eliminar del inicio aquellas aplicaciones y servicios que no utilizamos. Para eliminar del inicio aquellas aplicaciones y servicios que no utilizamos, tenemos que realizar un paso previo. Y es que resulta, que si consultas en tus preferencias las aplicaciones que se muestran al inicio, no se muestran todas, sino que algunas permanecen ocultas. Para mostrarlas todas, tienes que ejecutar la siguiente orden,

sudo sed -i 's/NoDisplay=true/NoDisplay=false/g' /etc/xdg/autostart/*.desktop

Una vez ejecutada esta orden, tenemos que marcar que aplicaciones y servicios queremos evitar que se inicien al arranque de Ubuntu.

aplicaciones al inicio

Aquí tienes que andar con ojo, porque es posible que quites alguna aplicación o servicio que sea necesaria para que Ubuntu funcione correctamente. Aunque tampoco te tienes que preocupar mucho, porque simplemente tendrás que habilitar para el próximo arranque.

A continuación puedes encontrar un listado de las aplicaciones y servicios que he deshabilitado,

  • AT-SPI D-Bus Bus
  • Backup Monitor
  • Caribou
  • GNOME Settings Daemon’s a11y-settings plugin
  • GNOME Settings Daemon’s clipboard plugin
  • GNOME Settings Daemon’s print-notifications plugin
  • GNOME Settings Daemon’s rfkill plugin
  • GNOME Settings Daemon’s screensaver-proxy plugin
  • GNOME Settings Daemon’s sharing plugin
  • GNOME Settings Daemon’s smartcard plugin
  • GNOME Settings Daemon’s wacon plugin
  • Notificador de actualizaciones
  • Orca screen reader
  • Sistema de Sonido PulseAudio
  • Spice vdagent

Hay algunos complementos tipo GNOME Settings Daemon que podía haber deshabilitado, pero estoy probando, porque alguno de ellos interfiere con el entorno de escritorio.

Respecto al notificador de actualizaciones, he preferido deshabilitarlo. Habitualmente realizo un sudo apt update && sudo apt upgrade, porque me gusta ver que se va actualizando en mi sistema. Sobre todo en estos últimos días en los que estoy trabajando con la versión en desarrollo de Ubuntu.

En cuanto al monitor de copias de respaldo, yo no lo utilizo, tengo un programada una tarea con cron. Y creo que es lo mas recomendable. Si no conoces exactamente como funciona cron, te recomiendo que leas el artículo “Programación de tareas con cron”.

Conclusiones

En este artículo tienes un buen conjunto de medidas para reducir el consumo de RAM en Ubuntu. Todas estas medidas conllevan mas o menos riesgos, con lo que te recomiendo que las apliques con cuidado.

Tampoco es necesario que las lleves todas a cabo, solamente las que mas te interesen, o las que creas con certeza que no utilizarás.

En mi caso particular, sin lugar a dudas lo relativo a Evolution, es lo mas interesante, porque para nada utilizo este cliente de correo electrónico. En particular, estoy trabajando en una solución para sincronizar Google Calendar directamente con GNOME Shell.

En fin, que con estos ajustes he conseguido reducir el consumo de RAM en Ubuntu entre 300 y 400 MB… A lo mejor es demasiado trabajo… Eso lo dejo a tu decisión.


Más información,

10 comentarios en “Reducir el consumo de RAM en Ubuntu

  1. Gracias.

    Ya que te pones una extensión AHORRO DE RAM, que permitiese seleccionar hacer todo lo que has hecho desde una GUI y algunas cosas mas, como vaciar la caché cuando se llene demasiado, si que creo que serian muy de interés para el usuario no tan avanzado.

    Me encanta que al volver Ubuntu a Gnome pueda disfrutar de tus extensiones. ¿Existe algún proyecto de portar los “scopes” o algo similar, aunque fuese mediante aplicación y no extensión a Gnome?

    Aunque sea un párrafo colateral, tanto en Libre Office como en Calligra puedes usar firmas electrónicas, y por supuesto, copiar pegar una firma en cualquier formato de imagen, y guardarlo como PDF, incluso editable, como ODF incrustado. Es más rápido que con GIMP, y mas recomendable como uso ofimático general, aunque pueda haber excepciones.

    Respecto a las extensiones, yo que volví a usar Gnome tras una buena estancia en XFCE, hecho de menos algunos plugins de XFCE como el monitor del sistema (el de las extensiones no funciona, al menos en mi Manjaro) que me permitía tener en mi panel inferior que usaba como dock indicadores de uso de disco, de memoria, de núcleos de la CPU, GPÛ etc en vez de un conky.

    Por otra parte en mi equipo (Gygabyte 970 gaming con FX8350 y 12 Gbs DDR3) Ubuntu (ahora Pop en pruebas) va mucho mas lento que Manjaro y no tendría porqué notarse (otra cosa son las comparativas) esa diferencia.

    1. Hola @mitcoes:disqus ,
      Cuanto tiempo sin leerte por aquí…

      En cuanto a la aplicación GUI para el ahorro de RAM… es una buena idea no me lo había planteado, el problema es que ahora mismo le he dado prioridad a otros asuntos como lo que comento mas adelante…

      Yo he empezado a migrar mis scopes a GNOME Shell con lo que en breve espero que podamos disfrutar de ellos. Un poco de paciencia.

      Respecto a la firma que comentas, estoy preparando una actualización de Nautilus PDF Tools con la que se podrá insertar una firma/imagen en cualquier punto de un PDF.

      Miraré la extensión de GNOME que comentas para la monitorización del sistema…

      Respecto a la lentitud, entiendo que es por los servicios que tiene habilitado Ubuntu…

      Habría que verlo.

      Saludos

  2. Muy buen articulo, me encanta gnome por el concepto de escritorio distinto que ofrece y su simplicidad de uso, lo tenia en Debian Stretch, pero precisamente fue el consumo elevado de ram que me llevo a la desicion de instalar Mint y Cinnamon, toca esperar a tener mas $$ para el upgrade de mi equipo y volver a disfrutar de Gnome xD
    Saludos

  3. Hola atareao 🙂
    Soy usuaria de Evolution para todas las cuentas (así las tengo a la vista aunque sean de diferente dominio) y voy a seguir tu consejo y probar Geary.
    Sobre desinstalar CUPS, tengo una duda. Imprimo muchísimo en pdf directamente. De hecho tengo guardado en favoritos tu artículo sobre como configurarlo 🙂 (con el aviso de que es un artículo viejuno y puede no estar actualizado, pero a mi me funciona) . Si desinstalo lo que aconsejas ¿me quedo sin impresora pdf?

  4. Hola, realice todas estas operaciones en un Acer Aspire One Cloudbook 14, con 2GB RAM y un disco eMMc de 32, con Ubuntu 18 lts. Sin, embargo luego me comenzó a dar un error al usar el update o upgrade por terminal, ya que el proceso se quedaba pegado en la frase “termino el tiempo de conexión” o algo parecido, y no podía actualizar. Al final para resolver tuve que reinstalar ubuntu de cero. En realidad no se cuales de estas operaciones me generó el error. Ahora como manejo bien Ubuntu y no tengo información en el note simplemente reinstale, pero para otra persona podría ser un problema.

  5. Como vuelvo a habilitar el snap? No puedo desinstalar una app y creo que es por eso. No sé instalé de la tienda gnome-software skype, luego la quité hice lo de los snap (no lo desinstalé hice lo seguno) y no puedo desisntalar la app porq aparece que no se localizan los paquetes.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *