web-dev-qa-db-ja.com

FreeBSDKDE。 d-busを開始できませんでした。 qdbusに電話できますか?

* nixの世界で2日目ですが、検索しても問題を解決できませんでした。 ここでのこの質問も関係ありません。
FreeBSD 11をインストールし、KDEをインストールしました。

pgk install kde

私はそれを次のように実行しようとしました

startkde

しかし、UIを実行するにはXサーバーも必要であることがわかりました。 OK。だから私はそれを次のようにインストールしました

 pgk install xorg

今、私は「startx」でXを実行していて、次に「startkde」でKDEを実行しています。

d-busを開始できませんでした。 qdbusを呼び出すことができますか?

enter image description here

Qdbusを呼び出すにはどうすればよいですか?あれは何でしょう?

アップデート1

提案されたように、私はrc.configを編集して追加しました

dbus_enable=YES

結果は同じです enter image description here

アップデート2

私は ハンドブックの§5.7.2 に従い、/procにこの行を追加することで/etc/fstabをマウントしました。

proc           /proc       procfs  rw  0   0

/etc/rc.confが編集され、次の3行になりました。

dbus_enable="YES"
hald_enable="YES"
kdm4_enable="YES"

startkdeを実行している場合、エラーが発生します。

"display is not set or cannot connect to x server" 

実行する必要がある場所を見つけました

type plasma-desktop #kde4

plasma-desktopがインストールされているかどうかを確認し、問題がないように見えます。 kdeについてはよくわかりません。ここにあります:

enter image description here

2
Pavel Kovalev

xorg.conf構成ファイルを生成し、それを/etc/X11/xorg.confにコピーします。

 Xorg -configure

それをテストするには実行します

Xorg -config xorg.conf.new

プレスを終了するには Ctrl+AltBackspace 次に実行します:

cp xorg.conf.new /etc/X11/xorg.conf

また、~/.xinitrcファイルの下に次の行が必要です。

exec /usr/local/bin/startkde

実行可能にするchmod +x .xinitrc

startxを実行します

0
GAD3R
「/ etc/machine-id」を開けませんでした:そのようなファイルまたはディレクトリはありません
オプション `--autolaunch 'には引数が必要です。
トラップの中止(コアダンプ)
 startkde: D-Busを起動できませんでした。 qdbusに電話できますか?

実際、エラーメッセージでqdbusツールを実行できるかどうかを尋ねられた場合は、qdbusツールを実行したときに何が起こったのかを世界に伝える質問をする必要があります。エラーメッセージのこの質問には理由があります。

とは言うものの、ここでは何が起こっているのかを知るのに十分であり、qdbusを手動で実行することは、これがすでに私たちに伝えていることを確認するだけです。

/etc/machine-idファイルがありません。質問のコメントで言ったように、それ自体は別の質問です。 " FreeBSD/TrueOS/DragonFly BSD etalで/ etc/machine-idがありません "とその詳細を参照してください。

ここでの問題は、D-Busのフォールバック動作が誤動作していることです。システム化されていないメカニズムにフォールバックすることはまったくありません。

GNOMEやKDEなどのデスクトップ環境を実行しているシステムには2つのデスクトップバスブローカーがあります。 system-widedbus_enable="YES"/etc/rc.conf設定でスーパーユーザーとして実行されるものを開始しました。ただし、これらのデスクトップ環境を機能させるには、ログインユーザーとして実行される別のユーザーごとまたはセッションごとも必要です。 システム全体ブローカーではなく、ユーザーごとまたはセッションごとブローカーに連絡します。これは、環境変数として渡されたユーザーごとまたはセッションごとブローカーの場所で呼び出されることによって行われます。

startkdeは、これを実現するためにdbus-launchを実行しようとしています。これは、場所startkdeがデスクトップ環境に渡されるデスクトップバスブローカーを実行することを期待しています。また、qdbus自体の実行も試みます。ブローカーがまだ起動されていない場合は、dbus-launchの実行も試み、--autolaunchオプションを渡します。 dbus-launchのマニュアルページからわかるように、このオプションは必須のオプション引数としてマシンIDを取ります。 qdbusは、このマシンIDを取得し、その引数として渡そうとしています。

あなたはおそらく今何が起こっているのか推測することができます。

qdbusはマシンIDを取得できなかったため、存在しない/etc/machine-idのみを検索しているため、空のマシンID文字列を含む--autolaunchオプションをdbus-launchに渡しており、そのプログラムがクラッシュしています。これは、セッションごとのデスクトップバスブローカーが開始されておらず、デスクトップ環境もそのブローカーに接続されていないことを意味します。

これを修正するには、/etc/machine-idツールまたは「 FreeBSD /に/ etc/machine-idがありません)」の回答にあるmove-and-symbolic-linkオプションを使用して、setup-machine-idをD-BusマシンIDのコピーにするだけです。 TrueOS/DragonFly BSD et al "。

KDE開発者のLubosLunakが10年前にKDEのDesktopBusブローカーの自動起動メカニズムが壊れていると宣言したことを聞いてうれしく思います。それ以来、誰も修正を行っていません。

参考文献

0
JdeBP