summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Whitaker <mageia@martin-whitaker.me.uk>2017-02-10 23:43:47 +0000
committerMartin Whitaker <mageia@martin-whitaker.me.uk>2017-02-12 12:57:27 +0000
commitc5512813ad4795f5f3596a7963b84d821604f212 (patch)
tree0c61addfd58e0126e5b882f8841afbedbafc2816
parentbd4c2c2f5c8b92e1cd0e72ba5471dd526c535279 (diff)
downloaddrakx-c5512813ad4795f5f3596a7963b84d821604f212.tar
drakx-c5512813ad4795f5f3596a7963b84d821604f212.tar.gz
drakx-c5512813ad4795f5f3596a7963b84d821604f212.tar.bz2
drakx-c5512813ad4795f5f3596a7963b84d821604f212.tar.xz
drakx-c5512813ad4795f5f3596a7963b84d821604f212.zip
Inhibit udisks2 when running drakdisk (mga#20247).
This prevents disks/partitions being auto-mounted by e.g. Thunar when drakdisk probes the disks or makes changes, which can lead to disk corruption.
-rw-r--r--perl-install/Makefile.drakxtools4
-rwxr-xr-xperl-install/standalone/drakdisk10
2 files changed, 13 insertions, 1 deletions
diff --git a/perl-install/Makefile.drakxtools b/perl-install/Makefile.drakxtools
index a8b5a1ae1..e418c9e6d 100644
--- a/perl-install/Makefile.drakxtools
+++ b/perl-install/Makefile.drakxtools
@@ -47,9 +47,11 @@ install:
mv -f $(SBINDEST)/drak{autologin,auth,boot,clock,font,perm,sec,ups,xservices} $(LIBEXECDEST)
mv -f $(SBINDEST)/logdrake $(LIBEXECDEST)/draklog
mv -f $(SBINDEST)/drakedm $(LIBEXECDEST)/drakdm
- mv -f $(SBINDEST)/diskdrake $(LIBEXECDEST)/drakdisk
mv -f $(SBINDEST)/harddrake2 $(LIBEXECDEST)/drakhardware
mv -f $(SBINDEST)/scannerdrake $(LIBEXECDEST)/drakscanner
+ # diskdrake is called by the drakdisk wrapper
+ mv -f $(SBINDEST)/diskdrake $(LIBEXECDEST)
+ install -D standalone/drakdisk $(LIBEXECDEST)
install -m 644 *.pm $(LIBDEST)
diff --git a/perl-install/standalone/drakdisk b/perl-install/standalone/drakdisk
new file mode 100755
index 000000000..a40edf5ed
--- /dev/null
+++ b/perl-install/standalone/drakdisk
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+CMD=/usr/libexec/diskdrake
+
+ps -C udisksd > /dev/null
+if [ $? -eq 0 -a -x /usr/lib/udisks2/udisks2-inhibit ] ; then
+ /usr/lib/udisks2/udisks2-inhibit $CMD "$@"
+else
+ $CMD "$@"
+fi