Você não está vendo nada porque udev é executado em um contexto que não tem o conjunto de variáveis $DISPLAY , que é obrigatório para algo como gnome-terminal saber como entrar em contato com o servidor X. Você pode adicionar --display=:0 à linha de comando na regra ou escrever um script de wrapper que defina DISPLAY e, em seguida, chama gnome-terminal .