Clicky

Cómo encontrar archivos de gran tamaño en Linux RHEL / CentOS

buscar archivos de gran tamaño en CentOS

Utilizaremos los comandos du, find y ls

Como administradores de linux a veces tenemos que identificar qué archivos ocupan mucho espacio en el servidor Linux, lo que resulta en poco espacio libre.

El bajo espacio en disco también puede afectar al rendimiento del servidor y a veces causa que fallen los procesos críticos como el trabajo de copia de seguridad.

Este artículo muestra cómo se pueden encontrar los archivos de gran tamaño en Linux CentOS y RHEL.

Ejemplo de comandos para encontrar archivos de gran tamaño en Linux

1. Cómo mostrar los directorios más grandes en /var/log y mostrar el resultado en formato legible para el usuario:

# cd /var/log
# du -sh * | sort -rh | head -10
78M nginx
14M audit
1012K dmesg.old
980K messages-20170109
700K messages-20160907
556K anaconda
288K messages-20161212
128K wtmp
120K httpd
96K messages-20160929

2. Para mostrar las carpetas más grandes incluyendo los subdirectorios de /var/log:

# du -Sh /var/log | sort -rh | head -10
78M /var/log/nginx
14M /var/log/audit
3.6M /var/log
556K /var/log/anaconda
120K /var/log/httpd
68K /var/log/tuned
56K /var/log/mariadb
28K /var/log/php-fpm
4.0K /var/log/varnish
4.0K /var/log/ppp

o

# du -Sh /var/log | sort -n -r | head -n 10
556K /var/log/anaconda
120K /var/log/httpd
78M /var/log/nginx
68K /var/log/tuned
56K /var/log/mariadb
28K /var/log/php-fpm
14M /var/log/audit
4.0K /var/log/varnish
4.0K /var/log/ppp
4.0K /var/log/dirsrv

3. Para mostrar los archivos más grandes incluyendo los subdirectorios en /var/log:

# du -ah /var/log | sort -rh | head -10
96M /var/log
78M /var/log/nginx/ehowstuff.local.error.log-20160907
78M /var/log/nginx
14M /var/log/audit
6.1M /var/log/audit/audit.log.2
6.1M /var/log/audit/audit.log.1
1.8M /var/log/audit/audit.log
1012K /var/log/dmesg.old
980K /var/log/messages-20170109
700K /var/log/messages-20160907

4. Para encontrar los archivos más grandes en una ubicación o directorio particular, por ejemplo /var/log:

# find /var/log -type f -exec du -Sh {} + | sort -rh | head -n 10
78M /var/log/nginx/ehowstuff.local.error.log-20160907
6.1M /var/log/audit/audit.log.2
6.1M /var/log/audit/audit.log.1
1.8M /var/log/audit/audit.log
1012K /var/log/dmesg.old
980K /var/log/messages-20170109
700K /var/log/messages-20160907
288K /var/log/messages-20161212
184K /var/log/anaconda/anaconda.storage.log
152K /var/log/nginx/ehowstuff.local.access.log-20160907.gz

5. Para encontrar los archivos más grandes (top 10) en una ubicación o directorio particular, por ejemplo /var/log:

# find /var/log -printf '%s %p\n'|sort -nr|head
81440064 /var/log/nginx/ehowstuff.local.error.log-20160907
6291477 /var/log/audit/audit.log.2
6291467 /var/log/audit/audit.log.1
1823505 /var/log/audit/audit.log
1052691 /var/log/dmesg
1001793 /var/log/messages-20170109
709481 /var/log/messages-20160907
293738 /var/log/messages-20161212
292000 /var/log/lastlog
187757 /var/log/anaconda/anaconda.storage.log

6. Para mostrar los archivos más grandes (top 20) en una ubicación o directorio particular, por ejemplo /var/log utilizando el comando ls:

# ls -lSh | head -n20
total 3.7M
-rw-r--r-- 1 root root 1.1M Jan 9 21:52 dmesg
-rw------- 1 root root 979K Jan 9 15:12 messages-20170109
-rw------- 1 root root 693K Sep 7 03:21 messages-20160907
-rw------- 1 root root 287K Dec 12 10:01 messages-20161212
-rw-r--r--. 1 root root 286K Jan 9 22:03 lastlog
-rw-rw-r--. 1 root utmp 125K Jan 9 22:03 wtmp
-rw------- 1 root root 95K Sep 29 21:01 messages-20160929
-rw-r--r-- 1 root root 94K Jan 9 14:57 dmesg.old
-rw------- 1 root root 81K Jan 9 22:07 messages
-rw------- 1 root root 55K Sep 6 23:16 secure-20160907
-rw-r--r-- 1 root root 36K Sep 7 03:21 cron-20160907
-rw-------. 1 root root 26K Jan 4 22:12 yum.log-20170109
-rw-r--r-- 1 root root 23K Jan 9 21:53 vmware-vmsvc.log
-rw-------. 1 root root 17K Dec 30 2015 yum.log-20160101
-rw------- 1 root root 9.3K Jan 9 14:59 secure-20170109
-rw-r--r-- 1 root root 9.2K Jan 9 21:52 boot.log
-rw-------. 1 root root 8.0K Dec 20 22:39 grubby
-rw------- 1 root root 7.3K Dec 12 10:17 maillog-20161212
-rw-r--r-- 1 root root 5.4K Jan 9 15:19 cron-20170109

Espero que este artículo te dé algunas ideas y orientaciones esenciales sobre cómo encontrar archivos de gran tamaño en linux RHEL 6/7, CentOS 6/7, Oracle Linux 6/7.

Jesus_Caceres