Існує журнал, де я можу шукати цю інформацію? Хочу знати останні дні, коли мій комп'ютер автоматично заблокував екран, оскільки не працював.
Існує журнал, де я можу шукати цю інформацію? Хочу знати останні дні, коли мій комп'ютер автоматично заблокував екран, оскільки не працював.
Відповіді:
Ви можете знайти події на екрані розблокування за допомогою наступної команди:
grep screen /var/log/auth.log*
Але знайти події блокованого екрану не так просто, оскільки за замовчуванням не існує жодного журналу цих подій (наскільки я знаю).
У будь-якому випадку ви можете виконати таку команду для реєстрації подій блокованого екрану:
dbus-monitor --session "type='signal',interface='org.gnome.ScreenSaver'" | ( while true; do read X; if echo "$X" | grep "boolean true" &> /dev/null; then echo "Screen locked on $(date)" > $HOME/lock_screen.log; fi; done )
у ~/lock_screen.log
файл.
Якщо вам сподобалася вищевказана команда, то використовуйте її в скрипті і змусьте сценарій запускатися автоматично при запуску.
Список літератури:
dbus-monitor --session "type='signal',interface='com.ubuntu.Upstart0_6'"
є signal time=1497336035.520628 sender=org.freedesktop.DBus -> destination=:1.140 serial=2 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameAcquired string ":1.140" signal time=1497336035.520706 sender=org.freedesktop.DBus -> destination=:1.140 serial=4 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameLost string ":1.140"
, тоді нічого, коли я
FWIW: те, що працює для мене на Ubuntu 16.04.4 LTS з Unity, контролює DBUS за допомогою наступної команди:
dbus-monitor --session "type='signal',interface='com.canonical.Unity.Session'"
... а потім моніторинг подій "Заблоковані" та "Розблоковані". Приклад виводу:
час сигналу = 1525269138.855107 відправник =: 1,51 -> пункт призначення = (нульове призначення) серійний = 86735 шлях = / com / канонічний / Unity / Session; інтерфейс = com.canonical.Unity.Session; member = LockRequested
час сигналу = 1525269139.409261 відправник =: 1,51 -> пункт призначення = (нульове призначення) серійний = 86892 шлях = / com / канонічний / Unity / Session; інтерфейс = com.canonical.Unity.Session; член = заблокований
час сигналу = 1525269151.238899 відправник =: 1,51 -> пункт призначення = (нульове призначення) серійний = 86937 шлях = / com / канонічний / Unity / Session; інтерфейс = com.canonical.Unity.Session; member = UnlockRequested
час сигналу = 1525269151.791874 відправник =: 1,51 -> пункт призначення = (нульове призначення) серійний = 86938 шлях = / com / канонічний / Unity / Session; інтерфейс = com.canonical.Unity.Session; member = Розблоковано
Це те, що я використовую в Ubuntu 16.04. Він входить до системного системного журналу.
Додайте до своєї домашньої папки, позначте як виконуваний файл, а потім скористайтеся gnome-session-properties
для налаштування його для запуску при запуску сеансу.
#!/bin/bash
exit_report(){
logger "$(date) Lockscreen Monitoring Terminated."
}
trap "exit_report; exit;" 0
lockmon() {
adddate() {
while IFS= read -r line; do
echo $line | grep string | grep '"start"' -q
if [ $? -eq 0 ] ; then
logger "$(date) Screen locked"
fi
echo $line | grep string | grep '"stop"' -q
if [ $? -eq 0 ] ; then
logger "$(date) Screen unlocked"
fi
done
}
logger "$(date) Lockscreen Monitoring Started."
dbus-monitor --session "type='signal',interface='com.ubuntu.Upstart0_6.Instance'" | adddate
}
lockmon
На основі аналогічної відповіді для систем Fedora .
cat screen /var/log/auth.log | grep unlock
- Судо не потрібно.