Ubuntu'da oturum açmadan ÖNCE Synergy'yi (veya herhangi bir uygulamayı) başlatın 16.04.2 LTS


14

Intel x64 üzerinde Ubuntu 16.04.2 (Xenial) kullanma : {Hem İşlemci hem de Ubuntu kurulumu}

Bu soru milyonlarca kez cevaplandı, ancak çözümlerin hiçbiri işe yaramadı. Bu yüzden bir soruyu kopyalamak istemiyorum, ancak cevaplanmadı.

Bir terminali ateşlediğimde ve sudo -iaşağıdaki komut beklendiği gibi çalışır.

`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`

Daha sonra programı bu amaç için kullanabilirim. Ancak, ben bu otomatik yapılmasını istemezsiniz önce onun 'amacını kullanabilir böylece giriş dan giriş ekranında. (Synergy, neredeyse bir sanal KVM gibi birden çok bilgisayarda bir klavye ve fare kullanmanıza izin verir, ancak anahtarlara basmak yerine, farenizi bir ekran kartına bağlıymış gibi bir sonraki ekrana yönlendirirsiniz)

Denediğim ilk şey 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

Bu yüzden kesinlikle çalıştırılabilir, ancak bilgisayarı yeniden başlattıktan sonra:

~~~ 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`

Ancak olması gerekeni yapmıyor, birlik diyalogları bile bir şeylerin yanlış gittiğini söyleyerek çağrılıyor, bu sadece bu yürütüldüğünde gerçekleşiyor, bu yüzden bunu güvenli bir şekilde varsayabilirim.

En güvenli varsayımım, programın iyi çalıştığı, sorun, rc.local'ın x oturumu başlamadan önce çalıştırılmasıdır, böylece klavyeye ve fareye herhangi bir kanca asla kurulmaz, bu da muhtemelen sadece başında yapılır. idam synergycve bu noktadan sonra tekrar girişimde bulunma.

Denediğim ikinci şey "Başlangıç ​​Uygulamaları" idi, işe yarıyor, ancak giriş yaptıktan sonra değil, burada olmasını istediğimiz şey bu değil.

Varsayım doğruysa:

X sunucusu hazır olduktan sonra, ancak herhangi bir kullanıcı oturum açmadan önce bir işlemin yürütülmesini çağırmanın yolu nedir?

Varsayım doğru değilse:

Yardım


1
Muhtemelen ihtiyacınız olan gdm /etc/gdm/Init/Defaultve Unity için bir script eklemeniz gerekir /etc/init/lightdm.conf.
Rinzwind

@Rinzwind lightdm.conf, başlangıç ​​sonrası bölümünde bile hala çok erken, sinerji, terminalden mükemmel çalışan aynı komutu kullanarak hata veriyor. Ubuntu, sinerjinin beklenmedik bir şekilde durduğunu söyleyen bir hata atıyor, çünkü muhtemelen klavyeyi ve fareyi kontrol etmesi gereken kancalara erişemiyor, giriş ekranı görüntülendiğinde hemen gerçekleşmesi gerekiyor, böylece her şey zaten çalışıyor ve çalışıyor
DeeJayh

Çok yararlı değil ama belki biraz rahatlatıcı - bir vazgeçmeden (GDM) önce yaklaşık bir yıl boyunca bununla mücadele ettim ... Bir "işe yarayabileceği" bir yol olduğunu düşündüğüm şeylere karar verdim: iki kullanıcı systemd birimi, biri için sanal bir x-server oturumu açma (kiosk'u düşünün ama gösterilmiyor), ardından gerçek bir kullanıcı oturum açtığında bunu öldürmek için bir tetikleyici. Sonunda benim kullanım dava için buna değmezdi ama belki bu size yardımcı olur. Hepsi ACME'ye selam olsun!
Mark,

Eğer yanılmıyorsam sinerji bir X sunucusuna ihtiyaç duyar, bu yüzden bir kullanıcı giriş yapmadan çalışamaz
Ziazis

Sadece karanlıkta vahşi bir bıçak, ama eklemeyi denedin .xinitrcmi?
anonymous2

Yanıtlar:


6

İçin 16.04.2 (var olmayan) Aşağıdaki dosya oluşturmak

/etc/lightdm/lightdm.conf

içeriği ile:

[Seat:*]
autologin-user=

[SeatDefaults]
greeter-setup-script=/usr/bin/synergyc --name <hostname> 192.168.x.x

Daha fazla bilgi için bu ubuntu wiki kılavuzunu izleyin .


DÜZENLE:

Gönderen man synergyc:

OTOMATİK OLARAK BAŞLAMA ...

seçenekler -fveya içermemelidir --no-daemon. Sinerjinin eski kopyalarının çalışmadığından emin olmak önemlidir, böylece yenisine müdahale edemezler.


2
Bu gerçekten çok güzel! Bilmek güzel, sadece eklemek, onu /etc/lightdm/lightdm.conftamamen çalıştırabilmek için yeterli. Belki de sadece ubuntu bağlantısını bağlamak yerine cevaba eklemek istediklerini ekleyin.
Ziazis

1
Kaplıcalar Eğer otomatik girişiniz varsa, başlangıç ​​uygulamalarınıza sinerji katmanız yeterlidir.
Ziazis

2
Bunun Ubuntu'nun eski bir sürümünde çalıştığından eminim, ancak benimkinde değil. /Etc/lightdm/lightdm.conf dosyasını oluşturdum çünkü mevcut değildi ve yukarıdaki iki satıra koydu (elbette kendi bilgilerimi kullanacak şekilde değiştirdim) Şimdi ekran yüklendiğinde sinerji bağlantım var, ancak artık giriş ekranına gidin. Sadece X imlecine sahip boş bir ekran. $ sudo find / -name lightdm.confverir /etc/init/lightdm.confve /etc/lightdm/lightdm.confikincisi, içinde iki astar bulunan manuel olarak oluşturduğumdur. Oluşturduğum lightdm.conf öğesinin kaldırılması, onu çalışma düzenine geri döndürür.
DeeJayh

1
Bu yaklaşımın 16.04.2'de işe yaradığını doğrulayabilirim!
pa4080

1
@SpasSpasov Çok heyecanlı olduğumu biliyorum, cevabımızı detaylarımızı yansıtacak şekilde değiştirdim, akran incelemesini bekledim.
DeeJayh

1

Benim gibi yeni başlayanlar için bu şekilde yapın:

  • "Bilgisayarınızda ara" yazın, Başlangıç ​​Uygulamalarına tıklayın
  • Ekle'yi tıklayın

    • İsim: Sinerji
    • Komut: isterseniz / usr / bin / synergy'den göz atın

    bu, HERHANGİ BİR "c" EKLEMEYİN, sinerji sonuna hiçbir şey.

Şimdi ben de kaldırmak için çok tembel çünkü script çalışan var .. yani her ikisi de vardır.

[Seat:*]
autologin-user=

[SeatDefaults]
greeter-setup-script=/usr/bin/synergyc --MediaServer 192.168.2.253:port

şimdi bağlantı noktasını bulmak ilginç, varsayılan bağlantı noktası değil bu yüzden terminalde bu tür

netstat  -atn

şimdi nasıl buldum senin sunucu ip aramak oldu ... Biliyorum benim SYNERGY sunucu ip çok doğru karşısında benim istemci ip ve bağlantı noktası numarası.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.