WSL2は仮想マシンを使うけど、全く違う仕組みだった
■ 今までの仮想マシンにLinuxを入れて使う仕組み 各環境ごとに独立した仮想マシンで起動しt それぞれで別々のLinuxカーネルが動いている 環境ごとにLinuxカーネルを起動するので遅いし、それぞれでリソースを食う 汎用のLinuxカーネルのため不要なドライバなどが含まれている。 ■ WSL2の仕組み 複数の環境を起動しても、一つのLinuxカーネルを共有する。 OS起動時に一つだけLinuxカーネルを起動しておけばよい LinuxカーネルはWindows用に最適化されている。 http://koduki.hatenablog.com/entry/2019/05/10/124945 > さらにWSL2の環境毎にVMを立ち上げるのではなく > Linuxカーネルは一つだけ立ち上げて、それぞれのWSL環境はコンテナで仕切っている様です。 _-----____-_-___-_----__-____--__-___---__--_-_--__-__-_-_--__-----____-- ___-___---__--___-_-__-___--_-____-__-----_---__---_-_-_-___----__-_--_-- ---_-----____--_--_______--_____----__-__----_-__-_---_--_-__--_-_____--_ --_-_-_--__--_-__-_-----_--_---__-_-___-___-__-_--__-_-_-_-__--____-__--_ --_-__-_-__---_-_-_--__-_____---__-_-_-_-__-__--_-_-_---__--_-_----_-____ -_-____-_-__---____-_-_--__-___-_---_----__--__-----___-__-_--_-___----__ -_---__-_-_--_---___-_---_---_-____--____-_-__--_-_-_-_--_--__---____-___ -__-_----___--__-__--_----____----___-_-________----__--_-_-_------_-____ _-_-__-____-___-_-_-__---_------_--_-___----_-__-_-___--_-____-----__-_-_ __--_---_---__-__------__-___-_--_-_____----_----_-______-__---___--__-__ --_--___--_-_----__-____-_-__---___-_-_-__--___-__--___--_---_-___---_-_- ___-_----__----____---_-__--__---_--__-_----__-__-_--_-_--_--_-___-______ ____---_---_----_--___-_----______--_--__---___-----__-___-____--__--__-_ --_---___--__-_-__-__-_-___-_-__-_____-_-__----_-__-__-__--_-_--------__- _-_-----___---____----_--__-___--___-_--___-__-_-_-_-___-_-__-_-_-_--_--- -______-_-_-__-__--_--_---__-__----_---_-__-___-_____-__-_-__--_-------_- _---_________-_-----___---__-_-__-__-_____--_-_----_-_-___--_-----__---_- -_--__-__-___--__-_---_________-_----_-____-_----_-__-_--_--___--_-_----- __--_____--_-_-_-----_--_--_---____-_-_--______-_-_--____-__-_-_-_----_-- _-_-_--__--_-___-_-----__----_--_-__-_---____---__-__-_-___--_---__-_____ ___-_-____-______-------_--__-----_-------_-_--__--____-_--_____-_--__-__ --__---__--_-_--_-______-____---_____-_-_-_-_-----_-_-_-_-_-_--____---_-- __-_--_-----__-_-----___-_--_-_----_-_----____---__-__-_-_-__-_______-___ _-_-____-__-_____----------_-----_-__-_--__-____-___-_-__-___-__---__---- _-___---__--------_--_--_------_-_______--__-_-_________---_-___--__---__ -_--_______-_-_-_--_-__--__-_-_--------_-____--__--____-_-__-__-_-_----_- 何も知らない人たちの無駄な言い合い眺めるなら、 MSの人の回答を見た方が良いな Craig Loewen@craigaloewen @chrisdfrey WSL 2 will be available on Windows 10 Home! It does use the Hyper-V architecture, but this will be bundled in a different optional component (i.e: Not the Hyper-V optional component) and therefore will be in Windows 10 Home :) https://twitter.com/craigaloewen/status/1126590474523774976 https://twitter.com/5chan_nel (5ch newer account) https://twitter.com/5chan_nel (5ch newer account) >>1 >複数の環境を起動しても、一つのLinuxカーネルを共有 なにこれ? Linuxってディストリごとにカーネル弄ってるから ディストリごとにカーネル別物じゃないの? >>4 いじっていると言っても、ある機能を有効にしているかしていないか程度 Linuxカーネルのバージョンの違いも同じようなもので ある機能が搭載されているかどうかであって、動きが変わるなんてことはない アプリから見れば、ある機能が有効でない or 搭載されていないなら その機能はこのカーネルでは使えません。という問題が出るだけの話 極論を言えば最新のカーネルを使ってすべての機能を 有効にすれば全てのディストリが動く もちろんLinuxカーネルに含まれる大量のドライバは不要なので そんな機能を有効にする必要はないが。 当然スケジューラーの設定とか動きが変わる部分もある ただ、これまでのWSLはディストリの提供するLinuxカーネルを使わないし Linuxカーネルを擬似ってるだけだから一つとか共有とかそういう事じゃない > 当然スケジューラーの設定とか動きが変わる部分もある そういう話じゃない。 お前が言ってる「動き」というのは性能の話であって 結果が変わることはないって言う話 shutdownってinit.dの時代は、ランレベルの変更 systemdの今は、systemdにコマンド発行してるんだろ? でもWSLではinit.dもsystemdも使わないでしょ?おそらくWSL2であっても。 WSLからshutdownできるかどうかは、Windowsが実装しているinitプログラムの 仕様によるわけで対応すればshutdownできる。対応しなければできない程度の話じゃないの? 正直対応する意義を感じられないんだが そんな面倒なことするより別々のほうがすっきりしていいと思うけど トラブルも少ないし >>7 性能で結果が変わる事もあるって言ってるんだが分からない? ある状況ではアプリが使い物にならなくなったりするだろ 性能で結果が変わる事はないよ 何を言ってるんだろう? windowsにGPLのコードが含まれるw Linuxカーネル部分だけのソース公開ですむって 法務部・顧問弁護士に確認しまくったんだろう >>13 常識レベルだよ(苦笑) そもそもUbuntuなどのディストリがやってることは GPLやMITなどのその他のライセンス、それに加え ソース非公開のプロプライエタリなドライバなどを 含めて配布してる。 _---_-_-_-___--_--__-_--_--___--_--_____-_-_--__--_-_-____----__-__--_-_- -_--__---__--___-_----_-_-__-_-__---__-__---_____-__--_-_-_----___--__-__ _-_---_-_-_____-__-_--_-_---____-_--_-_-_-_-_-___---_-_---_-_-__-__-_---_ -______-_----_-_-_____--_-----_----_-__--___--_--__-___-__----__-_-___-_- _------__--_-____--__-___-_--__-_-___-___-__-----_---_---_---____-___-_-_ --_-_---__--_-__-____-------____------_____-___--_----_-__--____--_-_____ ______-___-__-_-_----__-__------__--_---------__--_-__-____---_____-__--_ _-_________-_---___----_-_-----___--__--_-_---_-_------_-___-_-_--____-__ -_-_-___-_---_---_-_--___-__--__--_---_---_____-___-_--_---___-__--__-_-_ --_--------_______-____---_----____----___-___---__-__-_-_-___------_____ _---_-_-_-_-___-_--_--_---___-__-_-_-_-__--_--__--___-__--_--_--__-__-__- ---_--__-_-_--_---__-_--____--_-___-___-__----__-_--_-_-_--_-__-_--_____- _--_--__--_--__-_---_--_--_----_-_____-----_-__--_--_-___-_-_-__-________ -___--_---_---_--__-----_-____-___---_-_-__--__-__--___-_-__-_-___-_--_-_ _---_-_----_---___---_--_-____--_---__---_-__-_---__---__-__-__-_________ -__-__----__--_-_-_-------____-____-_--_---__--_---__-___-__-_--__--_____ -___--_-__--_____-____-_-_-__--__----_-___-----_--_--_-----_____----____- -__---_--_----___--__--______-___-__-___-_--_---__-_-_---__-_-____--_---- _--_-____---_--_---_-_-----_______-__-__---_-_-_--_-_--___-__-__-----____ -__-----_--_-___---___--__-_---___--___--____----____-_---_--__-____--_-_ ____-__---_---___----_-_-__--___-_-__-___-_--__------_-_---_-__--__-_-___ -_-____-__-___----___--_-_---____-____-_-_----_---__--____-_--_-__----_-- __-__---__-__--__-_-________--_-__-_--_-__----_-----_-_---_-_-_--__-_-__- ___-__----_--__-_-_--____--_-_-__--__------___--_-_-__--_-_--_-_--___-___ --_----_----__--_-__-__-_--_---__-__--_____---_-__-__--_--______-____---_ -_---___-___-_----_--_--__--___-___--___--_-----__-_____-__-__-___---_--- >>1 内部でOSがコケると関連しているOS全てが落ちる。 実際のところマイクロソフトではLinuxを動かせない だからそう作った。 sandbox使っているのでVTがやたらめったら使えないので 苦肉の索がVTを使わずにLinuxを動かすようにしたのでは? >>17 Windows 10でOSがコケることなんてないよw WSL2は仮想マシンを使うけど、全く違う仕組みだったのか あとsystemd系さえ綺麗に動いてくれればスゲー助かる。 Hyper-Vが動的メモリ確保するのが嬉しいな VM起動するだけで2GB持ってかれたりするとノートじゃ苦しいし >>18 仮想は基本1つしか動かん VirtualBox を動かす環境を作ればわかるよ。 競合して動かんから >>24 なんの話してるんだ? HyperVがハイパーバイザー型だから他の仮想マシン技術が動かない話してるのか? それならWindows 10で共存できるように仕組みを整えて2004から公式にできるようになったろ Windows 10でHyper-VとVMware Workstationの共存が可能に https://news.mynavi.jp/article/20200529-1045442/ > 2019年8月に開催したVMworld 2019では、Windowsハイパーバイザープラットフォームの > APIを利用するVMware Workstation Proの開発に着手することを表明しており、 > 現在テスト中のVMware Workstation Tech Preview 20H2でも、Hyper-Vハイパーバイザーとの共存を実現していた。 VirtualBoxは前から特定のCPUのみとか制限があるみたいだが一応出来てるようだし >>25 VMwareは確かに動くようになったらしいけど激烈に速度が遅くて使えないもの 状態らしいよ ソフトウェア板のVMwareスレ情報だけど >>26 動かない話と激遅の話は全く違うぞ 恥の上塗りなのか?w どこでVMwareが激重って書いてあんの? ソフトウェア板のVMwareスレみたけどどこにも書いてない HyperVオンにしたらVMware上でのゲームがむちゃくちゃ重くなったよ c言語ビルドするとメモリリークやばいんだが 公式が半年くらい前に直してるって言ってたけど アプデで改善される見込みあるの? WSL2は仮想マシンを使うけど、全く違う仕組みだったのか WSL2は仮想マシンを使うけど、全く違う仕組みだったのか WSL2 をデフォルトに設定し、Ubuntu最新版をWindowsストアからインストールしましたが起動しません。 指定されたデバイス、パス、またはファイルにアクセスできません。これらの項目にアクセスするための適切なアクセス許可がない可能性があります。 と出ます。しかしC:\Program Files\WindowsApps以下はWindowsストアアプリやシステムやTrustedInstallerだけがアクセスでき、そもそもユーザは弄れない筈ですよね。 僕が悪いんですか? 別件ですが2004アップデートの後、C:\Windows\Tempの所有権を見たらSYSTEMになってるんですが これってTrustedInstallerが正解なんじゃないんですか?なんで変更したんですか? > 僕が悪いんですか? 誰かが悪い 俺は悪くない Micorosoftが悪い って言いたいんだろうなw 誰が悪いか責任を追求したいのか? WSL2を動かす為にWindowsの機能の有効化と無効化で Linux用Windowsサブシステム と 仮想マシンプラットフォーム にチェックを入れる必要がありますが、 Hyper-Vにもチェックを入れる必要はありますか? うちではチェック入って無くても機能してる ただし一部の泥エミュではHyper-Vが有効化になってると判定されて起動しなくなるのもあった Windows 20201.1000を入れたらCudaが動かなくなった。ちゃんと動いてる人いる? WSL2は仮想マシンを使うけど、全く違う仕組みだったのか >>42 ディスプレイドライバーを入れ直したらなおった。 WSL2は仮想マシンを使うけど、全く違う仕組みだったのか ☆ あたまからっぽジャップはマスコミのおもちゃ(笑) ☆ @日本人の精神を腐敗・堕落させ愚民化させろ. A日本人の女を集中的に狙い洗脳しろ. Bネトウヨ、ヘイトスピーチ等の言葉を浸透させ、同胞への批判を封じろ. C韓国人識者に政治的意見を言わせ、御意見番化させろ. D「同性婚・LGBTを全面肯定しない者は差別主義者だ!」という雰囲気を作れ. E海外セレブやハーフモデルをもてはやし、「日本人は劣等人種だ!」と植えつけろ. F「未だにガラケーの奴は笑い者」という雰囲気を作れ. G「LINEに入らない奴は仲間外れ」という雰囲気を作れ. H「日本人の男VS日本人の女」の対立を煽り、分断しろ! I日本人同士で恋愛・結婚させない、子供を生ませないよう誘導しろ. J日本同士で結婚していたら離婚させる方向に仕向けろ. K女が活躍するドラマばかり作れ。男は無能な役、笑われ役にしろ Lイケメンブームを定着化させ、「男は外見が全てだ!」と洗脳しろ。 - ソース - 電通グループ会長 成田豊は朝鮮半島生まれ http://ja.wikipedia.org/wiki/%E6%88%90%E7%94%B0%E8%B1%8A WSL2では who や w コマンドが何のユーザーも出さないのだが、これは構造上仕方がないことなのか? tty コマンドは使えて普通に端末名が出るんだけどね。 ログインしてないのだから無理では? ログインしてるのはWindowsに過ぎない しかしWindowsのユーザー名を表示しても意味がない WSL2は仮想マシンを使うけど、全く違う仕組みだったのか 近い将来 Linuxの上にWindowsが動く状態になる オープンする方向で向かってるし 仮想マシン上ではかなり前から動く状態だったのだが、それ以上の何かがあるのか? プラスに働くと思えんけどな dirとls ipconfig と ifconfig などコマンド違うんだが それお前ら覚える気あるの? 2もので別々なのが同居するのはこれ以上不便なものはない。 それをお望みですか? >>57 何がいいたいかわからんが今までもLinuxは使っていたんだよ つまり今までWindowsではdir、Linuxではlsと使い分けなければいけなかった WSL2が出てくれたおかげでlsだけですむようになったんだよ シェルやコマンドなんてUIの問題で表面的なものじゃない。これまでもCygwinみたいに互換性のあるコマンドが使えるWindowsソフトを使えば使えたんだからたいした問題ではない。 WSLの利点は性能が高いってのもあるが それ以上にUbuntuのパッケージをそのまま使ってるから 独自でパッケージマネージャがメンテナンスする必要なく Ubuntuがあるかぎりメンテナンスされるということ 常に最新版のUbuntuが使える MSが勝手にいじったカーネルがバグりそう・・・w 俺はWSL使うくらいならVM使うな 自社OSのアップデートすら問題続出の会社だからなぁ >>61 バグったらザマァって言えるんだから MSの製品使っとけよw 自社のOS(Windows)すらまともなアップデートをできない会社なのに 勝手にカーネルいじって大丈夫なわけない WSL2は仮想マシンを使うけど、全く違う仕組みだったのか Winsows11でWSLがブームになる!ってマジかよw 泥アプリを使えるようにするとか言ってたけどそっちもホントかよw Windows板ってLinuxのブラウザから書き込みできなくなったのね。 でも意味あんのかなWSLって カーネルや細々した違いを気にしながら使うなんてアホくさいし、 VMwareなりVirtualboxで本物のLinux環境作ったほうがよくね? MSがLinux上でWindowsを動かせば解決なんだけどなw >>71 やっぱりWindowsは使いたいんだねw WSL2は仮想マシンを使うけど、全く違う仕組みだったのか WSL2でLinux動かすくらいなら直接Linuxインストールするわな。 そりゃ直接Linuxインストールでいい人はそうしてきたしそうするが 世界の流れはそうではない 直接インストールできなかったらVM使えばいいじゃない。 アホなの? >>68 多分・・・ user agentではじかれているとかでは? ここすらFirefoxではじかれる。 Chromeでは書ける。 MacだとFirefoxで書けるようである。 5chの制限はバラバラだがそのあたりが原因かと思われる。 お前らコマンド叩け https://qiita.com/pyon_kiti_jp/items/e6032eb6061a4774aece お子様には難しいか? コマンドでインストールできるところがお子様には難しいところでもあり インストーラ不要で行える手軽さでもある。 WSL2は仮想マシンを使うけど、全く違う仕組みだったのか >>83 作らないと文句を言う人がいるから作ったようなもんだよ MSはオープンソースを利用しているだけで還元しないとか いちいち文句を言うやつがいるんだ >>74 wsl2でサーバー運用するとかLinuxのデスクトップアプリを動かしたいわけじゃないからな 開発などでシームレスにツールが使えて、お互いの環境を行き来できる。 wineなどを使わなくてもlinax側からwindowsのソフトが使えるっていうのがメリットなわけで powershellをwin/linuxでprofile共有して使うのがとても便利 今更 PowerShell を覚える気になれないのだが、何かこう使いたくなるような利点はあるのか? 単に俺が知らなくて調べる気にもならなってないだけのことだが。 >>88 ない、カオスなだけ。 コマンドプロンプトとPowerShell が微妙に役割が違うので バッチで異なるものを組み合わせる必要があり面倒極まりない。 アホな会社の生成物なので仕方ないかと思われる。 積極的に覚えるものじゃなく必要な時にググって利用するのみ。 PowerShellはオブジェクトでやりとりするREPLだからなぁ。 コンソールコマンドっぽくテキスト結果表示や結果整形をコンソールコマンドっぽく取り扱えるようにしてるだけで。 WSL2は仮想マシンを使うけど、全く違う仕組みだったのか read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる