Desactive la caché de escritura en todas las unidades externas USB (Debian/Ubuntu/Linux)

Desactive la caché de escritura en todas las unidades externas USB (Debian/Ubuntu/Linux)

¿Cómo se desactiva la caché de escritura de forma permanente para unidades USB externas en Linux (estoy usando Ubuntu)?

He intentado:

Método de línea de comando: hdparm -W0 /dev/sdb <---- eso funciona pero solo para la unidad actual y se reinicia después del reinicio.

El indicador hdparm "-k1" debería obligarlo a mantener la configuración, pero dice:

HDIO_SET_KEEPSETTINGS falló: argumento no válido

HDIO_GET_KEEPSETTINGS falló: argumento no válido

Método del archivo de configuración(parece ser otra forma de hacerlo de forma permanente): lo siguiente que encontré fue modificar el archivo "hdparm.conf" ubicado en /etc. Sin embargo, eso parece requerir que usted sepa de antemano la letra de la unidad, "sdb, sdc...", etc.

¿Cómo se pueden cubrir TODAS las unidades sin importar qué, o específicamente todas las unidades USB externas?

El problema clave es... No estoy seguro del orden en el que conectaré estas unidades externas USB, por lo tanto, la letra de la unidad cambiará, por lo que no puedo simplemente nombrar "sdb" específicamente, ya que puede que no sea "sdb". .

¿Es esta una situación en la que hdparm.conf puede tener una entrada varias veces incluso para letras de unidades que ni siquiera están conectadas? De esa manera, no importa qué unidad esté conectada, simplemente desactivará write_cache de forma preventiva. ¿O eso arruinará algo?

Posible/etc/hdparm.confejemplo (¿funcionará esto?):

/dev/sda {
        write_cache = off
}
/dev/sdb {
        write_cache = off
}
/dev/sdc {
        write_cache = off
}
/dev/sdd {
        write_cache = off
}

Nuevamente, es posible que esas unidades ni siquiera existan todavía... Simplemente cubriendo tantas letras del alfabeto de manera preventiva, para que pase lo que pase, write_cache esté desactivado. Sin embargo, creo que tiene que haber una manera mejor que esta.

¿Alguna otra idea? ¿O mejores enfoques? ¡Gracias!

Respuesta1

Debes utilizar la opción -K. Del hombre hdparm

   -k     Get/set the "keep_settings_over_reset" flag for the drive.  When this flag is set, the drive will preserve the -dmu settings
          over a soft reset, (as done during the error recovery sequence).  This option defaults to off, to prevent drive reset  loops
          which  could  be caused by combinations of -dmu settings.  The -k option should therefore only be set after one has achieved
          confidence in correct system operation with a chosen set of configuration settings.  In practice, all that is typically nec‐
          essary  to  test a configuration (prior to using -k) is to verify that the drive can be read/written, and that no error logs
          (kernel messages) are generated in the process (look in /var/adm/messages on most systems).

   -K     Set the drive´s "keep_features_over_reset" flag.  Setting this enables the drive to retain the settings for -APSWXZ  over  a
          soft reset (as done during the error recovery sequence).  Not all drives support this feature.

información relacionada