diff --git a/package/mountd/Makefile b/package/mountd/Makefile
index 44e3082f6b211b003eb89abe91b4dab81f9c5f39..4bf88177981489aab1248c0e9b578f2a69f847a1 100644
--- a/package/mountd/Makefile
+++ b/package/mountd/Makefile
@@ -1,11 +1,11 @@
-# Copyright (C) 2009-2011 OpenWrt.org
+# Copyright (C) 2009-2012 OpenWrt.org
 # All rights reserved.
 
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=mountd
 PKG_VERSION:=0.1
-PKG_RELEASE:=5
+PKG_RELEASE:=6
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:=http://mirror2.openwrt.org/sources
diff --git a/package/mountd/files/mountd.init b/package/mountd/files/mountd.init
index b861b5dda487ea99155f36c1154ce97dbab5958c..c294c50f5c8aefaca7b8b81a244875e0ca85e41c 100755
--- a/package/mountd/files/mountd.init
+++ b/package/mountd/files/mountd.init
@@ -1,12 +1,19 @@
 #!/bin/sh /etc/rc.common
+
 START=80
 
+SERVICE_DAEMONIZE=1
+SERVICE_WRITE_PID=1
+SERVICE_PID_FILE=/var/run/mountd.pid
+
+MOUNTD_BIN=/sbin/mountd
+
 start()
 {
-	/sbin/mountd
+	service_start $MOUNTD_BIN -f
 }
 
 stop()
 {
-	killall mountd
+	service_stop $MOUNTD_BIN
 }
diff --git a/package/mountd/patches/040-optional-daemonize.patch b/package/mountd/patches/040-optional-daemonize.patch
new file mode 100644
index 0000000000000000000000000000000000000000..4d159ec668f0f30150775bc98978d0c5584db466
--- /dev/null
+++ b/package/mountd/patches/040-optional-daemonize.patch
@@ -0,0 +1,13 @@
+--- a/main.c
++++ b/main.c
+@@ -13,7 +13,9 @@
+ 
+ int main(int argc, char *argv[])
+ {
+-	daemon(0,0);
++	if ((argc < 2) || strcmp(argv[1], "-f"))
++		daemon(0,0);
++
+ 	daemonize = 1;
+ 	log_start();
+ 	log_printf("Starting OpenWrt (auto)mountd V1\n");