【Bash】Windows Subsystem for Linux【WSL】9
レス数が1000を超えています。これ以上書き込みはできません。
ついにWSL2が登場したぜー。こりゃ完全にLinuxだ。ヒャッハー!WSL最高!開発にLinuxは使わねぇー。Windowsで開発してLinuxは動かすだけや!
WSL2アーキテクチャ
https://www.atmarkit.co.jp/ait/articles/1906/14/news019.html
WSL 2では、仮想マシン環境が起動し、bashがコマンドを受け付けるまで2秒程度という速度で起動できる。
このため、コマンドプロンプトなどからwsl.exeなどを使ってbashコマンドを処理する時間は、
現在のWSL 1とほとんど変わらない。また、本物のLinux実行環境であるため、
これまで正しく動作できなかったアプリケーション、例えばコンテナシステム(Dockerなど)や
ユーザーファイルシステム(FUSEなど)も動作させることができる。その上で、現在のWSL 1と同等の機能と使い勝手を実現するという。
WSL 2はWSL 1を置き換えずに併存する
WSL 2が登場したからといって、WSL 1は廃止になるわけではなく、引き続き利用可能である。
ファイル共有プロトコル「9P」でWSL 1との互換性を確保
このように、WSL 2とWin32環境の間のファイル共有は、どちらも9Pを使うことになる。
また、WSLからWin32プログラムを起動する「Win32相互運用性」では、最初にWSL側で、
実行ファイルを判別する必要がある。具体的には、実行ファイル先頭のマジックナンバー
(Win32ではMZ)を見て、LinuxのELF64か、Win32の実行ファイルなのかを判断する。
前スレ
【Bash】Windows Subsystem for Linux【WSL】8
https://mao.5ch.net/test/read.cgi/linux/1590742701/ >>906
WSL2上のLinuxしか使ってないならそうなる
問題はWSL2にメモリー喰われて他のWindowsアプリがスラッシングに陥るって話だから >>911
Linux 側の free -h の結果と Windows 側のタスクマネージャの パフォーマンスタブ-メモリー 見せて virtualboxは仮想環境立ち上げるといきなり設定したメモリ分を確保するけどね
だからどれだけあらば十分か考える
WSLは動的に実メモリの使用量を調整できるとしても
80%確保とか馬鹿じゃないの
ほぼWSL専用のwindowsじゃないの ウチのマシンはWSL2は起動しただけだと80パーセントも取らんなぁ。
最大80パーセントで起動直後から最大値まで取りに行くのか? あ、8G迄なのか。
それなら50パーまでしかいかんわ。 virtualboxみたいに自分で決めないから
文句もでるわけで
今は最大サイズが決められる
この問題は今はない 80%にあらわれてるようにdockerが独占するような
環境を想定してる
windowsでリソースが必要なことはなくなってる 仮想環境使うのに32GB積まないってないだろ・・・。今時。 そんなもん使い方次第
>>906の2GBとかは流石にネタレベルだが >>913
RAM 2GB君が立ち上がらないので4GBでゴメン
ttps://i.imgur.com/j5dsnXS.png
ttps://i.imgur.com/dea21n0.png >>922
WSL, chrome, 切り取りツールだけ
今度は
Chromeでタブを10個開き、libreofficeのwriterとcalcで各1つずつ編集してみた。wslがあるからといって、winアプリが重くなることはない
ttps://i.imgur.com/18rFu3i.png >>923
そりゃWSL側で何も動いてなきゃそうだろうなとしか言えんよ… >>924
元レス>>904はキャッシュが解放されないのが問題としているが、解放されなくたって、メインメモリを食ってなきゃ問題無いんだよ >>925
だからLinuxのキャッシュに33MiBしか使ってないなら意味ないだろって話な >>926
キャッシュを増やしてみたけど変わらないよ。使われない領域はちゃんと掃出される。
ttps://i.imgur.com/l6fAjJG.png
ttps://i.imgur.com/08zJXt8.png >>927
>>897
> Linuxの設計が、メモリがあればあるだけ
> キャッシュとしてメモリを使うかららしいよ
の意味わかってないの?
Linux側スカスカじゃん >>928
Linuxはキャッシュとして使ってるんだから
スカスカではない >>929
お前全然理解してないだろw
>>904の前半はWindows側のキャッシュの話
後半はLinuxのキャッシュの話
>>930
free の出力の見方も知らないやつが絡んでくるなよ…
1GiBも使ってないだろ 漏れは、8GB メモリのPC を使っているけど、
ブラウザでも動画を見たら、5GBぐらい使う
たぶん、キャッシュにでも使うのだろう
Windows 側で、ブラウザを起動したら、
4GBメモリのPCじゃ、ヤバイのでは?
WSL2, Docker も使える? >>933
理解できないなら黙っとけ
VMの動き知ってたらゲスト側のメモリーの使用状況を知るなんてできないことぐらい分かるだろ
そのうち協調動作するようになるかも知れないけど今は無理 イマドキのブラウザって無駄にメモリ使うアプリ筆頭じゃね。あるだけよこせって挙動する。
今のWSL2側でブラウザ使う物好きは少数だから問題なしw >>935
ゲスト側の内訳なんか知る必要ないだろ、ホストはリソースの逼迫度に応じて割当てれば良い。ゲストは割り当てられたリソースの中でやり繰りする。 >>931
> free の出力の見方も知らないやつが絡んでくるなよ…
> 1GiBも使ってないだろ
WSL2の話なら、俺はこんな感じだな
total used free shared buff/cache available
Mem: 24Gi 91Mi 22Gi 0.0Ki 1.9Gi 23Gi
Swap: 7.0Gi 0B 7.0Gi
キャッシュとして1.9Giバイト使ってる
Linuxとしてはキャッシュデータで埋められているから空き容量として扱うだろうけど
キャッシュデータとして意味があるから、Windowsから見れば使用容量にあたる >>938
> ゲスト側の内訳なんか知る必要ないだろ、
あるぞ。俺はメモリの少ないMac BookででDocker使ってるんだが
Dockerは当然仮想マシンなので、一定のメモリを割り当てないといけない
Dockerで動くアプリを起動したときは当然メモリが必要だが
そのアプリを起動してないときはメモリは必要ではない
しかし仮想マシンなので常に一定のメモリ量を割り当てないといけない
そうするとホストで使用できるメモリ量が減る
ホストはゲストが使用するメモリ量だけを与えるのが理想
だからゲスト側の内訳を知ることは重要なこと
WSL2はLinuxカーネルに手を入れるわけだからいずれそれが出来るようになるだろう >>938
マジで理解してないなら黙ってなよ…
Linuxは空いてるメモリーがあったらキャッシュに使う、もちろんLinux側でメモリーが逼迫したらキャッシュに割り当てたメモリーを使う
ホスト側からはキャッシュに使われてるのかアプリとかで使われてるのかはわからないから
> ホストはリソースの逼迫度に応じて割当てれば良い。
なんてことはできないんだよ >>939
空き容量freeはtotalからusedとbuff/cacheを引いたもの
cacheを空きと見てない
要は実際メモリを消費してるからその分ソフトウェアでどうこう
できる問題ではない まさかLinuxでWindowsのキャッシュメモリを扱うとか変態的なことはしないだろうな WSL1とVirtualBOXのゲストにUbuntu入れてるノートPC使いの俺がサイツヨだな!
DEなしならメモリの割当が1G切ってもけっこうさくっと動くぞ、Ubuntuは。 >>945
ハードウェアリソースとやらが何を指してるのか知らんけど今はメモリーの話ね >>944
そういう話ならWSL2のメモリ割当を最大1GBにすれば同じこと WSL2入れたらVMwarePlayer動かんくなったわ
ゴミだなこれ >>948
ハイパーバイザー プラットフォームは入れた? >>949
ありがとう
有効化してるけどVMwareのインスタンス立ち上げる時エラーになるんで結局WSL2の方止めちゃった VMware Workstationは15.5.5以降でHvper-Vとの共存をサポートしてるよ
上にあるようにハイパーバイザープラットフォームの
有効化は必要だけど >>952
ブログなりでそういう記事見かけたからイケるか!?と思ってやったけどダメだった
VMWP内のubuntuは起動するけどgns3VMが動かなくなっちゃったんだよね Windows InsiderProgramの公式サイトが日本語対応になったな
矢っ張り日本語が楽だよな Windows Subsystem for Linux Update - 5.4.91 公式に GUI 対応するという話はその後どうなりましたか? WSL2 でvim 8.2 をソースコードからメイクしてるのですが、クリップボード機能をオンにする方法を教えてください
GUI 機能を使用しないとダメなんでしょうか? 現状公式に GUI はサポートされてないので --disable-gui --without-x で configure して make してます >>957
公式発表では動き無し
WSLG用の仮想マシンはたまにバージョンアップされてるね
WSL2→/mnt/wslg/〜(UNIXドメインソケット?)→WSLG(VM)→mstsc.exe
って流れの模様、GUIアプリが起動したらWSLGからmstsc.exeが叩かれるように見えた >>958
クリップボードはXの機能だからXがないと機能しようがない
WSLからWindowsのクリップボードへの転送はclip.exeでできるので
vimでコピーしたい行をVで選択して:!clip.exeで転送できる
逆はターミナル上で普通に貼り付けるだけなのでいらないと思うけど https://twitter.com/unixterminal/status/1362147937946636297
The new WSL 2 kernel based on the 5.4 branch is rolling out.
To get the latest WSL 2 kernel updates via Windows Update you need 'Receive updates for other Microsoft products when you update Windows' checked in Windows Update Advanced options.
https://twitter.com/5chan_nel (5ch newer account) オラのWSL2またご機嫌斜めで起動してくんない
性能云々以前に更新のたびに使えなくなっちゃ使いもんなんねえだよ >>956
apt update、upgradeで出来ますか? >>968
WSL2のカーネルはWindows Updateでアプデだよ WSL2 へアップグレードする際に使用した Windows Subsystem for Linux Update というアプリはアンインストールしていいですか?
もうアップデートは済んだのにずっとアプリと機能の欄に居座っているのはおかしい気がします 別にいらないと思うなら勝手に消せばいいだろ
おかしいと思っているんだろ? >>958
vimのレジスタ"*は勝手にホストのクリップボードと同期するよ
set clipboard+=色々
おれはX入れてないからXのクリップボードは使えないけど、winネイティブのvimも入れてるのでwinのクリップボードにも勝手に入る
vimは.viminfoと.shadaってファイルで別プロセス別セッションでの情報をやり取りしてるのであるか調べてみたら、なければ:h してつくれ vimの外でもコピペしたいこともあるから常に:termの中に住んでるな、ログ取りたいならそのまま:wできるし便利
xtermデカすぎて入れてないんで、ターミナルエミュレータ機能ほんと助かる グラフィック系は全部win側のghostscriptに投げてるな
設定無しでそのままgscwin32.exe file.psかパイプで流せばすぐ窓が開く
引数与えなければそのままインタプリタとして使えるのでwsl側に二重に入れる必要もない
むしろguiのインタプリタは補完も履歴も効かなくて快適
xxx2ps的なフィルターはパッケージマネージャにいくらでもあるのでps書かない初心者でも大丈夫
x嫌いの人におすすめ >>973
細かい痒みがあちこちにあってなんとかならんもんかと思っている新参者としては、こういうTipsがとてもありがたいです wt(preview)も良くなってきたけどデフォルトで変なリガチャフォント使うのやめてくれ…
Consolasも使えるからそれでいいわけだけど、!=を≠に見せるのはperl(raku)のように本物の数学記号文字でコーディングする言語で、初心者や書かないけどなんとなく既存コードを弄る人に混乱を招く
wsl/wtはすごく便利と思うので、発展を願っての老婆心 >>975
:terminalのデフォルトだと、確か(端末エミュレータ用途には不要であろう)行番号が付いて画面が狭くなるので、:set nonumberオプションを設定しておくとか
vim同梱プラグインの:Manがおそらく最も高機能なページャだと思われるので(少なくともmostよりは)、MANPAGER/LESS/PAGER環境変数に入れておくとか
K(カーソル下の単語から他のmanpageへジャンプ)、タグジャンプをサポートしてるし、辞書作らなくてもデフォルトで殆どのキーワードを適切にハイライトしてくれる
とりあえず今思いついたものだけ xtermは256なのにvimはtruecolorサポートという謎の頑張り
xterm on wtで動かしたら意味ないだろうけどな…
wtはどこまでだろ
画像とか表示させろ ビルド21332でWSLGが来たね
https://i.imgur.com/2OOzVws.jpg
リリースブログでは何も触れてなかったけど ( ゚д゚ ) ガタッ
.r ヾ
__|_| / ̄ ̄ ̄/_
\/ / マジか、もう1年以上更新されてないX410捨てるか >>979
材料(1台分)
・PC x1
・Windows10(Insider Preview Build 21332) x1
・Windows Subsystem for Linux Graphics Update x1
( http://download.windowsupdate.com/c/msdownload/update/software/updt/2021/03/wsl_graphics_update_x64_8c648918a22607761f85f8e5c071aacc2e3aedc7.cab )
作り方
1.材料をよく混ぜ合わせます
2.完成
コツ・ポイント
・メイン機は避けた方が良いでしょう、できれば仮想で
・まだ日本語関係はほぼ何も出来ないので、今後に期待しましょう >>979
おー、win側でxserver立ち上げなくていいのか
settingがjson介さずに(全部でないが)できるのしか気づかなかった
win/linuxのPowerShellもずいぶん良くなってきたしそろそろbash要らなくなるな インタラクティブシェルとして、ってことね
勉強するか >>983
Can't open display: :0で繋がらね
mstsc.exeが勝手に起動してるところまでは行ってるんだけど win→wslへの環境変数は勝手にエクスポートされるけど、profile.ps1にbash -c envでwin側にバックポートすると捗った(当たり前だったらすまん
wsl -d distro
function wslhome { cd \\wsl\distro\home\winlover }
も書いとくと便利
powershellをwin/wsl用に2つ入れるというアホなことしてたわ
Linux版powershellじゃないとネイティブシェルではないが、別にbash -cでもいいよね?
むしろwsl/win のプロセスが同等に扱える利点がある
linux版はwsl向きじゃないんかな? .vimrcやらも大体win側へln -sしてるし、もういっそwslのhomeをwinのhomeへのシンボリックリンクにしてしまおうと思うんだけど何か罠とかあるだろうか?
問題はwinのrcファイルの類がUserとUser/Documentと(そしてさらにサブディレクトリに)散在してることか… ああ、realpath -Pとか使ってる.shがあるとシンボリックリンクでは不味いのか
よく使われるコマンドだし危険そう
なんかいい手立てはありません? >>990
そうですね…はい…
物理パス取るコマンドでもそもそも箱庭だから本当の物理パスなんて取りませんね
とりあえずvhdファイル丸ごとバックアップしてやってみます $HOME/Documents → %USERPROFILE%\Documents みたいに、
データを入れるディレクトリだけをWindowsの実体にシンボリックリンクを作成してるわ
まぁ、使ってるひとには何を今更だろうけど
Windowsでも、ドットファイルを作成するアプリがあるし、
それが同名ならトラブルのもとになりうるから
HOMEのルートだけは別にしたほうがいいと思う 通りすがりですが次スレ立てました。
【Bash】Windows Subsystem for Linux【WSL】10
https://mao.5ch.net/test/read.cgi/linux/1615976083/ 950踏んだら立てるとかいうルールなくなったんですか? 最近は規制が強化されたのか、なかなかスレを立てられなかったり、
「スレを立てられなかった」という報告すら書き込めない場合もあったりするかもしれないので、
950を超えたら気付いた人が立てたらいいのでは。
その際できればスレ立て宣言してくれるとスレが重複する可能性が減るのでありがたいかな。 >>994
たまに勘違いしてる人いるけどそれは進行が速いスレのローカルルールで2chのルールじゃないよ
Slot
🌸👻🌸
💰🎴🎰
🍒🎰😜
Win!! 4 pts.(LA: 0.85, 0.97, 1.03)
Status ♥3 ♦4 HP: 1000 pts. たぶん(0)
0.86, 0.97, 1.03(1001.667969) Proc. [0.165613 sec.]
このスレッドは1000を超えました。
新しいスレッドを立ててください。
SLOT Results
🎰🎰🎰 Excellent!! 0
🎴🎴🎴 Gratz!! 0
🌸🌸🌸 OPPAI Ban!! 0
💣💣💣 Backingum!! 0
Win!! 1
Points 4 pts.
life time: 98日 6時間 22分 30秒 レス数が1000を超えています。これ以上書き込みはできません。