Assumindo que seu nome de usuário e grupo são ricab , você tentou sudo chgrp ricab /var/log/screenlock.log
e sudo chmod g+rw /var/log/screenlock.log
? Você deve então poder ler e escrever screenlock.log usando sua conta.
Acabei de criar um script (bloqueio de log) para registrar eventos de tela de bloqueio / desbloqueio (derivados de este post ) :
#! /bin/bash
dbus-monitor --session "type='signal',interface='org.gnome.ScreenSaver'" | ( while true; do read X; if echo $X | grep "boolean true" &> /dev/null; then echo 'date' "screen locked"; elif echo $X | grep "boolean false" &> /dev/null; then echo 'date' "screen unlocked"; fi done )
Eu queria ter um daemon de inicialização executando logscreenlock > /var/log/screenlock.log
. Agora, para escrever em / var / log, eu preciso de permissões de root (sou um sudoer). Então, eu precisaria de sudo logscreenlock > /var/log/screenlock.log
, mas tenho dois problemas com isso:
chmod a+x logscreenlock
, eu recebo permissão negada se eu tentar sudo ./logscreenlock
. Eu tentei usermod -a -G <myusergroup> root
, mas sem sorte. Como posso superar isso? EDIT: Eu descobri mais tarde que a razão pela qual eu não podia executar logscreenlock como root era que este script está em um sistema de arquivos remoto onde a raiz da minha máquina não é autenticada.
É normal que você não possa escrever em /var/log
como usuário não-root. Chamar sudo não é uma boa solução. Não eleve as permissões, a menos que elas sejam realmente necessárias para algo. Escreva o arquivo de log no seu diretório pessoal.
logscreenlock >~/.screenlock.log
Tags permissions startup root users group