Inizia la sinergia all'avvio?

16

Uso la sinergia. Vorrei iniziare la sinergia non appena accendo il mio computer. Come faccio?

Per avviare synergy , il comando è:

synergys --config ~/.synergy.conf
    
posta David Oneill 28.11.2010 - 05:17

6 risposte

10

Opzione 1: avviare la sinergia prima di accedere

L'articolo principale è sul sito sourceforge di Synergy: Avvio automatico della sinergia

Ecco un lead-in per l'articolo ... ci sono troppi dettagli per mettere tutto qui:

  

Synergy richiede un server X. Ciò significa che un server deve essere in esecuzione e la sinergia deve essere autorizzata a connettersi a quel server. È meglio che il display manager avvii la sinergia. Avrai bisogno dell'autorizzazione necessaria (probabilmente di root) per modificare i file di configurazione del display manager. Se non disponi di tale autorizzazione, puoi avviare la sinergia dopo aver effettuato l'accesso tramite il file .xsession .

Opzione 2: avvia la sinergia dopo l'accesso

Per avviare Synergy dopo aver effettuato l'accesso alla sessione X.

Main Menu - System - Preferences - Startup Applications   
[ Add ]  
  Name:     synergys
  Command:  synergys --config ~/.synergy.conf
  Comment:  synergys  

Se hai problemi con ~/ , prova $HOME/
o come ultima risorsa usa /home/your_username/

Ho appena controllato i miei appunti ... Quando mi collegai da Windows a una macchina Linux, il mio comando era:
/usr/bin/synergyc 192.168.1.16
... forse è necessario il percorso completo.

Stai utilizzando Synergy come server, lo stavo eseguendo come client .. ma questo non dovrebbe influire sull'avvio automatico.

    
risposta data Peter.O 28.11.2010 - 11:41
15

Per la versione più recente di Ubuntu che usa lightdm.

Ho eseguito correttamente quanto segue per l'esecuzione del client di sincronizzazione per la schermata di accesso, e dopo l'accesso. È molto più semplice delle altre risposte, IMHO.

modifica /etc/lightdm/lightdm.conf come root.

sudo vi /etc/lightdm/lightdm.conf

aggiungi la seguente riga in fondo al file.

greeter-setup-script=/usr/bin/synergyc <ip/host>

riavviare lightdm. (è meglio farlo da una sessione terminale o ssh)

sudo /etc/init.d/lightdm restart
    
risposta data Kevin 05.10.2012 - 19:24
8

Per Ubuntu 14.04 (e forse altri, penso che 14.04 sia la prima build che lightdm sia stata modificata in questo formato, ma questo funzionerà su qualsiasi build che usa questa configurazione) è semplice modificare solo 50-ubuntu.conf per ottenere Synergy prima di lightdm:

sudo nano /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf

Per il cliente aggiungi questa riga:

greeter-setup-script=/usr/bin/synergyc <OPTIONS> <SERVER HOSTNAME>

Per Server aggiungi questa riga:

greeter-setup-script=/usr/bin/synergys -c <CONFIG FILE>

Salva i file dopo la modifica e riavvia (so che puoi riavviare il servizio anziché riavviare, ma mi permetto di riavviare)

Per Server o Client basta inserire il comando da inserire nel terminale per farlo avviare con le opzioni appropriate ecc ...

Quindi di solito eseguo il comando di seguito nel terminale sul mio computer client per eseguire Synergy.

synergyc -n XBMC 192.168.1.99

Tutto quello che devo fare per eseguire Synergy pre lightdm è aggiungere la riga qui sotto a 50-ubuntu.conf

greeter-setup-script=/usr/bin/synergyc -n XBMC 192.168.1.99

Spero che questo aiuti, perché i documenti Synergy sono un po 'obsoleti. Buon divertimento!

Riferimento

    
risposta data JohnRB 28.05.2014 - 22:52
0

