探検


【Bash】Windows Subsystem for Linux【WSL】11

■ このスレッドは過去ログ倉庫に格納されています
2021/07/29(木) 06:31:29.44ID:280Si2bb
ついに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】10
https://mao.5ch.net/test/read.cgi/linux/1615976083/
2021/12/01(水) 01:57:59.72ID:7SAuURAR
まあアホだからLinux使えないで発狂している奴らだし
その辺はご察し
2021/12/01(水) 03:35:31.37ID:DSZE53Gv
組み込み・mruby の本が出た

Webで使えるmrubyシステムプログラミング入門、近藤宇智朗、2020/11

宇宙開発などの組み込み用、MicroPython, Lua, Squirrel の代替になる。
Ubuntu 18.04, C99 対応

人工衛星イザナギ・イザナミで、使っている

この本に、Virtualbox, Vagrant を使う。
WSL はサポートしないと書いてあるけど、WSLでも使えるのでは?
2021/12/01(水) 09:09:47.65ID:h+AX9bwk
Ruby界隈はなぜかMSを目の敵にしてるので
2021/12/01(水) 11:44:45.71ID:LZspSXUx
Vagrantを使うのは開発環境が一式揃った仮想環境を使い
開発環境構築の手間を省く為と思われる。
2021/12/02(木) 13:10:41.76ID:2h/x3lBI
きのう一生懸命VcXsrvとPulseAudioのWindows binaryの環境を準備したら
今日WSLgってのを知った。・・・もう一回遊べるドン!
2021/12/02(木) 22:36:15.35ID:ccIX8LOF
GWSLってのもある。中でVcXsrv使っている。WSLgより自分は使いやすいな。
2021/12/03(金) 01:57:03.69ID:NHAAd4lV
wslg使える環境でないのでwsl2まま
Windows11も使えないし(;´д`)
まぁこれで不自由ないからいいわ(´∇`)
2021/12/07(火) 00:30:09.82ID:ABgoU7cl
cmdツールの拡張程度にしかWSLを使ってない…
2021/12/07(火) 00:54:11.96ID:O34K9HvF
未だWSL1
コマンドツールとしてはとりあえずこれで十分だけど
WSL2だと重くなったりするのかな?
2021/12/07(火) 02:07:45.84ID:eoOgZmGo
linux用とwin用のmingw-64がapt(ubuntu)とwingetでカンタン導入できるのが素晴らしい
wsl上のgccとmingw-64からlinuxネイティブとクロスコンパイルwinバイナリ、win上のmingw-64からネイティブコンパイルwinバイナリ
(n)makeで一括テスト

dockerなんて要らなかったんや
2021/12/07(火) 02:54:07.74ID:zei1PJTh
>>182
ツールチェインが欲しいだけならwingetでネイティブの入れた方が速いし楽
ツール不足でなくcmd自体が嫌ならpwshにしなさい
linux環境を使いたくてまだunixシェルに慣れてないなおさら薦める、chsh pwshでwin版と同じ.profileを共有できる
2021/12/07(火) 07:47:08.56ID:tSnMACD6
>>184
同じmingwでもwsl上のクロスコンパイルのほうがうまくいくことが
多いね。実行は問題ないけど、windows上のmingwだとエラーがでることがある。
2021/12/07(火) 08:24:02.61ID:qEqyD2/X
>>194
だからDockerはサーバーへのアプリデプロイ用だって言ってんだろ
2021/12/07(火) 08:24:15.24ID:qEqyD2/X
>>184の間違い
2021/12/08(水) 01:50:10.17ID:tSwLxMnw
mingwはminimul gnusystem for windows的な意味だったと思うけど、wslが広まった事でwinバイナリ吐けるクロスプラットフォームコンパイラという立ち位置に変わったな
名前変えるべきじゃね?

