探検


【Bash】Windows Subsystem for Linux【WSL】9

■ このスレッドは過去ログ倉庫に格納されています
1login:Penguin
垢版 |
2020/12/10(木) 17:44:21.97ID:o6AATirQ
ついに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/
2020/12/26(土) 13:31:44.77ID:ey69S6CQ
>>172
一言で言うなら、lsが使いたいならWSL
2020/12/26(土) 13:32:18.98ID:0F0EBX0G
>>175
lsはpowershellでも使えるよ
2020/12/26(土) 13:32:56.14ID:ey69S6CQ
>>174
git bashをより良くしたのがWSL
git bashは使えるコマンドが少ないからな
2020/12/26(土) 13:33:35.50ID:ey69S6CQ
>>176
ls -al はエラーになるが?
179login:Penguin
垢版 |
2020/12/26(土) 13:43:36.16ID:c03Kht39
WSLをディスりたいだけかよw
人間として最低だなww
2020/12/26(土) 14:02:16.85ID:5uX/leQN
LAMP系の開発環境にMac、って流れが阻害されるから気が気じゃないんだよ
WSL(2)が便利になると困る人々
181login:Penguin
垢版 |
2020/12/26(土) 14:07:35.11ID:c03Kht39
便利に使えるならなんだって使うのが技術屋だろうに。
WSLディスってる奴はただのバカだな。
2020/12/26(土) 14:08:57.04ID:VxrCW5WN
どんだけMacにコンプレックス持ってるの
さすがmac板荒らしてるだけあるな
2020/12/26(土) 14:22:32.89ID:ey69S6CQ
ターミナルをLinuxとして使うならMacよりもWindowsの方が良くなった
事実を言ってるのであってコンプレックスとは関係ない
2020/12/26(土) 14:37:43.08ID:WxmyJ4iW
Linuxでいいじゃん
2020/12/26(土) 14:42:34.08ID:7CytMhJh
Linuxで良いけどね。
2020/12/26(土) 14:46:50.36ID:R3DYPhYu
OSを選んでいいならLinux次点でMac
現場でWindows使うしかない場合にどうするか
WSLはそもそも有効化できないかもしれない
有効化の許可が得られたとして個々のパッケージの許可はどうなるか
2020/12/26(土) 17:28:18.59ID:ermSb0BU
>>166
基地外の世界かよw
2020/12/26(土) 17:37:25.09ID:IpNFepXB
>>187
>>187
189login:Penguin
垢版 |
2020/12/26(土) 17:55:53.75ID:c03Kht39
LinuxユーザーのフリしたLinux信者が洗脳してくるスレになってるなw
2020/12/26(土) 17:56:31.46ID:ermSb0BU
>>188
マジで基地外は歴史も知らんのかよw
最初は今で言うWSL1しかなかったからWSLと言っててWSL2が出てきたのでWSLをWSL1 と言うようになった
なので今でも単にWSLと書けばWSL1とWSL2の両方に共通的な話か個別の話ならWSL1を意図していると解釈するのが普通
反論したいならまともな根拠示せ
2020/12/26(土) 18:16:39.61ID:0F0EBX0G
>>190
WSL1はもうオワコンだから話題に出ることも殆どない
WSLといったら今はWSL2だ
Windowsといったら今はWindows 10のことだと誰にでも伝わるようにな
192login:Penguin
垢版 |
2020/12/26(土) 18:52:03.26ID:c03Kht39
かってにオワコン扱いしてれば?
現実はそんなことないけど。
2020/12/26(土) 19:08:58.08ID:ermSb0BU
>>191
> WSL1はもうオワコンだから話題に出ることも殆どない
適材適所も理解できないアホw
2020/12/26(土) 20:08:23.65ID:CEVnVEov
Web翻訳家 志賀慶一のガチ犯罪疑惑まとめ
http://mao.2ch.net/test/read.cgi/linux/1605787413/

