Trova i file in base al permesso


Risposte:


23

Sì, GNU findpuò farlo:

-user uname

Il file è di proprietà dell'utente uname (ID utente numerico consentito).

-perm -mode

Tutta la modalità bit di autorizzazione è impostata per il file. Le modalità simboliche sono accettate in questa forma e questo è di solito il modo in cui vorresti usarle. È necessario specificare 'u', 'g' o 'o' se si utilizza una modalità simbolica. Vedi la sezione ESEMPI per alcuni esempi illustrativi.

Quindi tu vuoi:

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

5

Se si desidera trovare tutti i file per i quali un utente dispone di determinate autorizzazioni (indipendentemente dal fatto che sia il proprietario (e persino impostato tramite ACL)), è possibile utilizzare findcon -readable, -writablee -executable.

Per trovare tutti i file per i quali l'utente sam dispone dell'autorizzazione in lettura

sudo -u sam find /path/to/directory -readable -ls
  • sudo -u samè necessario perché le tre opzioni menzionate funzionano con le autorizzazioni dell'utente che ha invocato find, pertanto è necessario eseguire sudo findcome utente sam .
  • -ls mostra la voce completa per ogni file trovato

ulteriori esempi
Per trovare tutti i file per cui Sam ha execute o write permessi

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

Per trovare tutti i file per i quali Sam ha execute e i read permessi

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

scrivibile non è scritto male!

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.