È possibile disabilitare "Hai nuovi messaggi in / var / mail / root"?


14

Vorrei disabilitare il controllo di posta in FreeBSD 9.1. La mia shell di accesso è BASH, quindi ho provato ad aggiungere

unset MAILCHECK

in /root/.bashrce /root/.profile, ma ricevo ancora quei messaggi.

Domanda

C'è un modo per sbarazzarsi di quei messaggi?


Normalmente inoltreresti rootla posta altrove (come ad una casella di posta che controlli effettivamente) - ma le risposte qui sotto sono buone se vuoi che la posta continui root, ma non vuoi i banner di posta.
voretaq7,

Risposte:


5

Oltre alla risposta di Dennis, FreeBSD imposta la MAILvariabile d'ambiente per tutti gli utenti nella defaultclasse di login. Questo è dentro /etc/login.conf.

Puoi cambiarlo in diversi modi:

  1. Modifica /etc/login.confe rimuovi MAIL=/var/mail/$dalla setenvriga. È quindi necessario compilare il database di accesso eseguendo cap_mkdb /etc/login.conf.

  2. Crea una nuova classe di accesso che si applica solo a te o a un gruppo di utenti. Impostare questo per ciascun utente utilizzando pw usermod <username> -L <class>.

  3. Crea un utente specifico ~/.login.conf. Questo file dovrebbe avere un record chiamato me. Questo può sovrascrivere un sottoinsieme delle impostazioni globali. Allo stesso modo questo file deve essere compilato cap_mkdb.

Vedere login.conf(5)per ulteriori informazioni sul database delle funzionalità di accesso.


6

Quei messaggi sono probabilmente rapporti periodici. E 'abbastanza comune per impostare daily_show_success=NOin/etc/periodic.conf modo da non generare messaggi "tutto bene". Inoltre, daily_output="$destination"dovrebbe essere impostato sul tuo indirizzo e-mail o su un file di registro che puoi monitorare. Lo stesso può essere impostato per weekly_e monthly_- e probabilmente dovrebbe esserlo.

Puoi eliminare quelle e-mail avviando mail , d *per eliminare tutti i messaggi e qper uscire.

Disabilitare il controllo della posta è di solito un errore. Se un demone è configurato in modo errato per recapitare la posta alla radice locale, vuoi saperlo, potrebbe avere qualcosa di importante da dire e perderai quei messaggi se disabiliti il ​​controllo di posta.


4

Questo dovrebbe occuparsi di quel messaggio per gli accessi root. Se accedi come un altro utente, dovrai aggiungerlo a~/.bashrc di ciascun utente per cui desideri disabilitarlo. Oppure puoi inserirlo nel file di avvio centrale: /etc/profileaffinché abbia effetto per tutti gli utenti.

Dovrai controllare per vedere se MAILCHECK è impostato in un secondo momento nella sequenza del file di avvio che ha la precedenza su unset.

Si noti che i file di avvio vengono elaborati come segue (dal Manuale di Bash ) (enfasi sul mio):

Richiamato come shell di login interattiva o con --login

Quando Bash viene invocato come shell di login interattiva o come shell non interattiva con l'opzione --login, legge ed esegue prima i comandi dal file / etc / profile, se quel file esiste. Dopo aver letto quel file, cerca ~ / .bash_profile, ~ / .bash_login e ~ / .profile, in quell'ordine, e legge ed esegue i comandi dal primo che esiste ed è leggibile . L'opzione --noprofile può essere utilizzata all'avvio della shell per inibire questo comportamento.

Quando esce una shell di login, Bash legge ed esegue i comandi dal file ~ / .bash_logout, se esiste. Richiamato come shell interattiva non di accesso

Quando viene avviata una shell interattiva che non è una shell di accesso, Bash legge ed esegue i comandi da ~ / .bashrc, se quel file esiste. Questo può essere inibito usando l'opzione --norc. L'opzione --rcfile forzerà Bash a leggere ed eseguire comandi dal file invece di ~ / .bashrc.

Quindi, in genere, il tuo ~ / .bash_profile contiene la linea

if [-f ~ / .bashrc]; poi . ~ / .Bashrc; fi

dopo (o prima) qualsiasi inizializzazione specifica per il login.


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.