Ubuntu 16.04.2 LTSにログインする前にSynergy(または任意のアプリケーション)を起動します


14

使用のUbuntu 16.04.2(Xenial)ののIntel x64の:{プロセッサとUbuntuの両方がインストール}

この質問に対する回答は100万回ありますが、解決策はありません。したがって、質問を複製したくありませんが、答えられていません。

端末とを起動するとsudo -i、次のコマンドが期待どおりに機能します。

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

その後、その目的のためにプログラムを利用することができます。ただし、ログイン画面から目的利用できるように、ログイン前にこれを自動的に実行する必要あります。(Synergyを使用すると、仮想KVMのように複数のコンピューターで1つのキーボードとマウスを使用できますが、スイッチを押すのではなく、すべて1つのグラフィックカードに接続されているかのようにマウスを次の画面に移動するだけです)

私が最初に試したのは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

したがって、それは間違いなく実行可能ですが、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`

しかし、それは想定されていることを実行しておらず、ユニティダイアログでも何か問題が発生したと呼ばれています。

私の最も安全な仮定は、プログラムが正常に実行されていることです。問題は、xセッションの開始前にrc.localが実行されるため、キーボードとマウスへのフックが確立されないことです。実行され、synergycそのポイントを超えて再試行されません。

2番目に試したのは「スタートアップアプリケーション」でしたが、機能しますが、ログインするまでは機能しません。

私の仮定が正しい場合:

xサーバーが起動した後、ユーザーがログインする前にプロセスの実行を呼び出す方法は何ですか。

私の仮定が正しくない場合:

助けて


1
おそらくgdmが必要で/etc/gdm/Init/Defaultあり、Unityではスクリプトをに追加する必要があります/etc/init/lightdm.conf
リンツウィンド

@Rinzwind lightdm.confは、開始後のセクションでもまだ早すぎます。端末から完全に正常に機能する同じコマンドを使用すると、相乗効果がエラーになります。Ubuntuは相乗効果が、それは、それはまだ、キーボードとマウスを制御する必要があるフックにアクセスし、ログイン画面は、そのすべてがアップしているので、表示され、すでに実行されている場合、それは右起こる必要ができない可能性が高いので、予期せず停止したというエラーがスローされます
DeeJayh

ひどく役に立たないが、おそらく少し慰め-私はあきらめる(GDM)の前に約1年間これに苦労しました...私はそれが「可能」な方法であると思ったことに落ち着きました:2つのユーザーシステムユニット、仮想x-serverログイン(キオスクを考えますが、表示されていません)、実際のユーザーがログオンしたときにそれを強制終了するトリガー。私のユースケースの最後にはそれは価値がありませんでしたが、多分それはあなたを助けるでしょう。みんなACME!
マーク

私が間違っていないなら、相乗効果はXサーバーを必要とするので、ユーザーがログインしないと機能しません
-Ziazis

暗闇の中でただの野生の刺し傷ですが、追加してみました.xinitrcか?
anonymous2

回答:


6

16.04.2の場合、次のファイルを作成します(存在しません)。

/etc/lightdm/lightdm.conf

内容で:

[Seat:*]
autologin-user=

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

詳細については、このubuntu wikiガイドに従ってください。


編集:

からman synergyc

自動起動...

オプションには-fまたはを含めないでください--no-daemon。シナジーの古いコピーが実行されていないことを確認して、新しいコピーに干渉しないようにすることが重要です。


2
それは実に素晴らしいことです!知っておくと良いのは、追加するだけで/etc/lightdm/lightdm.conf完全に機能するようにすることです。たぶん、ubuntuリンクだけをリンクするのではなく、答えに追加する必要があるものを追加してください。
ジアジス

1
自動ログインを使用している場合は、スパでスタートアップアプリケーションに相乗効果を追加してください。
ジアジス

2
これは、Ubuntuの古いバージョンで動作することは確かですが、私の場合は動作しません。/etc/lightdm/lightdm.confは存在しなかったため作成し、上記の2行に入力しました(もちろん、独自の情報を使用するように変更しています)。ログイン画面を取得します。これは、Xカーソルのある単なる空白の画面です。$ sudo find / -name lightdm.conf与え/etc/init/lightdm.confそして/etc/lightdm/lightdm.conf後者は、私はそれに2つのライナーを使用して手動で作成したものであると。作成したlightdm.confを削除すると、元の正常な状態に戻ります。
ディージェイ

1
このアプローチは16.04.2で機能することを確認できます!
pa4080

1
@SpasSpasov私はとても興奮していることを知っています。詳細を反映するために回答を変更し、ピアレビューを待っています。
ディージェイ

1

私のような初心者のためにあなたのスタートアップに行きます。

  • 「コンピューターを検索」と入力し、スタートアップアプリケーションをクリックします
  • 追加をクリックします

    • 名前:シナジー
    • コマンド:必要に応じて参照しますが、/ usr / bin / synergy

    それだけです。「c」を追加しないでください。相乗効果の最後には何も追加しないでください。

スクリプトを削除するのが面倒だったので、スクリプトも実行しています。

[Seat:*]
autologin-user=

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

今、ポートが面白いです、それはデフォルトのポートではないので、ターミナルでこのタイプを見つけてください

netstat  -atn

今、私はそれがあなたのサーバーIPを探していたことを発見しました...私は私のSYNERGYサーバーIPを知っているので、その向かいにはクライアントIPとポート番号があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.