2 votos

Intentando montar mhddfs / osxfuse mediante fstab

Estoy intentando crear un pool de discos virtuales usando osxFuse y mhddfs.

Estoy en OSX 10.9.5. He probado osxFuse v2.7.3 instalado a través del instalador de paquetes. También he probado el método de instalación homebrew cask. He tenido las mismas experiencias independientemente del método de instalación.

  1. Este comando me funciona:

    $ sudo mhddfs /Volumes/D01,/Volumes/D12,/Volumes/D103,/Volumes/D110 /mnt/DrivePoolA -o allow_other,volname=DrivePoolA
  2. Sin embargo, creo que también debería ser capaz de lograr lo mismo utilizando el comando 'mount', pero no he tenido suerte. He intentado una variedad de cosas similares a la línea de abajo. ¿Alguna sugerencia? ¿Qué me falta?

    sudo mount -t mhddfs -o allow_other,volname=DrivePoolA /Volumes/D01,/Volumes/D12,/Volumes/D103,/Volumes/D110
  3. Por último, y más importante, estoy intentando montar el drivePool con fstab. Mi fstab se ve así:

    # <file system>  <mount point> <type>  <options>       <dump>  <pass>
    mhddfs#/Volumes/D01,/Volumes/D12/,/Volumes/D103/,/Volumes/D110        /mnt/DrivePoolA    osxfusefs    allow_other,volname=DrivePoolA 0 0

    Sin embargo, cuando ejecuto sudo mount -a en ese fstab, recibo un mensaje de error que dice:

    Este programa no está pensado para ser llamado directamente. La biblioteca OSXFUSE lo llama. Opciones de montaje disponibles: [seguido de la lista de opciones de montaje]`

Ahora, estoy asumiendo que ese error viene de osxfuse_mounter, porque encontré el txt del error en el código fuente del proyecto 'support' en github. Asumo que el error está siendo pasado a través del programa 'mount', que está escupiendo de nuevo la línea de comandos.

También he probado el siguiente fstab, omitiendo las opciones, dump y pass:

# <file system>  <mount point> <type>  <options>       <dump>  <pass>
mhddfs#/Volumes/D01,/Volumes/D12/,/Volumes/D103/,/Volumes/D110    /mnt/DrivePoolA    osxfusefs

Después de correr sudo mount -a con esta configuración no obtengo errores, pero parece que no pasa nada.

¿Alguna sugerencia?

1voto

klanomath Puntos 19587

Aquí hay una manera de montar osxfuse / mhddfs a través de LaunchDaemon

Requisitos previos:
- existente /mnt/DrivePoolA
- algunos volúmenes (en el ejemplo de abajo Test01-Test03 montado en /Volumes)
- OSXFuse 2.7.3
- mhddfs vía macports

  1. Crear un archivo com.oxsfuse.mhddfs.plist en /Library/LaunchDaemons/

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>Label</key>
        <string>com.oxsfuse.mhddfs</string>
        <key>ProgramArguments</key>
        <array>
            <string>sh</string>
            <string>/usr/local/mhddfs-start.sh</string>
        </array>
        <key>RunAtLoad</key>
        <true/>
    </dict>
    </plist>
  2. Entra en la Terminal:

     sudo chown root:wheel /Library/LaunchDaemons/com.oxsfuse.mhddfs.plist 
     sudo chmod 644 /Library/LaunchDaemons/com.oxsfuse.mhddfs.plist 
  3. Crear un archivo mhddfs-start.sh en /usr/local/

    #!/bin/bash
    
    kextload /Library/Filesystems/osxfusefs.fs/Support/osxfusefs.kext
    sysctl -w osxfuse.tunables.allow_other=1
    /opt/local/bin/mhddfs /Volumes/Test01,/Volumes/Test02,/Volumes/Test03 /mnt/DrivePoolA -o allow_other,loglevel=0,logfile=/tmp/mhddfs1.log,volname=DrivePoolA
    sleep 5
    /opt/local/bin/mhddfs /Volumes/Test01,/Volumes/Test02,/Volumes/Test03 /mnt/DrivePoolA -o allow_other,loglevel=0,logfile=/tmp/mhddfs2.log,volname=DrivePoolA
  4. Entra en la Terminal:

     sudo chown root:wheel /usr/local/mhddfs-start.sh  

Puedes almacenar el shell script en otro lugar pero asegúrate de adaptar <string>/usr/local/mhddfs-start.sh</string> en el archivo com.oxsfuse.mhddfs.plist.

Después de algunas pruebas prolongadas en una VM de Parallels (Mavericks con OSXFuse 2.7.3 y mhddfs de macport) conseguí montarlo de forma fiable. Y sí, ¡ejecutar mhddfs dos veces es la intención!

Puede omitir el loglevel=0,logfile=/tmp/mhddfs1/2.log, -parte en el shell script - era sólo para probar.

Por favor, haga algunas pruebas con los volúmenes antes de utilizarlos en un entorno productivo.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X