リッチ環境目指したmsysやcygwinは完全に用済みだけど、mingwはこれからも重宝するだろう
2021/12/08(水) 01:53:06.51ID:tSwLxMnw
ただ2つもmingwインスコして継承するとパス汚染がやばいよな
整理しなきゃ…
2021/12/09(木) 14:23:07.58ID:0FRgbj7B
「wsl.exe --install」コマンドでインストールされる「WSL」がストア版に
WSLをOSと切り離し、単体アプリに移行する計画の一環
https://forest.watch.impress.co.jp/docs/news/1372718.html
2021/12/09(木) 16:17:40.93ID:+B3jY0WD
>  現在のWSLは、Windowsのオプションコンポーネントとして提供されており(インボックス版)、
> 利用するには[Windowsの機能の有効化または無効化]ダイアログでオプションを有効化し、
> PCを再起動する必要がある。「wsl.exe --install」コマンドを使えば手順は大幅に簡略化されるものの、
> WSLがOSの特定バージョンと強く紐づいており、頻繁にバージョンアップできないという問題は残る。
> Windows 10/11の大型アップデートは年1回に減るため、なおさら新機能が投入される機会は減ってしまう。
>
>  そこで同社は、WSLをOSから切り離し、「Microsoft Store」で提供するテストを進めている。

最近のMSは正しい技術的選択をするようになったな。すばらしい。
193login:Penguin
垢版 |
2021/12/09(木) 17:00:43.53ID:+zl3mLVq
英語キーボード使ってるんですが,inkscapeやgimpでテキストを入力
する使ったときだけキーボードが日本語配列で認識されます.ディスト
リはDebianです.WSLじゃない普通のDebianではこんなこと経験した
ことないので,困ってます.何か分かる方おられます?
2021/12/09(木) 17:22:56.67ID:TlhexPT3
VirtualBoxに切り替えれば全て解決
2021/12/09(木) 18:28:27.32ID:M46ZvqqD
>>194
いっそのことchromebookにしようか
2021/12/09(木) 23:46:44.73ID:BPx448BU
え?WSLってinkscapeやgimpにまで対応してるの?
すごくないかそれ?
あとWindows版を使えばいいのでは?
2021/12/09(木) 23:51:31.11ID:LUHk4a9B
inkscapeってwindows版は不安定で使えたものではなかったのだが、マシになったのだろうか…
gimpも昔はwindows版は不安定で酷かったが
2021/12/09(木) 23:59:07.28ID:BPx448BU
まだLinux開発者ってろくにWindowsアプリ作れないの?
199login:Penguin
垢版 |
2021/12/10(金) 02:06:58.60ID:EeJ3eOXb
>>187
だから何だよ?
池沼か?
2021/12/10(金) 11:49:51.92ID:39yhmmqW
VirtualBoxつかってもDockerは別に必要だって話
2021/12/10(金) 12:48:46.90ID:SEGNBmr3
使い方は人それぞれ
2021/12/10(金) 12:52:37.53ID:39yhmmqW
使い方は人それぞれだから、VirtualBoxに
切り替えたからと言って解決するとは限らないという話
203login:Penguin
垢版 |
2021/12/10(金) 15:15:26.16ID:mWvQzw6j
皆さんのPCのコマンドプロンプト上で、以下コマンドを実行して作られるaaa.txtの中身どうなってます?
wsl --help > aaa.txt
204193
垢版 |
2021/12/10(金) 16:00:37.62ID:mKTU0iir
WSL上のinkscapeはtexが簡単に使えて便利なんですよ.
windowsも英語キーボードで動かしてるのに,
wlsのGUI使うときだけ日本語キーボードになるの謎です.
2021/12/10(金) 16:05:23.37ID:GoM2Trwf
>>203
UTF-16LEで出力されるね