何故か志賀はこのスレにだけは書き込まない
まぁ少なくとも不正アクセス禁止法には抵触してるな
2020/12/26(土) 20:21:58.82ID:ey69S6CQ
>>186
> 有効化の許可が得られたとして個々のパッケージの許可はどうなるか

LinuxやMacだと、個々のパッケージの許可は得られない
2020/12/26(土) 20:23:04.41ID:ey69S6CQ
>>191
> WSL1はもうオワコンだから話題に出ることも殆どない

Microsoftがどちらにもメリットデメリットが有るので両方開発を続けると言ってる
実際開発されていて、この2つのバージョンはディストリ単位で切り替えることが出来る
2020/12/26(土) 20:38:28.54ID:AHF9fy4H
とにかく手軽にLinuxを試してみたい! 仮想マシンも使わずもっと手軽にWindowsマシンでLinuxを使えないか。
そんなご要望に応える機能がWindows 10に搭載されました。

そうなんだよね素人がwslで遊んでるだけで
何か進化があったわけじゃない。
wsl最高とかのレベルではない
2020/12/26(土) 22:48:27.06ID:ey69S6CQ
>>197
後半の文章につながってないぞ

素人かどうかは全く前半の文章に含まれていないだろ
2020/12/26(土) 22:52:20.62ID:XkpZM641
相手にしないほうがいいぞ
2020/12/26(土) 23:48:29.86ID:ermSb0BU
んだんだ、WSLが急に出てきたとか思ってるニワカだし、スルーでいいかとw
201login:Penguin
垢版 |
2020/12/27(日) 06:54:49.44ID:/l962elK
古いCPUはWSL2を使えない。
2020/12/27(日) 08:13:01.78ID:VpBSYDVA
WSL フォーエバーさんやで。
2020/12/27(日) 10:25:26.06ID:dyOXY6iu
MSはWSL1を先に作ってよかったと思う
WSL2を先に作ってたら多分WSL1は作らなかった

WSL1の開発は大変だから、WSL1のメリットである
Windowsとのファイル共有が速いとか
古いCPU対応とかは切り捨てるという対応をとっただろう
Homeエディションへの対応もしなかったかもな
2020/12/27(日) 13:59:17.43ID:4SQrMcp3
アホすぎる、WSLってぽっとでてきた技術じゃねーよ
20年以上前からSFUとかでやってる
2020/12/27(日) 14:25:45.22ID:LKgirgue
WSL1が本家のWSLであってWSL2はおもてたんと違う!
https://qiita.com/yugo-yamamoto/items/ac31bbd00f6b88e05793
2020/12/27(日) 15:27:36.00ID:s8jhz0it
外部からWSL2のネットワークにアクセスするの面倒なんだよねぇ
2020/12/27(日) 16:01:45.73ID:RcRtYlFy
>>206
外部だけでなくホストのWindowsからもアクセスしにくい。SSHトンネルはwsl1で開けてるよ
2020/12/27(日) 18:47:54.14ID:8gdNPQcU
SFUはフリーソフトに負け
WSL1で仕事につながらず
docker頼みで接続可能でないWSL2を作った
version1version2じゃなくtype1type2だ
2020/12/27(日) 20:56:33.82ID:dyOXY6iu
> SFUはフリーソフトに負け
MSも積極的に開発してなかったしな
なにより対応パッケージが少ないし、どう考えてもパッケージの提供が大変すぎる
多くのオープンソースがあってアップデートのたびに正しく動くか検証しなきゃいけない
それをやってるUbuntuとかのディストリビューターは大変だと思うよ

WSLの成功はそこをUbuntuに丸投げできたのが大きい
だからMS独自のLinuxディストリ(=パッケージの提供)は今後も作らないだろうな

> WSL1で仕事につながらず
> docker頼みで接続可能でないWSL2を作った
どういうこと?

