Encuentra archivos basados ​​en permisos

15

¿Cómo puedo encontrar una lista de archivos que tienen algunos permisos específicos?

Quiero encontrar archivos propiedad del rootusuario que tengan rwxpermiso para el propietario.

¿Hay alguna forma de encontrar una lista de dichos archivos? Estoy usando Ubuntu 16.04.

Avani badheka
fuente
¿Es útil esto: askubuntu.com/questions/786347/…
NonStandardModel

Respuestas:

23

Sí, GNU findpuede hacerlo:

-usuario uname

El archivo es propiedad del usuario uname (ID de usuario numérico permitido).

-perm -mode

Todos los modos de bits de permiso están configurados para el archivo. Los modos simbólicos se aceptan de esta forma, y ​​esta es generalmente la forma en que desea utilizarlos. Debe especificar 'u', 'g' u 'o' si usa un modo simbólico. Vea la sección de EJEMPLOS para algunos ejemplos ilustrativos.

Entonces quieres:

find /path/to/directory -user root -perm -u+rwx
terdon
fuente
5

Si desea encontrar todos los archivos para los que un usuario tiene ciertos permisos (independientemente de si él es el propietario (e incluso lo establece a través de ACL)) puede usar findcon -readable, -writabley -executable.

Para buscar todos los archivos para los que el usuario sam tiene permiso de lectura

sudo -u sam find /path/to/directory -readable -ls
  • sudo -u sames necesario porque los tres modificadores mencionados funcionan con los permisos del usuario que invocó find, por lo que necesita sudo para ejecutarse findcomo usuario sam .
  • -ls muestra la entrada completa para cada archivo encontrado

más ejemplos
Para buscar todos los archivos para los que sam tiene execute o tiene writepermisos

sudo -u sam find /path/to/directory -writable -or -executable -ls

Para buscar todos los archivos para los que Sam tiene execute y read permisos

sudo -u sam find /path/to/directory -readable -and -executable -ls

escrito no está mal escrito!

Guntbert
fuente