Đặt LOG = 1 trong / etc / môi trường


8

Tôi đã hỏi một câu hỏi trước đó về việc xem lịch sử sử notify-osddụng indicator-notificationsứng dụng.

Câu trả lời là tôi cần thêm LOG=1vào /etc/environmenttập tin của mình .
Điều đó nghe có vẻ đáng ngờ và tôi đã không làm điều đó bởi vì:

  1. Nó nằm trong tập tin cấu hình toàn cầu.
  2. Bạn thực sự không thể biết những gì khác sẽ được ghi lại ngoài các thông báo.

Tôi duyệt qua và thấy câu hỏi này cũng làm nổi bật vấn đề. Nhìn cụ thể vào câu trả lời này :

Cảnh báo nhỏ: đây có thể là một ý tưởng tồi ... LOG = 1 in / etc / môi trường làm cho nó trở thành một biến toàn hệ thống và có thể phá vỡ mọi thứ ... Chúa biết điều gì phản ứng trên LOG (ofc. Họ nên biến nó thành một cái gì đó giống như NOTIFYOSDLOG ). Có lẽ để bắt đầu, tôi sẽ thêm nó vào bashrc cho 1 người dùng để đảm bảo.

Câu hỏi của tôi là, làm thế sẽ thiết lập LOG=1trong /etc/environmentảnh hưởng đến hệ thống? Những 'thứ' nào sẽ được ghi lại? Đây có phải là khuyến khích?

BIÊN TẬP

Tôi đã giải quyết vấn đề thông báo và bây giờ tôi chỉ hỏi về tác động của việc đặt LOG = 1 trong / etc / môi trường.

Nhìn vào câu hỏi của tôi ở trên: "sẽ thiết lập như thế nào LOG=1trong /etc/environment? Ảnh hưởng đến hệ thống nào 'thứ' sẽ được đăng nhập là nên thế này?"


Thay vào đó, chúng tôi có thể chỉnh sửa và biên dịch lại notifyosd để kiểm tra NOTIFYOSDLOG ..
Seth

Thật khó để nói hệ thống sẽ bị ảnh hưởng như thế nào LOG=1nếu không đọc tài liệu của từng chương trình và dịch vụ có thể chạy và có thể sử dụng LOGtrong môi trường. LOGlà một tên khá chung chung nhưng không giống như PATH, HOMEhoặc TERMnó không được sử dụng phổ biến. Vì vậy, người ta có thể hy vọng rằng không có quá nhiều nhà phát triển đã chọn nó làm biến môi trường cho chương trình của họ và do đó, cài đặt LOGsẽ không làm được gì nhiều.
Adaephon

Cả hai câu trả lời đều hay, tôi sẽ chỉ để 'hệ thống' thưởng tiền thưởng. Cảm ơn Adaephon vì nhận xét đó, LOG không được sử dụng phổ biến và do đó khó có thể biết hệ thống sẽ bị ảnh hưởng như thế nào LOG=1.
Parto

Câu trả lời:


4

Bạn có thể sử dụng một cái gì đó nhiều người dùng địa phương như ~/.pam_environmenthoặc ~/.profile. Đây thực tế là cách tiếp cận tương tự như /etc/environmentngoại trừ chúng sẽ chỉ ảnh hưởng đến người dùng của bạn. Họ vẫn có thể ảnh hưởng đến các ứng dụng khác.

Mặc dù ~/.profiletương tự như các tệp tập lệnh khác, ~/.pam_environmentcó một cú pháp khó hiểu cần phải được tuân thủ (hoặc bạn sẽ phá vỡ thông tin đăng nhập của mình):

LOG DEFAULT=1

Cách tiếp cận khác có thể hoạt động là thay đổi bất cứ điều gì khởi chạy notify-osdđể chuyển trực tiếp biến môi trường. Trong trường hợp này, nó dường như là một phần của một số tầng DBUS đa nền tảng được kiểm soát từusr/share/dbus-1/services/org.freedesktop.Notifications.service

[D-BUS Service]
Name=org.freedesktop.Notifications
Exec=/usr/lib/x86_64-linux-gnu/notify-osd

Tôi tự hỏi nếu dòng Exec có thể được thay đổi để đọc:

Exec=LOG=1 /usr/lib/x86_64-linux-gnu/notify-osd

Hoặc nếu điều đó ném cú pháp wobblies:

Exec=sh -c "LOG=1 /usr/lib/x86_64-linux-gnu/notify-osd"

Nếu nó hoạt động, nó có lợi thế rõ ràng là chỉ ảnh hưởng đến notify-osd (bất kỳ thứ gì nó khởi chạy).


3

Các trang tài liệu NotifyOSD trích dẫn:

(Lưu ý: đăng nhập vào tệp này được bật khi biến môi trường LOG được đặt thành 1.)

Trong trang tài liệu Biến môi trường , nó có một danh sách các biến phổ biến trong đó "LOG" không được liệt kê. Nó nói rằng:

Mỗi ứng dụng được tự do định nghĩa và sử dụng các biến môi trường riêng. Nhiều trang thủ công bao gồm danh sách dài các biến môi trường có thể ảnh hưởng đến hành vi của ứng dụng mà chúng mô tả. Tuy nhiên, các biến hữu ích nhất là phổ biến cho nhiều ứng dụng.

Sau khi googling cho các trường hợp có thể sử dụng LOG, không có gì xuất hiện. "NOTIFYOSDLOG" sẽ là một cái tên phù hợp hơn. Việc sử dụng LOG hoàn toàn phụ thuộc vào các ứng dụng, vì vậy đó là một bí ẩn ai làm và không sử dụng nó. Vì nó không có trong danh sách các biến chung, nên nó có thể chỉ là một biến được đặt tên kém.

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.