docker頼み=dockerが使えるなら仕事になる=WSL1からdocker使えるよね?
2020/12/27(日) 20:59:34.79ID:dyOXY6iu
>>206
WSL2のネットワークという考え方はすじが良くない
WSL2はWSL1と同じでホストOS上でアプリが直接動いているという体なんだから
ポートの開放=ホスト上のポートとWSL2上のポートのマッピング機能と考えるべきだろう
HyperV的にはできたはずだけど、WSL2ではまだ対応してないの?
211login:Penguin
垢版 |
2020/12/27(日) 21:20:21.38ID:4L+IqTGJ
WSLのアンチは適材適所って言葉を知らないのか?
それともただのバカ?
2020/12/27(日) 21:50:36.49ID:s8jhz0it
>>210
WSL2のネットワークは外部からは見えないので
Windows側でportproxyなどで中継しないとアクセス出来ない
2020/12/27(日) 22:06:14.43ID:dyOXY6iu
>>212
内部の実装はそれでいいんだよ

portproxyみたいなのを自動的にやってくれる機能は
まだWSL2に搭載されてないの?って話

第一段階は、手動でポートとディストリをマッピングするコマンドを実行
第二段階は、WSL2でポートを開いたら、カーネルが検知してコマンドを自動実行

とかね
2020/12/27(日) 22:31:29.62ID:4uAYEsly
使ったこともないのに偉そうに語らないでくれ
2020/12/27(日) 23:50:24.86ID:zBgt6TLE
Windows 10 Home 版に、WSL2, Docker を入れた

CPU-i3, 8GB メモリで、Windows の連続アップデートに、3時間掛かった

その後、WSL1 から、WSL2への変更。
Dockerのインストール自体は簡単だった

これで、Windows10 プロ版じゃなくても、Dockerを使える。
Kubernetes も入っていた

Ubuntu 長期版も入れて、日本語化する

今は、ここまで出来る開発者が求められている!
Linux の運用構築も、開発者の最低ラインになった。
Mac みたいに、Linuxを知らない香具師は、むしろ、Windowsよりも遅れることになったw

1. Windows 10の連続更新
2. WSL1から、WSL2への変更
3. Dockerのインストール
4. Ubuntu 長期版の日本語化
216login:Penguin
垢版 |
2020/12/28(月) 00:41:24.36ID:Id5uuDsq
export DISPLAY=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}'):0.0
は気持ち悪いよね・・・・。なんでもっとスマートに出来ないかな。
2020/12/28(月) 02:02:40.29ID:n3C8t+zE
カッコの中をシェルスクリプトにすれば?
2020/12/28(月) 02:18:56.89ID:xt63HRGS
バーチャルマシンだからWindowsと別ネットワーク
スマートな解決ってソフトLANカードだな
virtualboxみたいな
2020/12/28(月) 03:15:43.22ID:+BF63V4L
>>216
> なんでもっとスマートに出来ないかな。
お前の頭の悪さをつぶやかれても困るんだがw

awk使ってるのに、awkのパターンマッチング使わずgrepを使う。
ファイル読み込みすりゃいいのに、わざわざcatを使う
動くからヨシで基本を勉強してないだろ

export DISPLAY=$(awk '/nameserver/{print $2":0.0";exit}' /etc/resolv.conf)

あとオレのマシンだと3行返ってきたから1行だけにしておいたぞ
2020/12/28(月) 08:11:52.74ID:N8HGGj/s
UNIX哲学を踏まえると最初のほうがそれっぽいけど
2020/12/28(月) 08:55:41.58ID:+BF63V4L
UNIX哲学の独自解釈はやめたまえ
2020/12/28(月) 08:59:23.17ID:+BF63V4L
あと有名なUUOCのことを知るんだな

https://ja.wikipedia.org/wiki/Cat_(UNIX)#cat%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%81%A8UUOC
UUOCは「無駄なcatの使用(Useless Use of cat)」の略である。 Usenetのcomp.unix.shellに投稿された賢者の観察によると,
catの役割はファイルを連結することである。もしファイルが1つしかないのであれば、何かと連結しようとするのは時間と手間の無駄でしかない 。
にも関わらず、次のような使用をよく見かける。

https://en.wikipedia.org/wiki/Cat_(Unix)#Useless_use_of_cat

