Usando o Ubuntu 16.04.2 (Xenial) no Intel x64 : {o processador e o Ubuntu instalam}
Esta pergunta foi respondida um milhão de vezes, mas nenhuma das soluções funciona. Portanto, não quero duplicar uma pergunta, mas ela não foi respondida.
Quando eu ligo um terminal e sudo -i
, o seguinte comando funciona exatamente como o esperado.
`root@user-pc:~# /usr/bin/synergyc -f --no-tray --debug INFO --name
user-pc 192.168.xxx.xxx:24800
[2017-05-23T09:20:44] NOTE: started client
[2017-05-23T09:21:01] NOTE: connecting to '192.168.5.100':
192.168.5.100:24800
[2017-05-23T09:21:01] NOTE: connected to server`
Sou capaz de utilizar o programa para esse fim. No entanto, eu quero que isso seja feito automaticamente antes de login para que eu possa utilizá-lo de propósito a partir da tela de login. (O Synergy permite que você use um teclado e mouse em vários computadores, quase como um KVM virtual, mas em vez de pressionar interruptores, basta girar o mouse para a próxima tela, como se todos estivessem conectados a uma placa gráfica.
A primeira coisa que tentei foi rc.local :
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
exec /usr/bin/synergyc -f --no-tray --debug INFO --name user-pc 192.168.5.100:24800
exit 0
~~~ ls /etc/rc.local -l
:
-rwxr-xr-x 1 root root 390 May 22 20:56 /etc/rc.local
Portanto, é definitivamente executável, mas após a reinicialização do PC:
~~~ ps aux | grep syner
:
`root 990 0.0 0.0 63656 5372 ? Ssl 09:33 0:00
/usr/bin/synergyc -f --no-tray --debug INFO --name user-pc
192.168.5.100:24800`
No entanto, ele não está fazendo o que deveria, até mesmo diálogos de unidade estão sendo chamados dizendo que algo deu errado, o que só acontece quando isso é executado, então posso assumir com segurança que é isso.
Minha suposição mais segura é que o programa está sendo executado muito bem, o problema é que o rc.local é executado antes do início da sessão x, para que quaisquer ganchos no teclado e no mouse nunca sejam estabelecidos, o que provavelmente também é feito apenas no início de execução synergyc
e não tentada novamente além desse ponto.
A segunda coisa que tentei foi "Aplicativos de inicialização", funciona, mas não até depois do login, que não é o que queremos que ocorra aqui.
Se minha suposição estiver correta:
O que é uma maneira de chamar a execução de um processo após a inicialização do servidor x, mas antes que qualquer usuário precise fazer o login.
Se minha suposição não estiver correta:
/etc/gdm/Init/Default
e para o Unity você precisa adicionar um script/etc/init/lightdm.conf
..xinitrc
?Respostas:
Para 16.04.2, crie o seguinte arquivo (ele não existe)
com o conteúdo:
Siga este guia wiki do ubuntu para obter mais informações.
EDITAR:
De
man synergyc
:fonte
/etc/lightdm/lightdm.conf
para fazê-lo funcionar completamente. Talvez adicione o que ele precisa adicionar à resposta em vez de apenas vincular o link do ubuntu.$ sudo find / -name lightdm.conf
dá/etc/init/lightdm.conf
e/etc/lightdm/lightdm.conf
sendo este último o que eu criei manualmente com o dois liner nele. A remoção do lightdm.conf que criei o restaura de volta à ordem de funcionamento.Entre na sua inicialização ... para iniciantes como eu, faça o seguinte:
clique em Adicionar
é isso, não adicione "c", nada até o fim da sinergia.
Agora também tenho o script em execução porque estava com preguiça de removê-lo ... então ambos estão lá.
Agora, para achar a porta interessante, não é a porta padrão, então faça esse tipo de terminal
agora como eu achei que era procurar o ip do servidor ... Eu conheço o ip do servidor SYNERGY, logo em frente a ele está o ip do cliente e o número da porta.
fonte