以前にも話題になった事があったような?
206login:Penguin
垢版 |
2021/12/10(金) 18:31:39.47ID:EeJ3eOXb
>>200
素直にLinux使ってるなら不要だよw
ばかじゃないの?
2021/12/10(金) 18:49:57.74ID:Dnh6oF+q
バカって言うヤツがバカ
208login:Penguin
垢版 |
2021/12/10(金) 19:44:25.41ID:mWvQzw6j
>>205
なるほどUTF-16なんですね
回答ありがとうございました
2021/12/10(金) 23:49:30.77ID:YNZtyDtx
>>206
素直にLinux使っていても、別にDockerつかうだろ?
なんのためのツールか知らないなら黙ってれば?
ばっかでーすって叫んでるようにしか見えないぞ
2021/12/11(土) 00:01:29.04ID:hJPOF4cv
現WSLgは正規リリース前の開発版であって、インサイダー向けに提供されているに過ぎない
再現性が確かな挙動は積極的に報告しよう
2021/12/11(土) 00:04:21.63ID:U+3en9ar
>>210
ん? Windows11では正規にリリースされているが..
2021/12/11(土) 00:25:06.01ID:eJcR+7Fx
WSLgはwin11対応でwin10をサポートする予定はないんだろ?
2021/12/11(土) 00:28:52.42ID:m9M92rho
>>212
ふんふん、それで?
その話から、結論までどうやってたどりけるの?
2021/12/11(土) 01:46:52.94ID:U+3en9ar
WSLgよりGWSLの方がいいぞ
215login:Penguin
垢版 |
2021/12/11(土) 21:25:48.82ID:tgu+A8tE
>>209
使わないねぇ
もしかしてDockerが何なのか知らないのか?
2021/12/11(土) 22:02:49.62ID:7o+VORM9
>>215
Dockerはサーバーにアプリを配布する時に使うんだよ
アプリケーションの開発とかしたことないの?
217login:Penguin
垢版 |
2021/12/11(土) 22:31:55.32ID:tgu+A8tE
>>216
正確には「配布する時」じゃないけどねw
てか、何でオマエみたいな何も知らんボンクラが偉そうに講釈垂れてんの?
自分の無能すら自覚できないほどのアホなのか?
2021/12/11(土) 22:33:23.94ID:7o+VORM9
>>217
じゃあお前は「何をするとき」にDockerを使ってるんだよ
言ってみ
219login:Penguin
垢版 |
2021/12/12(日) 02:14:30.74ID:Hl1PpaBr
>>218
不要だから使ってない
頭悪いのか?
2021/12/12(日) 10:33:42.27ID:MayHBAlO
クイズとかおやめなさいよ恥ずかしい
中学生じゃないんだから
2021/12/12(日) 11:59:32.64ID:OxucrCrc
>>219
お前が使ってるかどうかなんてどうでもいいよw
「何をするとき」にDockerは使うものかを言え
お前はそれをやったことがないってだけだろ
2021/12/12(日) 12:01:11.53ID:OxucrCrc
Dockerはサーバーにアプリを配布する時に使うといったら
「配布する時」じゃないと言い返しやがった

なら何をする時に使うのか言うのが筋
そしてそれを、そいつは使ってないというだけ

ま、何をする時に使うものかなんて
言わないで逃げるやろなw
2021/12/12(日) 12:37:33.88ID:HcxNXVUt
>>204
locale コマンドで確認してみれば?

他には、インストール時のtimezone・地域・言語・キーボードなどの選択が関係あるとか?
2021/12/12(日) 12:43:38.30ID:enCSM75M
いつものマウント取り
2021/12/12(日) 19:50:49.25ID:Hl1PpaBr
>>221
しつけーな。
Dockerはコンテナを『動かす』ために使うものであって
『配布する』ために使うものではないな。
オマエは一体どういう使い方してんだ?
2021/12/12(日) 20:39:19.63ID:ePerWvVg
Dockerの話は別なスレでやってくれ
2021/12/12(日) 21:36:34.72ID:MayHBAlO
wslの話題が無いからこんな事になるんやろなぁ
2021/12/12(日) 22:43:56.94ID:lvdmOq49
>>224
しょうがない
俺らっておっさん・爺だけど今までずーっと超ゆとり教育受けてきて
脳が未発達の超低脳だからな。
超低脳だとおっさん・爺になってもまともな議論はできない、コミュニケーションもほぼ不可能。
数少ない出来ることが誹謗中傷、超低レベルなことでのマウントとり。
俺らってみじめすぎおっさん・爺だけど自分では全くそう思ってなくて、
逆に俺様激スゲーと自己確信しているからな(超低脳ってこんなもの)。
229login:Penguin
垢版 |
2021/12/13(月) 10:29:03.95ID:MnESCY1+
>>225
じゃあDockerでコンテナを動かす時に『配布』には何を使うんだよ
お前DockerのイメージをDockerを使わないで『配布』するつもりか?
アホなのか?
230login:Penguin
垢版 |
2021/12/13(月) 10:30:37.62ID:MnESCY1+
>>225
> オマエは一体どういう使い方してんだ?