猫の無駄な使い方
cat(UUOC)の無用な使用は、ユーザーに便利な機能のみを提供するコマンドライン構造の
一般的なUnix専門用語です。[5] これは「猫の虐待」とも呼ばれます。UUOCのインスタンスを
修正するアクティビティは、デモギフィケーションと呼ばれることもあります。[6]一般的なcat虐待の例は、賞に記載されています。
223login:Penguin
垢版 |
2020/12/28(月) 09:31:54.21ID:6bWrM+gA
>>219
そういうことを言ってるんじゃないと思うぞw
理系の頭の善し悪しはともかく対人関係のIQ低そう・・・。
2020/12/28(月) 10:38:33.58ID:W+ZX2CcU
中の人が言ってるんだね
https://github.com/microsoft/WSL/issues/4106#issuecomment-501868870
2020/12/28(月) 11:28:00.31ID:XNH5EMOO
またロクに使ってないやつが偉そうに暴れてるのか
2020/12/28(月) 12:24:56.27ID:djn2m5+H
grep の引数に、対象ファイル名を渡せないの?

touch なんか、ほとんどのプロ中のプロが、ファイルを作るために使っているw
227!ninja
垢版 |
2020/12/28(月) 12:38:50.07ID:RvuABLf9
>>216
WSL2にssh serverを入れてssh clientでX11-forwardingするように接続すると、
DISPLAYを設定しなくてもX clientを表示出来るよ。
外部からssh出来るようにすれば、外部のX serverにもX clientを表示出来る。
228login:Penguin
垢版 |
2020/12/28(月) 13:36:40.61ID:6bWrM+gA
スレの話の流れ的に

export DISPLAY=localhost:0.0
か
export DISPLAY=:0.0
で動いて欲しいよねって話じゃないのか?
2020/12/28(月) 14:41:53.14ID:I6tnzeAB
というか出力先がネームサーバーというところじゃ
2020/12/28(月) 16:40:30.18ID:HF8eNyiM
>>229
公式がそうしろと言ってるからね…
https://docs.microsoft.com/ja-jp/windows/wsl/compare-versions
2020/12/28(月) 16:41:32.51ID:iD4ADrH9
>>4
Windows のファイルシステムにアクセスさせる場合は,
全く実用にならない.いろいろ調べたが,2倍〜3倍以上遅い.

Windows 共有フォルダのNASとか使ってる場合,
WSL は, まともに mount できないから,
WSL2 しか選択肢はないが,全く使えない遅さ.

python, perl, shell script で小回りの利くスクリプトで,
例えば5分でスクリプト作って,100MBのログ100本読んで
処理するときとか3倍とか時間かかってホント使えない.

実用になると思ってる人,何に使ってるのかかさっぱりわからん.
2020/12/28(月) 17:47:39.54ID:+BF63V4L
アプリ開発だろ

アプリで100MBのログ100本読むとかしないからな
2020/12/28(月) 17:48:34.74ID:+BF63V4L
だいたい3倍かかるというのなら、30MBのログか
30本のログにデータ量を減らせばいいわけだ
234login:Penguin
垢版 |
2020/12/28(月) 20:17:17.78ID:McSpzQnG
WSLで作業してるぐらいなら、メインはWindowsだし
デバグ中にみるログのサイズなんてたかが知れてるからなぁ。
Windows側のファイルへのアクセスが多少遅くても問題にならんわなー、普通の人なら。
2020/12/28(月) 20:25:55.97ID:orKENejG
接続先サーバーがクラウドだったら、クラウドサービスのログビューワー使うだろうし
オンプレとかならリモートのLinuxにログインして見るから関係ない

100MBのログ100本をクライアントのWSLにダウンロードして見るわけないし
と考えると100MBのログが100本あるような場合ってどんな場合だよ?となる
3倍かかって使えないなら、1/3の時間なら使えるわけだ

さてみんなのログサイズはどれくらい?w
2020/12/28(月) 20:26:58.18ID:orKENejG
もちろん100MB×100本=10GBのログを見ることが皆無とは言わんけどなw
2020/12/28(月) 20:54:26.19ID:WwxpjbVt
ファイル処理が遅いのは小さなストレスだね
チリも積もると山となる
2020/12/28(月) 21:08:50.64ID:I6tnzeAB
期待はずれというのが正当な評価
2020/12/28(月) 21:11:42.46ID:KYs5tQXj
× 期待はずれというのが正当な評価
○ 馬鹿が勝手に見当違いな期待してただけ
2020/12/28(月) 21:24:53.45ID:orKENejG
しかも後付で「期待」を作り出しただろw

ファイルシステムがLinuxと同じぐらい速いと
期待してたのにーって、遅いと知ってから言い出す。

それ以外の本当の期待は全て満たしてるので
ファイルシステムが遅いぐらいしか言うことがないw
241login:Penguin
垢版 |
2020/12/28(月) 21:31:15.43ID:McSpzQnG
実機で10ミリ秒のところがWSLで30ミリ秒なので使い物にならないんですw
って事なんだろうなぁw
2020/12/28(月) 21:36:13.69ID:I6tnzeAB
いや…別に
WSLファンクラブか?!w
2020/12/28(月) 22:17:40.57ID:RzgApOOm
速度が必要なファイルはext4に置けば良いのでは
2020/12/28(月) 23:07:01.92ID:GkfAw+V7
特定の場合に遅いという話だけを聞いて
使ってもみずに文句を言ってるだけだから
解決法があるなんて知らないと思うし、知りたくもないと思うよw
2020/12/28(月) 23:23:20.69ID:WwxpjbVt
解決法とか面倒なこと考えずに最初から速いのがあるならそっちのがいいだろう
つまりLinuxを使えばいい
2020/12/28(月) 23:24:42.70ID:GkfAw+V7
大前提としてLinuxでは別の問題があって解決できないから
WSLを使うんだよ
2020/12/28(月) 23:28:05.82ID:mQmCoShV
Windowsはクラウドでいいかな
2020/12/28(月) 23:29:12.25ID:I6tnzeAB
ぷっw
2020/12/29(火) 02:05:32.11ID:i5uFIW2D
>>245
だからext4は早いって。素のLinux使うのと一緒だろう。
250login:Penguin
垢版 |
2020/12/29(火) 07:13:03.42ID:t8F+Mjwc
Linuxの方のボリュームに落けばいいだけなのに何か不都合でもあるわけ?ファイラーからも見れるよ?
251login:Penguin
垢版 |
2020/12/29(火) 07:28:22.60ID:c72/GGKA
仮想マシンとWSL両方にウブンツ入れてフォルダ共有かけてる俺は勝ち組だな!

なんに勝ってるかしらんけどw
2020/12/29(火) 11:11:44.42ID:q8JmrKIm
果たしてUbuntuマシン使っているのに、仮想マシンにUbuntu入れて使うなんてことするだろうか?
2020/12/29(火) 11:33:53.05ID:SqhtMPKC
>>249
一緒なら素のLinux使うわ
2020/12/29(火) 11:39:05.90ID:64UHrv9h
>>250
WindowsのホームとWSLのホームが位置も構造も違うのはめんどくせえなあと思った
Linux使っときゃ1つ管理すりゃいいのに
WindowsでWSLっていう回りくどい環境だと管理も2倍以上の面倒くささ
2020/12/29(火) 11:52:12.47ID:CPGBD1RO
ネットワーク絡みの開発がしたいときとか
2020/12/29(火) 11:58:01.64ID:k0Mc3I9O
>>253
前提としてWindowsも使う必要があるんだが
2020/12/29(火) 11:58:34.46ID:k0Mc3I9O
>>254
WSL2だとホームの構造は同じ
あとシンボリックリンクは便利だぞw
2020/12/29(火) 12:07:43.66ID:k0Mc3I9O
もし知らなかったら可哀想なので説明してあげると
シンボリックリンクというのは別の場所にあるファイルやディレクトリに対して
自由なパスでアクセスできるLinuxの機能だよ

