Free the (Ubuntu) Disk Space

Check Disk Space 

df -h
 

Check Space Usage of a Specific Directory

du -sh /home
 

Find Large Files Taking Up Space

sudo du -ah / | sort -rh | head -20
 

Check Free RAM (Memory)

free -h
 

 

Check Space on a Specific Partition

df -h /var
 

Get Detailed Disk Usage with GUI

sudo apt install baobab -y

baobab
 

Example Output of df -h

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       100G   55G   45G  55% /
/dev/sdb1       500G  400G  100G  80% /mnt/data
tmpfs           3.8G  100M  3.7G   3% /run

 

Delete Koha Temporary Files

sudo rm -rf /var/lib/koha/library/biblios/tmp/*


Delete Old Koha Backups

sudo find /var/spool/koha/ -type f -name "*.sql.gz" -mtime +3 -delete

Optimize MySQL (Reduce /var/lib/mysql)

sudo mysql -e "PURGE BINARY LOGS BEFORE DATE_SUB(NOW(), INTERVAL 7 DAY);"

sudo systemctl restart mysql
 

Clean Unused Snap Packages (/snap)

sudo snap list --all | awk '/disabled/{print $1, $3}' | while read snapname revision; do sudo snap remove "$snapname" --revision="$revision"; done

Remove Unused Packages & Logs

sudo apt-get autoremove -y
sudo apt-get clean
sudo journalctl --vacuum-time=3d

Automate Daily Cleanup

nano ~/cleanup.sh

Add these lines:

#!/bin/bash

# Safer cleanup of temporary files (only delete files older than 1 day)
find /tmp -type f -atime +1 -delete
find /var/tmp -type f -atime +1 -delete

# Clear system package cache
sudo apt-get clean

# Remove old logs (but keep system logs for debugging)
sudo find /var/log -type f -name "*.log" -mtime +7 -delete

# Remove user trash safely
rm -rf ~/.local/share/Trash/files/*

# Remove system-wide trash (use with caution)
sudo find /root/.local/share/Trash/files/ -type f -mtime +7 -delete
sudo find /home/*/.local/share/Trash/files/ -type f -mtime +7 -delete

# Delete only old Koha backup files (safer)
sudo find /var/spool/koha/ -type f -name "*.sql.gz" -mtime +3 -delete

# Log cleanup action
echo "Cleanup completed on $(date)" >> ~/cleanup.log


 

schedule it in crontab:

crontab -e

schedule it in crontab:

0 16 * * * /bin/bash ~/cleanup.sh
 

No comments:

Post a Comment

Total Pageviews