Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Mac OS X Server 10.6.8
LTO 5 drive: IBM System Storage TS2250 Tape Drive
HBA: ATTO's ExpressSAS H680

I've installed the HBA and LTO into my Mac and I'm able to format and mount the tape media. I'd like to have the tape media mount at system Startup. I created a LaunchAgent:

<?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.pilotware.ltfs_mount</string>
    <key>ProgramArguments</key>
    <array>
            <string>/usr/local/bin/ltfs</string>
            <string>/mnt/ltfs</string>
            <string>-o</string>
            <string>devname=0</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
</dict>
</plist>


However, whenever I restart the machine, the tape media will not mount, although the system log shows that it did mount:

9/19/12 3:15:32 PM  com.pilotware.ltfs_mount[321]   LTFS9015W Setting the locale to 'en_US.UTF-8'. If this is wrong, please set the LANG environment variable before starting ltfs.
9/19/12 3:15:32 PM  com.pilotware.ltfs_mount[321]   LTFS14000I LTFS starting, LTFS version 1.2.5 (201202290), log level 2
9/19/12 3:15:32 PM  com.pilotware.ltfs_mount[321]   LTFS14058I LTFS Format Specification version 2.0.0
9/19/12 3:15:32 PM  com.pilotware.ltfs_mount[321]   LTFS14063I Sync type is "time", Sync time is 300 sec
9/19/12 3:15:32 PM  com.pilotware.ltfs_mount[321]   LTFS12158I Opening a device through iokit driver (0)
9/19/12 3:15:32 PM  com.pilotware.ltfs_mount[321]   LTFS12118I Drive identification is 'ULT3580-HH5     '
9/19/12 3:15:32 PM  com.pilotware.ltfs_mount[321]   LTFS12162I Vendor ID is IBM     
9/19/12 3:15:32 PM  com.pilotware.ltfs_mount[321]   LTFS12159I Firmware revision is BBNF
9/19/12 3:15:32 PM  com.pilotware.ltfs_mount[321]   LTFS12160I Drive serial is 1068062747
9/19/12 3:15:32 PM  com.pilotware.ltfs_mount[321]   LTFS17160I Maximum device block size is 1048576
9/19/12 3:15:32 PM  com.pilotware.ltfs_mount[321]   LTFS11005I Mounting the volume
9/19/12 3:15:32 PM  com.pilotware.ltfs_mount[321]   LTFS12015I Attempting to load the medium
9/19/12 3:15:52 PM  com.pilotware.ltfs_mount[321]   LTFS11031I Volume mounted successfully


If I run 'mount', the mount is not listed. If I run the command manually, /usr/local/bin/ltfs /mnt/ltfs -o devname=0, the tape media mounts, mount:
ltfs on /mnt/ltfs (osxfusefs, nodev, nosuid, synchronous, mounted by pw)

I tried encapsulating the command into a bash script and having the LaunchAgent execute the script to no avail. I even tacked on more options, /usr/local/bin/ltfs /mnt/ltfs -o devname=0 -o gid=20 -o uid=501 -o work_directory=/tmp/ltfs

I'm not sure if it's Mac OS X (I saw /private/etc/security/audit_control and /etc/security/audit_class open when launchd executes, but not when I do it manually), ltfs (1.2.5) or FUSE (IBM uses OSXFUSE 2.3.8).
Ironically, if I throw the bash command into an Automator app and have it launch as a User Login Item via System Preferences, the tape media mounts.

The permissions of the LaunchAgent are correct, I've tried LaunchDaemons and User LaunchAgents. I even edited /etc/security/audit_control, removing policy argv and stripping out naflags.

I don't get it. Any help appreciated.

share|improve this question

1 Answer 1

Had to add:

<string>-f</string>

to the ProgramArguments array in the LaunchAgent for FUSE to foreground the operation and execute properly...

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.