28 votos

Sendmail Error en OS X Mountain Lion

Me sale un error al intentar ejecutar sendmail. Estoy en OS X 10.8 Mountain Lion.

sendmail: fatal: chdir /Library/Server/Mail/Data/spool: No such file or directory

36voto

LevB Puntos 456

Solo tiene que ejecutar en la terminal

sudo mkdir -p /Library/Server/Mail/Data/spool
sudo /usr/sbin/postfix set-permissions
sudo /usr/sbin/postfix start

Que hizo el truco para mí.

24voto

MattK Puntos 210

Con el fin de deshacerse de todas las advertencias que he tenido que hacer lo siguiente:

sudo mkdir -p /Library/Server/Mail/Data/spool
sudo gzip /usr/share/man/man1/{postalias.1,postcat.1,postconf.1,postdrop.1,postfix.1,postkick.1,postlock.1,postlog.1,postmap.1,postmulti.1,postqueue.1,postsuper.1,sendmail.1}
sudo gzip /usr/share/man/man5/{access.5,aliases.5,bounce.5,canonical.5,cidr_table.5,generic.5,header_checks.5,ldap_table.5,master.5,mysql_table.5,nisplus_table.5,pcre_table.5,pgsql_table.5,postconf.5,postfix-wrapper.5,regexp_table.5,relocated.5,tcp_table.5,transport.5,virtual.5}
sudo gzip /usr/share/man/man8/{anvil.8,bounce.8,cleanup.8,discard.8,error.8,flush.8,local.8,master.8,oqmgr.8,pickup.8,pipe.8,proxymap.8,qmgr.8,qmqpd.8,scache.8,showq.8,smtp.8,smtpd.8,spawn.8,tlsmgr.8,trivial-rewrite.8,verify.8,virtual.8}
sudo /usr/sbin/postfix set-permissions
sudo chmod 700 /Library/Server/Mail/Data/mta
sudo /usr/sbin/postfix start

3voto

Ben King Puntos 31

La solución parece también corregir un error en un 10,8 donde el servicio de fax se ha detenido el envío de correos electrónicos después de que el 10.8 actualización.

0voto

printemps Puntos 243

TLDR: Cambiar el queue_directory variable /etc/postfix/main.cf a /var/spool/postfix.

Respuesta completa:

El mkdir -p enfoque probablemente funciona, pero sospecho que hay una solución más sencilla. Feria de advertencia, soy nuevo en Postfix, y todo esto puede ser incorrecto.

Parece distintas ediciones de Mac OS X utilizar uno de los dos directorios root de correo:

  • /var/spool/postfix
  • /Library/Server/Mail

Estos dos parecen haber sido confusa a lo largo del tiempo. (Nota /var es en realidad un enlace simbólico a /private/var, por lo que vemos a menudo los utilizan indistintamente.)

Por lo que puedo decir, /Library/Server/Mail es un directorio que Mac OS X Server utiliza para sus servicios de Correo electrónico, que dependen, pero no son los mismos, Postfix. /var/spool/postfix, por otro lado, es el preferido de directorio (p. 14) para Postfix las operaciones internas.

Hay dos principales archivos de configuración que hace referencia a estos directorios:

  • /etc/postfix/main.cf
  • /System/Library/LaunchDaemons/org.postfix.master.plist

Estás viendo los "No existe el fichero o el directorio de error," sospecho que, debido a la queue_directory variable en Postfix s main.cf se refiere a /Library/Server/Mail/Data/spool, que no existe. En regular Mac OS X (a diferencia de Servidor), la totalidad de la /Library/Server directorio no existe. En lugar de crear, trate de corregir la queue_directory variable /var/spool/postfix.

Un segundo punto de incoherencia en la configuración predeterminada para launchd, Mac OS X, el administrador del demonio. No es necesario para ejecutar Postfix todo el tiempo, como launchd puede ver un directorio para el correo saliente y sólo se ejecuta Postfix cuando hay algo para enviar. Para asegurarse de que esto va a suceder, el QueueDirectories clave org.postfix.master.plist necesidades a la lista de la maildrop subdirectorio del directorio en main.cf's queue_directory variable. Por ejemplo, he cambiado mi org.postfix.master.plist archivo para incluir:

<key>QueueDirectories</key>
<array>
        <string>/var/spool/postfix/maildrop</string>
</array>

Con estos dos directorios coherente, Postfix debe poner en marcha. Usted debería ser capaz de ver /var/log/mail.log , mientras que ejecutar:

$ sudo launchctl unload /System/Library/LaunchDaemons/org.postfix.master.plist
$ sudo launchctl load /System/Library/LaunchDaemons/org.postfix.master.plist
$ sudo launchctl start org.postfix.master

El último de estos comandos marca el comienzo de Postfix, así que usted puede ver mail.log para la depuración inmediata de comentarios, pero de nuevo no es necesario para ejecutar de manera normal. Launchd se ejecutará Postfix como sea necesario. (Si está seguro de que desea Postfix corriendo todo el tiempo, el uso de la KeepAlive clave detallada en la launchd.plist el hombre de la página.)

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by: