Existem algumas maneiras de produzir o ID do usuário (UID) com ps
; um simples é com -f
:
ps -fC X
Fornecerá informações para todos os servidores X que estão em execução (pode haver mais de um).
Isso pressupõe que o executável é chamado X
- se não houver esse processo, você terá que segmentar outra coisa. Como é quase certo que pelo menos tem o X (por exemplo, Xorg
, X11
), uma alternativa é filtrar através do grep:
ps -o uid,comm -A | grep X
Isso remove os cabeçalhos das colunas, mas o UID é o numérico à esquerda. Se isso for 0
, o processo estará executando a raiz. Se nada aparecer, tente ps -fA | grep X
; este envolve mais desordem.
Finalmente, se não houver nenhum processo com capital X
em seu nome, tente x
; você pode pelo menos encontrar comandos usados para controlá-lo, como startx
ou xinit
. Você também pode tentar dm
, já que os gerentes de exibição geralmente têm isso em seu nome ( gdm
, etc). No entanto, nenhum deles é realmente o servidor X e, embora xinit
inicie o servidor, o executável do servidor geralmente tem setuid bit set , ou seja, mesmo que xinit
tenha um UID não privilegiado, X ainda será executado como root .