¿Cómo monte el subdirectorio en un disco duro en Linux?

13

Supongamos que tengo dos discos duros (A, B) y que tengo los siguientes directorios:

  • / var / www
  • / var / www / upload

Actualmente si subo un archivo a / var / www OR / var / www / upload; se guardará en la unidad A.

¿Cómo hago que la carpeta / var / www / upload apunte a la unidad B. Entonces, si subo un archivo a / var / www / upload, se guardará en la unidad B pero cuando subo un archivo a / var / www, se guardará en la unidad A.


fuente

Respuestas:

23

Supuse que el disco A no está montado como el sistema de archivos raíz (/). Si es así, simplemente ignore las líneas con driveA.

Edite su / etc / fstab:

/ dev / diskA / var / www / auto por defecto 1 2
/ dev / diskB / var / www / upload valores predeterminados automáticos 1 2

Puede reemplazar "auto" por el sistema de archivos que tiene en esa partición, pero lo anterior debería funcionar de todos modos.

Si los discos A y B están montados en otro lugar, puede intentar simular:

ln -s / ruta / a / driveA_mountpoint / var / www /
ln -s / ruta / a / driveB_mountpoint / var / www / upload

Nota: / var / www y el directorio "upload" en la unidad A no deben existir o esto fallará.

Personalmente prefiero usar la opción de enlace de mount:

mount -o bind / var / www / / path / to / driveA_mountpoint
mount -o bind / var / www / upload / path / to / driveB_mountpoint

Sin embargo, considere editar / etc / fstab, probablemente sea la mejor manera.

guardaespaldas
fuente
3
Esta respuesta supone que la unidad a no es la unidad raíz. si A es la unidad raíz, solo necesita crear un directorio vacío (/ var / www / upload), luego cree una entrada fstab para la unidad b en el ejemplo anterior.
Roy Rico
3
@minder - para poner una montura de enlace en tu /etc/fstab:/path/orig /new/path/mount bind defaults 0 0
warren
1
Tiene un error tipográfico en el primer bloque de código: /dev/diskB /ver/www/uploadvervar
Frederic Leitenberger
3

está montado el disco duro B? Si esto es,

ln -s /path/to/hard/drive/B/mount/point /var/www/upload

De otra manera

mount -t <fstype> -o defaults /dev/<hard driver B> /var/www/upload
Cian
fuente
esto funcionará, pero creo que agregarlo al fstab será una mejor solución porque se volverá a montar cuando la máquina arranque, mientras que no lo haría en su ejemplo.
Roy Rico