SSD/HDD

Trucos de optimización con un disco duro ssd (128GB) y un disco duro mecánico (hdd) (1TB) en una nueva laptop.

Se logra: - Alta velocidad - Alta disponibilidad - Disponibilidad de mucho espacio - Evitar daño por escritura excesiva al ssd - Bajo consumo energético

Así:

ssd:  /boot 1GB
      RAID1 45GB -> /
      swap 16GB
      bcache 66GB
hdd:  /boot 1GB (copia)
       RAID1 45GB  (mostly-write) -> /
       /home/user/data (con el bcache de arriba) (950GB)
/ -> con ext4 commit interval 300segundos
/home/user/data -> ext4 con commit interval 300segundos
/tmp ramdisk

Así se logra lo siguiente:

- Alta velocidad:

  1. mostly-write en el raid1 hacen que el ssd sea usado mayoritariamente para lecturas
  2. Swap en el ssd hace que el hibernate sea muy rápido
  3. bcache en el ssd: acelera la lectura de los archivos más usados de /home/user/data del hdd de 950GB
  4. /tmp en RAM

- Alta disponibilidad: RAID1 para /

    Si uno de los dos discos duros se daña el sistema sigue funcionando normalmente.

- Disponibilidad de muchos teras con acceleración de velocidad parcial: bcache en ssd con el hdd grande.

- Evitar write-amplification y wearing del ssd:

  1. bcache evita escribir datos random access y trata de hacer escrituras por bloque
    1. ext4 commit interval 300segundos: espera que hayan muchos datos para escribirlos evitando random access writes.
    2. /tmp en RAM

- Low power:

  1. En batería se puede sacar del RAID1 al disco hdd y apagarlo y así ahorrar energía.
  2. bcache durante lectura evitará accesos al hdd evitando encenderlo.

Referencias: http://dustiesblog.blogspot.com/2012/12/ssd-optimisation-part-2-large-commit.html

http://askubuntu.com/questions/173094/how-can-i-use-ram-storage-for-the-tmp-directory-and-how-to-set-a-maximum-amount

https://www.kernel.org/doc/Documentation/bcache.txt

https://wiki.debian.org/SSDOptimization

https://www.linux-tips-and-tricks.de/en/general/246-how-to-increase-lifetime-of-ssd-on-linux

http://superuser.com/questions/664400/ssd-cache-to-minimize-hdd-spin-up-time

https://wiki.debian.org/Multi%20HDD/SSD%20Partition%20Scheme

http://blog-vpodzime.rhcloud.com/?p=45

https://github.com/stec-inc/EnhanceIO/wiki/PERFORMANCE-COMPARISON-AMONG-dm-cache,-bcache-and-EnhanceIO

https://www.redhat.com/archives/dm-devel/2013-June/msg00026.html

https://www.linux.com/learn/using-bcache-soup-your-sata-drives

https://www.linux-tips-and-tricks.de/en/general/246-how-to-increase-lifetime-of-ssd-on-linux