【Bash】Windows Subsystem for Linux【WSL】12
■ このスレッドは過去ログ倉庫に格納されています
やんごとなき理由でWindowsを使わざるを得ない人へ朗報!
WindowsでもLinuxを使うことは出来ます!!!
本物の?Linuxじゃない?WSLはいいえ本物のLinuxです!
正しくは本物のLinuxを使えるようにする仕組みです。
インストールされるディストリは本物のUbuntuなのです。
systemdが動いていないから本物ではない?いいえDockerと同じです。
Dockerでもsystemdは動きません。
Linuxにとってsystemdは必須ではありません。
■ドキュメント
https://docs.microsoft.com/ja-jp/windows/wsl/
■WSLのDockerとの連携
https://docs.docker.com/desktop/windows/wsl/
◆前スレ
【Bash】Windows Subsystem for Linux【WSL】11
https://mao.5ch.net/test/read.cgi/linux/1627507889/ クオータ(quota)とクォーター(quarter)の使い分けが出来てない ティッシュもメーカーによってはティシューって言うよな >>99
マジカ
ずっとneovim使ってたけど十分早いんなら乗り換えよっかな
いやほら本家の安心感ってあるじゃないすか しばらくアプデ無いのかな?
URL自由につけられるようになるといいんだけど wslのカーネルでwsaって動かんかな?
どっちも同じlinuxだから何か方法があるはず。 >>114
アーキテクチャの差異は考慮しないのか?
取り敢えず仕組みから調べたら? ここに書くと長文になるので
以前うぷした所に設定の仕方の説明文を記載した
初心者用なので悪しからず
https://youtu.be/I2QsIxx1hlc >>117,118
ちょうど試してみようとこのスレにたどり着きました。ありがとうございます。 installのところでaptが欠けていましたので修正しました >>123
windows11じゃないとダメなのかよ~ systemdがサポートされたので、flatpakをインストールして、Gimp betaをインストールしてみました。
https://i.imgur.com/H3WNGHu.png
ubuntu 22.04にはGimp beta用のリポジトリがないので、flatpakを使用。 Windows10ですが自分はgenieにてsystemd使ってます
~$ ps -eLf
UID PID PPID LWP C NLWP STIME TTY TIME CMD
root 1 0 1 0 1 20:46 ? 00:00:00 systemd
root 48 1 48 0 1 20:46 ? 00:00:00 /lib/systemd/systemd-journald
//snip//
syslog 141 1 154 0 4 20:46 ? 00:00:00 /usr/sbin/rsyslogd -n -iNONE
syslog 141 1 155 0 4 20:46 ? 00:00:00 /usr/sbin/rsyslogd -n -iNONE
root 142 1 142 0 15 20:46 ? 00:00:00 /usr/lib/snapd/snapd
root 142 1 419 0 15 20:46 ? 00:00:00 /usr/lib/snapd/snapd
root 142 1 420 0 15 20:46 ? 00:00:00 /usr/lib/snapd/snapd
//snip//
root 391 1 391 0 1 20:46 ? 00:00:00 sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups
root 393 1 393 0 1 20:46 ? 00:00:00 /usr/sbin/apache2 -k start
www-data 394 393 394 0 1 20:46 ? 00:00:00 /usr/sbin/apache2 -k start
mysql 395 1 395 0 38 20:46 ? 00:00:00 /usr/sbin/mysqld
mysql 395 1 408 0 38 20:46 ? 00:00:00 /usr/sbin/mysqld
mysql 395 1 409 0 38 20:46 ? 00:00:00 /usr/sbin/mysqld >>117ですが
設定説明が不十分と分かり
検証のためWindowsのクリーンインストールから初め
再度設定説明を編集しました
この通りやったら完成したので
まず間違いないと思います 【隙自語】
テキトーに8.1機を11 22H2に上げた
片方はスムーズにWSL2導入まで終わった
AMD mobile K8 Athlon x2 QL-60機はAMD-V有効と表示されてるのにWSL2が入らず「BIOSで仮想化を有効にしろやゴルア!」と怒られる
何が悪いのか検索してみよう。。。
WSL2を10の段階で入れるべきだったか WSL2(Hyper-V)はSLAT対応のCPUでないと動かない >>131
即答感謝
https://en.wikipedia.org/wiki/AMD_10h
> AMD-V Nested Paging for improved MMU virtualization, claimed to have decreasing world switch time by 25%.
https://ja.wikipedia.org/wiki/AMD_K10
> AMD-V 仮想化技術をサポートするためのネステッドページテーブル。ワールドスイッチの時間を最大25%削減するとされる。 動画うぷしたものだが
動画うぷ後古いpcでもsourcesに有る
appraiserres.dllを削除すれば
Windows11にアップグレード出来るが
wslgやらwaylandやらで出来なくなる
暫くWindows11で試してみたが何が良いのか分からず元に戻した >>133
Windows 11のせい?
手順どこで見られるん?? 言いたかったのはWindows11の良さが
自分のような一般人利用者が分からなかったと言う事
サポートは2025迄とだけ知ってるだけ ssdに変更して気がついた
xfce4のインストール説明で間違いが有ったので書き直した
まぁ知ってた
でょうが Windows11を使って同じようにしたいなら順番をX11をwaylandより優先させれば出来る >>135
一般利用者は何か綺麗になってちょっと操作が変わったと思うかもしれないけれどWSLgやWayland何それ?だと思うぞ まぁそれは分かるけどあの説明でチャンと動作したかも分からないので
Windows11でのやり方は書かないでおく 10から移行ならwsl.exe --updateが必要かもね docker?hyper-vコンテナ?WSL2?
浦島太郎状態の私にどなたか教えて下さい。
Windows Server 2012R2で、Hyper-Vにてubuntu18.04の仮想マシンを2台動かしているのですが、
これをWindows Server 2019/2022+WSL2の環境に移行すれば、Hyper-Vを使うことなく2台のUbuntu 18仮想マシンを
動かせるということですか?それともHyper-V「も」使うのでしょうか?
今まではHyper-Vマネージャーから2台の仮想マシンを管理してて分かりやすかったのですが、
少しネットを調べた感じでは、Hyper-vマネージャーからは1台の仮想マシンにしか見えないようで、
そしたら2台の個別の管理はどうやるの?リソースの割り当てとか。docker for windowsがそれに該当するの?
同じバージョンのディストリ(Ubuntu 18)を使うので、共有部分のカーネルは1個あればよくて、その1個に相当するのがWSLってことなの? Hyper-Vを使い複数インスタンス同時実行の運用を続けても良いのではないかと
WSL2に変更する積極的なメリットがあれば別かな
↓Windows 10環境での話
https://answers.microsoft.com/ja-jp/windows/forum/all/windows10pro-for/146118a5-f735-4165-971d-8ca6397509d9
Hyper-V の仮想化環境では、仮想的なオペレーティングシステム実行環境(仮想マシン)の作成数/同時実行数の制限はありません。 積極的な理由は特にないです。
せっかく同じディストリを使ってるので、リソース的にお得かなと思ったのと(コンテナってよく分かってないけれど)
ws2012r2の期限が切れたのを契機に2019か2022が気になってしまい、調べたらwsl2なるものが実装されるとのことで。
しかもI/Oが早いというのもいいなぁと思って。ただそれだけなんですが。
WSL2のUbuntuにdockerを入れると、その綺麗なubuntuを1個動かしさえすれば、
その一つのイメージを足がかりにいくらでも環境を作れるという解釈でいいんですよね。コンテナって。
仮想マシンを複数作るという解釈を一旦やめて、例えば「LEMPが入った状態」と「メールサーバーが入った状態」を
明確に分ける事ができて、しかもそれらの状態を 出来上がりのテイでDLできる、みたいな。
さらに「LEMPが入った状態」と「postfixが入った状態」のそれぞれが、混ざり合うことなく別個のIPアドレスを持つ。
コンテナって、こんな解釈で合ってますか?鬱陶しくてごめんなさい。 質問です。
WSL内で定期的に生成したファイルを「cmd.えぐぜ /c move hoge.txt "C:\Cloud\Box\~"」で移動したいです。
わざわざコマンドプロンプトを介すのはBox DriveのフォルダはWSLからだと見えないからですが、結構な頻度で
The system cannot find the path specified. となってしまいます。
上記は常駐スクリプトを回してやっており、エラーに気づいて手動で実行すると問題ありません。
(したがってインタラクティブにはこの問題を経験したことがない)
WSLで更新したファイルはホスト側のファイルシステムとして認識されるまでにタイムラグがあったりしますかね?
(念のためファイル生成後10分sleepかましてみるも変化なし) ¥¥wsl$¥(ディストリ名)¥~
とか
WSL1のファイルをWindows側から直接触るのはサポートされてなかったと思うが >>148
それができたらよかったんですが変なエラー出てダメでした
Box Driveの機能でフォルダに見せかけてるだけなのかと思ってます
>>149
あ、これかもしれません・・・
wsl2に変換して試してみます >>149
確かwsl上のファイルもウインドウズからいじれたぞ
フォルダ探すのにちょっと手間取ったけど、windows上で動いてるならどこかにファイルはあるはず 見つけられるとエクスプローラーの左メニューにWSLのフォルダでてくるよ
zone identifierファイルいちいち除去しなきゃダメだけど >>147だけどwsl2に変換しても駄目だった
もしかしたらcmdをwsl内から呼んでるのがだめなのかも
なかなかシームレスに行かないものだなぁ Windows (win32)側からpullするんだよね?
例えば
WSL上のホームディレクトリ /home/hoge に ~/test/hoge がある場合、コマンドプロンプト上で
C:\Users\hoge\Documents> wsl.exe --cd "~" -- tar -c test/hoge | tar --xvf -
で、C:\Users\hoge\Documents\test\hoge にコピーできるけど、ダメ?
Boxのクライアントとか入れてないから tar.exe がそこに展開できるか分らんけど
#WSLの環境が複数ある場合は wsl.exe コマンドに指定パラメータを追加
あと下手に tar -c ~/test/hoge とかすると展開する際に /home/hoge/test/hoge に展開されるので注意
ちなみにwin32側の tar.exe は bsdtar とやらがいつの間にか入ってるけど(\Windows\system32)、これ、WSL をインストールした際に入ったのかな? あ、すまん
> wsl.exe --cd "~" -- tar -c test/hoge | tar.exe -xvf -
に訂正
(".exe" は別に不要だけど) >>154
Windowsのtarは標準で入ってるのでWSLは関係ないよ
curlもsshも同様 >>156
thx
知らんかった
curlが入ったのは割と最近だよね、これはニュースで読んだ気がする まあ世の中には20年後にも今書いたシェルスクリプトが
修正せずに動くことに価値があると考えてる人もいますからねぇ みんながだいすきWindows XP / 7に入ってなかったんだから最近と言い切って良いんじゃん、Windowsの文脈的に wsl -l -oでチェックしてもデストリに無かったので気が付かなかったが
Microsoft StoreにAlmaLinux登録していたのね WSL2にWordPressのduplicator使って開発環境作ってみた人居る?
responseなんちゃらって重大なエラーが出たってなって管理画面に入れない >>163
このとっくに廃れたスレでアホばかりしか居ないから諦めろんw $ neofetch
..,
....,,:;+ccllll -----
...,,+:; cllllllllllllllllll OS: AlmaLinux 8.6 (Sky Tiger) on Windows 10 x86_64
,cclllllllllll lllllllllllllllllll Kernel: 5.10.102.1-microsoft-standard-WSL2
llllllllllllll lllllllllllllllllll Uptime: 14 mins
llllllllllllll lllllllllllllllllll Packages: 760 (rpm)
llllllllllllll lllllllllllllllllll Shell: bash 4.4.20
llllllllllllll lllllllllllllllllll DE: Xfce usage.
llllllllllllll lllllllllllllllllll Theme: Adwaita [GTK2/3]
Icons: Adwaita [GTK2/3]
llllllllllllll lllllllllllllllllll Terminal: xfce4-terminal
llllllllllllll lllllllllllllllllll Terminal Font: Monospace 12
llllllllllllll lllllllllllllllllll CPU: Intel i3-2330M (4) @ 2.195GHz
llllllllllllll lllllllllllllllllll Memory: 177MiB / 6265MiB
llllllllllllll lllllllllllllllllll
`'ccllllllllll lllllllllllllllllll
`' \*:: :ccllllllllllllllll
````''*::cll
`` WSLコマンドでdebianを導入したらstretchが入ってしまいました
2回full-upgradeするのが無難なんですかね >>167
コマンド実行後にストアで更新を試みました
stretchのままでした
WSLコマンドでインストールしたものを削除すればストアからbullseye入れられるんですかねえ
Insider programか何かで英語で報告すべき?? 解決しました
最初、WSLコマンドで削除しましたが駄目でした
コントロールパネルから削除してストアからインストールしたらbullseyeになりました
…約20年ぶりに、メインマシンはLinuxに戻すことにしました
これまで8.1だったんですけど、Windows 9x同様、Windows 1X にはつきあいきれません… メインにするならwslは関係ない
そんなに昔を回顧するならSlackwareにすべき
日本語版にする煩わしさは半端なかった
40前位だけど オオッ来たか
待ってました
書き直した後で気付いたけど
誰か指摘するかなと、思っていたら案の定
嬉しいね
実はpc8001を購入した時と勘違いしてた
でも有賀とね指摘してくれて
本当は30年弱ね Slackwareとか懐かしい話やないの
雑誌に付いてきたCDで入れたよ kernelも1.1とか1.2位でXで日本語が表示できたか定かでないけど目玉のアプリは起動したな 内蔵ディスクドライブに空きを作ってデュアルブートでも良いんだけどねえ
仮想化するにはメモリきつい >>123
init→systemd、X→wayland...
linuxのwindows化が止まらんね
Xは元々複雑だけど、systemdはsvchostの劣化コピーでしかない
依存して他で動かないデーモンやディスプレイマネージャまで生んでるし、中央集権、おまけにログがブロブ
ブラックボックスなんてlinuxに求めてねーんだよ
テキスト設定ファイルとスクリプトでロートルだけど透過的、ドザがwslに期待してるのはそういうのだろ メジャーでヘビーな商用レベルのディストロがこぞって採用し始めたから、systemdフリーを謳うフォークがゾロゾロ無数に出始めてるよな
メジャーだけどオプショナル/比較的非依存
なのはArch, Alpine, Gentooあたりか、つまりヘビーでない奴ら
ヘビーな商用クオリティディストロ派生で、明確にsystemd排除を目指してるのはDevuan, Artix?泡沫は追いきれない
しかしアップストリーム依存を断ち切らない限り、サポートは必ず後手に回るし、支持を得るのはぶっちゃけ無理に思える >>178
良心だな
Devuanが多分その一例
というか、Debianはアップストリームでありながら、その派生(Ubuntu等)の方がむしろ普及してるという非常に特殊なポジションにあると思う
Debianはsystemdに限らず、linuxカーネル以外への差し替えもサポート(unix:Mach系, 非unix-like:Hurd等)してるようで
名目上かもしれないけど、linuxにすら依存していないの
まあユーザーランドはかなり壊れるだろうけど…
Debianは自由度の高い、いわばOSのテンプレートシステムのようなモノだと理解している まあDebian/linuxしか触った事ないし、非linuxのDebianを試すモチベもないのだが
暇人の遊び用? Git for Windowsの代わりだな
awkだけでも強力なスクリプト環境が作れる
PythonとかRubyとかPerlのことは知らない >>181
頻用してるとvmイメージが数十GBまで肥大するし、8GB以上が当たり前の今でさえメモリ爆食いするし、そういうカジュアル用途なら必要な物だけインストールするべきかと
乱立してたwindowsのパッケージマネージャー業界(chocoとか)も、MSの強権発動でlinuxディストロのapt,yumようにベンダ公式のwingetが出来たわけで
複数linuxディストロはパッケマネを共用してるから、検閲入っても不具合もままあるし、MSのメンテナ数の暴力で良いものだよ
winget install commandで何でも一発で入るよ、少なくともawk/perl/pythonは使ってるけど不自由無し unix-likeツールが使いたい→winget
unix-likeな開発環境(特にクロス)が欲しい→mingw-(64)
linuxを使いたい→wsl
でいいかと
普段は
win/pwsh+unix-likeツール
クロス開発は
wsl上のmingw+gccとwin上のmingw+gccはシームレスに使えるし、win/linuxどちらがホストでもどちらをもターゲットにしたバイナリを吐ける
一台のマシンでホスト(win/linux)×ターゲット(win/liunx)で4通りの、ロバストな機能的等価性テストが可能
dotnetはバイトコードはホスト非依存だけど、mingwほど巨大でないし、一応wslとwin両方に入れて、同様にテストしてる
多分これが開発者的に見たwslの真骨頂
エンドユーザーには
linuxからwin移行の一時の助けになるかと もしかしてVboxからじゃなくてWSLにRocky入れるだけでRedHat鯖の練習に使える? 大学の情報システムをMacかlinuxが寡占してるので、若い子は情報系卒でもwin触った事ないとかザラにあるな
win寡占のビジネス系の職に就くともう悲惨なので、wslが救い
まだコンプライアンス的に企業で使えるかは怪しいが 今時のヤングはPC(personal的な意味で)持つことも減ってスマホオンリーだし、初遭遇がwinじゃないのはもう普通
wslはwinへの架け橋、ってのがMSの策略だろうな
サブシステムのwslから無数に走ってるサービス弄るのは難しいし、良く出来た囲い込みだよ >>182
awkで大抵コトたりるからawkしか使ってないんだよ
あとはせいぜいfileコマンドとwgetコマンド入れた位 windowsは管理者権限要求して好き勝手な所に入る野蛮なソフトが多過ぎるので、まだwingetのパッケージリストimport/exportで一発環境移行とは行かないな
ところでまっさらなwin10でwinget source listすると
winget
msstore
しか出てこないけどこれが検疫済で、aptみたいにwinget souse addでサードのリポジトリ追加していく感じ?
歴史の長いchoco/scoopのリポジトリがまだ10倍程大きいけど、まあ公式のみでユティリティコマンドや言語処理系は大体揃ってるな
vimが9.xなのはメンテナ/ポーターが活発と見ていいのかな Windows10でUbubtuのデスクトップ環境が出来なくなった
systemdで起動させているからこれが原因かと思ったが
エラーログ見たら
(xfce4-session:724): xfce4-session-WARNING **: 15:23:56.470: gpg-agent returned no PID in the variables
(xfce4-session:724): xfce4-session-WARNING **: 15:23:56.475: xfsm_manager_load_session: Something wrong with /home/toshi/.cache/sessions/xfce4-session-wayland-0, Does it exist? Permissions issue?
(xfwm4:746): Gtk-WARNING **: 15:23:56.496: cannot open display: wayland-0
(xfce4-panel:764): libxfce4ui-WARNING **: 15:23:56.787: ICE I/O Error
xfce4-panel: Failed to connect to session manager: セッションマネージャーへの接続に失敗しました: IO error occured opening connection
(xfce4-panel:764): libxfce4ui-WARNING **: 15:23:56.789: Disconnected from session manager.
いつの間にかwaylandが導入されていた
で仕方がないので
.bashrcに記入したら出来た
export GDK_BACKEND="x11,wayland"
export WAYLAND_DISPLAY="wayland-0"
export DISPLAY="x11" Microsoft Store版「Windows Subsystem for Linux」がv1.0.0に到達、プレビューを卒業
OSのリリースサイクルにかかわらず、より積極的な機能追加・改善を進める
https://forest.watch.impress.co.jp/docs/news/1456259.html > wsl --update
更新プログラムを確認しています。
Linux 用 Windows サブシステムの最新バージョンは既にインストールされています。
> wsl -v
WSL バージョン: 0.70.5.0
カーネル バージョン: 5.15.68.1
WSLg バージョン: 1.0.45
MSRDC バージョン: 1.2.3575
Direct3D バージョン: 1.606.4
DXCore バージョン: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
Windowsバージョン: 10.0.19045.2310
なりへそ >>191
「Windows 10 バージョン 20H1」以降で利用可能??? リソースだけ考えればWin上のVMにNextcloudやら載っけるよりこっちで動かすべきなんだろうけどいまひとつMSが信用できないというかいきなり動かなくなったりしそうでためらう wsl -v
WSL バージョン: 1.0.0.0
カーネル バージョン: 5.15.74.2
WSLg バージョン: 1.0.47
MSRDC バージョン: 1.2.3575
Direct3D バージョン: 1.606.4
DXCore バージョン: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
Windowsバージョン: 10.0.19045.2311
目まぐるしいですなぁ で結構前にWindows11にUpdateしたもので
先ほど10分ほど前にチェックしたやつ
ちなみにPCは同じでストレージのみ交換
交換が簡単なPCなので重宝している
古いけど
> wsl -v
WSL バージョン: 0.70.5.0
カーネル バージョン: 5.15.68.1
WSLg バージョン: 1.0.45
MSRDC バージョン: 1.2.3575
Direct3D バージョン: 1.606.4
DXCore バージョン: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
Windowsバージョン: 10.0.22621.819
wsl --update
更新プログラムを確認しています。
Linux 用 Windows サブシステムを更新しています。..
> wsl -v
WSL バージョン: 1.0.0.0
カーネル バージョン: 5.15.74.2
WSLg バージョン: 1.0.47
MSRDC バージョン: 1.2.3575
Direct3D バージョン: 1.606.4
DXCore バージョン: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
Windowsバージョン: 10.0.22621.819 ■ このスレッドは過去ログ倉庫に格納されています