summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSage Weil <sage@inktank.com>2013-06-26 18:27:49 -0700
committerSage Weil <sage@inktank.com>2013-06-26 18:28:01 -0700
commit8a17f33b14d858235dfeaa42be1f4842dcfd66d2 (patch)
tree08138c289d8b670a7136464666aabe502fec56b7
parentca55c3416e02398991c9789b1590d721fbca212d (diff)
downloadceph-8a17f33b14d858235dfeaa42be1f4842dcfd66d2.tar.gz
ceph-disk: do not mount over an osd directly in /var/lib/ceph/osd/$cluster-$id
If we see a 'ready' file in the target OSD dir, do not mount our device on top of it. Among other things, this prevents ceph-disk activate on stray disks from stepping on teuthology osds. Fixes: #5445 Signed-off-by: Sage Weil <sage@inktank.com>
-rwxr-xr-xsrc/ceph-disk7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/ceph-disk b/src/ceph-disk
index 392af4a78b7..0c1ffb965af 100755
--- a/src/ceph-disk
+++ b/src/ceph-disk
@@ -1476,8 +1476,15 @@ def mount_activate(
parent_dev = os.stat('/var/lib/ceph/osd').st_dev
if dst_dev != parent_dev:
other = True
+ else if os.listdir('/var/lib/ceph/osd/{cluster}-{osd_id}'.format(
+ cluster=cluster,
+ osd_id=osd_id,
+ )):
+ other = True
+
except OSError:
pass
+
if active:
LOG.info('%s osd.%s already mounted in position; unmounting ours.' % (cluster, osd_id))
unmount(path)