Ho provato la risposta di Kevin, e anche se all'inizio sembrava funzionare, ma poi ho iniziato a prendere un comportamento davvero stravagante. Ho provato a usare session-setup-script per eliminare la sinergia di root e avviarlo come utente in ~ / .xprofile, ma la stravaganza continuava. Alla fine ha rinunciato, rimosso le voci da lightdm.conf e mantenuto l'avvio come utente in ~ / .xprofile dopo aver effettuato l'accesso direttamente. Non perfetto, ma almeno il comportamento strano si è fermato.

    
risposta data sidney_h 16.02.2014 - 17:38
0

Sono riuscito a far funzionare correttamente questo metodo utilizzando il metodo Kevins. La mia macchina Ubuntu (12.04) è configurata come client e la mia macchina Windows (Win7) è il server.

Esegui

sudo vi /etc/lightdm/lightdm.conf

Aggiungi

greeter-setup-script=/usr/bin/synergyc <ip>

Salva e riavvia.

Ho dovuto specificare l'IP, non funzionerebbe con il nome host (il client Ubuntu non è sul dominio Windows) anche se posso comunicare con la macchina Windows tramite hostname una volta che ho effettuato l'accesso alla macchina Ubuntu)

    
risposta data barryfitz 31.03.2014 - 16:46
0

EDIT: aggiornato con le migliori pratiche relative al non ingombro con i file in / usr / share che verranno danneggiati dagli aggiornamenti dei pacchetti

Server:

Ho usato gli stessi passaggi delle altre risposte, ma in genere eseguo tramite uno script e abilitato la crittografia (anche se NON è a tenuta d'aria, ma sempre migliorando).

Nota: per almeno 14.04 usa /etc/lightdm/lightdm.conf.d/ invece di quello in / usr / share della risposta di JohnRB

modifica /etc/lightdm/lightdm.conf o un file specifico di synergy in lightdm.conf.d come utente root.

sudo nano /etc/lightdm/lightdm.conf

o

sudo nano /etc/lightdm/lightdm.conf.d/20-synergy.conf

aggiungi le seguenti righe nella parte inferiore di uno dei file. Non dimenticare di chmod + x lo script, ovunque tu lo tenga.

greeter-setup-script=/home/<user>/<pathToScript>/start-synergy.sh
session-setup-script=/home/<user>/<pathToScript>/start-synergy.sh

Minimo assoluto se non si desidera utilizzare uno script:

/usr/bin/synergys :24800

Synergy cerca le seguenti posizioni per trovare la sua configurazione se non viene fornito alcun percorso e DEVI avere una configurazione valida o fallirà.

/home/<your_user>/.synergy.conf
/etc/synergy.conf

Riavvia lightdm. (è meglio farlo da una sessione terminale o ssh)

sudo /etc/init.d/lightdm restart

start-synergy.sh

#!/bin/bash -x
/usr/bin/killall synergys
while [ $(pgrep -x synergys) ]; do sleep 0.1; done
/usr/bin/synergys --name $HOSTNAME --crypto-pass <your_hashed_pass> --log /var/log/synergy.log --config /home/<YOUR_USER>/.synergy.conf --address :24800

Breakout dello script

Elimina la sinergia in modo da non ottenere più copie in esecuzione tra i riavvii

/usr/bin/killall synergys

Attendi che il processo muoia effettivamente e poi metti in pausa una frazione di secondo

while [ $(pgrep -x synergys) ]; do sleep 0.1; done

Questo è il minimo che consiglio

/usr/bin/synergys --name <hostname_or_alias> --address :24800

Parametri opzionali aggiuntivi

Percorso della configurazione salvata

--config /home/<your_user>/.synergy.conf

Per generare una password con hash se si desidera utilizzare crypto eseguire questo:

echo -n <yoursynergypassword>|md5sum

L'output sarà come sotto, rimuovere il trattino dello spazio '-' dalla fine:

0a137b375cc3881a70e186ce2172c8d1 -

Inseriscilo come:

--crypto-pass <your_hashed_pass>

Registrazione per vedere se ci sono errori di handshake o qualsiasi altra cosa sbagliata

--log /var/log/synergy.log  
    
risposta data dragon788 12.12.2014 - 19:34

Leggi altre domande sui tag