その前にお前の主張の答えあわせなw

お前の主張はDockerはコンテナを『動かす』ためのもので
そのDockerを使わないってことは、お前はコンテナを
使ったことがない素人だってばれました。

ここまでは良いよな?w
2021/12/13(月) 12:39:15.93ID:ZrmHCwEQ
なんだこいつ
2021/12/13(月) 12:41:44.26ID:EVez8L4W
>>203
推測では、UTF-16LE になるけど、

これをリダイレクトで、ファイルに保存したら、
VSCode でどう変換しても、文字化けして読めないw

このファイルをどうやって日本語で読めるのか?
233login:Penguin
垢版 |
2021/12/13(月) 13:35:34.21ID:jmJ8wuCs
コマンドプロンプト上でのwsl --helpリダイレクトならまだましで、PowerShell上でwsl --helpリダイレクトするともはや解読不能
PowerShellのパイプラインがUTF-16を受け付けないことが原因
2021/12/13(月) 13:38:05.20ID:McVuy14x
$OutputEncoding定期
2021/12/13(月) 13:38:25.97ID:McVuy14x
$OutputEncoding定期
2021/12/13(月) 13:38:47.72ID:McVuy14x
OutputEncoding定期
237login:Penguin
垢版 |
2021/12/13(月) 14:57:51.15ID:jmJ8wuCs
>>234-236
その設定を変えたぐらいじゃ無理だよ
2021/12/13(月) 15:38:06.03ID:lGSM4r77
>>232
エンコード付きで再度開けばいいだけだけど
基本的な使用方法は覚えたほうがいいよ
239login:Penguin
垢版 |
2021/12/13(月) 20:30:14.13ID:XoIQdidG
>>230
「使わない」を「使ったことがない」と脳内変換すんなよw
そんな読解力じゃマニュアルも読めんだろ
2021/12/13(月) 20:33:01.96ID:jQeTkcdI
Docker Part6
https://mao.5ch.net/test/read.cgi/linux/1626039705/
241login:Penguin
垢版 |
2021/12/13(月) 22:08:03.72ID:MnESCY1+
>>239
日常的にコンテナ使ってないんだろ?
素人じゃん
242login:Penguin
垢版 |
2021/12/13(月) 22:55:01.14ID:XoIQdidG
ホントWindows使いってアホばっかだなw
アホだからWindowsしか使えないんだろうけど
243login:Penguin
垢版 |
2021/12/13(月) 23:04:10.88ID:qThBfvY8
今はLinuxでコンテナ使うだろって話をしてるんだが
2021/12/14(火) 00:51:13.89ID:ARGv7baZ
WSLはゴミシステムで使う意味なし
2021/12/14(火) 01:46:30.69ID:gkd9jg4t
>>244
使うな。使うな。WSLサイコーよ。
246232
垢版 |
2021/12/14(火) 06:44:33.44ID:M420u4Ok
>>238
VSCode・サクラエディタで開き直しても、文字化けする

リダイレクトで、ファイルに保存したら読めない
247232
垢版 |
2021/12/14(火) 06:53:39.26ID:M420u4Ok
これはひょっとして、端末用に書いてあるもので、
色々な制御文字なども入っているのかも

