5 votos

Evitar du comando informe de inflado info acerca de /snap directorios

Tengo un Ubuntu 20.04 server instalado en una sola unidad de 8 gb. La instalación por defecto tiene algo de "snap"s instalado también. Así, hay algunos "squashfs" sistemas de archivos, también informó de la df comando:

# df -mT
Filesystem     Type     1M-blocks  Used Available Use% Mounted on
/dev/root      ext4          7877  1837      6025  24% /
devtmpfs       devtmpfs       465     0       465   0% /dev
tmpfs          tmpfs          477     0       477   0% /dev/shm
tmpfs          tmpfs           96     1        95   1% /run
tmpfs          tmpfs            5     0         5   0% /run/lock
tmpfs          tmpfs          477     0       477   0% /sys/fs/cgroup
/dev/loop0     squashfs        18    18         0 100% /snap/amazon-ssm-agent/1566
/dev/loop1     squashfs        94    94         0 100% /snap/core/9066
/dev/loop2     squashfs        55    55         0 100% /snap/core18/1705
/dev/loop3     squashfs        69    69         0 100% /snap/lxd/14804
/dev/loop4     squashfs        70    70         0 100% /snap/lxd/14890
/dev/loop5     squashfs        55    55         0 100% /snap/core18/1754
tmpfs          tmpfs           96     0        96   0% /run/user/1000

Como se puede ver, sólo hay 1837MB de los datos almacenados en el (único) disco.

Ahora, estoy tratando de la lista que el uso de disco para cada directorio presentes en la root (/) con el siguiente comando:

# du -smc /* 2>/dev/null
0   /bin
48  /boot
0   /dev
8   /etc
1   /home
0   /lib
0   /lib32
0   /lib64
0   /libx32
1   /lost+found
1   /media
1   /mnt
1   /opt
0   /proc
1   /root
1   /run
0   /sbin
1116    /snap
1   /srv
0   /sys
1   /tmp
1166    /usr
601 /var
2938    total

La salida muestra una gran cantidad de espacio de disco utilizado por el /snap directorio, que por supuesto no es cierto.

¿Cuál es la forma correcta para contar el tamaño de los archivos que residen sólo en el "disco real" de los sistemas de ficheros? La adición de la opción -x a du no me hace sentir cómodo, porque en el futuro puede que tenga a otra "real" disco sistema de archivos montado en /home , por ejemplo, y yo quiero que sean contados en du's de salida.

3voto

steeldriver Puntos 19092

A diferencia df, por lo que yo sé du no proporciona un --exclude-type a saltar particular sistema de ficheros tipo. Sin embargo, usted podría excluir a ciertos directorios principales por glob patrón:

du -smc --exclude=/snap /* 2>/dev/null

o (para excluir efímero sistemas de ficheros) y asumiendo que su shell admite la llave de expansión:

du -smc --exclude=/{proc,run,sys,snap} /* 2>/dev/null

2voto

Mark Puntos 1

Usted tiene que usar correctamente du's argumentos. Algo así como:

du --one-file-system -smc /* --exclude=/snap 2> /dev/null

Para el uso de referencia man du de forma local o en línea.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X