sim, é possível.
Esta solução foi testada com o Debian jessie e wdm
como gerenciador de login.
Várias etapas são necessárias:
As etapas 8 a 10 são wdm
específicas e podem parecer diferentes para gdm
ou kdm
- faça login como root
- abra o arquivo
/etc/X11/Xsession
no editor - substituir a primeira linha no arquivo
#!/bin/sh
com#!/bin/bash
- localize a linha
ERRFILE=$HOME/.xsession-errors
e adicione abaixo da linhaERRFILTER=$HOME/.xsession-errors_filter
- localize a linha
exec >>"$ERRFILE" 2>&1
e substitua-a por %if [ -f $ERRFILTER ]; then exec > >(stdbuf -i0 -o0 -e0 grep -v -f "$ERRFILTER" >>"$ERRFILE") 2>&1 else exec >>"$ERRFILE" 2>&1 fi
- salvar arquivo e sair do editor
- crie um arquivo .xsession-errors_filter em seu diretório pessoal e escreva palavras-chave de mensagens de erro que você não deseja ver. Apenas uma palavra-chave / frase por linha é permitida.
- abrir arquivo / etc / X11 / wdm / Xsession
- localize a linha
. /etc/X11/Xsession
e substitua-a porexec /etc/X11/Xsession
- salvar arquivo
- verifique se tudo está correto porque o X11 pode não ser iniciado de outra forma
- logout e login no X
alguma explicação:
- precisamos de bash para esse tempo de redirecionamento para a substituição de / bin / sh e a mudança de
.
(source) para exec - então usamos invertido
grep
para filtragem.grep
está lendo as palavras-chave de filtro do arquivo '.xsession-errors_filter' - stdbuf desativa o buffer com o grep, então as mensagens de erro são gravadas instantaneamente no arquivo
-
exec > >()
redireciona toda a saída do shell para um subshell (que executa grep)