だから、テキストにすると、エンコードの推測では、UTF-16LE となるけど、
制御文字などで文字化けするのかも
2021/12/14(火) 08:40:39.98ID:LBvlK/EB
会社のポリシーでHyper-Vを止められてるのでWSL2が使えない。グッスン。
2021/12/14(火) 12:02:34.86ID:RQFPx/n9
>>246
>>203のやり方で生成して、VSCode 1.63.0でUTF-16LEで開くと正常に読めるけど。
250232
垢版 |
2021/12/14(火) 12:38:47.62ID:M420u4Ok
コマンドプロンプトでやったら、VSCode・サクラエディタで見れた

一方、Windows Terminal のコマンドプロンプトでやったら、文字化けで見れなかった!

この2つは、違うのか
251login:Penguin
垢版 |
2021/12/14(火) 13:57:27.47ID:99PLYufi
>>250
PowerShellだとパイプやファイルへのリダイレクトが悪さする
Windows Terminalは関係ない
252232
垢版 |
2021/12/14(火) 15:39:31.91ID:M420u4Ok
Windows Terminal(WT)では、PowerShell・コマンドプロンプト・WSL のLinux の3つが使えるけど、
そのコマンドプロンプトでやった

そう言えば、WT は、UTF-8 だから文字化けするのかも
2021/12/14(火) 19:24:00.47ID:5ieNwBRw
>>252
WindowsTerminalのコマンドプロンプトからのでも文字化けせずに見れるけど
通常のコマンドプロンプトとWindowsTerminalのコマンドプロンプトからのをバイナリ比較してみたけど同一内容だったよ 他のPCで試しても同一
他に環境的な何かが異なるのかな
2021/12/14(火) 21:03:36.74ID:DeVIAJ4M
>>197
いまはinkcapeも(特に)gimpはWindowsユーザーの
ほうが多いのでWindowsメインになってるよ。
2021/12/14(火) 22:27:36.74ID:63yVIPBD
>>254
デスクトップのLinuxシェア低いから
Linuxではよく使われているが、一方Winではあんまり使われていない物と言っても
ユーザーの数はwinのほうが多いになっても不思議じゃないからな
256login:Penguin
垢版 |
2021/12/15(水) 02:25:45.12ID:p3kMsft+
WSLってLinuxのVMに比べてどんな利点があるの?
どう考えてもVMでLinux動かしたほうが良さそうに思うんだが
2021/12/15(水) 03:19:56.18ID:cYiLPhQ4
VMを動かさずにLinuxが使える
258login:Penguin
垢版 |
2021/12/15(水) 05:05:55.71ID:8ifCpk0/
WSLのほうがVMよりも軽いんじゃない?
259232
垢版 |
2021/12/15(水) 06:52:11.02ID:9a6pKpWf
>>253
Windows Terminal(WT)のコマンドプロンプトで、
もう一度やってみたら、正常に表示された!

diff a.txt b.txt
みたいに、1回目と2回目のファイルを比べると、異なっている!

ちなみにコマンドプロンプトも、WTのコマンドプロンプトも、両方とも、CP932 でした

chcp
#=> 932

WTには、何か不安定なバグがあるのか、たまたま変な事が起こったか?
謎です
2021/12/15(水) 07:05:39.59ID:ZSokNah7
>>259
どう異なっている?
何か勘違いしているのではないか?
2021/12/15(水) 07:13:35.21ID:9a6pKpWf
>>256
echo $PATH | tr : "\n"
と、WSL で環境変数PATHを表示すると、Linux 側のPATHの後ろに、
/mnt/c/WINDOWS/system32
などの、Windows 側のPATHも、/mnt/c/以下に追加されている

つまり、Linux側から、Windows側のコマンドも呼べる。
例えば、Linux側から、Windows側のメモ帳も起動できる。
ただし、Windows側のコマンドには、拡張子 .exe も付けなければならない

つまり、Linux側からWindows側へは、シームレス。でも、逆はダメ

例えば、Linux側で、

where notepad
where: コマンドが見つかりません

where.exe notepad
C:\Windows\System32\notepad.exe
C:\Windows\notepad.exe

which notepad
存在しない

