diff --git a/main/lvm2/APKBUILD b/main/lvm2/APKBUILD
index d99391740d94352a9409902cbb2e4bc680168aba..4c7881e0d3fc3d7db2dc3165a24a632846884f95 100644
--- a/main/lvm2/APKBUILD
+++ b/main/lvm2/APKBUILD
@@ -1,7 +1,7 @@
 # Maintainer: Natanael Copa <ncopa@alpinelinux.org>
 pkgname=lvm2
 pkgver=2.02.48
-pkgrel=1
+pkgrel=2
 pkgdesc="Logical Volume Manager 2 utilities"
 url="http://sourceware.org/lvm2/"
 license="GPL"
@@ -9,6 +9,7 @@ depends=
 makedepends="readline-dev"
 source="ftp://sources.redhat.com/pub/$pkgname/LVM2.$pkgver.tgz
 	lvm.initd
+	lvm.confd
 	"
 subpackages="$pkgname-dev $pkgname-doc device-mapper:dm"
 
@@ -30,6 +31,7 @@ build () {
 
 	install -d "$pkgdir"/etc/lvm/archive "$pkgdir"/etc/lvm/backup
 	install -Dm755 "$srcdir"/lvm.initd "$pkgdir"/etc/init.d/lvm
+	install -Dm644 "$srcdir"/lvm.confd "$pkgdir"/etc/conf.d/lvm
 }
 
 dm() {
@@ -40,4 +42,5 @@ dm() {
 }
 
 md5sums="0d24c2709f439eeca36261e5cea68330  LVM2.2.02.48.tgz
-e60d88f78eedb9c1252deb5b9b9b978b  lvm.initd"
+6f65f902cf19f144a42b8d6aceadf395  lvm.initd
+ec36d5fe4561220304e406c5c797e71f  lvm.confd"
diff --git a/main/lvm2/lvm.confd b/main/lvm2/lvm.confd
new file mode 100644
index 0000000000000000000000000000000000000000..9d150f6efc81cb92c96ed2be502764a58f653083
--- /dev/null
+++ b/main/lvm2/lvm.confd
@@ -0,0 +1,5 @@
+# LVM should normally only be started after mdadm-raid is available
+# this is because LVM physical volumes are very often MD devices.
+
+rc_after="mdadm-raid"
+
diff --git a/main/lvm2/lvm.initd b/main/lvm2/lvm.initd
index 022cbb1e0d0b9526ecf7f2f990fb3da05f59bba4..f077d7f1d93b077e3e97d5557ccdd31216ea9924 100644
--- a/main/lvm2/lvm.initd
+++ b/main/lvm2/lvm.initd
@@ -1,5 +1,10 @@
 #!/sbin/runscript
 
+depend() {
+	before checkfs fsck
+	after hwdrivers modules device-mapper
+}
+
 dm_in_proc() {
 	local rc=0 i=
 	for i in devices misc; do