Jak usunąć wiadomość powitalną „Masz pocztę”


39

Kiedy otwieram terminal, pojawia się komunikat „masz pocztę”, ktoś ma pojęcie, dlaczego? Korzystam z systemu OS X, ale ponieważ jest on również oparty na systemie Unix i opiera się na plikach takich jak bashrc, bash_profile itp. Pomyślałem, że ktoś tu może wiedzieć i nie jestem pewien, czy jest to problem specyficzny dla platformy!

Odpowiedzi:


37

Wygląda na to, że coś wysłało pocztę na (i) do urządzenia za pomocą lokalnego wymiennika poczty. Najprawdopodobniej wiadomość e-mail jest automatyczną wiadomością z zainstalowanego pakietu. Po zalogowaniu wpisz mailterminal, aby przeczytać i (prawdopodobnie) usunąć odpowiednią pocztę. (Wewnątrz mailużyj, ?aby dowiedzieć się, jakie są polecenia.) Po przeczytaniu lub usunięciu nieprzeczytanej wiadomości e-mail nie zobaczysz ponownie komunikatu „Masz wiadomość”, dopóki coś innego nie wyśle ​​wiadomości w ten sam sposób. Szanse są, gdy już wiesz, co wysyła ci pocztę, możesz znaleźć opcję konfiguracji, aby zmienić miejsce, do którego ona wysyła.


26

Jest to „problem specyficzny dla platformy” :-)

Mac OS X używa domyślnej powłoki BASH, podobnie jak wiele innych systemów Un * x / Linux.

Poczta z twojego systemu jest przechowywana w skrzynce pocztowej dla twojego użytkownika, często w /var/mail/$user

Ponieważ czasami twoja skrzynka pocztowa zawiera ważne wiadomości (nieudane zadanie współdziałania itp.), Nie sprawdzaj jej za każdym razem.

BASH (i wiele innych powłok) ma funkcję o nazwie mailcheck, która wysyła twoją wiadomość przy pierwszym otwarciu terminala.

$ MAILCHECK to zmienna środowiskowa, która zawiera sekundy, kiedy należy sprawdzić, czy jest nowa poczta. Poczta jest również sprawdzana przed wyświetleniem głównego monitu. Zobacz więcej w man bash- Zmienne Bash .

Aby zapobiec sprawdzaniu nowej poczty, możesz po prostu odznaczyć $ MAILCHECK. Właściwym miejscem do tego jest plik .bashrc, który zostanie odczytany po otwarciu powłoki. Jest w twoim katalogu domowym użytkownika.

Dołącz do ~ / .bashrc:

unset MAILCHECK

aby wyłączyć wiadomość.

Oczywiście można również po prostu usunąć wiadomości e-mail, takie jak wspomniany TJ Crowder :-)


7

Używając Raspian (dystrybucja oparta na Debianie dla Raspberry Pi) nad SSH, musiałem skomentować następujący wiersz w /etc/pam.d/sshd, aby się go pozbyć.

session    optional     pam_mail.so standard noenv # [1]

4
Czy mógłbyś coś skomentować na temat tego, jak to odkryłeś? Może to być pomocne dla osób o podobnych pytaniach.
vonbrand

Znalazłem rozwiązanie na liście mailingowej. autor mówi, że potknął się o linię, grzebiąc w /etc/pam.d/sshd. Obawiam się, że to wszystko, co wiem.
Frode

To naprawiło to również dla mnie na Ubuntu.
Jacob

Komentarz ten wiersz działał dla mnie na Ubuntu (DigitalOcean) i Debian (sieć lokalna) przez SSH. Wyłączyłem również motd.
thiagobraga

3

Mam sheevaplug z Debianem. Skomentowałem zgłoszone wstawienie wiersza # i rozwiązałem problem.

Plik do edycji w debian:

/etc/pam.d/sshd

Wiersz do komentarza w pliku:

session    optional     pam_mail.so standard noenv # [1]

1

Uruchom crontab -ei dodaj dane wyjściowe do swoich zadań cron. Jeśli chcesz wyłączyć wiadomości e-mail tylko dla jednego zadania cron, musisz przekierować dane wyjściowe /dev/null, dodając > /dev/null 2>&1na końcu wiersza.

Na przykład:

* * * * */5 /path/to/command arguments > /dev/null 2>&1
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.