Come posso trovare file e cartelle scrivibili dal mondo e impostare il bit appiccicoso?


13

Voglio fare quanto segue:

  1. È necessario trovare tutti i file e le cartelle scrivibili dal mondo dalla /radice.
  2. Se trovato, devo controllare se il bit appiccicoso è impostato o meno.
  3. Se il bit appiccicoso non è impostato, impostarlo.

Possiamo trovare una soluzione da riga di comando per questo tipo di problema?

Risposte:


13

Puoi farlo usando findil -perm -modeformato di. Da man find:

-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 vorrebbe usarle. È necessario specificare u',g 'o `o' se si utilizza una modalità simbolica. Vedi la sezione ESEMPI per alcuni esempi illustrativi.

Quindi, per trovare tutti i file che sono scrivibili in tutto il mondo, indipendentemente da quali altre autorizzazioni hanno, puoi fare:

find / -perm -o+w 

Per impostare la punta adesiva, utilizzare -exec:

find . -perm -o+w -exec chmod +t {} + 

2
NB: utilizzare find / -not -type l -perm -o+wse non si desidera che l'output includa anche i nomi dei collegamenti simbolici.
CHB

2

Questo comando dovrebbe trovare tutte le directory scrivibili in un solo comando, mi ritrovo a usarlo abbastanza spesso. Questo è il comando ottimale! ;) spero che ti serva bene:

find / -type d \( -perm -g+w -or -perm -o+w \) -exec ls -adl {} \;
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.