Por que o 'logger' é sempre executado como o mesmo usuário?

0

Estou usando rsyslog 8.24 no debian. Cada vez que eu acionar logger "some message" o syslog refere-se ao mesmo e único usuário do sistema - não importa se eu troco de usuário (mesmo como root ), as mensagens são sempre registradas como o mesmo usuário - mesmo em servidores - eu acho em uma área de trabalho, é porque a GUI está sendo executada como esse usuário e em um servidor porque eu efetuei login como esse usuário e depois mudei para root - poderia ser? Mas de qualquer forma, como eu poderia registrar uma mensagem como root no syslog?

    
por chevallier 03.08.2018 / 17:57

1 resposta

1

Porque logger usa getlogin(3) .

link

static char const *xgetlogin(void)
{
    char const *cp;
    struct passwd *pw;

    if (!(cp = getlogin()) || !*cp)
        cp = (pw = getpwuid(geteuid()))? pw->pw_name : "<someone>";
    return cp;
}

Que retorna "nome do usuário logado no terminal de controle do processo". ou seja, o usuário do seu sistema.

    
por 03.08.2018 / 18:30