GNU/Linux >> Tutoriales Linux >  >> Ubuntu

¿Evitar que el comando Du informe información inflada sobre los directorios /snap?

Tengo un servidor Ubuntu 20.04 instalado en una sola unidad de 8 GB. La instalación predeterminada también tiene algunos "snap" instalados. Por lo tanto, hay algunos sistemas de archivos "squashfs" también informados por 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 puede ver, solo hay 1837 MB de datos almacenados en el (único) disco.

Ahora, estoy probando la lista de uso de disco para cada directorio presente en la raíz (/ ) usando 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

El resultado muestra una gran cantidad de espacio en disco utilizado por /snap directorio, que por supuesto no es cierto.

¿Cuál es la forma correcta de contar el tamaño de los archivos que residen solo en sistemas de archivos de "disco real"? Agregando la opción -x a du no me hace sentir cómodo, porque en el futuro puede que tenga otro sistema de archivos de "disco real" montado en /home por ejemplo y quiero que se cuente en du salida.

Respuesta aceptada:

A diferencia de df , que yo sepa du no proporciona un --exclude-type para omitir determinados tipos de sistemas de archivos. Sin embargo, puede excluir directorios de nivel superior específicos por patrón global:

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

o (para excluir también los sistemas de archivos efímeros) y suponiendo que su shell admita la expansión de llaves:

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

Ubuntu
  1. Bash =~ Regex y Https://regex101.com/?

  2. ¿Diferencia entre /var/log/messages, /var/log/syslog y /var/log/kern.log?

  3. 12.04 No se puede instalar Grub-efi en /target/?

  4. Kubuntu muestra un error al iniciar sesión (file:///usr/share/sddm//themes/breeze/main.qml:no such file or directory)?

  5. ¿Invocar un complemento de Firefox usando un comando?

Comando Df en Linux

Cómo cambiar el nombre de archivos y directorios en Ubuntu 20.04

Cómo buscar sus archivos o directorios con el comando Buscar en Linux

Ver informe detallado de la batería de la computadora portátil en Ubuntu

Instale Clouds Windows 10 VM en Ubuntu con el comando SNAP

Use el comando Snap para instalar Plex Server en Ubuntu 20.04