Differences

This shows you the differences between two versions of the page.

Link to this comparison view

cpanel-clean-trash [2019-03-14 18:22:47] (current)
shaun.reitan created
Line 1: Line 1:
 +====== How to empty all cPanel File Manager .trash bins ======
 +
 +When deleting files using cPanel's file manager the default option is to move the files into the trash bin.  There is an option to skip sending the file to the trash can but many don't see this option or they move data into the trash and forget it's there. This can consume valuable disk space and if you have backup's enabled, the backups will be larger and take longer to complete.
 +
 +The following script was created to clean out these trash bins when when files have existed in them for more than 30 days
 +
 +<code console>
 +#!/bin/bash
 +
 +getent=$(getent passwd)
 +if [ $? -ne 0 ]; then
 +        echo "getent passwd command failed"
 +        exit 1
 +fi
 +
 +getent passwd | while IFS=: read -r user_name user_pw user_id user_gid user_comments user_homedir user_shell; do
 +        if [ ${user_id} -lt 500 ]; then
 +                echo "$user_name has a id (${user_id}) less then 500, skipping this user"
 +                continue
 +        fi
 +
 +        if [ ! -d "${user_homedir}/.trash" ]; then
 +                echo "${user_name} does not have a ${user_homedir}/.trash folder, skipping this user"
 +                continue
 +        fi
 +
 +        echo "Cleaning ${user_homedir}/.trash"
 +        su ${user_name} -s /bin/bash -c 'find ~/.trash/ -mtime +30 -type f -exec rm -vf {} \;'
 +        su ${user_name} -s /bin/bash -c 'find ~/.trash/ -mtime +30 -type d -empty -delete'
 +        echo "Done Cleaning ${user_homedir}/.trash"
 +done
 +</code>