Modo più veloce per chown un integer dispositivo (xfs)

Ho bisogno di chown 1,5 milioni di file su un drive. Sto attualmente facendo:

sudo chown -R www-data:www-data /root-of-device 

ma ci vuole un tempo molto lungo per correre. Mi stavo chiedendo se c'era una sorta di modo superfast a basso livello per chown each file sull'unità.

  • Disabilitazione / abilitazione dei moduli Parametro RHEL
  • Utilizzo dello spazio grezzo CEPH
  • GPT è necessario su un disco di dati da 16 TB?
  • Perché i miei filesystem XFS improvvisamente consumano più spazio e sono pieni di file ridotti?
  • Ridurre o rimuovere la partizione di casa in installazione CentOS 7
  • Cosa significa sunit = 0 e swidth = 0 per il file system XFS?
  • Corretto modo per affrontare i file system XFS corrotti
  • HP DL380p Gen8 (controller p420i) Oddità I / O sulle partizioni XFS
  • 3 Solutions collect form web for “Modo più veloce per chown un integer dispositivo (xfs)”

    Utilizza xargs -p o GNU parallel per velocizzare notevolmente le cose.

    Purtroppo non credo che ci sia una cosa del genere, ma sarei piacevolmente sorpreso se c'era. Potresti scrivere la tua implementazione in C e ottimizzarla molto. Tuttavia il successo di questo dipende da come iniziare bene con chown ottimizzato. E considerando che è una delle utility principali, direi che è piuttosto ottimizzato. Inoltre siete legati probabilmente dalla velocità di I / o.

    Ho avuto qualche successo evitando le limitazioni di ls e rm piping i risultati di trovare xargs , nel caso in cui una directory ha un sacco di file, vale a dire:

     find /path/* | xargs rm 

    Quindi, una indovinetta indovinata, forse questo può accelerare il chown , nel caso in cui sia più lento per la scansione ricorsiva di un filesystem che trovare :

     sudo find /path/* | xargs chown www-data:www-data 

    Sto usando anche Amazon EC2 e ho avuto questo problema. 2 cose:

    Fissaggio Situazione attuale: Dovnetworking affrontare la lentezza. Forse è ansible utilizzare "schermo" o qualcosa di simile in modo che il process possa continuare in background.

    Fissaggio Situazione futura: potresti guardare a monte e vedere come i file vengono generati in primo luogo. Dal momento che hai citato i dati www, suppongo che il consumatore dei file sia Apache. Se i file vengono eliminati da un altro programma (NFS, Samba, SSH ecc.) Assicurarsi che quei programmi stanno impostando il gruppo di utenti: www-data: www-data.

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.