¿Puedo eliminar archivos que tienen punto y coma? en ellos (¿creados por actualizaciones?)

¿Puedo eliminar archivos que tienen punto y coma? en ellos (¿creados por actualizaciones?)

Encontré, por accidente, algunas docenas de archivos /usr/binque tienen un punto y coma ;. Si no recuerdo mal, archivos como ese se crean cuando se escribe en un archivo abierto por algún programa (por ejemplo, durante una actualización del sistema operativo). Sin embargo, pensé que se eliminarían durante el próximo reinicio. En mi caso, sin embargo, estos archivos no están abiertos:

# find /usr -name \*\;\* | grep c++
/usr/bin/c++;5cf64746
/usr/bin/c++;5cfffc10
/usr/bin/c++;5cfb88d7
/usr/bin/c++;5cf8e8e4
/usr/bin/c++;5cfcd91f
/usr/bin/c++;5cc1f485
/usr/bin/c++;5cf4f405
/usr/bin/c++;5cfffc85
/usr/bin/c++;5cf7968b
/usr/bin/c++;5cfe28b9
/usr/bin/c++;5cff80b7
/usr/bin/c++;5cf57b84
/usr/bin/c++;5cfc4cbf

# lsof | fgrep /c++ 
Exit 1

Preguntas:

  1. ¿Puedo eliminar estos archivos de forma segura?

  2. ¿Por qué están aquí en primer lugar?

La computadora nunca falló, todo se reinicia limpiamente. Es un sistema CentOS 7. Las actualizaciones fueron instaladas por yum.

Muchos archivos son en realidad idénticos (aunque todos los inodos difieren, lo verifiqué):

# ll /usr/bin/c++?5*
-rwxr-xr-x. 2 root root 772688 Mar  6  2018 /usr/bin/c++;5cc1f485
-rwxr-xr-x. 4 root root 772688 Apr 10  2018 /usr/bin/c++;5cf4f405
-rwxr-xr-x. 4 root root 772688 Apr 10  2018 /usr/bin/c++;5cf57b84
-rwxr-xr-x. 4 root root 772688 Apr 10  2018 /usr/bin/c++;5cf64746
-rwxr-xr-x. 4 root root 772688 Apr 10  2018 /usr/bin/c++;5cf7968b
-rwxr-xr-x. 4 root root 772688 Apr 10  2018 /usr/bin/c++;5cf8e8e4
-rwxr-xr-x. 4 root root 772688 Apr 10  2018 /usr/bin/c++;5cfc4cbf
-rwxr-xr-x. 4 root root 772688 Apr 10  2018 /usr/bin/c++;5cfb88d7
-rwxr-xr-x. 4 root root 772688 Apr 10  2018 /usr/bin/c++;5cfcd91f
-rwxr-xr-x. 4 root root 772688 Apr 10  2018 /usr/bin/c++;5cfe28b9
-rwxr-xr-x. 4 root root 772720 May 15  2018 /usr/bin/c++;5cff80b7
-rwxr-xr-x. 4 root root 772720 May 15  2018 /usr/bin/c++;5cfffc10
-rwxr-xr-x. 4 root root 772720 May 15  2018 /usr/bin/c++;5cfffc85

¿Sigue teniendo sentido la explicación mediante actualizaciones?

Respuesta1

Descubrí por qué se crearon estos archivos. Tenía un proceso ejecutándose en un contenedor (con un espacio de nombres de montaje (sistema de archivos) del kernel de Linux), creado porcárcel de fuego. Firejail enmascara algunos archivos (por ejemplo, ejecutables y bibliotecas) para que no puedan acceder al proceso dentro del contenedor. Por lo tanto, el kernel de Linux todavía hace referencia a estos archivos cuando se eliminan con yum update/ dnf update. Por lo tanto no se eliminan en ese momento.

Esto también significa que los archivos se pueden eliminar de forma segura después de reiniciar, o realmente, después de que finalice el último proceso contenedor que los usó.

La pregunta sigue siendo por qué estos archivos no se eliminan cuando se apaga el contenedor/computadora. Sospecho que se trata de un error que no se ha solucionado en el kernel (¿controlador del sistema de archivos ext4?) en estas máquinas.

información relacionada