Come posso ottenere un dump di tutti gli attributi estesi per un file?


15

Getfattr scarica un elenco di attributi estesi per un file selezionato.

Tuttavia, getfattr --dump filename discariche solo al user.*namespace e non i security.*, system.*e trusted.*gli spazi dei nomi. In genere, non esistono attributi dello spazio dei nomi utente a meno che non sia stato collegato manualmente a un file.

Sì, so di poter ottenere le informazioni SELinux utilizzando getfattr -n security.selinux filename. In questo caso, conosco l'identificazione specifica dell'attributo esteso.

Ho provato questo come utente root. Suppongo che l'utente root con piena capacità sia in grado di accedere a queste informazioni. Ma ottieni solo l'utente. * Dump dello spazio dei nomi.

La domanda è: come posso ottenere facilmente un dump completo di tutti gli spazi dei nomi degli attributi estesi di un file senza conoscere i nomi di tutte le chiavi in ​​tutti gli spazi dei nomi?


e "lsattr" non è sufficiente? (vedi "man chattr" per decodificare la lunga stringa di attributi)
Teofasto

Risposte:


12

Odio farlo, ma la risposta è (dopo ulteriori ricerche):

 getfattr -d -m - file

Apparentemente mi è mancato questo nella mia lettura della pagina man :

-m pattern , --match = pattern

   Includi solo attributi con nomi corrispondenti al modello di espressione regolare . [...] Specifica "-" per includere tutti gli attributi.


Lo stavo usando getfattr -d -m '' fileper questo, non sapevo che -fosse un caso speciale, ma sembra che sia stato così da quando la funzionalità è stata aggiunta (inizialmente come -ropzione). Una vergogna. È necessario utilizzare -m '[-]'per cercare gli attributi che contengono -.
Stéphane Chazelas,
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.