私はチュートリアルに従っていますhttps://github.com/dex4er/fakechroot。
私は、root 権限のない非特権ユーザーで隔離された状態で、いくつかのアプリをインストールして実行しようとしています。これらは .deb として配布されるプロプライエタリ ソフトウェアなので、通常はインストールするには root 権限が必要ですが、一般のシステムにはインストールしたくありません。
最も簡単な解決策は VM にインストールすることですが、RAM を節約するために最初に fakechroot を使用してインストールしようとしています。
CLIアプリはチュートリアルのhelloのように問題なく動作します。しかしGUIアプリは失敗します。
$ echo $DISPLAY
:1
$ fakechroot fakeroot chroot /home/restricted/chroot firefox
Authorization required, but no authorization protocol specified
Error: cannot open display: :1
Ubuntu 22.04 を使用しています。ディスプレイの使用を許可するにはどうすればよいですか?
答え1
パラメータを追加できます--display=:0.0
答え2
解決しました。fakechroot debootstrap の問題ではなく、制限されたアカウントの問題でした。通常のアプリも実行されませんでした。
xhost + local:
GUI が実行されているメイン アカウントで実行する必要がありましたが、その後は機能しました。
別のアカウントから GUI アプリを実行する場合は、セキュリティ上のリスクがあることを認識しておく必要があります。