Saltar a contenido

Introduccion

A veces Ubuntu nos muestra un error de que no hay suficiente espacio en el sistema de archivos raiz.

Por defecto Ubuntu y muchos programas hacen caché y generalmente nos ocupan un espacio innecesario y bastante grande en nuestro disco duro.

Como arreglarlo

Vamos a ver algunos metodos de como liberar espacio

Liberar espacio de paquetes apt no usados

sudo du -sh /var/cache/apt 
sudo apt-get autoremove
sudo apt-get autoclean

Limpiar los registros de logs del sistema (journalctl)

En este caso, dejamos solo los ultimos 3 dias

sudo journalctl --vacuum-time=3d  # este el que mas

Limpiar cache de imagenes

rm -rf ~/.cache/thumbnails/*

Limpiar paquetes snap

Un script con este codigo nos liberara todo lo residual de repositorios snap en nuestra maquina

#!/bin/bash
# Removes old revisions of snaps
# CLOSE ALL SNAPS BEFORE RUNNING THIS
set -eu
snap list --all | awk '/desactivado/{print $1, $3}' |
    while read snapname revision; do
        snap remove "$snapname" --revision="$revision"
    done

Limpiar Basura de Visual Studio

Si usas Visual Studio te habras dado cuenta de que es un cumulo de basura. Si consultas el directorio de trabajo /.config/Code/User/workspaceStorage vas a flipar con lo que hay ahi dentro.

Para limpiarlo basta con

find /home/dpena/.config/Code/User/workspaceStorage -mindepth 1 -maxdepth 1 | xargs rm -rf

Recopilando en un fichero

Lo mas “inteligente” es crear un cron que realice estas tareas por nosotros. Asi que creamos un fichero con toda esta info (recuerda cambiar el nombre de usuario por el tuyo):

sudo nano ~/.cleanDiskUsage.sh

Con este contenido:

#!/bin/bash

# Remove all apt caches
sudo du -sh /var/cache/apt 
sudo apt-get autoremove
sudo apt-get autoclean

#  Remove journalctl logs
sudo journalctl --vacuum-time=3d 

# Remove images cache

rm -rf /home/{username}/.cache/thumbnails/*

# Removes old revisions of snaps
# CLOSE ALL SNAPS BEFORE RUNNING THIS
set -eu
snap list --all | awk '/desactivado/{print $1, $3}' |
    while read snapname revision; do
        snap remove "$snapname" --revision="$revision"
    done

## Remove Visual Studio code temp files
find /home/{username}/.config/Code/User/workspaceStorage -mindepth 1 -maxdepth 1 | xargs rm -rf

Lo añadimos a crontab de super usuario para que se ejecute todos los viernes a las 14:45 (mas o menos la hora de salir de trabajar)

$ sudo crontab -e
no crontab for root - using an empty one

Select an editor.  To change later, run 'select-editor'.
  1. /usr/bin/ng
  2. /bin/nano        <---- easiest
  3. /usr/bin/vim.tiny
  4. /bin/ed

Choose 1-4 [2]: 2   #es la primera vez asi que le digo que quiero usar nano
Introducimos para que se ejecute ese archivo los viernes a las 14:45. Indicamos que la salida del comando la descarte /dev/null porque no queremos revisar el reporte

# For more information see the manual pages of crontab(5) and cron(8)
# 
# m h  dom mon dow   command
45 14 * * 5 /home/dpena/.cleanDiskUsage.sh >/dev/null 2>&1

Conclusion

Con este crontab estaremos controlando el espacio usado en nuestro pc cada semana.