diff --git a/manifests/files.pp b/manifests/files.pp
index e4380e4e0db8110b385caa47e461bee034c8120a..c92dc0c7267b1cc491f650ba81c8e84fb62ec82a 100644
--- a/manifests/files.pp
+++ b/manifests/files.pp
@@ -52,13 +52,6 @@ class postfix::files {
     seltype => $postfix::params::aliasesseltype,
   }
 
-  # Aliases
-  exec { 'newaliases':
-    command     => '/usr/bin/newaliases',
-    refreshonly => true,
-    subscribe   => File['/etc/aliases'],
-  }
-
   # Config files
   if $mastercf_source {
     $mastercf_content = undef
diff --git a/manifests/service.pp b/manifests/service.pp
index 15c171333b3f963b5d4b3bd4e59c7d2ce2fa9ef0..77932fcb68eb3d8d33e86bb8ce04a350bbce3010 100644
--- a/manifests/service.pp
+++ b/manifests/service.pp
@@ -11,6 +11,13 @@ class postfix::service {
     hasstatus => true,
     restart   => $::postfix::params::restart_cmd,
   }
+  # Aliases
+  exec { 'newaliases':
+    command     => '/usr/bin/newaliases',
+    refreshonly => true,
+    subscribe   => File['/etc/aliases'],
+    require     => Service['postfix'],
+  }
   if $::osfamily == 'RedHat' {
     alternatives { 'mta':
       path    => '/usr/sbin/sendmail.postfix',