web-dev-qa-db-ja.com

ウィンドウマネージャーをデフォルトに戻す方法は?

キオスクUbuntuを作成したかったので、次の手順に従いました: https://web.archive.org/web/20131210161955/http://phunehehe.is-great.org/2010/run-linux- with-a-bare-window-manager /

/usr/share/xsessions/metacity-session.desktopにファイルを作成して、カスタムセッションを追加します。このファイルは、ログインマネージャにセッションについて通知します。コンテンツ:

[Desktop Entry]
Encoding=UTF-8
Name=Metacity
Comment=Metacity without GNOME
Exec=/usr/local/bin/metacity-session
Type=Application

(1)/ usr/local/bin/metacity-sessionで追加したセッションで実行するファイルを作成します。

content:
#!/bin/bash
if test -z "$DBUS_SESSION_BUS_ADDRESS"; then
eval `dbus-launch --sh-syntax --exit-with-session`
fi
metacity --replace ccp & wmpid=$!
sleep 1
if [ -f ~/.metacity-session ]; then
source ~/.metacity-session &
else
xterm &
fi
# Wait for WM
wait $wmpid

ユーザー固有の構成ファイル〜/ .metacity-sessionを作成します。このファイルは、(2)で追加したファイルによって実行されます。コンテンツは、実行するプログラムの後にアンパサンドを続ける必要があります。たとえば、

 firefox &

しかし、ログアウトした後、metacity-sessionでログインしようとすると、機能しませんでした(1秒間黒い画面が表示された後、再びログインページに戻ります)。その後、コンピューターを再起動することにしました。その後、Ubuntuのデフォルトデスクトップでもログインできませんでした。ログインしようとすると、パスワードを入力してログインした後、メニューも何もありません!デフォルトの背景写真とマウスポインタのみが表示され、他には何もありません。

次に、Win10を使用して他のラップトップにPuTTYをインストールし、SSH経由でUbuntuラップトップに接続して、以前に作成した3つのファイル(上記の手順にある3つのファイル)をすべて削除しようとしました。しかし、何も起こらず、ログインした後は何もないので、Ubuntuを使用できません。メニューのない背景写真のみ。

編集:私はこれらを試しましたが、機能しませんでした:

Sudo apt-get update
Sudo apt-get remove --purge ubuntu-desktop
Sudo apt-get remove --purge unity
Sudo apt-get install ubuntu-desktop
Sudo apt-get install unity
1
user145959

これは、デフォルトのセッションコードの一部(通常のセッションでは3つのファイルの1つ)を誤って上書きしたようです。ログインして数分待つだけで、別のセッションの後にキャッシュを更新するメタシティによって引き起こされる遅延だけではないことを確認してください。

これで問題が解決しない場合は、デスクトップ環境を(apt経由で)再インストールします(unityまたはgnomeは、unity-desktopまたはgnome-desktopと呼ばれる場合があります)。最初にapt-get install --reinstall <packagename>を試してみてください。それでも問題が解決しない場合は、apt-get remove --purge <packagename>を試してから、通常のインストールを行ってください。後者は、DEに関連するすべての構成とローカルデータを消去するため、おそらく再構成する必要があります。

第二に、もう存在しない7年前のチュートリアルに従うことは、一般的に最良のアイデアではありません。ここで尋ねるのも良い選択だったでしょう。

第三に、キオスクシステムを作成したい場合、実際にはそのような重いウィンドウマネージャーは必要ありません。 1つのウィンドウで1つのプログラムが必要な場合は、スクリプトファイルにexec firefox(またはプログラムが何であれ)を入力します(そのセッションのみを使用する別のユーザーがいると仮定すると、デフォルトは~/.xinitrcです。 )そしてstartxを起動します。 startxが行うことは、ベアXサーバーを起動し、Xクライアント(ウィンドウを表示したいもの)が接続するのを待つことです。すべてのクライアントが終了すると、Xサーバーが強制終了されて終了します。

一方、いくつかのウィンドウが必要であるが、それでも最小限のGUIが必要な場合は、 openbox を試してください。 Openboxは、ウィンドウを表示および管理できる文字通り黒い画面であるウィンドウマネージャーです。 nowhereを右クリックし、構成可能なコンテキストメニューからオプションを選択することで、何かを起動します。 Arch Wiki は、いつものように、そのトピックに関する貴重な情報源です。

第4に、セッション開始スクリプトには、アプリケーションを起動する2つの形式があります。 firefox &は、Firefoxを起動してからバックグラウンドにフォークし、詳細な手順を読みます。 exec firefoxはFirefoxを起動し、読み取りを停止します。したがって、バックグラウンドプロセスではなく、「メイン」アプリケーションを起動するには、exec構文を使用します。

第5に(これはどのように作成するのですか?)、実行する予定のスクリプトを実行可能としてマークする必要があります。そうしないと、「ファイルxは実行できません」というエラーが発生し、実行中の処理が停止する可能性があります(この場合はグラフィカルセッションの起動)。 chmod +x <filename>を使用して、ファイルを実行可能としてマークできます。これがそもそも黒い画面の原因である可能性がありますが、これらのファイルを削除したため、わかりません。

0
Deuxis