Cercando di montare mhddfs / osxfuse via fstab

2

Sto provando a creare un pool di unità virtuali utilizzando osxFuse e mhddfs.

Sono su OSX 10.9.5. Ho provato osxFuse v2.7.3 installato tramite il programma di installazione del pacchetto. Ho anche provato il metodo di installazione di cask homebrew. Ho avuto le stesse esperienze indipendentemente dal metodo di installazione.

  1. Questo comando funziona per me:

    $ sudo mhddfs /Volumes/D01,/Volumes/D12,/Volumes/D103,/Volumes/D110 /mnt/DrivePoolA -o allow_other,volname=DrivePoolA
    
  2. Tuttavia, credo che dovrei essere in grado di realizzare lo stesso usando il comando "mount", ma non ho avuto fortuna. Ho provato una varietà di cose simili alla linea qui sotto. Eventuali suggerimenti? Cosa mi manca

    sudo mount -t mhddfs -o allow_other,volname=DrivePoolA /Volumes/D01,/Volumes/D12,/Volumes/D103,/Volumes/D110
    
  3. Infine, e soprattutto, sto provando a montare drivePool con fstab. Il mio fstab ha questo aspetto:

    # <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
    

    Tuttavia, quando eseguo sudo mount -a su quel file fstab, viene visualizzato un messaggio di errore che indica:

    This program is not meant to be called directly. The OSXFUSE library calls it. Available mount options: [followed by the list of mount options]'

Ora, presumo che quell'errore provenga da osxfuse_mounter, perché ho trovato il txt dell'errore nel codice sorgente del progetto "support" su github. Presumo che l'errore venga passato al programma di "mount", che sta restituendo la riga di comando.

Ho anche provato il seguente fstab, omettendo le opzioni, dump e pass:

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

Dopo aver eseguito sudo mount -a con questa configurazione non ottengo errori, ma non sembra accadere nulla.

Qualche suggerimento?

    
posta johntrandall 02.01.2015 - 06:37
fonte

1 risposta

1

Ecco un modo per montare osxfuse / mhddf tramite LaunchDaemon

Prerequisiti:
- esistente / mnt / DrivePoolA
- alcuni volumi (nell'esempio sotto Test01-Test03 montato su / Volumi)
- OSXFuse 2.7.3
- mhddfs tramite macports

  1. Crea un file com.oxsfuse.mhddfs.plist in / Libreria / 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. Inserisci nel terminale:

     sudo chown root:wheel /Library/LaunchDaemons/com.oxsfuse.mhddfs.plist 
     sudo chmod 644 /Library/LaunchDaemons/com.oxsfuse.mhddfs.plist 
    
  3. Crea un file mhddfs-start.sh in / 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. Inserisci nel terminale:

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

Puoi memorizzare lo script della shell da qualche altra parte, ma assicurati di adattare <string>/usr/local/mhddfs-start.sh</string> nel file com.oxsfuse.mhddfs.plist.

Dopo alcuni test prolungati in una macchina virtuale Parallels (Mavericks con OSXFuse 2.7.3 e machddfs di macport) l'ho montata in modo affidabile. E sì, l'esecuzione di mhddf due volte è destinata!

Puoi omettere loglevel=0,logfile=/tmp/mhddfs1/2.log, -part nello script della shell: era solo a scopo di test.

Effettuare alcuni test con i volumi prima di utilizzarli in un ambiente produttivo.

    
risposta data 03.01.2015 - 00:32
fonte

Leggi altre domande sui tag