which notepad.exe
/mnt/c/WINDOWS/system32/notepad.exe

notepad a.txt
notepad: コマンドが見つかりません

notepad.exe a.txt
メモ帳が起動する
2021/12/15(水) 08:27:03.29ID:0YtwK9vU
WSLはVM
263login:Penguin
垢版 |
2021/12/15(水) 09:09:50.66ID:rnBZkFES
232が勘違いしていただけ、ってのが真相だと思う
ま、よくあることだし若いんなら許される
264login:Penguin
垢版 |
2021/12/15(水) 09:11:55.34ID:rnBZkFES
若くないと許されない理由は、自分の間違いを認めず屁理屈ばかり上手い年寄りは有害でさえあるから
265232
垢版 |
2021/12/15(水) 12:46:06.34ID:9a6pKpWf
スマン、スマン。自分の勘違いでした!

>>250
>一方、Windows Terminal(WT)のコマンドプロンプトでやったら、文字化けで見れなかった!

これが勘違いで、本当は、WTのPowerShell(PS)で実行していました!
WTのPSで実行したら、同一の内容のファイルができて、それは文字化けして読めません

以上、自分の勘違いでしたので、この話題は終了します。
皆様に、ご迷惑をお掛けしました
266login:Penguin
垢版 |
2021/12/15(水) 15:46:59.35ID:94pB4wsm
>> 223
ありがとうございます.
WSL上でlocaleはいろいろ変えて試しましたが,効きませんでした.
Windowsの言語見て,キーボード選んでるとしか思えないんですよね.
2021/12/15(水) 17:18:34.70ID:hvWlEM/9
>>256
Linuxの管理をしなくていいというメリットが有る
Linuxのデスクトップを使いたくいないのは当然として
最小構成でもさまざまなサービスが動いている
それがアップデートした時トラブルのもとになる
WSLはそう言ったのが動いてないから軽量で楽
2021/12/15(水) 21:24:58.78ID:nQpGq5n2
はじめて投稿させていただきます。
当方、WSLについて初心者です。よろしくおねがいします。
いざWSLをインストールしようとしてWebで手順を探したところ
手順がいろいろ出てきて混乱しております。
最新の手順としては以下だけでいいような記載もあるのですが確認したく。。。
wsl --install
これだけでUbuntuがインストールされると考えていいのでしょうか?
また最新のWSLはGUIが動くと聞きましたがこれも上記のコマンドでセット完了するのでしょうか?
お忙しところ恐縮ですが教えていただけますと幸いです。
2021/12/15(水) 22:13:31.20ID:bZSW2ozO
色々あるのは古い情報が残ってるからで新しい情報や公式情報を見ればいい
>wsl --install
聞くまでもなくやってみればいいと思うが
GUIはWin11ならそのまま使えるが10ならvcxservなどを入れて使う
2021/12/15(水) 22:30:19.43ID:OzqluHcx
wsl --installってWSLが入った後はオプションが無いみたいな扱いになるのね…
実行したらUsageが表示されやがった

ストアのプレビュー版だとちゃんと既に入ってると出る
2021/12/15(水) 22:45:14.43ID:DQ1C7ZxL
>>269
>公式情報を見ればいい
普通の奴ならMSならそれなりの情報を出しているだろうで、まず公式を見てみるかだが、
Linux板にクレクレと乞食に来る奴は公式を見るなんてしないで
とにかくネットで尋ねればタダだ(だたでやってくれる)ということでクレクレ。
そんなのをまともに相手するの面倒すぎだで、ググれカスのような対応になるしまうんだよな
2021/12/16(木) 01:19:06.34ID:qfXm+Ok1
半月程前の記事ですが..
https://ascii.jp/elem/000/004/076/4076337/amp/
2021/12/16(木) 01:56:36.72ID:o9WzAWgr
ドキュメント類を読まないとか、やる気無さすぎだろう。
274login:Penguin
垢版 |
2021/12/16(木) 20:42:15.01ID:476xAcUE
>>267
管理はいるだろ
何書いてんの?
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況