Có thể vô hiệu hóa Bạn có thư mới trong / var / mail / root?


14

Tôi muốn tắt tính năng kiểm tra thư trong FreeBSD 9.1. Shell đăng nhập của tôi là BASH, vì vậy tôi đã cố gắng thêm

unset MAILCHECK

trong /root/.bashrc/root/.profile, nhưng tôi vẫn nhận được những tin nhắn đó.

Câu hỏi

Có cách nào để thoát khỏi những tin nhắn đó?


Thông thường bạn sẽ chỉ chuyển tiếp rootthư của mình ở một nơi khác (như hộp thư bạn thực sự kiểm tra) - nhưng câu trả lời dưới đây là câu trả lời tốt nếu bạn muốn thư tiếp tục root, nhưng không muốn các biểu ngữ thư.
voretaq7

Câu trả lời:


5

Ngoài câu trả lời của Dennis, FreeBSD đặt MAILbiến môi trường cho tất cả người dùng trong defaultlớp đăng nhập. Đây là trong /etc/login.conf.

Bạn có thể thay đổi điều này theo nhiều cách:

  1. Chỉnh sửa /etc/login.confvà xóa MAIL=/var/mail/$khỏi setenvdòng. Sau đó, bạn cần phải biên dịch cơ sở dữ liệu đăng nhập bằng cách chạy cap_mkdb /etc/login.conf.

  2. Tạo một lớp đăng nhập mới chỉ áp dụng cho bạn hoặc một nhóm người dùng. Đặt cái này cho mỗi người dùng bằng cách sử dụng pw usermod <username> -L <class>.

  3. Tạo một người dùng cụ thể ~/.login.conf. Tập tin này nên có một bản ghi được gọi là me. Điều này có thể ghi đè một tập hợp con của cài đặt chung. Tương tự như vậy tập tin này cần phải được biên dịch với cap_mkdb.

Xem login.conf(5)để biết thêm thông tin về cơ sở dữ liệu khả năng đăng nhập.


6

Những tin nhắn có lẽ là báo cáo định kỳ. Đó là khá phổ biến để thiết lập daily_show_success=NOtrong /etc/periodic.confvì vậy nó không tạo ra "tất cả của tốt" tin nhắn. Ngoài ra, daily_output="$destination"nên được đặt thành địa chỉ email của bạn hoặc tệp nhật ký mà bạn có thể theo dõi. Điều tương tự có thể được đặt cho weekly_monthly_- và có lẽ nên được.

Bạn có thể xóa những e-mail đó bằng cách bắt đầu mail, d *để xóa tất cả các tin nhắn và qthoát.

Vô hiệu hóa kiểm tra thư thường là một sai lầm. Nếu một daemon được cấu hình không chính xác để gửi thư đến thư mục gốc, bạn muốn biết, nó có thể có một điều quan trọng để nói và bạn sẽ bỏ lỡ những thư đó nếu bạn tắt kiểm tra thư.


4

Điều đó sẽ chăm sóc thông điệp đó cho đăng nhập gốc. Nếu bạn đang đăng nhập với tư cách là một người dùng khác, bạn sẽ cần thêm nó vào ~/.bashrctừng người dùng mà bạn muốn vô hiệu hóa nó. Hoặc bạn có thể đặt nó trong tệp khởi động trung tâm: /etc/profileđể nó có hiệu lực cho tất cả người dùng.

Bạn sẽ cần kiểm tra xem liệu MAILCHECKcó được đặt ở một điểm sau trong chuỗi tệp khởi động ghi đè lên của bạn không unset.

Lưu ý rằng các tệp khởi động được xử lý như sau (từ Sổ tay Bash ) (nhấn mạnh của tôi):

Được gọi dưới dạng vỏ đăng nhập tương tác hoặc với --login

Khi Bash được gọi dưới dạng shell đăng nhập tương tác hoặc dưới dạng shell không tương tác với tùy chọn --login, trước tiên , nó sẽ đọc và thực thi các lệnh từ tệp / etc / profile, nếu tệp đó tồn tại. Sau khi đọc tệp đó , nó tìm ~ / .bash_profile, ~ / .bash_login và ~ / .profile, theo thứ tự đó, đọc và thực thi các lệnh từ lệnh đầu tiên tồn tại và có thể đọc được . Tùy chọn --noprofile có thể được sử dụng khi trình bao bắt đầu ngăn chặn hành vi này.

Khi shell đăng nhập thoát, Bash đọc và thực thi các lệnh từ tệp ~ / .bash_logout, nếu nó tồn tại. Được gọi là một vỏ không đăng nhập tương tác

Khi một vỏ tương tác không phải là vỏ đăng nhập được khởi động, Bash đọc và thực thi các lệnh từ ~ / .bashrc, nếu tệp đó tồn tại. Điều này có thể bị ức chế bằng cách sử dụng tùy chọn --norc. Tùy chọn tệp --rcfile sẽ buộc Bash đọc và thực thi các lệnh từ tệp thay vì ~ / .bashrc.

Vì vậy, thông thường, ~ / .bash_profile của bạn chứa dòng

nếu [-f ~ / .bashrc]; sau đó . ~ / .bashrc; fi

sau (hoặc trước) bất kỳ khởi tạo cụ thể đăng nhập.


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.