Można wyłączyć „Masz nową pocztę w / var / mail / root”?

14

Chciałbym wyłączyć sprawdzanie poczty we FreeBSD 9.1. Moja powłoka logowania to BASH, więc próbowałem dodać

unset MAILCHECK

w /root/.bashrci /root/.profile, ale wciąż otrzymuję te wiadomości.

Pytanie

Czy istnieje sposób na pozbycie się tych wiadomości?

Sandra
źródło
Zwykle po prostu przesyłasz rootpocztę gdzie indziej (np. Do skrzynki pocztowej, którą faktycznie sprawdzasz) - ale poniższe odpowiedzi są dobre, jeśli chcesz, aby poczta nadal była wysyłana root, ale nie chcesz bannerów pocztowych.
voretaq7,

Odpowiedzi:

5

Oprócz odpowiedzi Dennisa, FreeBSD ustawia MAILzmienną środowiskową dla wszystkich użytkowników w defaultklasie logowania. To jest w/etc/login.conf .

Możesz to zmienić na kilka sposobów:

  1. Edytuj /etc/login.confi usuń MAIL=/var/mail/$z setenvlinii. Następnie musisz skompilować bazę danych logowania, uruchamiając cap_mkdb /etc/login.conf.

  2. Utwórz nową klasę logowania, która będzie dotyczyła Ciebie lub grupy użytkowników. Ustaw to dla każdego użytkownika za pomocą pw usermod <username> -L <class>.

  3. Utwórz użytkownika ~/.login.conf. Ten plik powinien mieć rekord o nazwie me. Może to zastąpić podzbiór ustawień globalnych. Podobnie ten plik musi zostać skompilowany cap_mkdb.

Zobacz login.conf(5)więcej informacji na temat bazy danych możliwości logowania.

James O'Gorman
źródło
6

Te wiadomości to prawdopodobnie raporty okresowe. To dość powszechne do zestawu daily_show_success=NOw /etc/periodic.confwięc nie generuje „wszystko dobrze” wiadomości. Ponadto daily_output="$destination"należy ustawić adres e-mail lub plik dziennika, który można monitorować. To samo można ustawić dla weekly_imonthly_ - i prawdopodobnie powinno być.

Możesz usunąć te wiadomości e-mail, uruchamiając mail, d *usuwając wszystkie wiadomości iq .

Wyłączenie sprawdzania poczty jest zwykle błędem. Jeśli demon jest niepoprawnie skonfigurowany do dostarczania poczty do lokalnego katalogu głównego, możesz wiedzieć, że może mieć coś ważnego do powiedzenia, a przegapisz te wiadomości, jeśli wyłączysz sprawdzanie poczty.

Chris S.
źródło
4

To powinno zająć się tą wiadomością przy logowaniu do roota. Jeśli logujesz się jako inny użytkownik, musisz dodać to do ~/.bashrckażdego użytkownika, dla którego chcesz go wyłączyć. Lub możesz umieścić go w centralnym pliku startowym:/etc/profile aby zadziałał dla wszystkich użytkowników.

Musisz sprawdzić, czy MAILCHECKjest ustawiany w późniejszym etapie sekwencji plików startowych przesłaniających twojąunset .

Zauważ, że pliki startowe są przetwarzane w następujący sposób (z podręcznika Bash ) (moje podkreślenie):

Wywoływany jako interaktywna powłoka logowania lub --login

Gdy Bash jest wywoływany jako interaktywna powłoka logowania lub jako nieinteraktywna powłoka z opcją --login, najpierw czyta i wykonuje polecenia z pliku / etc / profile, jeśli plik ten istnieje. Po odczytaniu tego pliku szuka ~ / .bash_profile, ~ / .bash_login i ~ / .profile, w tej kolejności, i odczytuje i wykonuje polecenia z pierwszego, który istnieje i jest czytelny . Opcji --noprofile można użyć, gdy powłoka zostanie uruchomiona w celu zahamowania tego zachowania.

Po wyjściu z powłoki logowania Bash czyta i wykonuje polecenia z pliku ~ / .bash_logout, jeśli istnieje. Wywoływany jako interaktywna powłoka niezalogowana

Po uruchomieniu interaktywnej powłoki, która nie jest powłoką logowania, Bash odczytuje i wykonuje polecenia z ~ / .bashrc, jeśli ten plik istnieje. Można temu zapobiec, używając opcji --norc. Opcja --rcfile pliku zmusi Bash do odczytu i wykonywania poleceń z pliku zamiast ~ / .bashrc.

Zwykle plik ~ / .bash_profile zawiera wiersz

if [-f ~ / .bashrc]; następnie . ~ / .bashrc; fi

po (lub przed) inicjalizacjach związanych z logowaniem.

Wstrzymano do odwołania.
źródło