コマンド一つで例えばLinuxのホームディレクトリの下に
Windowsのディレクトリを持ってこれる
これでホームの位置の構造の問題は直ぐに解決できる
便利だから覚えておいたほうがいいぞ!Linuxの基本だがなw
2020/12/29(火) 12:32:26.58ID:vahL8eWW
>>257
WindowsホームとLinuxのホームは別物では?
WSLが常に起動してるわけじゃないからリンクも張りたくない
260login:Penguin
垢版 |
2020/12/29(火) 12:35:43.00ID:t8F+Mjwc
>>254
たかがその構造がめんどくさいという理由でLinuxを母艦にしたいとは思わないね。

あくまでも開発用途で必要なだけだし、Linuxじゃできないことが多すぎる

Windows+WSLなら大体のことができてしまうからこれで十分

そもそもLinuxで満足してるならこのスレになんで来るんだい?
2020/12/29(火) 12:38:24.85ID:k0Mc3I9O
>>259
> WSLが常に起動してるわけじゃないからリンクも張りたくない

なんかこの一言で、お前が使ってないのバレちゃってるよw

あえて聞くね。答えてね。

「WSLが常に起動してる」ことと「リンクを張ること」に
一体何の関係があるの?WSLが起動してなくても問題なにもないじゃないw
2020/12/29(火) 12:40:39.85ID:vahL8eWW
>>258
素LinuxとWSLでホーム構造が違うよ

素Linuxだと
~/.foo → ~/dotfiles/foo

WSLだと
~/.foo → Windowsホーム/dotfiles/foo
Windowsホーム/.foo → Windowsホーム/dotfiles/foo
2020/12/29(火) 12:41:51.64ID:vahL8eWW
>>261
WindowsからWSL方向のリンクを張れないってことだけど言われなきゃわからないのかな
2020/12/29(火) 12:53:02.75ID:a9F5N6Cl
>>259
予め起動させておけば?
2020/12/29(火) 12:54:45.74ID:k0Mc3I9O
>>263
貼れるだろw あほやなぁ
試してからいえや
2020/12/29(火) 12:56:52.28ID:k0Mc3I9O
>>262
だからシンボリックリンクを使いましょう
267login:Penguin
垢版 |
2020/12/29(火) 12:57:37.81ID:t8F+Mjwc
>>262
そういう使い方をしたい場面がよくわからない
dotfilesとか置いてるけどそれはLinuxのホームディレクトリにおいてればいいだろ
2020/12/29(火) 13:10:29.15ID:vj+7dSvO
>>265
張れない時は張れないよ
WSLディレクトリの有無に依存するんだから
2020/12/29(火) 13:11:06.31ID:vj+7dSvO
>>267
WSLが常にあるわけじゃないんだよ
2020/12/29(火) 13:12:03.45ID:k0Mc3I9O
>>268
起動している時に貼ればいいだけだろw
まさかWSLが停止するとシンボリックリンクが勝手に消えるとか思ってんのかwww
だーかーら、使ってないってバレバレなんだよ
2020/12/29(火) 13:14:00.09ID:vj+7dSvO
WSLから見てWindowsは常に存在してるが逆は成り立たない
なのでWindowsからWSLにリンク貼るなどWSLに依存する構造はよろしくない
2020/12/29(火) 13:15:28.57ID:k0Mc3I9O
WSLへのリンクはUNCパスへのリンクに過ぎない
これは今までもごく当たり前にリモートサーバーへのリンクとして使われていた
なにをいってんだろうなw
2020/12/29(火) 13:16:30.64ID:vj+7dSvO
>>272
で、リンク切れで困ると
2020/12/29(火) 13:17:24.10ID:vj+7dSvO
問題はLinux用のdotfileとWSL用のdotfileが異なることだな
管理対象が無駄に増えて面倒だ
■ このスレッドは過去ログ倉庫に格納されています

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