WSLに初めてアクセスし、GUIを使用してDebianをインストールしようとしています。

WSLに初めてアクセスし、GUIを使用してDebianをインストールしようとしています。

私はLinuxベテランで、MS-DOS以降Windowsを使用してきたにもかかわらず、Windowsにはあまり慣れていません。

新しいWindows 11コンピュータを購入し、WSLにGUI機能を備えたDebianをインストールしようとしています。 DebianにWSLバージョン2を正常にインストールしました。主に私が得るものは単にbashシェルです。 Microsoftの推奨事項に従おうとしましたが、apt install gedit -yエラーメッセージ(package gedit not found)が表示されました。

他の投稿から "lsb-release"をインストールする必要があると読んでいましたが、再びlsb-releaseをインストールしようとすると見つかりませんでした。

WSLでこれらを見つけるのは難しいDebianソフトウェアツールを見つける方法は?私が考えることができるすべてを試しましたが、Windowsのインストールを中断したくありません。

WSLのGUIイメージを含むDebianは、カラフルなグラフィックと見つけやすいソフトウェアを示しています。どうやって参加できますか?

ベストアンサー1

これしなければならない少なくとも初心者にとってはとても簡単です。 WSLにDebianを新しくインストールして再現しました。インストールソリューションを提供できますが、注意事項を最後までお読みください。

新しくインストールした後:

$ sudo apt install gedit -y
E: Unable to locate package gedit

これは、ほとんどのWSLディストリビューション(Dockerイメージなど)には、帯域幅を節約するために埋め込まれたストレージキャッシュが提供されていないためです。

$ sudo apt update
$ sudo apt install gedit -y

その時は(ほとんど)期待通りに動作します。

もちろん、これは新しくインストールするので、次のことをお勧めします。

sudo apt upgrade

ガイドライン

Gnomeソフトウェアは、基本的geditにWSLで実行されていないD-Busや他のサービスへの依存度が高くなります。 D-Busは通常Debian(および他のほとんどのディストリビューション)でSystemdデバイスとプロセスによって起動されますが、WSLは通常Systemdをサポートしません(実際には私が議論した別のトピックです)。今日提供されている別の答え)。

D-busなしで上記で実行すると、gedit一部の機能が低下し、一部のサポートサービスが開始されません。若干のエラーが発生し、みんな実行する内容は次のとおりです。状態を確認する別のセッションgeditは次のとおりです。ps -eH

  PID TTY          TIME CMD
    1 ?        00:00:00 init
    7 ?        00:00:00   init
    8 ?        00:00:00     init
    9 pts/0    00:00:00       bash
   11 pts/0    00:00:00         gedit
   20 ?        00:00:00   init
   21 ?        00:00:00     init
   22 pts/1    00:00:00       bash
   28 pts/1    00:00:00         ps
   29 pts/1    00:00:00         bash

この問題は広範囲にわたってテストされていませんが、gedit少なくとも以下をインストールするとこの問題を解決できるようです。

sudo apt install dbus-x11

geditこれにより、D-busを使用して実行が自動的に開始されますdbus-launch。その結果、多くの依存サービスが開始されていることがわかります。

     UID   PID  PPID  C STIME TTY      STAT   TIME CMD
       0     1     0  0 22:03 ?        Sl     0:00 /init
       0     7     1  0 22:03 ?        Ss     0:00   /init
       0     8     7  0 22:03 ?        S      0:00     /init
    1000     9     8  0 22:03 pts/0    Ss     0:00       -bash
    1000    11     9  0 22:03 pts/0    Sl+    0:00         gedit
    1000    16     8  0 22:03 pts/0    S+     0:00       dbus-launch --autolaunch=51f357b828e646fc889cfee60effb53c --binary-syntax --close-stderr
    1000    17     8  0 22:03 ?        Ss     0:00       /usr/bin/dbus-daemon --syslog-only --fork --print-pid 5 --print-address 7 --session
    1000    23     8  0 22:03 ?        Sl     0:00       /usr/libexec/at-spi-bus-launcher
    1000    28    23  0 22:03 ?        S      0:00         /usr/bin/dbus-daemon --config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork --print-address 3
    1000    30     8  0 22:03 ?        Sl     0:00       /usr/libexec/xdg-desktop-portal
    1000    35     8  0 22:03 ?        Sl     0:00       /usr/libexec/xdg-document-portal
       0    44    35  0 22:03 ?        Ss     0:00         fusermount -o rw,nosuid,nodev,fsname=portal,auto_unmount,subtype=portal -- /mnt/wslg/runtime-dir/doc
    1000    39     8  0 22:03 ?        Sl     0:00       /usr/libexec/xdg-permission-store
    1000    49     8  0 22:03 ?        Sl     0:00       /usr/libexec/xdg-desktop-portal-gtk
    1000    55     8  0 22:03 ?        Sl     0:00       /usr/libexec/at-spi2-registryd --use-gnome-session
    1000    59     8  0 22:03 ?        Sl     0:00       /usr/libexec/dconf-service
       0    68     1  0 22:03 ?        Ss     0:00   /init
       0    69    68  0 22:03 ?        S      0:00     /init
    1000    70    69  0 22:03 pts/1    Ss     0:00       -bash
    1000    93    70  0 22:05 pts/1    R+     0:00         ps n -efH
    1000    94    70  0 22:05 pts/1    D+     0:00         -bash

Gnomeとgeditには通常、完全な「デスクトップ」Debianのインストールから起動するか、Systemdによって起動される追加のサービスやパッケージが必要な他の機能がまだあります。

たとえば、 のごみ箱機能は と で提供geditされ、両方ともWSLにデフォルトでインストールされていません。これらなしで確認しようとすると。giogvfsgedit

解決するそれ:

sudo apt install gvfs libglib2.0-bin

そしてもう一つ

まあ、まず(ついに?)WSLへようこそ。以前のLinuxの経験に言及したので、WSLについて理解する必要がある重要な点はいいえ物理(または仮想)マシンと同じです。 WSLでDebianを実行すると、実際には独自のPID名前空間で実行されます。~へアクセスできない仮想マシン(Windowsの仮想マシンプラットフォーム機能)Dockerコンテナで実行されているディストリビューションに似ています。

「一般」LinuxとWSLの間に生じるほとんどの違いは、これに由来します。シャットダウン/再起動もなく、Systemdもなく、ネットワーキングはWindows(Linuxではない)で提供され、これに対する制御権があまりないという事実などがあります。

おすすめ記事