grep bloques completos del sistema de archivos en dispositivos

grep bloques completos del sistema de archivos en dispositivos

Dominio

grep -rHinF --colour=always -e "aa:aa:aa:aa" /

Producción

grep: /dev/geom.ctl: Operation not supported by device
grep: /dev/devctl: Device busy

Parece que grepno puede continuar porque está esperando un dispositivo. ¿Cómo puedo omitir dichos dispositivos?

Respuesta1

Si findestá disponible, pruebe:

find / -type f -exec grep -rHinF --colour=always -e "aa:aa:aa:aa" {} +

Esto sólo se aplica a archivos normales, por lo que omitirá los dispositivos de bloques y caracteres. Ver man find.

Probablemente quieras saltarte directorios como /proco /sys; Como señala Stéphane Chazelas en los comentarios, algunos archivos allí se bloquearán (permanecerán abiertos, colgando la búsqueda) cuando los leas. Para hacer esto, puedes probar el -xdevaka. -mountdirectiva, suponiendo que el resto de su sistema de archivos esté en un dispositivo. Si la -fstypedirectiva funciona para usted, sería mejor (desafortunadamente a mí no me funciona en Linux).

En mi opinión, en lugar de jugar con esto, deberías repetir el proceso para los directorios de nivel superior en los que realmente quieras buscar, en lugar de intentar hacerlo todo de una sola vez (en cuyo caso es posible que no necesites buscar...)

información relacionada