¿Cómo hacer que mi script PHP use el segundo disco duro?

1

Tengo dos unidades de disco duro SATA conectadas a mi servidor como se muestra a continuación:

[root@cl-185 /]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1             222G  166G   45G  79% /
tmpfs                 2.0G     0  2.0G   0% /dev/shm

[root@cl-185 /]# fdisk -l | grep Disk
Disk /dev/sda: 250.0 GB, 250000000000 bytes
Disk /dev/sdb: 2000.3 GB, 2000398934016 bytes

Ahora, siendo un novato de Linux, necesito ayuda en dos preguntas:

1) ¿Por qué solo se muestra 'sda1' cuando se usa df -h para obtener el uso de espacio en disco, y qué más se debe hacer para verificar las estadísticas de 'sdb'?

2) Mi script PHP necesita guardar muchos archivos 'caché', cómo hacer que el script use el segundo disco para guardar los archivos; me refiero a qué ruta debo editar en mi script (actual es '/ var / www / html / tmp ')?

Gracias

DeepeshAgarwal
fuente

Respuestas:

4

Primero debe montar sdb en un punto de montaje, luego configurar su script para usar una ruta dentro de ese punto de montaje.

Es decir, si monta / dev / sdb1 en "/ var / storage", puede crear la carpeta "/ var / storage / cache" y usar esa ruta para su script php.

Brevemente:
$ mkdir / var / storage
$ mount / dev / sdb1 / var / storage
$ mkdir / var / storage / cache

Desafortunadamente, esto supone que la unidad tiene un sistema de archivos y está configurada en fstab. Para obtener información más detallada sobre la configuración de un disco nuevo, probablemente debería buscar la sección correspondiente en la documentación de instalación de su distribución, pero lo esencial es:

  • Crear una partición en sdb con fdisk

  • Cree un sistema de archivos en la partición (por ejemplo con "mke2fs -j / dev / sdb1")

  • Edite / etc / fstab y agregue una línea que coincida con la partición y el sistema de archivos, algo así como: "/ dev / sdb1 / var / storage ext3 noatime 0 1"

Zarium
fuente
Gracias, ¿puedes por favor? proporcione un ejemplo sobre cómo hacer esto.
DeepeshAgarwal
Claro, ¿sabes si sdb tiene un sistema de archivos (¿alguna vez se ha montado?)
Tzarium
Gracias, hice que las cosas funcionen con la ayuda de su respuesta y algunos googleing :)
DeepeshAgarwal
1

Lista de verificación de almacenamiento en caché:

Si el tamaño total de los archivos de caché es menor que la cantidad de RAM del sistema que se puede ahorrar, utilice / dev / shm como directorio de caché. (/ dev / shm es un gran secreto y debería existir automáticamente en su sistema). Evitará la latencia adicional de hacer viajes al disco. Se puede hacer persistente haciendo una copia de seguridad al apagar y restaurando al iniciar (lo mejor es hacer que se ejecute un script de inicio antes y después de httpd)

Si el tamaño total será inferior a unas pocas decenas de GB, utilice una SSD.

Si aún no es suficiente, utilice dos SSD configurados como un conjunto de bandas RAID0.

Si el almacenamiento de archivos es masivo, solo entonces use unidades tradicionales.

Si los archivos son valiosos, utilice RAID1 o RAID10

Si tiene muchos archivos pequeños y necesita un árbol profundo para el almacenamiento de imágenes / miniaturas, utilice el sistema de archivos Reiser, ya que es el mejor para un recorrido rápido de directorios y archivos pequeños.

mkfs -t reiserfs /dev/sdb1

(y montar usando noatime).

Andy Lee Robinson
fuente