~ubuntu-branches/ubuntu/hardy/ltspfs/hardy-updates

« back to all changes in this revision

Viewing changes to scripts/ltspfsmounter

  • Committer: Bazaar Package Importer
  • Author(s): Oliver Grawert
  • Date: 2008-02-05 11:04:43 UTC
  • mfrom: (1.1.6 upstream)
  • Revision ID: james.westby@ubuntu.com-20080205110443-76a7xuhu402v5xtt
Tags: 0.5.0~bzr20080109-3ubuntu1
* merge from debian unstable
* adjust conflicting ldm version to match our versioning scheme

Show diffs side-by-side

added added

removed removed

Lines of Context:
2
2
 
3
3
import os
4
4
import sys
5
 
from subprocess import *
 
5
from subprocess import call
6
6
 
7
7
def get_var(name):
8
8
    return os.environ.get(name)
25
25
        print >>sys.stderr, "mount failed:", e
26
26
    try:
27
27
        call(lbmount_command)
 
28
        if os.access(hidden_mount, 0):
 
29
            os.rmdir(hidden_mount)
 
30
        if os.access(root, 0):
 
31
            os.rmdir(root)
28
32
    except OSError, e:
29
33
        print >>sys.stderr, "suid mount failed:", e
30
34
 
31
35
def remove_ltspfsmount(root, dev):
32
 
    hidden_mount = "%s/%s" % (root, dev)
33
36
    lbumount_command=['lbmount', '--umount', dev]
34
37
    ltspfs_umount=['fusermount', '-uzq', root+'/'+dev]
35
38
 
42
45
    except OSError, e:
43
46
        print >>sys.stderr, "umount failed:", e
44
47
 
45
 
    if os.access(hidden_mount, 0):
46
 
        os.rmdir(hidden_mount)
47
 
 
48
48
def cleanup(user):
49
49
    known_mounts = open( '/proc/mounts', 'r' ).readlines()
50
50
    for dir in ['/media', '/tmp']:
65
65
        print 'usage: %s mountpoint add|remove|cleanup' % sys.argv[0]
66
66
        sys.exit(1)
67
67
 
 
68
    if not os.access('/dev/fuse', 2):
 
69
        sys.stderr.write('/dev/fuse not writeable\n')
 
70
        sys.exit(1)
 
71
 
68
72
    path = sys.argv[1]
69
73
    command = sys.argv[2]
70
74
    root = "/tmp/.%s-ltspfs" % get_var('USER')
 
75
    mediaroot = "/media/%s" % get_var('USER')
71
76
    conn = get_var('SSH_CONNECTION').split()[0]
72
77
    dev = path.split('/')[-1]
73
78
 
74
79
    if command=='add':
75
80
        add_ltspfsmount(conn, path, root, dev)
76
81
    elif command=='remove':
77
 
        remove_ltspfsmount(root, dev)
 
82
        remove_ltspfsmount(mediaroot, dev)
78
83
    elif command=='cleanup':
79
84
        cleanup(get_var('USER'))
80
85
    else: