Tengo algunas unidades SSD montados sobre /dev/sda1y /dev/sdb1en el servidor SLES 11 SP2, y yo era capaz de ajustar la configuración de la lectura anticipada con blockdev --setra:
sudo blockdev --setra 4096 /dev/sda
sudo blockdev --setra 4096 /dev/sdb
sudo blockdev --getra /dev/sda
4096
sudo blockdev --getra /dev/sdb
4096
¿Cómo persisto esta configuración en el arranque? Específicamente, ¿hay una configuración correspondiente sysctl.confo tendré que conformarme con un script rc para que esto suceda?
block-device
ssd
sles
Banjer
fuente
fuente

Respuestas:
Te sugiero que uses udev para establecer parámetros para los discos SSD. De esta forma, puede configurar un planificador de colas específico que sea más apropiado para SSD, etc. También puede aplicar parámetros solo a algunos de los dispositivos, en función de muchos parámetros.
Puede obtener los atributos específicos necesarios para que coincidan con sus dispositivos (por ejemplo, el modelo de disco y el fabricante) ejecutando:
y verificando todos los pares ATTR para su dispositivo de bloque.
Otro beneficio es la capacidad de establecer los parámetros para los discos conectables (por ejemplo, en recintos o bahías de intercambio dinámico) y la configuración se aplicará a todos los dispositivos nuevos, siempre que los parámetros del dispositivo coincidan.
Aquí hay un ejemplo para aplicar un planificador específico para SSD Intel, su valor de lectura deseado (4096 bloques = 2048 kb), y también aplicar un planificador diferente para todos los demás SSD:
Después de guardar el archivo, puede probar si su regla coincidirá con el dispositivo y qué hará udev usando udevadm:
Esto imprime todas las reglas que carga udev, qué coincide, qué no y qué decisiones tomará udev cuando se conecte el dispositivo.
Espero que esto ayude.
fuente
OCZ vertex 3's, pero no creo que sus reglas sugeridas sean específicas de Intel, excepto por el campo del modelo, ¿correcto?udevadm infopara encontrar los parámetros específicos de su hardware.Tenga en cuenta que la lectura anticipada se puede configurar al menos mediante
/sys(/sys/class/block/sda/queue/read_ahead_kb)blockdevyhdparm(hdparm -a).hdparmen Debian y sus derivados viene con unhdparm.confatributo que especifica los atributos por dispositivo que se establecerán en el arranque y en el hot-plug (medianteudevreglas).Entonces puedes tener:
(es mejor usar ID que las
sdaque pueden cambiar de un arranque a otro).fuente
hdparmen SLES 11, pero parece que no puedo localizarhdparm.conf. Google parece decirme que se necesita un script rc para que cualquierhdparmconfiguración persista, al menos en SuSE.hdparmconsecuencia. He actualizado la respuesta./sysruta, aunque laudevregla @zorlem es bastante buena para la configuración de arranque.No hay nada que corresponda
sysctl, así que sí,/etc/rc.locales una forma o similar. Y tenga cuidado, personalmente noté que en Ubuntu, esos cambios se desvían aún más, incluso se establecen una vez después del arranque, por lo que incluso podría tener sentido usarloscrontabpara mantenerlos.fuente