27 votes

Impossible d'ouvrir la boîte aux lettres /var/mail/USER : Permission refusée Pas de courrier pour USER

Lorsque je lance la commande su - fmaster mail

J'obtiens l'erreur suivante :

Cannot open mailbox /var/mail/fmaster: Permission denied No mail for fmaster

Je me connecte également en tant que fmaster. terminal -> mail.

/var/mail/fmaster: Permission denied No mail for fmaster

J'ai essayé d'exécuter ce code mais j'obtiens toujours la même erreur

sudo touch /var/mail/$USER
sudo chown $USER:mail /var/mail/$USER
sudo chmod o-r /var/mail/$USER
sudo chmod g+rw /var/mail/$USER

21voto

Radu Rădeanu Points 156862

L'utilisateur fmaster n'est probablement pas dans le mail groupe. Vous pouvez exécuter groups pour vérifier dans quels groupes vous vous trouvez.

Ajouter fmaster au groupe mail utiliser la commande suivante :

sudo adduser fmaster mail

Et après la course :

sudo chmod ug+rw /var/mail/fmaster

11voto

J Smith Points 211

Si vous avez suivi les conseils de Radu Radeanu, gardez à l'esprit que

/var/mail/fmaster

n'existera pas tant qu'il n'aura pas reçu son premier courriel. Vous devriez donc envoyer un courriel à fmaster avant de poursuivre le dépannage.

5voto

Hay T Points 51

J'ai confirmé que l'envoi d'un courriel à l'utilisateur pour la première fois créait bien le répertoire de courrier pour l'utilisateur. Il suffit de le faire :

mail fmaster@localhost

/var/mail/fmaster sera créé avec la bonne permission. L'utilisateur, fmaster, peut alors utiliser la commande mail pour lire le courrier.

1voto

therefriedbean Points 249

Essayez de définir la variable mail. Les courriels que vous envoyez pourraient être dirigés vers ce répertoire.

MAIL=/home/votre_utilisateur/Maildir

Réessayez ensuite la commande mail.

courrier

https://help.ubuntu.com/community/PostfixBasicSetupHowto

0voto

Elliptical view Points 969

La première chose à faire est de déterminer le programme de messagerie que vous utilisez lorsque vous lancez l'application mail .

Faites ceci :

$ command -v mail               # (Similar to the old `which`.) You'll likely see:
/usr/bin/mail

Voyez ensuite ce qu'il en est :

$ ls -l /usr/bin/mail           # And now you'll likely see (at least for Debian):
lrwxrwxrwx 1 root root 22 Feb 17  2019 /usr/bin/mail -> /etc/alternatives/mail

Ensuite, il faut voir où il se trouve :

$ ls -l /etc/alternatives/mail  # And I get:
lrwxrwxrwx 1 root root 23 Dec 10 19:58 /etc/alternatives/mail -> /usr/bin/mail.mailutils

Et enfin, regardez ceci :

$ ls -l /usr/bin/mail.mailutils
-rwxr-xr-x 1 root root 218160 Nov 18  2020 /usr/bin/mail.mailutils

Ainsi, lorsque vous exécutez mail , vous êtes en train d'exécuter mail.mailutils . Notez également qu'il appartient à root, mais que tout le monde a le droit de le lire et de l'exécuter.


En consultant la documentation sur la configuration du mailutils nous constatons qu'il existe de nombreuses méthodes de configuration possibles, notamment :

  1. Configuration à l'échelle du système en /etc/mailutils.conf ou

  2. Les dérogations de l'utilisateur en /home/[your-username]/.mail ou même

  3. Le démarrage est remplacé par mail --file /var/mail/[your-username]

Les réglages de la méthode 2 l'emportent sur ceux de la méthode 1, et ceux de la méthode 3 l'emportent sur ceux des méthodes 2 et 1.

Un point important est que le format de la boîte aux lettres ne doit pas nécessairement être mbox (fichiers uniques de grande taille avec plusieurs messages dans chaque fichier). Il peut également s'agir mailbox (ou une arborescence de fichiers individuels). D'autres formats sont également disponibles, comme mh .

Pour les deux premières options ci-dessus, vous voudrez probablement utiliser une URL

mailbox {
       # Create mailbox URL using PATTERN.  
       #   (preferred way of configuring mailbox locations)
       mailbox-pattern PATTERN;
}

Comme ceci :

mailbox { mailbox-pattern "/var/mail/${user}"; }

Un autre point important est que votre système dispose de deux emplacements pour vos boîtes aux lettres :

  • Les messages entrants sont regroupés en un seul endroit, généralement /var/mail/[username] et
  • les messages lus sont, selon le format de la boîte aux lettres, dans l'un ou l'autre des formats suivants :
    • /home/[your-username]/mbox o
    • /home/[your-username]/mailbox/* .

Si vous utilisez l'un des programmes mailutils, vous pouvez voir comment votre système est configuré avec :

$ mailutils info           # which gives you something like this:
VERSION=3.10
SYSCONFDIR=/etc
MAILSPOOLDIR=/var/mail
SCHEME=mbox
LOG_FACILITY=mail
...

Enfin, ne confondez pas les deux utilisations différentes du terme "spool" en rapport avec le courrier. exim4 dispose de ce qu'il appelle un spool, qui contient les messages en attente de livraison, et lorsque vous lisez des courriers électroniques, certains disent que vous lisez à partir du spool du courrier. Il est probablement préférable de se rappeler que vous lisez à partir d'une boîte aux lettres, et que seul exim4 possède un spool. Pour les messages livrés localement, exim4 lit un message à partir de son spool, et le place dans votre boîte aux lettres, normalement dans /var/mail/[your-username] si vous utilisez mbox .

Notez également que vous devez être dans le mail groupe comme d'autres l'ont précisé plus haut. Ce qu'ils ne vous ont pas dit, c'est qu'il vous faudra peut-être redémarrer pour que votre ajout au groupe de messagerie soit pris en compte et apparaisse lorsque vous ouvrez une fenêtre de terminal. Le simple fait d'ouvrir une autre fenêtre de terminal ne vous fera pas entrer dans ce groupe, et le fait de se déconnecter et de se reconnecter ne résoudra pas le problème non plus.


Maintenant que vous savez quelle boîte aux lettres vous essayez de lire, vous pouvez consulter ses autorisations pour voir si vous devez les mettre à jour ou non.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X