Intentando montar mhddfs / osxfuse a través de fstab

Estoy tratando de crear un grupo de unidades virtuales usando osxFuse y mhddfs.

Estoy en OSX 10.9.5. Probé osxFuse v2.7.3 instalado a través del instalador del paquete. También probé el método de instalación de barril casero. He tenido las mismas experiencias independientemente del método de instalación.

  1. Este comando funciona para mí:

    $ 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 poder lograr lo mismo usando el comando 'montar', pero no he tenido suerte. He intentado una variedad de cosas similares a la línea a continuación. ¿Alguna sugerencia? Qué me estoy perdiendo.

    sudo mount -t mhddfs -o allow_other,volname=DrivePoolA /Volumes/D01,/Volumes/D12,/Volumes/D103,/Volumes/D110
    
  3. Finalmente, y lo más importante, estoy tratando de montar 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 -aese fstab, aparece un mensaje de error que dice:

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

Ahora, asumo que ese error proviene de osxfuse_mounter, porque encontré el texto del error en el código fuente del proyecto 'soporte' en github. Supongo que el error se está pasando de nuevo al programa 'mount', que lo está escupiendo desde la línea de comando.

También probé el siguiente fstab, omitiendo las opciones, volcar y pasar:

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

Después de ejecutar sudo mount -aesta configuración, no obtengo errores, pero parece que no sucede nada.

¿Alguna sugerencia?

por favor agregue su sistema operativo actual. ¿Utiliza el OSXFuse o brew independiente?
Gracias por tus ediciones y tu interés @klanomath. Estoy en OSX 10.9.5. Probé el instalador de paquetes de osxfuse.github.io (versión 2.7.3). También lo desinstalé y probé la instalación del barril homebrew, que parece ser idéntico. He actualizado la pregunta para reflejar esta información.
¿Cómo instalaste mhddfs? No puedo encontrarlo con cerveza...
Instalé mhddfs con macports, que parece ser el único puerto viable disponible. Este es el único paquete que he instalado a través de macports. Si hay otra forma de obtenerlo, estaría ansioso por saberlo. No me gusta mezclar macports en mi sistema basado en cerveza.

Respuestas (1)

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

Requisitos previos:
– /mnt/DrivePoolA existente
– algunos volúmenes (en el siguiente ejemplo, Test01-Test03 montados en /Volumes)
OSXFuse 2.7.3
mhddfs a través de macports

  1. Cree 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. Entrar en Terminal:

     sudo chown root:wheel /Library/LaunchDaemons/com.oxsfuse.mhddfs.plist 
     sudo chmod 644 /Library/LaunchDaemons/com.oxsfuse.mhddfs.plist 
    
  3. Cree 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. Entrar en Terminal:

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

Puede almacenar el script de shell en otro lugar, pero asegúrese de adaptarlo <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), lo monté de manera confiable. Y sí, ¡se pretende ejecutar mhddfs dos veces!

Puede omitir la loglevel=0,logfile=/tmp/mhddfs1/2.log,parte - en el script de shell; fue solo con fines de prueba.

Realice algunas pruebas con los volúmenes antes de usarlos en un entorno productivo.

@johntrandall no funciona de manera confiable, pero todavía estoy trabajando en eso, de hecho, ahora mismo ;-)
@johntrandall ahora debería funcionar de manera confiable. sobrevivió a 15 reinicios...
Gracias de nuevo por esto. ¿Me puede explicar su pensamiento para la segunda ejecución?