TOP カテ一覧 スレ一覧 100〜終まで 2ch元 削除依頼
【2chブラウザ】 JDim Part1
デスクトップでLinuxが普及する訳ないと思った時 12
uim スレッド 8
俺が実力をつけていくのを暖かく見守るスレ
PuppyLinux 20
Linux 推薦図書/必読書/推薦雑誌/推薦HP 2
【2画面ファイラ】 mfiler4 その2
CCさくらヲタ用Linux
【息抜き】うぐぅ・・・ボクもLinuxに出たいな〜
GUIありで最新Linuxが動く最低スペックPCとは?

【Bash】Windows Subsystem for Linux【WSL】6


1 :2019/06/16 〜 最終レス :2020/01/29
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】5
https://mao.2ch.sc/test/read.cgi/linux/1553100855/

2 :
ついにDockerに対応したWSL2を私見で解説してみた
http://koduki.hatenablog.com/entry/2019/05/10/124945

ここ重要

> さらにWSL2の環境毎にVMを立ち上げるのではなくLinuxカーネルは一つだけ立ち上げて、
> それぞれのWSL環境はコンテナで仕切っている様です。

3 :
Microsoft、「WSL 2」への質問にブログで回答
https://www.atmarkit.co.jp/ait/articles/1905/16/news096.html

WSL 2は「Hyper-V」を使用するのか。「Windows 10 Home」で使えるのか
 WSL 2は、Windows 10 Homeを含め、現在のWSLが使用できる
全てのSKU(Stock Keeping Unit:個々のエディションやインストールオプションを表す番号)で使用できる。

「WSL 1」はどうなるのか。廃止されるのか
 現在、WSL 1を非推奨とする計画はない。WSL 1とWSL 2は共存でき、
各ディストリビューションはいつでもアップグレード、ダウングレードできる。

https://www.atmarkit.co.jp/ait/articles/1906/14/news103.html

LinuxファイルをLinuxルートファイルシステムに配置
 Microsoftによれば、Linuxアプリケーションで頻繁にアクセスするファイルを
WSL 2ではLinuxルートファイルシステムに置くようにしてほしいという。
高速なファイルアクセスが可能になるためだ。WSL 1では、ファイルを「Cドライブ」に置くようMicrosoftは推奨してきた。

 なお、WSL 2では、WindowsアプリケーションがLinuxルートファイルシステムにアクセスできるようになっている。
例えば、bashシェルで「explorer.exe /」を実行すると、エクスプローラでLinuxのルートディレクトリの内容を表示できる。


初期ビルドでは、動的IPアドレスでLinuxネットワークアプリケーションにアクセスする
WSL 2は仮想マシン(VM)で動作するので、WindowsからそのVMのIPアドレスを使って、
Linuxネットワークアプリケーションにアクセスする必要がある。逆にLinuxから
WindowsホストのIPアドレスでWindowsネットワークアプリケーションにアクセスする必要がある。
Microsoftはできるだけ早期に、WSL 2がlocalhost経由でネットワークアプリケーションにアクセスできるようにするという。

4 :
>>前スレ992
> ファイル名生成APIなんてものはないけど、
この時点で「OSがファイル名を決める」と矛盾してるんだがどういうことだ?
でたらめ言うのもいい加減にしろよw

5 :
>>4
矛盾も何も、ファイル名生成APIって言い出したやつが馬鹿ってことなだけなんだが?

6 :
もしかして、OSが決めたファイル名の意味がわかってないのかな?

7 :
「Microsoftのバグ」との戦い
https://tech.nikkeibp.co.jp/it/article/COLUMN/20080819/312956/

8 :
>>3
>例えば、bashシェルで「explorer.exe /」を実行すると、エクスプローラでLinuxのルートディレクトリの内容を表示できる。
こいつ試さず記事書いてるよな

9 :
>>8
大本のMSのドキュメントが間違っていた。
https://docs.microsoft.com/en-us/windows/wsl/wsl2-ux-changes

https://github.com/MicrosoftDocs/WSL/issues/407
> `explorer.exe /` only opens Documents. Use `explorer.exe .` instead #407

以下のプルリクで修正されている。
https://github.com/MicrosoftDocs/WSL/pull/408

10 :
まあ、実際動かして確認してないのはいくねえ

11 :
>>8
MS のドキュメントを見た限りでは、explorer.exe . であっても表示されるのは カレントディレクトリ でしょうね。ルートディレクトリ?w
WSL2 の環境が無いので WSL1 ですが、explorer.exe . カレントディレクトリ、explorer.exe \\ ルートディレクトリ ですね。

12 :
Docker ❤ WSL 2 - The Future of Docker Desktop for Windows - Docker Engineering Blog
https://engineering.docker.com/2019/06/docker-hearts-wsl-2/

まあそうなるな

13 :
UbuntuがMicrosoftストアで配布されているように、
Docker専用ディストリMicrosoftストアで配布されるってことかな?

WSL2上のソフトがホスト上で直接動いているかのように見えるならば、
Docker for Windowsがやっている様々なプロキシ機能は
WSL2の担当になって、何もすることはなくなるからね

14 :


15 :
WSL2はHomeでも動くようになるってのがいいね。
Docker for WindowsはProでしか使えなかった。

16 :
Docker社、WSL 2に最適化した「Docker Desktop for WSL 2」来月リリース。Windows 10でLinux版Dockerを実現、Kubernetesも1クリックでセットアップ
https://www.publickey1.jp/blog/19/dockerwsl_2docker_desktop_for_wsl_2windows_10linuxdockerkubernetes1.html

17 :
VScodeとRemoteというプラグイン使うと組み合わせて使うとイケてる。
開発系のツールはLinuxの中にブチ込めて楽になった。
Eclipseいらねえわ。

18 :
WSL1とWSL2のベンチマーク公開 、どっちの性能が高い? 2019/06/20 10:10 後藤大地
https://news.mynavi.jp/article/20190620-845374/

Phoronixは6月14日(米国時間)、「Linux Hardware Reviews, Articles, & Gaming -
Phoronix」において、WindowsでLinuxバイナリを実行する技術であるWSL1とWSL2のベンチ
マーク結果を発表した。

WSL1はWindows 10にすでに搭載されている機能、WSL2はWindows 10の開発版に搭載されて
いる機能だ。MicrosoftはWSL2でファイルシステムパフォーマンスが大幅に向上すると
うたっており、ユーザーや開発者から注目されている。

Phoronixのベンチマーク結果は多岐にわたるが、大きくまとめると次のような結果になっている。

・I/Oバウンダリな処理に関しては、WSL2がWSL1よりも高い性能を示している
https://news.mynavi.jp/photo/article/20190620-845374/images/001l.jpg
・CPUバウンダリな処理に関しては、WSL1がWSL2よりも高い性能を示している
https://news.mynavi.jp/photo/article/20190620-845374/images/002l.jpg

WSL1はレイヤ技術に近く、Linuxカーネルに対するシステムコールをWindowsカーネルへの
システムコールに差し替えることで動作している。この方式はCPUの利用が効率よく高速に
動作しやすいと言われている。ただし、LinuxとWindowsではファイルシステムが違いすぎる
ため、ファイルシステムに関しては性能が低いという状態になっている。

一方、WSL2はHyper-Vを使うといった方法を採用しており、仮想環境で動作している。
ファイルシステムに関してはWSL1よりも性能が向上しているが、CPUに関しては逆に処理が
遅くなっている。これは仮想環境を通すことでその分性能が下がったと見られる。

WSL2はまだ開発段階にあり、今後パフォーマンスが向上する可能性もある。しかし、WSL2の
仕組みを考えるとこれ以上パフォーマンスが大幅に上昇するとは考えにくく、現状の
パフォーマンスがほぼベースになることが予想される。

19 :
>>18
専ブラ用に本当の画像を貼り直し

・I/Oバウンダリな処理に関しては、WSL2がWSL1よりも高い性能を示している
https://news.mynavi.jp/article/20190620-845374/images/001l.jpg
・CPUバウンダリな処理に関しては、WSL1がWSL2よりも高い性能を示している
https://news.mynavi.jp/article/20190620-845374/images/002l.jpg

20 :
Windows Terminal Microsoft Store Preview Release
https://devblogs.microsoft.com/commandline/windows-terminal-microsoft-store-preview-release/

21 :
ストアに来たのね
プレビュー版だから設定画面とかなく、
jsonそのまま弄らせるとか中々やな

22 :
MS純正品しか使っちゃいけない会社ならともかく、wslttyに満足している自分には何もメリットないな。

23 :
Previewだのfast ringだの焦らしてばっかりだな

24 :
WSLってnmap動かないの?
こうなるのだが

$nmap 192.168.0.2

Starting Nmap 7.60 ( https://nmap.org ) at 2019-06-27 00:23 JST
Problem binding to interface , errno: 92
socket_bindtodevice: Protocol not available
Problem binding to interface , errno: 92
socket_bindtodevice: Protocol not available
Problem binding to interface , errno: 92
socket_bindtodevice: Protocol not available
Problem binding to interface , errno: 92
socket_bindtodevice: Protocol not available
Note: Host seems down. If it is really up, but blocking our ping probes, try -Pn
Nmap done: 1 IP address (0 hosts up) scanned in 3.16 seconds

25 :
$ sudo nmap 192.168.0.2

Starting Nmap 7.60 ( https://nmap.org ) at 2019-06-27 00:34 JST
dnet: Failed to open device eth0
QUITTING!


なんでeth0開けないんですか?

26 :
wsl1はarpすら使えないしtcp/udp以外の
特殊なパケットは扱えないんでは

27 :
そうなのですか
WSL2ではいけそうですか?

28 :
直接的には、RAWモードでソケットを作ろうとしてサポートされてないって怒られてるね

/proc/net配下にあることしか出来ないはずだから、WSLでは省略されてる機能らしい(UNIXドメインソケットは?だて疑問があるけど)
ちなみにWSL2ではいける

29 :
oops!
だて→って

30 :
Linux kernelのupstreamで修正済みのバグを踏み抜いてるissue見ると安定リリースでもkernelのアップデートには追従してほしいところ

31 :
「WSL 2」へのバージョンアップでLinux互換環境はどう変わるのか?
2019年06月28日 05時00分 公開 [塩田紳二,著]
https://www.atmarkit.co.jp/ait/articles/1906/28/news034.html

2020年春に提供予定の機能アップデート「20H1」のプレビュー版に、WSLを強化した
「WSL 2」が実装された。早速、WSL 2でどのような変更があるのか、Linuxとの互換性は
向上しているのかなどを簡単に検証してみた。

32 :
>>31
WSL2ってプレビュー版出てるの?

もう、
Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform
で入れれるの?

33 :
そのよくわからん呪文調べてる暇があったら
プレビュー版の使い方でも調べてこい

34 :
>>32
ご自分で情報を得るようにしたほうがいいと思いますよ。
ttps://devblogs.microsoft.com/commandline/wsl-2-is-now-available-in-windows-insiders/
ttps://docs.microsoft.com/en-us/windows/wsl/wsl2-index

35 :
>>33-34
WSL入れてて、WSL2にしようとしてるけど出来ないよ

PowerShell(管理者権限)で

Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform

wsl --set-version Ubuntu-18.04 2

とやったけど、
VirtualMachinePlatformはオンになったけど、

wsl --set-version Ubuntu-18.04 2
をやると
「コマンドラインオプションが無効です --set-version」ってなる

WSLは昨日MicrosoftStoreから入れたから最新のはずだが

36 :
これはもしかして、Win10home64bit 1903じゃ、VirtualMachinePlatformが効かないのでは?

37 :
homeに、Hyper-Vがないのか

38 :
「build 18917 or higer」

39 :
SUSE Linux Enterprise Server 15 SP1
https://www.microsoft.com/store/productId/9PN498VPMF3Z

40 :
>>35
なぜ OSビルドを 18917 以上にしないのですか?

41 :
ドキュメントをよく読んでないからです。

42 :
18917って1903と違ってプレビュー版なんでしょ?
さすがにコケたら怖いから、OS自体プレビュー版に出来ないわ

まあ、入れてみたいけどね

43 :
じゃあWSL2の正式版が出るのを待てよ

44 :
そうですね、来年まで待ち続けます・・・

45 :
ところで、18917とかプレビュー版って急に落ちたりしたりしないの?
WindowsTerminal入れたが対して使ってないのにすでに数回落ちたぞ
やっぱOSにプレビュー版は不安やわ

46 :
>>45
急に落ちたりはないようです 該当スレで聞いてみては
ttp://mevius.2ch.sc/test/read.cgi/win/1554145899/l50
ttp://mevius.2ch.sc/test/read.cgi/win/1554114504/l50

47 :
>>45
メインマシンに使うようなもんじゃない

48 :
Windows10 home 64bit 1903使用。

>>35でVirtualMachinePlatformオンにした後に、オフにして
VMware立ち上げようとしたら、

「VMwarePlayerとDevice/Credential Guardには互換性がありません。
VMPlayerは、Device/Credential Guardを無効にした後で実行することが出来ます。」

ってなったので、
グループポリシーエディタ(gpedit.msc)でDevice/Credential Guardをオフにしようとしたが、
Win10homeだとグループポリシーエディタが起動すらしないぞ

MSはhomeユーザーなめてるのか
(変なバッチファイル作って入れる方法はあるらしいが)

49 :
ああ、それプレビュー版だからだよ
素人は本番リリースまで待てよ。

50 :
何も理解できてない奴が使う機能じゃないから、
そういった人は触らなくても良いと思うわ
Insiderのみってことも分からなければ、
仮想環境の状態も分からないとか・・・

51 :
いや、普通にWindows再起動したら普通にVMware立ち上がったわ
多分、Windows10homeは、VirtualMachinePlatformオフにして再起動でVMware復活するわ

52 :
そりゃそうだろな、OSの下で動くハイパーバイザ型が
再起動なしで無効にできるとか思えねぇし

53 :
再起動してなかったのかよ

54 :
マイクロソフト、WSL 2に最適化した同社版LinuxカーネルのソースコードをGitHubで公開
https://www.publickey1.jp/blog/19/wsl_2linuxgithub.html

55 :
4.19.52動いたー

kernel.orgから持ってきたやつがダメなのはどこに問題があるんだ…

56 :
そもそも自称先進国のホルホルゴキブリ朝鮮人は、電子レンジの根幹マグネトロンが作れない。
家電用マグネトロンすら作れない糞食い馬鹿と言うことは当然、航空機や船舶、気象、軍事用レーダーも作れない。
日本のハイテク部品を組み立て、それが売れただけでG7の日本にホルホル自慢。
極めつけは、マグネトロンを全て日本からの輸入に頼ってる糞食い土人白丁が

「韓国の電子分野技術は日本を超えた。ホルホルホル・・・」

とホルホル寝言

57 :
19H2が18362のままってことはWSL2は来ないのか
来年まで待つか

58 :
WSL1でも困ってない。もうそれで慣れてしまったからかな?
VSCodeのRemoteもWSL1のほうが使い勝手がいい。

59 :
20H1からって最初から言われてるのに

60 :
>>58
仕組み的に一長一短あるよね(´・ω・`)

61 :
wslの文字コードの処理がよくわからん。
UTF-8のテキストストリームを処理するに当たり、
for文の処理後のパイプラインとか、echoとかがスクリプトにあると、
UTF-8がなぜかCP932に変換されてしまう。
そのせいで、"nkf -w"を適時挟み込む必要がある変なスクリプトになるわ。
これって、wsl特有の現象だよねぇ。

62 :
>>61
コマンドプロンプトで動いてるせいだろうな。
chcp 65001ってやるとどうなる?

63 :
>>61
フォントが無いだけやろ。
UTF-8はUTF-8のまま、何も変換してない

64 :
>>63
アホは黙っとけ

65 :
すまん!
for文内で実行したコマンドが、CP932でストリーム吐いてやがったw
単独で動かすまで気づかなかったよ。

ちなみに、echoやlsのリダイレクトはUTF-8であることは確認した。

>>62
chcp 65001 && wsl で起動しても、振る舞いは変わらなかった。

>>63
コンソールで普通に文字化けしただけみたい。

お騒がせしました。

66 :
ストアのWSLで一番難易度高いのってPengwin Enterprise?
別途RHELなりOracleなり契約して手動で展開しろってやつみたいだけど

Debianを試してみたらWSLで使う分にはUbuntuと大差なかった
SuSEはYaSTがよく分からなくて触ってない

67 :
>>65
そうだろ?コマンドプロンプトやOSが変換するわけないんやで
そもそもリダイレクトっていうのはテキストだけじゃなく
バイナリデータだってリダイレクトできるんだから。
間のどこかでなにか変換が入るわけがない

68 :
文字コードの暗黙変換が行われるのはせいぜいコマンド起動時の引数だけでしょ。

69 :
windows terminalをインストールしました。よさげですね。

70 :
今更ながら、wslttyを導入した。
長いこと使ってなかったLinuxのターミナルの感じを思い出した。

絵文字も文字化けすることなくそのまま表示(白黒だけど)できたのは驚いた。

71 :
windows terminalがuwpアプリで
起動オプションを付けられないのがわかり
ええっとなった

72 :
WSLと直接関係ないけどX410ってマルチウィンドウだとDirect3D使ってくれないのかよ
シングルウィンドウの方がfirefoxのスクロールが速い

73 :
>>71
それ以前に技術プレビュー版なのに、
その程度のことでいちいち驚くんじゃないよ

建設現場公開って聞いて行ってみたら、
まだ建設しててええっとなった。と書き込んでるようなもん

74 :
>>73
建設現場に何しに行くん?

75 :
>>74
だって楽しそうじゃん!

76 :
>>73
uwpだからであってプレビュー関係ない

標準ターミナルならショートカット作って
ディスチリビューション、ユーザー、ディレクトリ指定などして起動できるが
uwpだとショートカットはただのリンクなので
デフォルト設定で起動した後に手動であれこれしないと駄目

77 :
UWPアプリでもコマンドラインで起動出来て、引数も渡せるけど?

もっともTerminalが引数を受け取るかは別だけど

78 :
>>76
そんな餌で俺様が釣られクマーー!

79 :
>>76
何言ってんだこいつ

80 :
プレビュー版のWindowTerminalで、初期起動時にどの機能使いたいとかなら、設定ファイル(json)弄れよ…

81 :
Debian 10 "Buster"のリリースって明日か
WSLの方がリリースされたら一度リセットすっかな

82 :
DebianをbusterにしたらLinuxカーネル4.11以上を要求するようになったQtが4.4.0扱いのWSL1で動かなくなった(一応対策法あり)
4.19なWSL2なら動くのか?怖くてFastに出来ないが

83 :
なんでQtごときがLinuxカーネルのバージョンを要求するんだよ?

84 :
多分、Qt本体じゃなくて依存パッケージのせいだろうな。

85 :
Qt自体が(条件付きで)kernel4.11以上要求するようになってるよ
statx APIを使うようにcompileされたバイナリは、kernel4.11以上が必要で、
配布されてるのがstaticにstatxを有効にされちゃってるという話

statxを切ってbuildすればいいんだけど、Qtのrecompileは馬鹿げてるな
Qtdevがいけてない

86 :
http://man7.org/linux/man-pages/man2/statx.2.html

ほんとだ

87 :
余ってたcoreM、4GBメモリ、SSDのwindows tabletにWSL2導入してみた。
・initが暴走した。条件は不明だがCPUコア1つを100%使ってた。windows側からはvmmemの暴走で気がつける。
・kernelはいくつか機能がoffにされているので特殊なことやりたい人は注意。
・小規模のweb開発くらいなら、XやIME入れなければぎりぎりいける。

hyper-v使った現行dockerだと割当メモリを1GBにしても厳しかったので、
次世代docker for winの評価のために環境作ったけど、WSL2のdistributionを
systemd-nspawnみたいに使ったほうがいいかもしれない。

88 :
WSL2からのDNSリクエストがノートン先生に潰されてた…
盲点だったわ

89 :
アンチウイルスソフトはもう入れないほうがいいってよく言われてるでしょ

90 :
Windows 10はもうDefenderだけでいい。

91 :
いつもの
https://robert.ocallahan.org/2017/01/disable-your-antivirus-software-except.html

92 :
偉人の名言・・・・・・
伊藤博文「嘘つき朝鮮人とは関わってはならない」
新井白石「朝鮮人は都合が悪くなると平気でウソをつく」
新渡戸稲造「朝鮮亡国の原因は、気候にあらず、土壌にあらず、
朝鮮民族という人間にある」
福沢諭吉「この世界に救いようのないどうしようもない民族がいる。
朝鮮人だ。」
本田総一郎「韓国人と関わるな」
夏目漱石「余は支那人や朝鮮人に生れなくって、善かったと思った」
吉田松陰「朝鮮人の意識改革は不可能だ」
津田梅子「動物の方がこのような汚い朝鮮人よりましだ」

93 :
Recommended antivirus exclusions for Hyper-V hosts
https://support.microsoft.com/en-us/help/3105657/recommended-antivirus-exclusions-for-hyper-v-hosts

94 :
wsl -t DebianしたらKERNEL_SECURITY_CHECK_FAILURE
最近PCの調子が悪くて偶然だろうけど心臓に悪い

95 :
WSL2ってfuse使えるんだよな?
それってext4とかxfsも使えるってことなのかね

96 :
というかWSL2のファイルシステムがext4だったような
WSL1のような下手にWin32から触るとぶっ壊れるのが回避されてる

97 :
zfsのロード迄はやってみた事があるけどね
カーネルモジュールに要求するパラメータがちょっと違うからそれなりに手こずる

ただ、ディスクデバイスをどうやってくっ付けるかって問題はある

98 :
>>96
別に回避はされてない。
Windowsからext4のイメージファイルの中身を直接触ると壊れることがある
だから直接さわんな。

9Pプロトコルを使ってさわれ。
そうすればWSL1でも壊れない

99 :
Win32ファイルパスで触れんのと
> Windowsからext4のイメージファイルの中身を直接触ると壊れることがある
が同じだと思ってる辺りがアホ

100 :
イメージファイルってHyper-VのようにVHDXなんだけ?
開こうと思えば開けるんじゃないの?ext4なんて知らんってエラーになるけど。

101 :
>>99
お前さ、イメージファイルとして一つのファイルになっているものは触らないのにさ、
その中身が展開されている、ただし直接触ることを想定してないし、
だからこそ分かりづらい場所に格納されてるもの、をわざわざ探し出して触るわけ?

どちらも想定してない使い方なんだから、壊れても当たり前だし、
どちらも9Pプロトコルで安全に触れるようになったじゃん
しかも時系列的には、WSL1で安全に触れるようになった→その応用でWSL2も対応
という流れなんだが

102 :
WSL1の時に9P通さずにWindows側から見えてるファイルをいじるとLinux側と齟齬が生じて支障するって話を理解できず「NTFSのMFTやファイルが壊れないのだからLinux側で問題が発生する訳がない」とか言い張っていた頭弱い子じゃないかなそいつ

103 :
wsltty 3.0.2 がでたよ。

104 :
pageantとの連携に何使ってる?
weasel-pageantを使っていたんだが、どうやらたまにおかしくなって
バックグラウンドでCPUを食いまくる減少があるようだ。
WSLのバックグラウンドプロセスの仕組みに問題があるのかもしれないが

105 :
weasel-pageant関係なかった。使わずにいてしばらく発生しないからそうだと思っていたんだが
ふいにbashがフリーズして、そしたらCPU食いまくる状態になった。
しかも強制終了も受け付けない。なんだこりゃ

106 :
wsl1は、特定のプロセスが暴走したあとkill -9もタスクマネージャからも殺せなくなることがあるね
wslサービス自体をRしかない。暴走しないままゾンビ化したみたいになった場合も同様。

wsl2はinitの暴走がたまにあるけど、こちらはkill -9で殺せてる。
原初のinitは暴走したことないので、wsl2を呼び出すツールによるのかもしれない。

107 :
>>106
殺せればそれでいいんだけど、どうやっても殺せない。
bashは殺せないし、Lxss マネージャーだっけ、あれも殺せない。
現状再起動しか対応策が見つからない。

108 :
ふとbashが暴走するなら、bashを使わなければいいじゃないと思いついた。
コマンドプロンプトからwsl --exec shでshが起動できる。
/initの下はshが来てる。そこからbashを起動してみた。zshを起動することも可能だろう。
ちょっとコレで試してみるか

109 :
chshって使えるのか。コマンドプロンプトからだと忘れそうなので、
shに変更・・・したらなんかエラー出るのでzshに変更。
zshの設定はしてないので、そこからbashに切り替える。

またbashが暴走するかもしれないが、この状態ならWSLの世界でbashを殺せるかもしれないしね。
もしそれがだめならzshの設定をしてみる。

なんとなく今度はzshが暴走する気がしてるがw

110 :
POSIX準拠じゃないけどfishオススメ。
zshから乗り換えた。

111 :
wsl1暴走したことないから分からないけど、terminateオプションでの再起動も無意味なん?

112 :
>>111
試してないけど無理だと思う。
なにせ管理者権限で起動したProcess Explorerでさえ殺せないから

暴走状態といっても何故かCPU使用率12%ぐらいで
なんか最近ファンが高速回転しやすいなって思って気づいた
いつからなのか?前はなかった気がするから1903からなのか?

前はどうやっても消せないゾンビプロセスが残るという問題があったが
1903でそれが修正されたのは知ってるんだが、関連のバグなんじゃないのかな?

WSLがおかしくなって、関連したbashが暴走しだすのか、単にWSL環境下でbashが暴走してるだけなのか、
前者ならzshにした所でbashではなくzshが暴走するだけだろうけど今の所問題は発生していない

113 :
>>103 に関連して。
wslttyをChocolateyでバージョンアップしたあとは、スタートメニューから検索して
"WSL Generate Shortcuts" を実行しないと、更新が反映されないことに自分はしばらく気づかなかった。

114 :
>>112
CPU使用率が12%ってことは8コアか4C8TのCPUで1スレッドだけ暴走してるかと
100%÷8=12.5%

115 :
>>114
それもそうだw

間にzsh挟んでから暴走しなくなった。
と油断した所で、weasel-pagentを使ってみたら
初めてこいつが暴走した。暴走したときの挙動は同じ。
ただ今回はkillすることができた

やっぱり本当の原因はこいつなんだろうか?
それともたまたま全く違う事が起きただけなんだろうか?

116 :
暴走したプロセスにgdbでアタッチとか出来ないかな?

117 :
また暴走した。プロセスツリーはこんな感じでbashがフリーズ
init -> zsh -> bash

ただし、フリーズした状態ではCPU食わず、bashをRことも出来た。
zshを殺そうとしたら、死なずにzshが暴走し始めた。
根本解決はしてないけど、静かに生き残るなら問題ないわw
フリーズしたらそのまま放置する

118 :
>>116
Attaching to process 16018
warning: process 16018 is a zombie - the process has already terminated
ptrace: そのようなプロセスはありません.

こうなった。言ってなかったかもしれないけど暴走したプロセスはゾンビ状態になってる。

あと今回 weasel-pagent は起動してないので関係ないことが判明した。

119 :
なんかおかしい時は真っ先にアンチウイルスを疑うことにしている

120 :
Windows 10だったらDefenderだけでいい。余計なもん入れるな。

121 :
いれてないよ。Windows 10標準だけ

122 :
>>120
パフォーマンス犠牲にしていいならな

123 :
>>122
除外リストに入れればパフォーマンスは大丈夫

124 :
除外リストに入れても、チェックしたあとに結果を無視するだけなので、だめなのよ

githubで中の人が、セキュリティは別チームだけどなんとかしたいといってから
2年以上たったけど、WSL2でたからこのまま放置されるでしょ

125 :
FUD乙

126 :
Windows 10 Receives Significant WSL2 Improvements
https://winaero.com/blog/windows-10-receives-significant-wsl2-improvements/

Yesterday Microsoft accidentally released a new 'canary' build of Windows 10 to all Insider rings. Windows 10 Build 18947 adds the following improvements to WSL 2:

・new kernel 4.19.55 with no cap at 8 cores/threads, support for docker-compose, kubernetes...and more.
・umask 0022 as default
・way better memory management, now its an authentic "balloon" with reduced memory footprint.

127 :
What’s new for WSL in Insiders Preview Build 18945
https://devblogs.microsoft.com/commandline/whats-new-for-wsl-in-insiders-preview-build-18945/

128 :
umaskの修正とlocalhostでのアクセスは確認できたけど、
メモリ管理の改善は違いがわからない

localhostでのアクセスとumask直しただけで、一般公開してくれていい出来

129 :
localhostが使えるようになったってことはWSL1を使い続ける理由がなくなるのか?

130 :
仮想環境と同居できないのは直せないからずっと並行

131 :
hyper-vで仮想環境構築すれば良いのに

132 :
クライアントhyper-vの出来が良ければな

133 :
Hyper-Vって、ゲストOSとホストOSのクリップボード連携とかがWindows同士でしかできなかったんで、自分はすぐ使うのをやめた。
あれはWindowsを動かすためのVMであって、たまたまLinuxもちょっと動くというだけだろう。

134 :
ubuntuはhyperVにもまともに対応しているが

135 :
hyperv上のでubuntuは、virtualboxでいうtoolboxが存在しないので、
GUIでの描画は遅いし、windowは任意のサイズに変更できなかったりで
使い勝手は悪い。xrdp経由だから、クリップボード共有はできる。
disk passthroughなら、I/Oは実機の95%以上の性能をだせるので、
ここは他のVMと変わらない。

136 :
wsl2のlocalhostでのアクセスは失敗するケースが結構あって
結局スクリプトで対応してる

137 :
>>136
しかもWin→WSLのみでWSL→WinにはアクセスできないからX11は結局localhost以外からの接続を許可する必要があるらしいね

ところでこのスレにはPengwin使ってる人はいないの?
1150円も出して買った情弱なんだけどFcitxが使えてる人がいるのか知りたい

138 :
WSL1のUbuntuでGNOME3入れて日本語入力はfcitxでやってるけどできるよ。
XサーバはVcXsrvとX410両方で問題なし。

139 :
>>133
> Hyper-Vって、ゲストOSとホストOSのクリップボード連携とかがWindows同士でしかできなかったんで、
その話がWSLとなんか関係あんのか?

140 :
>135
存在しないんじゃなくて、普通のドライバと同じように
HyperVのドライバもLinuxカーネルに付属してるから
別途入れる必要はないだけ。virtualboxとは違うんだよ

Hyper-V配下のCentOSの仮想マシンに統合サービスを入れる
https://blog.pcdiary.mydns.jp/pc/linux/post-518/
> CentOS7には標準で統合サービスがインストールされている為、別途インストールする必要はないが

141 :
Hyper-V 統合サービス
https://docs.microsoft.com/ja-jp/virtualization/hyper-v-on-windows/reference/integration-services

統合サービス (多くの場合、統合コンポーネントと呼ばれます) は、
仮想マシンから Hyper-V ホストに通信できるようにするサービスです。

クイック リファレンス
名前 Windows サービス名 Linux デーモン名 説明 無効にした場合に VM に与える影響

142 :
>>139-141
その話がWSLとなんか関係あんのか?

143 :
>>142
あるぞ? WSL2とだがな

144 :
>>139
> その話がWSLとなんか関係あんのか?

俺はとても親切だから、何が関係するのか、愚かなお前に教えてやろう。
その2レス前から読み返せ。そしてもし理解できたら俺に謝れ。

145 :
謝罪がないということは、理解できなかったということだな。
不思議だなあ。ID:/rx8wPTw は >>143 で、何が関係するのかについて同じことを説明しているのになあ(棒読み)。

146 :
https://github.com/microsoft/linux-vm-tools
現状はゲストにこれ入れて拡張セッションモードで動かせばクリップボードの共有はできるようになる
窓のライブリサイズはXRDP側の対応次第みたいねhttps://github.com/neutrinolabs/xrdp/issues/448

ID:/rx8wPTwは例の人だろうけど知らない話題にいちいち口出さなければいいのにね

147 :
さて、嫌味もこのぐらいにしておこうか。

この機会に ID:/rx8wPTw に言っときたいんだけど、あんたこのスレに常駐してMSのネガティブ情報の打ち消しをやってるだろう?
そのこと自体は悪いことじゃないし、むしろみんなにメリットがあるだろう。あんたMSの技術に詳しいからな。

しかし、あんたは相手のレスをちゃんと読まずに、単なるクソリプになってることがしばしばある。
それでも相手が反論してこないのは、あんたの主張が勝ったんじゃなくて、単に相手が関わるのをめんどくさがってるだけだ。
つうか俺もあんたのクソリプを食らったのはこれが初めてじゃないんだわ。めんどくさかったから反論しなかったけどな。

あんたの書き込む技術情報には価値があると思うんで、今後はどうかその点に留意してくれ。

148 :
>>147
お前何一人で空回りしてるの?
相手のレスをちゃんと読んでないのお前じゃんw

149 :
たまたまわかりやすいページが出てきたから書いておくか
https://tech.akat.info/?p=233

> Win 2012 R2とlinuxのHyper-V統合サービスについて
> 新しいディストリビューションの登場に応じて、組み込み Linux 統合サービスを追加している
> What’s New in Hyper-V for Windows Server 2012 R2
> Debian Wheezy本体に含まれるLinux Kernel 3.2.0にはHyper-Vのモジュールが
> デフォルトで組み込まれていて追加の設定なしで使うことができる

virtualboxでいうtoolbox相当のものは
Linuxカーネルに組み込まれている

150 :
https://www.atmarkit.co.jp/ait/articles/1808/30/news024_2.html

> 「拡張セッションモード」は、仮想マシンとの内部的な通信のための仮想マシンバス(VMBus)を通じ、
> リモートデスクトッププロトコル(RDP)でWindows仮想マシンのデスクトップに
> 接続する機能です。リモートデスクトップ接続で利用可能なデバイスのリダイレクト機能(
> プリンタ、ドライブ、PnPデバイス、RemoteFX USBデバイス)やクリップボード共有といった機能を、
> 「仮想マシン接続」ウィンドウで利用できるという利点があります。

> 「拡張セッションモード」は、仮想マシンのゲストOSがリモートデスクトップ接続のサーバ機能をサポートする
>Windows 10とWindows Serverで利用できますが、Windows 10 バージョン1803からは
>Linuxゲストに対しても利用できるようになりました(画面5)。

>Linuxゲストに対しても利用できるようになりました(画面5)。

151 :
hyper-vの拡張セッションモードはxrdpに依存した遅すぎる描画だけでも改善してほしいけど、
desktop環境はターゲットじゃないだろうから厳しいか

拡張セッションモードがゴミじゃなければ、hyper-v使い続けてたわ

152 :
>>148
なんだ単なる異常者だったか。たぶん発達系だな。
てっきり早とちりしがちの善意の人かと誤解してたよ。情けをかけたのは無意味だったわ。アホくさ。
以後完全にスルーするわ。

153 :
>>151
https://forest.watch.impress.co.jp/docs/serial/win10tips/1152934.html
> 「Hyper-V」では、仮想マシンへの接続に、“仮想マシン接続”と“拡張セッション”の2種類を選択できます。

"仮想マシン接続"を使えばいいだけでは?

> “拡張セッション”はリモートデスクトップの技術をつかった接続方法で、仮想マシンのリソースを扱えるようになるのが特徴です。
>接続時にオプションの[ローカルソース]で、ホストPCのドライブや接続したUSBメモリを仮想マシンにマウントすることなどができます。
>ホストPCとデータのやり取りが必要な場合は、この方法が簡単です。

こういうのはVirtualBoxのtoolboxにはない高度な機能

154 :
>>153
どういう理屈で、拡張セッションでのxrdpの描画が遅すぎるというひとに、
それよりも遥かに遅い仮想マシン接続を勧めるのでしょうか?

共有フォルダの自動マウント程度はvmware/virtualboxの初期バージョンから
RDP使わずに実装されてましたよ

155 :
こういうのもあるみたいね
https://www.atmarkit.co.jp/ait/articles/1810/09/news009.html

>  RemoteFX vGPUは、リモートデスクトップ仮想化ホストの役割を実行する
> Hyper-Vホストに搭載された物理GPUを仮想化して、複数の仮想デスクトップに
> 「RemoteFX 3Dビデオアダプター」デバイスを提供し、リモートデスクトップセッション内でGPU機能を利用可能にします。

こrからはこっちの技術がベースになるのかな?

Hyper-V仮想マシンでDDAを利用したGPUパススルー
https://nashippe.blog/hv/gpu-passthrough/
> Windows Server 2016における新機能の一つに、Hyper-V仮想マシンにおける
> Discrete Device Assignment(DDA)の対応があります。DDAの実装により、
> Hyper-V上の仮想マシンでPCIeデバイスを利用できるようになります。

https://docs.microsoft.com/ja-jp/windows-server/remote/remote-desktop-services/rds-graphics-virtualization
> ゲスト OS のサポート Windows Server 2012 R2 Windows Server 2016 Windows 10 Linux
ちゃんとLinuxも入ってるね。

156 :
>>154
仮想マシン接続の方が速いでしょ?
拡張セッションは便利機能。

> 共有フォルダの自動マウント程度はvmware/virtualboxの初期バージョンから
それリモートじゃないし。

リモートにあるVMに接続して、手元のDVDドライブから読み込むとかできません。

157 :
>>156
仮想マシン接続のほうが遅いですよ

あと、リモートにあるVMに接続して云々についてですが、
RDP一般であれば正しいですが、hyperv上でのxrdp/拡張セッションでの接続は、
ホストPCからしか接続できないです。

あとRemoteFX vGPUは今後サポートされる見込みがないですよ

158 :
> あとRemoteFX vGPUは今後サポートされる見込みがないですよ

もっと優れた代替技術に変わるようだね。

159 :
もうそろそろ、Virtualboxのtoolbox相当が存在しないなんていう嘘の話は消えた?
まあ、あるという前提での話になっちゃってるからね。

160 :
マイクロソフト太っ腹やなw

Hyper-VにインストールしたUbuntu 18.04の画面解像度を変更する
https://gazee.net/develop/hyper-v-ubuntu-screen-resolution/

結論から言うと、Microsoftが公開しているlinux-vm-toolsをインストールすることで画面解像度を変更することができるようになります。

このlinux-vm-toolsは、その他にもクリップボードの共有機能もあり、インストールしておくと非常に便利です。

161 :
Hyper-Vって、ゲストOSとホストOSのクリップボード連携とかがWindows同士でしかできなかったんで、
自分はすぐ使うのをやめたとか言ってる人がいたけど、
本当はできるわけだよね。そいつは馬鹿だなぁと思った。

162 :
vhdxってNTFS圧縮するのはダメなのね
WSL2が起動しなくなって何事かと思った

163 :
https://blogs.technet.microsoft.com/ranjanajain/2010/03/23/virtual-hard-disk-vhd-architecture-explained/

VHDを圧縮フォルダからマウントできるのをやめたのと同じ理由だろうな

164 :
WSL2のlocalhost接続がこけた場合のlocalhost接続だけの復旧方法がわからない
vNetworkと別口だとは思わなかったわ
docker for WSL2以外では、使えなくても問題なさそうなところが微妙

165 :
WSL使ってる奴は池沼だろ
ドザーなら潔くpowershell(笑)とchocolatey(爆笑)で乗り切ってみろよ雑魚wwwwww

166 :
はいはい、すみませんねえw

167 :
Apple信者ってなんでMSに敵意持ってるの?
潰れそうだったAppleに資金提供してくれたから感謝する、なら分かるけど

168 :
wsl2で構築したlinux環境をまるごとdropbox等のネットワーク上に
上げて、違うPCから同じlinux環境で作業することって出来ますか?

169 :
曖昧な質問だけど、
・export/importの話ならできる
・ネットワーク上にwslのdistributionを置いたまま使うという話なら無理

170 :
>>168
1ともかく2は無理でしょ

171 :
>>167
急にどうした?
病気?

172 :
>>168
dockerじゃあかんの?

173 :
169でも言ってるけど、export、importpで良いやろ
別端末に同じ環境って意味合いなら

174 :
>>138
ありがとう、Pengwin以外だと問題ないみたいね
ってpengwin-setupのバグみたいだからそりゃそうだけど
profile.dの生成がおかしくてdbusとfcitxの起動がうまく行ってなかった

Debianでtask-japanese-desktopを入れたらuim-mozcが入ったけどこのままibusやfcitx入れちゃっても大丈夫なんだろうか

175 :
conemuからwslやるとzsh重いからfishにしてみたけどタブ補完の動きがおかしい……
結局bashに帰ってきちゃった

176 :
docker for wsl2は、wsl2の環境作ってあれば、あまり価値なかった

177 :
それコンテナ技術の意味合いが分かってないだけじゃないのか?

178 :
また妄想か

179 :
WSLとDockerの環境は全然別物。使い方も違う。
本当にわかってないだろw

180 :
docker for wsl2は、wsl2上にdocker-cliインストールしてくれるのと
クリックで動作・停止できるくらいしか機能ないから、
docker-cliインストールして使ってればいい

181 :
>>176
当たり前じゃね?
Docker社が作ったのはDockerであって、
Docker DesktopやDocker for Windowsは
Linuxで動くDockerをWindowsに移植したようなもんだろ?

今までWindows版のRubyを使っていたが
WSLでWindows版Rubyはいらなくなった!って言ってるのと同じで
別にRubyがいらなくなったわけじゃないでしょ?

WindowsがLinuxを内包したから、Windows版が
要らなくなったという話の一部でしか無いよ

182 :
せめて、docker desktop for win使ってから書けばいいのに

183 :
お前より使ってるから安心しな(爆笑)

184 :
わかってないのは>>177>>179>>181のほうだが
ID:wgwFcBqKのほうがクソレスだと思う

185 :
>>175
conemuは機能的にはいいけどハードスペックでどうにかなる類いの重さじゃないし
UIもごちゃごちゃして使いにくいな

186 :
>>181
だからお前よりもわかってるってw

187 :
間違えた

>>184
だからお前よりもわかってるってw

188 :
必死過ぎるw

189 :
Debianのインストールイメージがbusterになったみたいだしまたリセットすっかな

190 :
core-i3(6gen, SSD)のマシンが余ったからinsiderデビューしてみた。
WSL2にして、npm installとかI/Oまわりは実機の7割くらいの速度に改善されてよかったんだけど、
I/O以外で遅くなったりしているから、compileにかかる時間が読みづらかった。
gitやvirtual envの情報をpromptに表示させてたけど、directory移動するたびに少しだけ待たされる。
WSL1や、12年前のlaptop(core2duo, HDD)上のlinuxですら瞬時に表示されるというのに。
とりあえず非同期処理に書き直して対応。
単体としては満足だったけど、VMとの排他利用だと悩む。

191 :
>>190
でも、それをいったらMacってなんであんなに遅いんだろうね
WSLなみに遅いよ。

192 :
いつのMac使ってるんだよwこのクソドサww

193 :
>>192
嘘だと思うなら、こんな感じのコード実行してみ

#!/bin/sh
i=0
while [ $i -lt 1000 ]; do
date > /dev/null
i=$((i+1))
done


俺の環境でLinuxだったら1秒だけど、Macだと3秒かかる。

194 :
その手のだとOS云々よりもMeltdown対策がどうなってるかで倍ぐらい変わりそうだな

195 :
>>193
それが本当だとしてもそのコードが遅いことにどういう意味があるの?

196 :
うん。Macのカーネルはフォークが遅いんだと思ってる。
Unixとしては実装が片手落ち。取りあえず動くけど最適化されてない

197 :
dateが遅いだけとか言われそうだから改良してみた。
ともにbashで実行。バージョンは少し違ってMacは5.0.7で、Linuxは5.0.3
MacはMacBook ProでLinuxは同じマシンでしかも仮想マシン(VirtualBox)で実行

#!/bin/bash
i=0
while [ $i -lt 10000 ]; do
( : )
i=$((i+1))
done

dateコマンドを呼び出していない。サブシェルを使ってるから実質フォークのみが行われている。
Linuxだと3.5秒だが、Macだと9秒かかる。とても遅い。

198 :
macosのforkが遅いのは以前からさんざんベンチ付きでいわれてたことだし、
windowsにfork相当がないことやwsl1のfork実装がmacosよりも遅いってのも
このスレでも既知のことでしょうに。
>>191は何を言いたかったのかわからない。
あなたが遅いと言ってるのはmacosのforkが遅いってことですよね?
理由は、自身が>>196で書いてる通り、macosのfork実装が悪いんでしょう。
wsl2の話にどうつながるんでしょうか?

199 :
macosのforkが遅い,windowsにfork相当がないのはGUIソフトではforkは使わない
からなのか?
実はLinuxでもGUIソフトではforkは(ほとんど?)使っていないとか

200 :
>>198
> wsl2の話にどうつながるんでしょうか?

WSL2では内部で仮想マシンを使ってるから、
Macで動かしたVirtualBox上のLinux相当のパフォーマンスになるよ
高速だね!

201 :
>>174だけどfcitx-mozcは動いたもののibus-mozcが動かない
そもそもibus-daemonが起動しなくてググってみたけど有力な情報がなくて断念

202 :
Windowsでもntdll.dllにRtlCloneUserProcessっていうfork相当の関数があるんだけどね

https://www.google.co.jp/search?q=RtlCloneUserProcess

203 :
http://k-takata.o.oo7.jp/diary/2014-09.html

> Vista 以降には、RtlCloneUserProcess という内部 API があるらしい。

Vista 以降・・・
内部API・・・

204 :
https://social.msdn.microsoft.com/forums/windowsdesktop/en-us/afdf1b68-1f3e-47f5-94cf-51e397afe073/cygwin-fork-and-rtlcloneuserprocess

しかもこのAPIがforkだと仮定した場合、期待した動きはしない・・・

205 :
>>199
windowsがforkを用意しなかった理由については、いろんな考察があるから調べてみるといいと思う。
役に立たない知識が増えるだけですけど。

linuxでの基本的なプロセス生成は
1. 親プロセスでforkして
2. 子プロセスで新しいプログラムをexec
3. 親プロセスがwait
の流れで、これはGUIでも同じです。
pstreeで親子関係を視覚化できます。

linuxを半日つかっても、通常1万プロセス程度しか生成されませんし、
forkが遅いといったところで1回あたりマイクロ秒で終わるので、
forkが遅いだけならシェル芸やベンチマーク以外には影響ないです。

206 :
>>199
AndroidはGUIでforkを上手に活用しているよ

Google Chromeはタブごとにプロセスを起動しているみたいだけど、通常はWindowsでも
LinuxでもGUIアプリケーションは1個のプロセスとして実装するのが普通で、必要に
応じてアプリケーション内でスレッドを生成している

Androidは、一般的なWindow SystemのWindowに対応するActivityやダウンロード等の
バックグランド処理をするServiceを複数組み合わせて1つのアプリを構成するが、その
AcitivityやServiceはそれぞれ1個1個独立したプロセスとして実行される

例えば、アプリを起動して設定画面を出すとメインActivityと設定Activityで2個プロセスが
起動されるようになっていて、2回forkが実行される

スレッドの生成よりプロセスの生成にはコストがかかるが、Androidのシステムの中核である
Zygoteがforkとコピーオンライトを活用してプロセスを管理していて、高速にAcitiviyや
Serviceを起動できるようにしている

そのためforkのないWindows NTカーネルでAndroidシステムを直接実装するのは難しい
WSL1がWindows上でAndroidを動かすための仕組み由来なのはこういう理由なはず

ちなみにLinuxのプロセスモデルは、VMSやWindows NTのspawnモデルでもUnixのfork
モデルでもなくPlan9のrfork由来のcloneモデルなので、タスクの設計思想が根本的に違う

207 :
>>203
内部APIはともかくVista以降の何が問題なの?
WSLスレでXPを考慮する必要もないでしょ

208 :
Ruby on Rails 6 では、テストの並列実行ができるようになったが、

Linux, Mac では、fork でプロセスを起動するが、
Windows では、fork が無いので、スレッドを起動する

ワーカーがプロセスの場合は、データベース(DB)を作成してから実行するので、
他のプロセスのDBと競合しないが、

ワーカーがスレッドの場合は、同じDBを使うので競合する

209 :
>>208
明らかにruby on railsのバグだなw

210 :
ウインドウサブ死すテムとは?

JDがウイン10で使えるようになるの?

211 :
WSL(に限らんけど)Ubuntuのレポジトリって国内のレポジトリにすると速くなるいがいにメリット何かある?
本家には入ってない日本向け/日本で人気あるアプリが登録されてるとか、そういう「日本向けローカライズ」みたいなのされてるかどうかってことなんだけど。

ぐぐっても「近場だからはやいよ」ってばっかりで内容について触れてるページが見当たらない・・・

212 :
みらーでなかみがちがったらまずいやろ

213 :
そうったのが欲しいならサードパーティーリポジトリを追加するんだと思うけど

214 :
ミラーの意味をわかってないのか
ちなみにUbuntuはミラーを使わないアホ対策に
デフォルトのリポジトリをわざとクソ遅くしてる

215 :
アホらしい質問で申し訳ないんだが、cronってwslで動かない?
cron起動してログ有効にして */5 * * * * echo "hoge" ってしてんのにログすら吐いてくれない……
なんか書き方間違ってるかな

216 :
>>215
動くよ
ディストリにも依るだろうけど、ログの出力がsyslog任せになってたりしない?

>> /tmp/hoge.txt とかをコマンドライン後ろに追加してみればいいんじゃない

217 :
>>216
なるほど、ちょっとやってみよう
ありがとー

218 :
>>216
できた!ありがとう!

219 :
いい話だな〜。みんなけなし合うんじゃなくて助け合おうよ。

220 :
はい、みんなけなし、合うのはやめます。

221 :
彡⌒ミ

222 :
ハゲとらんちゅーとんがな!いい加減にしろ!

223 :
Alpine WSLでユーザー名は設定できたんだけどrootもデフォルトユーザーもパスワード設定されなくてsuできないんだけど手順を間違えたんだろうか

224 :
「WSL 2」最大の課題であった“localhost”問題が解決 〜「Windows 10」Build 18945
https://forest.watch.impress.co.jp/docs/news/1198651.html

最大の課題だった模様

225 :
最大の課題っていうのは優先順位が高いという意味で
実現が困難という意味じゃないぞw

226 :
>>223
コマンドプロンプトでwsl -d Alpine -u rootとか?
同じ事になったから今の所そういう作りのようだけど

227 :
>>226
ありがとう、無事apk upgradeとapk addできたよ

228 :
https://balintreczey.hu/blog/downloadable-ubuntu-wsl-tarballs-to-the-latest-release-and-beyond/

229 :
好きな場所にimportして環境作れるな
ストアのいらんやん

230 :
>>229
そのとおり。MacもiPhoneもAndroidも
アプリを実行するだけならストアはいらないんだよ

231 :
以前からwsldlというのがGitHubにあったな

232 :
WSLはストアの無いサーバOSにも入るから、こんなのもあるよ
ttps://aka.ms/wsl-ubuntu-1804

他にも公開されてたはず

233 :
ストアは安全性と利便性のためにあるわけだしね

234 :
いやiosはいるだろ

235 :
>>232
おまえのせいで直リンク踏んで今月の通信量200MB使っちゃったやん
1日の使用量超過なんだけど?
この時代直リンク禁止とは言わないが直リンクなら先に言ってほしい

236 :
これは楽しい話を聞いた

237 :
>>235
ほんとだ

238 :
ギガ使っちゃったの?ボクチャン

239 :
>>238
パケ死した!

240 :
今パケ死っていうのか?
言ったとしてもギガ死とかでは?

241 :
火狐はダウンロードするかどうか聞いてくれたので回避余裕でした

242 :
直臨はるバカが悪いってことだな。

243 :
わざわざh抜きで貼ってくれてんのにクリックするアホのが悪いわw

244 :
つまり、直臨はるバカが悪いってことだな。

245 :
>>244
>>235か?

ブラクラにあっさり引っかかるタイプだなw

246 :
どう考えても直臨はる馬鹿が悪いってことだね
自分は悪くない、とか言うつもりのようだけどブラクラ張るやつと同じ事やっててて「俺は悪くない」は通用しないよ

その程度もわからんバカは死んだほうが世の中のためだねw

247 :
移民の顔真っ赤すぎワロタw

248 :
これが直リンク
https://google.co.jp

これは直リンクではない
ttps://google.co.jp

>>246
正真正銘のアホw

249 :
>>248

× これが直リンク
○ これがリンク
https://google.co.jp

× これは直リンクではない
○ これはリンクではない
ttps://google.co.jp

250 :
いいから100年くらいROMってろw

251 :
>>249
確かにそうだ
俺もアホだなw

252 :
黙ってりゃいいものをチョンみたいにファビョって恥ずかしい・・・w

253 :
>>252
そんなにファビョるなってw

254 :
>>253
アイゴー!ファッビョーン!!www

255 :
>>254
俺はお前のことが好きになった
ホワイトリストに復活させてやるよ

256 :
リンク張るやつはバカしかいないってことだなw

257 :
教えてくれ。
WSLでUbuntu16.04とVcXsrvの組み合わせで日本語入力ができない俺に
わかりやすい入門者向けサイトを教えてください。
今はVirtualBOXで共有フォルダ使ってるんだが重いんで、WSLに乗り換えたいんだが日本語入力で躓いた。

258 :
自分はDebianを使っているので参考にならないかもしれんが

WSLの場合日本語入力メソッドを自動起動してくれないので.profileなりで起動する必要がある
fcitx-autostart &> /dev/null
(uimの場合はuim-xim > /dev/null &)

dbusはその前に起動しておく必要がある
eval "$(dbus-launch --auto-syntax)"

もちろん環境変数のexportも必要
export DefaultIMModule=fcitx
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx

なおWSLではibusは動かない模様
あとWSLを終了して再起動する場合Xサーバーも再起動する必要がある場合もある

259 :
そういや9pプロトコルを使ったファイル共有
理論的には仮想マシンであっても実現できるはずだよな。
誰か解析して組み込んだりしてないんだろうか?

260 :
俺はGNOME3とfcitx-mozcを入れて環境変数をexportしておいて
gnome-terminalとfcitx-autostartを手動で起動して日本語入力やってる。
dbusはgnome-terminal起動すると勝手に動くっぽい。

261 :
Visual StudioからgdbデバッグするのためのWSL Ubuntu接続ができない。
sshではlocalhostに接続できているのにVisual Studio からはなぜか接続できず。
クロス プラットフォームのログは以下の通り。

15:49:04.6471074 [Info, Thread 1] liblinux.RemoteSystemBase: Connecting over SSH to localhost:50022
15:49:05.9111034 [Info, Thread 1] liblinux.IO.RemoteFileSystemImpl: Connecting over SFTP to localhost:50022
15:49:12.5031021 [Info, Thread 1] liblinux.Shell.CommonCommandBase: Command "cat /etc/os-release" finished with exit code 0 after 3787.2031ms
15:49:12.6341085 [Info, Thread 1] liblinux.Shell.CommonCommandBase: Command "uname -m" finished with exit code 0 after 127.3186ms
15:49:12.7731077 [Info, Thread 1] liblinux.Shell.CommonCommandBase: Command "uname -r" finished with exit code 0 after 136.2676ms
15:49:12.9251030 [Info, Thread 1] liblinux.Shell.CommonCommandBase: Command "g++ -v" finished with exit code 0 after 131.1446ms
15:49:13.9871022 [Info, Thread 1] liblinux.Shell.CommonCommandBase: Command "clang++ -v" finished with exit code 0 after 1060.3067ms
15:49:14.1331024 [Info, Thread 1] liblinux.Shell.CommonCommandBase: Command "gdbserver --version" finished with exit code 0 after 143.3295ms
15:49:25.5291022 [Info, Thread 1] liblinux.RemoteSystemBase: Disconnecting over SSH from "localhost:50022"
15:49:25.5421076 [Info, Thread 1] liblinux.IO.RemoteFileSystemImpl: Disconnecting over SFTP from localhost:50022

以下は /etc/rsyslog.conf で設定した/var/log/messagesのログ
Aug 25 15:07:28 xxxxxx dbus-daemon[3412]: [system] Activating service name='org.freedesktop.systemd1' requested by ':1.1' (uid=0 pid=3420 comm="/lib/systemd/systemd-logind ") (using servicehelper)
Aug 25 15:07:28 xxxxxx dbus-daemon[3412]: [system] Activated service 'org.freedesktop.systemd1' failed: Launch helper exited with unknown return code 1

262 :
ちなみにこのログでは ssh を50022番ポートにつないでいる。通常のsshクライアントを使って50022番ポートに接続できることを確認済み。

263 :
WSLに接続するのであればRemote-WSL使ったらダメなん?

264 :
VSCodeの話では無いのか。失礼。

265 :
WSLは1と2どっちの方?
もう片方に変換するとどうなる?

266 :
>>263,264
回答ありがとうございます。
私が使っている環境はVisual Studio 2019 Communityです。
メニューから「ツール→オプション→クロス プラットフォーム→接続マネージャー」と選んで、
「リモート システムへの接続」ダイアログで接続を試しています。
途中まで接続が上手くいっているかのようなログが出たあと、なぜか何も起きず、
仕方なくもう一回接続を試すと、「ホスト名」と「ポート」の2つのテキストボックスが赤枠になってしまいます。

267 :
>>265
回答ありがとうございます。。
WSL2はまだ入れておらず、WSL1のみで確認しました。
せっかくなのでWSL2を入れて試してみようかと思います。

268 :
失礼しました。
WSL2は2019年8月末現在、Windows Insider Preview Buildのみ対応らしいので、今回はWSL2への移行を見送ります。

269 :
WSLからXサーバ(GUI)に接続しようとして失敗してるんじゃない?

freedesktopってGUI関連の基盤だったと思うけど
WSL自体ではXサーバは起動出来ないからWin側とかにXサーバエミュレータ入れてそっちに振らないといけない

270 :
>>261
コマンドプロンプトのwindowからpropertiesを開いて、
"Use Legacy Console"にチェックが入っていたら外す

271 :
回答ありがとうございます。

>>269
早速、VcXsrvを入れて試してみましたが、相変わらず接続不能でした。
上述のdbus関連ログは明示的に sudo service dbus restart を実行して以降に出るので、今回の問題はXサーバやdbusは直接関係ないかもしれません。

>>270
早速、コマンドプロンプトの設定を確認してみました。
「レガシ コンソールを使用する (再起動が必要で、すべてのコンソールに影響します)(&U)」はチェックが入っていない状態でした。

272 :
>>271
失礼、freedesktopのエラーは無視出来るね
dbusを落としてても上げてても、VS側の処理は続行出来る

WSLの構成とコマンドのバージョンチェックをした後にVS側から切ってるようだから、バージョンが想定してる範囲外とかかねぇ?

ちなみに接続出来た環境
OS:build 18965.1005(x64)
WSL:Ubuntu 18.04.02
VS:2019 Community 16.2.3

WSL2は同じ事するとlocalhost経由のsshが途中で切れる…まだまだだねぇ

273 :
coLinux

274 :
exFAT in the Linux kernel? Yes!
https://cloudblogs.microsoft.com/opensource/2019/08/28/exfat-linux-kernel/

275 :
exfat-fuse使ってるけど遅いからな。これは嬉しい。

276 :
https://github.com/dorimanx/exfat-nofuse

一応こういうのはあるけど更新してない

277 :
WSL1はこのままなくなるのかな
WSL2だと仮想マシンでHyper-V使ってるのか、泥エミュと競合しちゃう

278 :
WSL 1 はどうなりますか。 破棄されますか。
https://docs.microsoft.com/ja-jp/windows/wsl/wsl2-faq#what-will-happen-to-wsl-1-will-it-be-abandoned

現在、WSL 1 を廃止する予定はありません。 WSL 1 と WSL 2 ディストリビューションを並行して実行し、任意のディストリビューションをいつでもアップグレードおよびダウングレードできます。

279 :
Xサーバと連携してLinuxデスクトップアプリを使用する場合はWSL1の方が使い勝手がいい。
WSL2だともたつく・・・

280 :
WSL2の場合、Xサーバとアプリはループバックのドメインソケットで接続でけんもんなぁ

281 :
わざわざありがとう
WSL1続くのね

282 :
今後リソースがさかれることはないだろうから、対応されなかったAPIは
今後も使えないだろうし、続くのではなく、残る(放置される)だけじゃね

283 :
いずれ消されるんだろうなあ
面白い技術だから勿体ない気もするけど

284 :
HyperV上でVMWareが動くようになったらしい。

https://blogs.vmware.com/workstation/2019/08/workstation-hyper-v-harmony.html
https://techcommunity.microsoft.com/t5/Virtualization/VMware-Workstation-and-Hyper-V-Working-Together/ba-p/825831

主流の仮想マシンがHyperV上で動くようになったらWSL1を使う理由はなくなるだろうね
あとはパフォーマンスがどこまであげられるか。WSL1でもまだ上がると思うんだよね。
例えばファイルはNTFS上に直接置くのではなくて仮想ディスクを使うようにするとかね
最終的にどちらが有利かはまだわからない気がするな

285 :
>>284
ネストは出来てたような?
と思ったらハイパーバイザープラットフォームに対応するのね

286 :
俺はもうWindowsでVirtualBoxは諦めてるんだが、
FreeBSDとかSolarisとかどうしてもVirtualBoxでしか動かせなくて
必要なときはMacを使ってる。

FreeBSDとかSolarisがHyperVでも動かせるなら良いんだけど
どうもうまく行かない。

287 :
qemuじゃダメ?

288 :
動くならqemuでもいいよ。むしろqemuの方がOSの設定を
いじくり回さなそうなんで嬉しい。kvm-qemuじゃないほうね。
だけど動かす方法がわからん。オプションいっぱいあり過ぎだし試すのに時間がかかる。
一つだけでも良いから動く設定がわかればいいんだが

289 :
qemuのフロントエンドはいくつかあるみたいだから、気に入ったものを使えばいい。

290 :
フロントエンドの有無はどうでもいいよw
あってもなくてもそんなの問題にならない

重要なのは動く設定
なにやっても途中でフリーズする

291 :
他のOSはLinuxやWindowsとはぜんぜん違うから
どんな設定でもそれなりに起動してくれるLinuxやWindowsとは違って
ろくに起動すらしない。何が原因かよくわからん。試行錯誤するにも時間がかかる。

292 :
Solarisはどれを動かそうとしてるかにもよるから何とも言えんけど、今時、FreeBSDなんてLinuxと大して変わらん感じでテキトーで動くだろ。
Hyper-Vでもqemuでも普通に入れたら普通に動くぞ。
Hyper-VはMSが公式に動くって言ってるし、Qemuは今、Windows10のサンドボックスで試したら、全部デフォルトで12が入った。
特殊な事しようとしてるんじゃなければ、簡単なはずなんだけど…

昔LinuxカーネルにFreeBSDのユーザーランド&Portsを入れて動かすとややってた人いたけど、今あるのかね?
あったら、WSL/FreeBSDもどきとか出来るんだろうか?

293 :
Debian/kFreeBSDのこと?

いつの間にか消えたな・・・

294 :
php -r "echo is_dir('/mnt/m/\!Network/')?1:0;"

これどうやっても0になるんだけど、どうすりゃいいの?
\を増やしてもダメ

M:\!Network\ は実在してるフォルダ

295 :
普通に勘違いでした php側はエスケープ不要だった

296 :
>>293
消えてはいない。stableもunstableもビルドはされてる
リリースに含まれなくなっただけ。Hurdも同様

297 :
悩まされてたバグがWindowsアップグレードしたら直ったから一応報告。WSLのストアからUbuntu入れて中身Gentooに入れ替えてClangでビルドしたZSH使ってたら、変数の中身が時々壊れると言うやっかいなバグが出てた。
検証コード:(for i in $(seq 1000000);do d=$(/usr/bin/dirname './abcdefghijklmnopqrstu/file0123456.jpg');if [ "$d" != './abcdefghijklmnopqrstu' ];then echo NG: $i $d;fi;done)
これで、数千回に1回NGがでて、dの中身が後ろ半分くらい(長さはその時のよってちがう)削除されて出力される。
KVMのGentoo+ZSHや、CygwinのZSHで問題なくて、WSLのGenntoo+bashでも問題ないし、環境が色々疑うべき個所が多すぎて、WSL以外ののバグだと思ってた。LTO付きでビルドすると、発生頻度が千回に1回位にあがるし。
で、今回Windows10を1803から1903に一気に上げたら、問題発生しなくなった。WSLイメージのアップグレードもしてないし、ZSHのリコンパイルもしてない。単純にWindows更新しただけなので、WSLのバグだったと思われる。

>>293
たぶんそれ。Linuxカーネル+FreeBSDランドじゃなくて、FreeBSDカーネル+Debianランドだったのか。記憶違いしてた。

298 :
元々LinuxはGNU(OS)の代替カーネルというポジションだけど
BSDカーネル+GNUユーザランドは幾つか実装例があったけど
Linux(GNU)カーネル+BSDユーザランドは本当に見ないね…見た記憶すら無い

299 :
GNUユーザーランド VS BSDユーザランド で考えてみればわかる。

機能的に GNUユーザーランド は BSDユーザランド の上位機能なんだ
機能を減らす意味なんて無いだろう?

300 :
BSD3〜4.2の時はBSDの方が高機能
だったけど、SYSVでほぼ取り込みされてるからね

当時最先端だった筈のマイクロカーネル
陣営で生き残っているにはWindowsぐらいか

301 :
MacOSXは一応Machの末裔だから、マイクロカーネルじゃないんですかね
まあ商用マイクロカーネルOSで最も普及してるのは確かにNTだなここ20年くらい

302 :
それを言うならNextだね
OMRONのLunaも無くなって悲しいね

カモメ時代のLinuxをフルボッコした奴ら
今頃どんな顔して生きて居るのでしょう?

303 :
昔からWindows(9x,NTすべて)はマイクロカーネルじゃないだろ。
どこにそんな情報があるんだ?

304 :
NTはマイクロカーネル
95はキマイラ
ってのが定説だけど

NTのDDK本の最初の翻訳本を作ったWinProgDDKの中野一人です

なお、翻訳時に単位を間違えたのは別之一人あるね

305 :
いやだからそのNeXT OSのカーネルがMachパクってたんだろ…
Machは元々BSDのマイクロカーネル実装実験
読みはマッハじゃなくてマーク

306 :
戦うプログラマーとか胃がキリキリしながら読んだなあ
NTも技術的にはVAXの系譜で由緒はわりとしっかりしてる
MSアンチにデタラメ垂れ流されてるけどNTは純然たるマイクロカーネル実装

307 :
アビー・テバニアンが盗人とな?
大学で学んだ事を産業化すると泥棒なのかね?

308 :
インサイドMicrosoft Windows 第4版
2.2 オペレーティングシステムモデル
https://www.atmarkit.co.jp/fwin2k/bookpreview/insidewin4/insidewin4_01.html#2-2

309 :
18975にしたらWSL2にしたUbuntuがアプリのアイコンから起動出来なくなった…(wsl、bashコマンドからはOK)

WSLのフィードバックは提供する内容がちょっと違うのね

310 :
ストア経由で入れてないから、WSLのアイコンが一つもないわ

311 :
何をもってマイクロカーネルと定義するかにもよるけど、
特権モードで実行される部分をできるだけ少なくするという観点からはNTもMacOSも
全くマイクロカーネルではない

特にNTは3.1の時点でLinuxより特権モードで実行される部分が多い

NTはプロセス管理もメモリ管理もファイルシステムも全部Linuxと同様に特権モードで
動く単一バイナリのNTカーネルntoskrnl.exeで実行されている上に、レジストリ関係も
ntoskrnl.exeで実行されるので他のOSより特権モードで実行される部分が多い

さらに4.0でWIN32APIのグラフィック関係のGDI32.dllやUSER32.dllがユーザ
モードで動くCSRSS.exeへのメッセージ通信から、特権モードで動くwin32k.sysへの
システムコールになり、グラフィック関係が特権モードで動くようになった
Vista以降DirectX関係はユーザーモードで動くDWM.exeが関わるようになったけど、
10でもGDI関係はwin32k.sysへのステムコールのまま

NTのマイクロカーネル的な要素はサブシステムと呼ばれるユーザランドの側だけだよ

312 :
重箱の隅つついてケチつけるのが目的で、手段はどうでもいい類の。
アップル無罪。

313 :
>>311
特権モードで実行される部分を少なくするのと
マイクロカーネルは全く関係ないんだけど、

自分から何を持ってマイクロカーネルと定義するか?と言っておきながら
間違った定義で、マイクロカーネルではないとするのはなんで?w

314 :
>>313
君こそ何いっているの?

OSの機能を独立性の高いモジュールに分割し、システムコールやサブルーチン
コールではなく、相互依存性の低いメッセージ通信で各モジュール間をつなぎ、
できるかぎり、何でもできるがゆえ問題が生じやすい特権モードではなく、ユーザ
モードで実行されるサーバープロセスでするようにするのがマイクロカーネルの思想

例えばMINIXだと、プロセス管理はpm,ファイルシステムがfs、仮想メモリ管理のmm、
サーバの起動やドライバの管理がrs等のユーザーモードで動作するサーバーによって
プロセス管理やメモリ管理、ファイルシステム等のOSの基本機能が実現している

GNU HURDやQNXなども同じ

これらのマイクロカーネルOSとLinuxやWindows NT、MacOSは全く構造が違う

315 :
嫌、少なくとも3.xの頃はマイクロカーネルを自称していたよ。
本来の NT4 の実装に失敗して以降グダグダで
マイクロカーネルじゃ無いじゃ無いって意見はありかもしれないが

316 :
>>314
要件としては細かいモジュールに分けていればいいので
特権モードとかいうのは関係ない

例えばドライバが特権モードを使っていても、
カーネルとドライバが分離されていれば
マイクロカーネルになる

317 :
>>315
当時を振り返ればわかると思うが、3.xからNT4で何を変えたかと言うと
GPUドライバをカーネル空間(特権モードとは関係ない)に持ってきただけだよ
当時の性能では真のマイクロカーネルではパフォーマンスが悪かったから
別に完全にマイクロカーネルを諦めたわけじゃない。一部妥協しただけ

318 :
当時のというか現在でも結局理念通りの実装ではコンテキストスイッチの実行コストがバカにならず性能がスポイルされまくって非現実的なので
実用性を求めるOSではメッセージや実装によってはネットコードやファイルシステムの一部もカーネルモジュールで実行させるようになっている

理念通りに分割したままの実装なんて、実証用や学習用くらいじゃねえの?
何十MBもキャッシュを積んだ数GHz動作のプロセッサと高速で大容量のメモリをジャブジャブ使える今現在でさえこうなんだし
数10MHzかそこらのCPUとメモリでやってた頃なんて、原理主義的なマイクロカーネル実装では到底使い物にならなかっただろう

319 :
>>316
> カーネルとドライバが分離されていれば
> マイクロカーネルになる

ならLinuxはマイクロカーネルだねw

NTもLinuxもドライバはモジュールだよ

320 :
NTでは*.sysがカーネルモードで動作するモジュールで
Linuxでは*.koがカーネルモードで動作するモジュール

どっちもカーネルは普通のcall&ret命令でモジュールを呼び出しているから
この辺の構造はLinuxもNTも全く同じ

これをマイクロカーネルと定義するならLinuxもNTもマイクロカーネルになりまつ

321 :
だからLinuxもマイクロカーネル化してきてるんだよ。
もっともNTほど細かく別れてない。ドライバ以外は結合しちゃってるから

322 :
コード見せる必要がない話だと饒舌になる

323 :
coLinux

324 :
>>323
64bit版はいつ出るんや
待ちくたびれたで

325 :
俺様が認証したものがマイクロカーネルである。エヘン!

そんな訳ねえだろうに

326 :
>>324
つ WSL2

327 :
>>321
> もっともNTほど細かく別れてない。ドライバ以外は結合しちゃってるから
いいえ

CentOS 7のカーネルだと*.ko.xzが約2500個、Windows 10のC:の*.sysが
約2400個だから同じぐらいだね

328 :
個数でw

329 :
>>327
Linuxはドライバ以外が結合してるって言ってるのに、

Linuxのドライバは結合されてないという証拠持ってきて
何をしたいの?

330 :
>>328
分割度合いの違いに関する客観的な根拠が他にあるなら具体的に示してね

>>329
何が言いたいの?

あのLinuxのモジュールって、例えば、kernel/fs以下にはxfs.koとかfat.koとかvfat.koとか
普通にファイルシステム関係のコードが分割されて存在しているんだけど

331 :
何が言いたいの?
Linuxはモノリシックをすてマイクロカーネルになった
NTを真似たのです。ってことかなぁw

332 :
利便性と速度で結局どっちもハイブリッドにないましたちゃんちゃん
これだけのことだろ?何長々と揉めてんの?

333 :
コンピュータの性能が十分に高ければ
マイクロカーネルの方が良いという話

334 :
サブシステム毎の固有ハンドルが返って
くるマイクロカーネルの方が不便だよ

335 :
特権モードで動作するOSの機能を分割してモジュール化するなんて50年以上前の
メインフレームの時代からある機能だしMSDOSだってそうだよ

> カーネルとドライバが分離されていれば
> マイクロカーネルになる

この定義だとNTだけでなくMSDOSもWindows 9xもFreeBSDもSolarisも全部マイクロ
カーネルになる

特にWindows 9xなんて単一のバイナリのカーネルがあるんじゃなくてvmouse.vxdや
vkb.vxd、vwin32.vxd等特権モードで動作する複数のvxdでカーネルが構成されているから、
この定義だとWindows 9xの方がNTよりマイクロカーネル的なOSになる

バカじゃないの

336 :
今となっては、ドライバー付与する度に
カーネルコンパイルするOS(ex.Solaris1)
とかの方がマイナーですね

337 :
はいはいモノシリックカーネルモノシリックカーネル

338 :
自前でカーネルをビルドする前提の話だけど、組み込むのとモジュールにするのでパフォーマンスに差って出るのかな

339 :
セグメント超えをする時にオーバーヘッド
はあるでしょうが、特権超えの方が大きいから
無視しても良いんじゃない?

340 :
windowsのコマンドとパイプでつなぐときに改行コード変換するオプションとかあります?
sed噛ましたりじゃなく

341 :
パイプというのはバイナリデータを含むデータを無変換で渡すものです。
そうじゃないと、curlで取ってきたtar.gzをローカルに保存せずに展開なんてできないでしょ

342 :
別に常に変換してほしいなんて言ってないんだけど

343 :
>>342
だからパイプやリダイレクトは基本的な設計思想として
「変換は一切しないものなんです」ってこと
これはUnixの頃からそういう思想だから

変換したいなら何らかのコマンドをフィルタとして間に入れるだけでしょ

344 :
dos2unixは?

345 :
>>343
間にwsl.exe入るじゃん
そいつに変換するオプションぐらいあったって罰は当たらないんじゃないの

346 :
入れる必要ないけど?

347 :
>>345
wsl.exeのオプションにしたら、常に変換する指定しかできないじゃん

348 :
パイプでtrやsed噛ませて変換してからさらにパイプすればいいだけだよな
何を気にしてるのかよく分からん

349 :
UNIXの思想をわかってない。
単純なコマンドを組み合わせって大きな仕事をするものだ

350 :
これに関連して色々試してみたら変な現象見つけた。
/mnt/c/Windows/System32/PING.EXE
/mnt/c/Windows/System32/PING.EXE|cat
この2つで出力結果が違う。出力は対象指定してないってヘルプが出るんだけど、cat通すと英語になる。
パイプじゃなくてファイルにリダイレクトしても同じ。
これ既出?ググったけど、WSL環境を日本語化するってページがノイズになって情報が出てこない。

ついでに他に試した結果。
英 語: /mnt/c/Windows/System32/PING.EXE>test.txt
日本語: (/mnt/c/Windows/System32/PING.EXE)
英 語: (/mnt/c/Windows/System32/PING.EXE)|cat
英 語: echo "$(/mnt/c/Windows/System32/PING.EXE)"
日本語: while true;do /mnt/c/Windows/System32/PING.EXE;break;done
英 語: echo|while read dummy;do /mnt/c/Windows/System32/PING.EXE;done
英 語: echo|/mnt/c/Windows/System32/PING.EXE
英 語: /mnt/c/Windows/System32/PING.EXE</dev/null
日本語: echo;/mnt/c/Windows/System32/PING.EXE

351 :
しらんけどコードページが変わってるとかじゃねーの?

352 :
>>350
/mnt/c/Windows/System32/PING.EXE
そのままCP932で出力されるので、コンソールはchcp 932の状態になる→UI言語は日本語

/mnt/c/Windows/System32/PING.EXE|cat
パイプを挟むとUTF-8で出力されるので、コンソールはchcp 65001の状態になる→UI言語は英語

ということだと思う。

353 :
ちと違うな

通常はコンソールに表示する段階でUTF-8(CP65001)に変換される
PING.EXEはCP932の状態で実行→UI言語は日本語

パイプやリダイレクトを通す場合は変換されてはまずいので
PING.EXEを最初からUTF-8(CP65001)の状態で実行→UI言語は英語

こんな感じか?

354 :
>>346
まじか
どうやんの?

>>349
それ誰か言ってくるだろうと思ってた
でもWindowsやん

355 :
>>337
モノリスって言ってから書くこと

356 :
物知りっ苦

357 :
その零度バルブ
行く津島神社

358 :
桃尻っ娘喰う寝る

359 :
マウント乞食合戦不毛

360 :
WSLのbash上で「ping /?」と入力するとなぜか文字化けしない日本語ヘルプが表示されるんだが、
「ping /? | less」や「ping /? > aaa.txt」などのように|や>で出力をパイプでつなぐと英語表示になる。

361 :
>>359
「どうぞ、この哀れなわたくしにfuse_mountのおめぐみぉぉ…」
「なにを言う!おまえは職業乞食だろ!だんなぁ、fuse_mountは本当に憐れなこっちにめぐんでくだせぇ」

362 :
DOKANで我慢しろや

363 :
    (⌒⌒)
     ii!i!i   ドッカーン!
    ノ~~~\
,,,,,,,/`・ω・´ \,,,,,,,,,,

364 :
WSL1 と WSL2 はどちらがよ

365 :
insider build 18980でOS起動不可になっちゃったわ

366 :
sudo codeした時に、codeコマンドがないって言われるのはどうしたらいいんだろ
そもそもWSL内でcodeコマンドとか打った時って、どういう仕組みでWindows側のVSCodeが起動するんだぜ?

367 :
>>366
パスが通ってない
そもそもインストールできていない
wsl側からでもwindowsアプリは普通に実行できる

368 :
あーsudoしたら実行できないってこと?
https://dev.classmethod.jp/node-js/vscode-sudo-debug/

369 :
code.exeなんじゃない?

WSLからWinアプリが動くのはパスが通ってるのとbinfmtの会わせ技だったかと

370 :
sudo -E だろ

371 :
せめてLinuxの起動の仕組みぐらいは理解してほしいね

372 :
>>370
違った。スマン。

373 :
すまん、sudo "$PATH"とか無駄なことして、パスが通ってるつもりになってたわ

374 :
>>209
× Windows では、fork が無い
○ Windows の Ruby では、fork が無い

375 :
>>286
↓の範囲なら特に悩みは無いけど。
https://docs.microsoft.com/en-us/windows-server/virtualization/hyper-v/supported-freebsd-virtual-machines-on-hyper-v

376 :
どううまくいかないのか書かないのかな?
インストールできても初回の起動に失敗するとか
仮想NICが認識されないとか

377 :
動かない、動かない、とにかく動かない!
俺様が間違ってるわけないんだからM$が糞に決まってる!
M$M$M$!!!!

378 :
妹と一緒で設定が甘いと不味いんじゃね?

379 :
脳内設定の妹かー、設定はちゃんと作り込まないとな

380 :
WSLって、forkとファイルアクセスが遅いだけで実行速度自体が遅いわけでもないんだな
遅かったシェルスクリプトをbash互換からzshビルトイン使ってfork減らすようにして、ディスクアクセスもキャッシュするようにしたらそこそこ速くなった
そこまでするなら適当なLL使った方が良い気がするけどw

>>378,379
Linuxと同じ程度には仮想化環境にも対応してるから、妹と違って設定適当でも美味しく頂けるw

381 :
scoop使ってruby入れたら上手くいかなかったけどWSLでrbenv使ってruby入れたら上手くいった
WSLはいいものだと思う

382 :
>>380
具体的にどんな変更をしましたか?
zshで遅くて困っています。

383 :
>>382
具体的にって言ってもやってる事が違うから、どれ位、参考になるか分からんぞ。長文
ビルトイン使う例として、
 dir=$(dirname $path);
 file=$(basename $path)
 ext=$(echo $path | sed -E 's/^.*\.([^\.]+)$/\1/g')
みたいにしてたのを
 dir=${path:h}
 file=${path:t}
 ext=${path:e}
にするとか

sedやtr使ってた所で正規表現なしでもいけるのは${%%}${:#}${//}とかで置き換えたり
大文字小文字変換とかも変数の展開フラグでできる
正規表現が必要な所は、1箇所にまとめた上で、パイプじゃなくて、;でつなぐとか
 ret=$(echo $base | sed -E 's/aaa/bbb/g;s/ccc/ddd/g;y/abc/ABC/')
パーツパーツでコピペで使いまわしにくくなるけど、forkは減らせる
文字列検索とかもgrepなしで変数展開フラグでいける

文字列のjoinでj:使うとか
 before=(a b c d)
 after="'"${(j:', ':)before}"'"
 echo $after # 'a', 'b', 'c', 'd'
他にも配列も検索とか、和差積とかも出来る

find使ってる所も結構ビルトインで行ける
 for zip in $(find . -name '*.zip');do 〜 ;done
  ↓
 for zip in **/*.zip;do 〜 ;done
GLOBSTARSHORTつけてたら**.zipでOK

続く

384 :
続き
変数名の局所化の為にサブシェル使う所も、zshなら無名関数でいける(forkしない)
local ret;
(){
 local tmp=$1 tmp2=$2
 〜なんか変数使って処理
 ret=$tmp3
} $base1 $base2

ビルトインとか配列検索や文字列置換とかはmanの14,15章に載ってる。これ流し読みして、ビルトインで行ける所を洗い出す。日本語は多分ない。
ttp://zsh.sourceforge.net/Doc/Release/index.html
情報量はドキュメントに比べると少ないけど参考になった日本語サイト
変数とかフラグとか:ttps://gist.github.com/sho-t/d9cdf8271b3de7c4238739e523490542
findを使わないファイル検索:ttps://qiita.com/mollifier/items/1c4a4930a89aa75e5ced
配列操作:ttps://qiita.com/mollifier/items/f897b3fddd2d10369333

コンパイルが有効な場合もある。これをファイルの頭に入れとくと更新時だけ自動でコンパイルする(勿論手動でやっても良い)
(){
 local srcFile
 for srcFile in ${1:h}/*.sh; do
  local zwc="$srcFile"'.zwc'
  if [ ! -e $zwc -o "$srcFile" -nt "$srcFile"'.zwc' ]; then
   zcompile "$srcFile"
  fi
 done
} $0
この場合ファイルを分割してsourceしてるから、for文で回してるけど、スクリプトが1つのファイルなら、forはいらない。単純に$0に.zwcつけたのだけやれば良い

ファイルのキャッシュは特殊な処理だから参考にはならんと思うから省略。一般的に使えるのは、>>で何度も書き込むんじゃなくて、変数に入れて一気に書き込むとか(データ量と搭載メモリによっては逆効果)
ファイルアクセスを細かくやるとウイルスチェックが異常に重いから、実行時はリアルタイム保護切った方が良い

結論。面倒。過去の資産を使いまわすのでなければLLでやった方が良い

385 :
結論の一行だけでよかった説
shell使わずにLLで書き直せばいい。それでもI/Oまわりで遅いんだけど。

386 :
そこまでやるともう別物だし
メンテも面倒になりそうだし
嬉しみが無い

387 :
100万プロセスとか起動するなら、Ruby でも使えば?

外部コマンドを呼ばなければ、1プロセスで済む

388 :
rubyで何が解決するのか

389 :
>>383
Ruby なら、こういう感じ

file_path = "tmp/a/b.tar.gz"

p File.dirname( file_path ) #=> "tmp/a"
p File.basename( file_path ) #=> "b.tar.gz"
p File.extname( file_path ) #=> ".gz"

390 :
単純な計算。
100万プロセスが本当なら、1プロセス256kbとして
1000000×256kb=256000000kb=250000MB
=244GBの主記憶が必要。
という事は、NUMA機がいるなぁw

設定を妹並には煮詰めないと

391 :
>>390
並行にとは言っていない

392 :
bashのサブプロセスもなかなか便利よ

393 :
>>391
ならruby使う必要無いな

布教活動止めれ

394 :
  /\___/\
/ /    ヽ ::: \
| (●), 、(●)、 |    / ̄ ̄ ̄ ̄ ̄ ̄ ̄
|  ,,ノ(、_, )ヽ、,,   |  < まーたはじまった
|   ,;‐=‐ヽ   .:::::|    \_______
\  `ニニ´  .:::/
/`ー‐--‐‐―´´\

395 :
shellにはxargsのPオプションを使って、容易に並列処理できるメリットはあるね。
マルチコアのCPUを有効利用できる。
https://qiita.com/hitode7456/items/6ba8e2d58f9b8db9de11#orgheadline2

396 :
WindowsPCを渡された・・・orz
WSLが入ってたのでXサバ入れてアプリだけでもと思った・・・
WSLから立ち上げたEclipseで日本語が入力できねぇ・・・
(-_-);
トイレで独り乾いた涙を流すおっさんが出来上がった。

ググる先生、トイレで大活躍w

397 :
Windows版Eclipseを使えばいいだろ
GUIアプリに関してはほぼ全てWindows版があると思っていい

398 :
Linuxがないと死んじゃうおじさんなんでしょ

399 :
そんなおじんさん、いるの?

400 :
ネットカフェのPCはWindowsなんだし、Windows使うのに慣れてないと仕事もできない。
俺の自宅はMacしかないけど、VMのWindowsでWSLをいじってるわ。

401 :
>>399
>>396

402 :
windowsしか使えなくてLinuxちんぷんかんぷんだと恥ずかしいけど
Linux知っててwindows使えないのはもっとはずかしい

403 :
ネットカフェじゃなきゃ仕事出来ないって相当怪しい仕事だ

404 :
なんでそうなるんだ、そんなところで仕事しねえよw
ネットカフェのPCでLinuxのところなんてないだろ。
あったら逆に行ってみたい。

405 :
いや、VMのlinux入れて仕事してたぞ俺

406 :
gradleがあれば十分。mavenでも良いけど。

407 :
WSLのLinuxからとある危険なコマンドを実行してしまった人の末路…
https://togetter.com/li/1412984

408 :
/mnc/c でCドライブが見えてるからごっそり消されたのか?

409 :
わざわざ--no-preserve-rootオプション付けないと実行できないようにしてあるし、
/mnt/c/以下から削除されるから、他のドライブ削除する前にCtrl+Cで止められただろうし
なにしたかったんだか

betaの頃からの古いネタ
https://www.youtube.com/watch?v=zG_2OeJDCYU

410 :
sudo rm -rf /は後藤大地もやらかしたっぽいなw
じゃないと記事にしないだろ。

411 :
rm -rf / の問題点は意図して実行したとき以外に
rm -rf /hogehoge みたいな実行するつもりが
hogehoge に値が入っていなかったときが問題ってのが大きい
バグで大変なことになるから普通は / を書かない習慣にする
それでも問題が無いってことはない

412 :
rm -rf /*だと警告なしなんだよなぁ
./*のつもりでミスった奴はいたな。

413 :
dd if=/dev/zero of=/mnt/ の次に記述する
単語を記載しなさい

回答時間 5秒

414 :
c/Users/413/*

415 :
>>412
なんでわざわざ./付けようとしたんだそいつ

416 :
>>415
/以外にいる時にカレント以下を消したかったのを誤爆したんやろ

417 :
>>416
カレント以下なら*だけでいいだろうと

418 :
Ruby の、FileUtils モジュールなら、DryRun オプションで、

実際には実行せずに、どうなるのか分かるので安全!

419 :
それは何の解決にもなってない
発達障害なのかな

420 :
この世が終わる時も似たような感じなのかな。

421 :
わりとどうでもいいけど
*

./*
は意味が違うと習ったことがある
理由は忘れた

422 :
.で始まるファイルを含むか否か

423 :
>>422
ハズレ

424 :
touch -- -i
rm *

425 :
>>424
例だと、*が展開されて、rm -iになるからか
詳しい解説サンクス!

426 :
やり方今から調べるけどcドライブのマウント外しとこ...
そしてデータ入ってるドライブを飛ばすと

427 :
rm コマンドを置き換えるのはどう?

https://qiita.com/SUZUKI_Masaya/items/3148b5f1d9fa9fdb3b51

428 :
rm を同名コマンドに置き換えているといつもと違うユーザーで作業するとき
Enter 押した後で素の rm を実行したことに気付くのはよくある話
そういう時に root になってたりするのもマーフィーの
一度経験すると危険なコマンドを同名の別物に置き換えるのはやらなくなるが

429 :
alias ls='rm'

430 :
>>427
$ alias rm=echo

$ rm --version
--version

$ sudo rm --version
rm (GNU coreutils) 8.28
Copyright (C) 2017 Free Software Foundation, Inc.
ライセンス GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

作者 Paul Rubin、 David MacKenzie、 Richard M. Stallman、
および Jim Meyering。

431 :
Windows Subsystem for Linux 2のNTFSソフトリンク対応
https://ascii.jp/elem/000/001/951/1951574/

432 :
>>431
>Windows Insider ProgramのPreview Build 18980より前では、WSL2は、NTFSのソフトリンクを解釈することができなかった。
最初の三単語しか理解できなかったのか?
https://docs.microsoft.com/en-us/windows/wsl/release-notes#build-18980
>Fix reading symlinks that deny FILE_READ_DATA. This includes all the symlinks Windows creates for backwards compatibility such as "C:\Document and Settings" and a bunch of symlinks in the user profile directory
https://imgur.com/ZWr0hf1

>なお、WSL2側からNTFS上でのシンボリックリンクの作成はまだ未完成で、なぜかジャンクションを作ってしまう。WSL1では、正しくNTFSシンボリックリンクを作っていたので、今後のアップデートで対応すると思われる。
NTFSシンボリックリンクの作成条件忘れてんじゃないのか?
https://docs.microsoft.com/en-us/windows/wsl/release-notes#build-17046
>DrvFs creates NT symlinks when certain conditions are met. [GH 353, 1475, 2602]
>The link target must be relative, must not cross any mount points or symlinks, and must exist.
>The user must have SE_CREATE_SYMBOLIC_LINK_PRIVILEGE (this normally requires you to launch wsl.exe elevated), unless Developer Mode is turned on.
>In all other situations, DrvFs still creates WSL symlinks.
https://imgur.com/ngcY0Is

433 :
>>432 の画像直リンク
https://i.imgur.com/ZWr0hf1.png
https://i.imgur.com/ngcY0Is.png

434 :
>>432
何が言いたいのか全くわからん。

それはそれとして、WSL使うぐらいなら仮想マシンでいいと言っていたやつがいたが、
シンボリックリンクの事とかも考えると、WSL1と同等のものを仮想マシンで作ろうとすれば
それはそれで大変だっていうのがわかるね。
仮想マシン自体は作れるがWindowsとの統合作業は細かい所がたくさんある

WSL2正式版いつ頃だろうか。

> NTFSシンボリックリンクの作成条件忘れてんじゃないのか?
あのさ、Linuxでシンボリックリンクを作成するときに使うコマンドはlnだってわかってる?
Linuxからcmdもmklinkもwslも使わないから。

435 :
>>434
ln使ってるのが見えないめくら

436 :
Windows 10のWSL環境を初期化してクリーンな状態に戻す
https://www.atmarkit.co.jp/ait/articles/1807/06/news028.html

437 :
>>436
その機能だけでも、ストアアプリになってよかったと思うわ

438 :
>>436
自分も最近これやったばかり。
なんでみんなWSLなのに rm -rf / の話なんかしてるんだろう?と思ってました。
あ、WSL2だとまだストアアプリになってないから?

439 :
WSL2もアプリ(インストーラー)は同じだぞ

440 :
>>439
あら、そうでしたか。WSL2触ったことないんで知りませんでした。
やっぱり適当なこと書いちゃいかんな…。

441 :
若干スレチだがX410が更新されてる
画像とHTMLがコピペできるようになったらしい

442 :
>>438
rm -rf / の話は、Cドライブは/mnt/c以下にデフォルトでマウントされていて
rmはマウント先も削除する。ってことに気づかなかったのが原因
rmにはマウント先を消さないように--one-file-systemというオプションが存在する。

隔離された環境だろ?なら消してもOKだなと勘違いしたのが愚か
仮想マシンを使っていても、Cドライブをマウントしていれば同じことになる。

443 :
【WSL 2互換性チェック】NTFSのシンボリックリンクやジャンクションは使い物になるのか?
https://www.atmarkit.co.jp/ait/articles/1910/11/news012.html

444 :
ログインしないと結論が見えないので、結論だけ書いておくよ。

> WSL2のNTFSリンク対応をテストする
> ・Windowsで作成したNTFS上の3種類のリンクを正しく扱える
> ・NTFS上にハードリンクを正しく作成できる(Win32側から正しくアクセスできる)
> ・NTFS上にLinuxシンボリックリンクを作成できるが、Win32側からはアクセスできない

>  これから考えると、現時点では、NTFS上のリンクに関しては、
> Win32側で作成し、Ext4に関してはWSL 2側でそれぞれ作成したほうがよいと考えられる。
> 最終的にWSL 1と同じ実装になるとすれば、NTFS上のリンクに関してはどちらで行っても構わないだろう。

445 :
XP上でCygwin使ってたときのことを思い出したわ
Cygwinからln使ったリンクはWin32からは認識できないので、
Win32側からジャンクション張って、改めてCygwinでマウントしたりしてたな
たしか、senable.exeを使ったシンボリック・リンクの方はダメだった

446 :
WSLからUSBメモリにddできますか

447 :
できない

448 :
そんなことするくらいだったら普通にLinux使えよ

449 :
普通にWindowsを使うよw

450 :
>>447
ありがとう
Cygwin使います

451 :
いや、Cygwinでもできないんだがw

452 :
ネタにマジレスすんなって・・・
台風も過ぎ去り、貴重な休日を何だと思ってる?

453 :
>>446
DD for Windows でいいじゃん

454 :
>>451
Cygwinなら昔から問題なくできますよ・・・
cygwin dd
などで検索してみてください・・・

455 :
>>453
これな

WSLからwindows上のファイル作れるんだから
windowsからdd出来れば他に何もいらない

456 :
>>453
よくねーよ
ddって名前付いてるけど全く別物だろ

457 :
困ってない
http://www.chrysocome.net/dd

458 :
dd for windowsならシリコンリナックスの黄緑のGUIのソフトよく使ってたな

459 :
dcfldd 何故かこれを使ってる

460 :
ubuntu に sudo のアップデート来たね。早いね。

461 :
だいたいこういうのは公開前にdistroのセキュリティ担当に連絡がいってる
足並みが揃ったところで公開とアップデート配信

462 :
どんなルートで話回ってるんだろな

463 :
そういうのはメールでくるよ今回のはしらないけど、セキュリティは期限決まってるからオープンになるでしょ。

464 :
WSL2を使ってみてる人に聞きたいんだけど、
WSL2の環境からnotepad.exeを起動して、
WSL2の中のファイルを編集保存とかできるの?

465 :
>>464
出来る
ただ、書き込み権のないファイルは名前を付けて保存のダイアログになる

Win10.19008.1

466 :
へー、すごいな。ファイルは9pプロトコルを使って
お互いにアクセスしてるんだろうってのはわかった。

WSLの仮想マシンの中をネットワークフォルダみたいに
\\wsl$(サーバー)\Ubuntu\\etc\なんたら としてnotepad.exeは読み書きするんだろう。
これは良いとして、プログラムの実行が謎やな。

WSL側でnotepad.exeを実行すると、カスタマイズされたLinuxカーネルがそれを検知して
WSLではなくWindows側のnotepad.exeを起動するということか
CLIだと標準入出力も転送してるってことかな

467 :
bash単体で正規表現で検索だの置換もできるようになってずいぶん速くなったと喜んでたんだが、
同じようなファイルとかディレクトリの名前をいじくるプログラムをC#で書いてみた
・・・・・
あまりの実行速度の速さに目が点になった
ネイティブUnixでもbashじゃこんな速度でないわ。
コマンドちまちまパイプでつないでいかなくても、
.netライブラリてOS操作に必要なものすべてそろってるんだね・・・

468 :
その比較は変だと思うがPowerShellがもうちょっとUnixよりなら良いのになとは思うね

469 :
>>468
変というかシェルスクリプト相当のことがC#+VSならささっと手軽に書けるんだわ。

PowerShellにはまっていたこともあるが、
こいつはちょっと複雑になると結局.netのライブラリをコールする羽目になるんだよ。
.netをコールするなら複素数だって扱える
じゃ、結局はじめからC#で書いてしまえってことになる。というかなった。
Win7時代あたりのPSは括弧"[]"の扱いがバグってて、
PSからコマンドプロンプト側で処理させるというお笑いバグ回避で乗り切る羽目になったり、
PSいじるぐらいならC#をVS上でコーディングしたほうが
よほどすっきり、手軽に強力なソフトが書けるというのがPSに対する俺の結論
結局bashに回帰した

UnixよりのPSというより、unixコマンドをあらかじめパイプでつないどいてくれたような、
やりたいことが一発処理できる.netライブラリ相当がいいんじゃないの?

.net ・・・君の求めるすべてがそこにある

470 :
>>467
実行速度に大きな違いがあるのは事実だが、
それに驚いてる程度なら、あんたの書き方が悪いだけだよ

ちゃんと理解してる人は、どこがどういう理由でどれくら
遅くなるかわかってるから、驚かんのよ。

驚いてる → 書き方が悪い → 遅いのは書き方が悪いだけ
というよくある結論にたどり着くだろう

471 :
> やりたいことが一発処理できる.netライブラリ相当がいいんじゃないの?

Unixのコマンド = 関数だから、
.netの関数を組み合わせてなにかやってるなら、
それは「一発処理」ではないよw

472 :
>>470
そいつのプログラマキャリア開始時からC#が存在して、bashと比較できる状態ならわかるんだろうよ。
残念ながらこっちはC#が登場するはるか以前からbashスクリプト書いてるんだわwww
そいつをあらためてC#書いてみようって気になったわけさ。
いいなぁ、プログラム開始時からC#がそろっててww

>>471
単なるへりくつだなwww
.namespace mknamedir {
class Program {
static void Main( string[] args ) {

Yaritaikoto

}

473 :
あ途中で送信しちゃったが

.namespace mknamedir {
class Program {
static void Main( string[] args ) {
System.Yaritaikoto();
}

じゃないと一発処理ではないてことだろ?
まともに会話にならんなお前とはwww

474 :
>>470
あんま会話しても実りもなさそうだが

>ちゃんと理解してる人は、どこがどういう理由でどれくら
>遅くなるかわかってるから、驚かんのよ。

じゃさ、
どういうプログラムならならbashがよくて、
どれならC#がいいのか
明確な基準示せるよな。当然www
C#以前から活躍してきたperlとの境界も示してもらおうか、
理解してるってことは明確な基準を持ってるんだろうからなwww

475 :
屁理屈でもなくても、お前の言う
bashでは一発勝負ではなく、
C#では一発勝負っていうのは
どんなコードなんだって話なんだが?

476 :
何を文句言ってるのか知らんが、
まずはお前が、bashで遅くなったってコードでも晒せば?
見れば問題点ぐらいわかるだろ。
お前のコードの問題点は、お前のコードを見ないとわからん

477 :
Ruby が良い

bash が遅いのは、for ループ内に、多くのコマンド(プロセス)を書いている場合、
そのプロセスの起動が遅い
例えば、10万プロセスを起動して遅くなるとか

ループはパイプじゃないから、並列処理できない。
それに、forループよりも、while の方が速い

一方、Ruby・C# などは、プログラム内でコマンドを起動しなかったら、1プロセスだから

478 :
いつもの煽り合いの流れ定期

479 :
最初から実行速度に大きな違いがあるって書いてあるように
まともなコード同士を比べた場合C#のほうが速いんだよ。
起動時間はC#は遅いけど。

ただね。そんな実行しなくてもわかるようなことに
驚いてるレベルだと、素人くせーなとしか思えんわけ

480 :
.NETがライブラリ提供の仕組みとして割と良いもんだというのはあるね。
ただ、あの抽象化は問題発生時に手が届きにくいところがあって開発者としては微妙な気持ちにはなるね。
あとPowerShellはDLL呼べて便利だね。
でも単に速く計算がしたいならbashやらzshとpythonの組み合わせがどこでも使えていいと思うよ。使える共有ライブラリが段違いだよ。

481 :
>>478
かみあってないよな

わざと外して絡むのを楽しんでるとしか思えない

争いは同じレベルのもの同士でしか成立しない

482 :
適材適所という言葉を知らんからでしょうな

483 :
ここは、単純に速いなーと感じたことも書けないインターネッツですか?

484 :
実生活でも一言多いって言われるだろ

485 :
そんなに速いのが好きなら全部アセンブラで書いてろよ
などと極端な話を投入してみる

486 :
bashが遅いという感じることは多々あるが、.NETが特別速いと思ったことはない

487 :
最近はボトルネックを感じたらRustでかいてるわ。クロスコンパイル最強。
log解析したいときとか、サービス書くときや実行スクリプト書く時にbash使うだけで、まともな処理を書くときには環境揃えて書く。
OS依存処理になるのが目に見えて分かってるのに無駄なコードなんか書く気も起きない。

488 :
>>477
Rubyは1プロセスって何だそれ。

489 :
お前らは.net言語でどんなのを開発しているんだ?

490 :
\\wsl$\Ubuntu-18.04\etc 以下のファイルって書き込みできないのかな?
理由は権限がないって何となく分かるけど、sudoみたいなことできないの?

491 :
>>490
確かWindowsの管理者権限でも無理だったよね

492 :
>>491
仕組み上、9pプロトコル経由のネットワーク共有扱いだからなぁ
権限的にファイルを編集することはできるのにプロトコル経由だと拒否されちゃう

つーかそもそもWindowsでは誰の権限でアクセスしようとしてるんだろう?
最初に作ったユーザーなのかな?9pプロトコルが特定のユーザで
アクセスすることとなっていれば、まあ無理だよね

493 :
wsl$のアクセスはどっかにユーザのマッピングを持ってて、それ固定になってるみたいだね

・インストールの時にデフォルトユーザ作るけどCtrl+Cで落とすとrootになる、その環境だとwsl$はroot
・デフォルトユーザを削除するとwsl$もアクセス出来なくなる

どこに持ってるんだろ?

494 :
あー
ubuntuコマンドでデフォルトユーザ変えりゃいいのか

…これ、Ubuntu幾つも入れてたらどう指定するんだ?

495 :
漏れは、WSL, Ubuntu 16.04 で、
Ruby で、すべてのパッケージの更新を書いている

ただし、apt を呼ぶなと言われる。
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

#!/usr/bin/ruby

# sudo のパスワードを自動入力する
puts `echo パスワード | sudo -S apt-get update`

# アップグレードできるパッケージを、一覧表示する
puts `apt list --upgradable`

puts `sudo apt-get upgrade -y`

496 :
>>495
sudoでNOPASSWORD設定しろよ

497 :
>>493
確かに ubuntu config --default-user root ってやったら
ubuntu の /etc 以下に書き込めたよ

ただし wslconfig /t ubuntu で一旦ディストリを停止しなければいけなかったけど
sudoぐらい気軽には使えないね。

> …これ、Ubuntu幾つも入れてたらどう指定するんだ?
wslconfig /l で入れてるディストリが全て表示される。
複数入れていた場合名前が違ってると思う。俺はUbuntuを二つ入れてるから
Ubuntu-18.04 (既定)
Ubuntu
と表示された。

この場合、下の方がubuntuコマンドで、上の方はubuntu1804 コマンド

498 :
>>487
Rust良いよね
ワイクソザコナメクジやからコンパイラさんに「テメーここ安全じゃねぇかもしんねーぞ!!!」って切れてもらえるのは非常にありがたい

499 :
>>498

500 :
>>498
ライブラリもnull安全だしね、バイナリはいてくれるのはwslでもlinuxでもありがたい。それはそうと誤爆すまん。

501 :
>>498

502 :
Hyper-VにInsider Previewを入れてWSL2を試してみた。
最初、Hyper-V on Hyper-Vが有効になって無くて
WSL2に変換できなかったが、設定するだけであっさり動いた。

これ、すごいね。仮想マシンとは思えないぐらいさくっと起動する。
まあLinuxカーネルは常に起動してる状態で
コンテナ起動してるだけだから当たり前っちゃー当たり前なんだけど
ただの仮想マシンと思ったらぜんぜん違う

503 :
>>431-432
確認した。その記事は完全に間違い。

開発者モード(おそらくSE_CREATE_SYMBOLIC_LINK_PRIVILEGE )の有無で確かに変わる。
WSL1とWSL2で挙動は全く同じ。

開発者モードが無効の場合、WSLからlnするとシンボリックリンクは作成されるが、
Windowsから見ると、ファイルもディレクトリもどちらもジャンクションになってる。
ただしWindowsから正しく扱えない特殊なジャンクション

開発者モードが有効の場合、WSLからシンボリックリンクを作成すると
Windowsからはどちらもシンボリックリンクになってる。
正確にはdirしたときにファイルにはSYMLINK、ディレクトリにはSYMLINKDと表示されてる

一応記事訂正の連絡はしておいたが、さてちゃんとするんだろうか?

504 :
訂正依頼したのはこっちだった。書いてる人は同じみたいだが
https://www.atmarkit.co.jp/ait/articles/1910/11/news012.html

505 :
Memory Reclaim in the Windows Subsystem for Linux 2
https://devblogs.microsoft.com/commandline/memory-reclaim-in-the-windows-subsystem-for-linux-2/

506 :
>>505
すごいじゃん
hyperVでもこれくらいやって欲しいもんだけど

507 :
hyper-vのメモリの扱いはほんとに改善してほしいわ
10年も放置しやがって

508 :
>>505
はー、すげー。これでもうWSL2を使わない理由なくなったんじゃね?
(潜在的にはWSL1の方がパフォーマンスを上げられると思ってるけど)

想像はしたが、カーネルにパッチを当てることで、Windowsとメモリを
共有してるって感じみたいね

>>507
本質的には仮想マシンが使ってるメモリ領域は、どこが使われているか
ホストから知ることができないので、カーネルにパッチ当て無い限り不可能だと思う。
0で埋められていたら、使われてないとみなすか、ゲストOS用ドライバで通信するとか

509 :
カーネルパッチはオープンソースじゃないの?VMにただ当てるだけで住むならhyper-vにもみ込みあるんじゃね?

510 :
>>509
本家Linuxカーネルにパッチが組み込まれるなら、
HyperVで動かすLinuxに限ってはその恩恵があるかもしれんね。

511 :
Hyper-Vでもゲストのバルーンドライバは結構前から実装されてたと思ったが?
Linux用は無かったとかWSL用にチューニングしたとかなんかな

512 :
ドライバでやるよりももっと効率よくメモリ管理できるようになったんじゃないかな?
Linuxカーネルが持ってるメモリ割り当てシステムコールそのものをWindowsに転送してる(といいなぁw)

513 :
ページキャッシュとかどうやって管理してるんだろな?

514 :
>>509
> カーネルパッチはオープンソースじゃないの?

https://github.com/microsoft/WSL2-Linux-Kernel/tree/master/LICENSES

515 :
WSLをつい先日初めて使ってみたんだが、思った以上に便利でビビった
どうしても仕事上Windows必須だけど、Linuxコマンドが使いたくなる時あるからな

516 :
その気になればLinuxデスクトップアプリも動くからな。

517 :
Windows Subsystem for Linux に関してよく寄せられる質問
https://docs.microsoft.com/ja-jp/windows/wsl/faq

WSL の対象ユーザーは誰ですか。

これは、主に開発者向けのツールです。特に Web 開発者と、オープン ソース プロジェクトで作業している開発者が対象です。
これにより、Bash、一般的な Linux ツール (sed、 awk など)、および多くの Linux ファースト ツール (Ruby、Python など) を使用する必要があるユーザーは、Windows でそれらのツールチェーンを使用できます。

WSL ですべての Linux アプリを実行できますか。

いいえ。 WSL は、Bash およびコア Linux コマンド ライン ツールを必要とするユーザーが Windows 上でそれらを実行できるようにすることを目的としたツールです。
WSL は、GUI デスクトップやアプリケーション (例: Gnome、KDE など) をサポートすることを目的としていません。

518 :
bash が使いたいだけなら
git for windows に入ってた git bash で間に合う
殆どこれで用が済む

519 :
ファイル共有キューピー。

520 :
WindowsはLinuxソフトも使えるようになったので、両方使えるWindowsにしとくのが吉。
ではないか?

521 :
busyboxの日本語処理がまともなら、これで足りるんだけどな

522 :
>>521
日本語処理関係でなにか困ることあった?

523 :
>>522
ls で典型的なSJISダメ文字が消えちゃう(対処方法なし)ので致命的だなぁ
あと、sedやawkが、\:0x5cを付加しないとSJISダメ文字の処理ができない

524 :
ん? Windows版busyboxの話?このスレWSLのスレだぞ?
busyboxといったらUbuntuのbusyboxの話だと思ったが

WindowsのファイルシステムはUnicode(UTF-16)だが
WSLから見た時は適切にUTF-8に変換されてるから
SJISなんか何も関係ないはずだが

sedやawk、つまりファイルの中身に関してはいい加減UTF-8に統一しとけ
日本語しか使えないSJISを使う必要はない

525 :
>>524
>>517 からの流れで、
WSLを使う理由がGNU Core Utilitiesをウィンドウズでと考えた場合、
WSLより簡単な代替のひとつとしてbusyboxを上げることもダメなんかね?

配布されてるWindowsバイナリはビルド時に対応オプションついてないんだよ。
ファイルについては、コンバートすりゃいいが、
ファイル名については、リネームしたりしてダメ文字日本語をわざわざ変更しなきゃならない。
ツールを使いたいだけなのに、自分でビルドが必要だったり、SJIS使えないというのは
普通のユーザーには酷だろ。
結果として、残念だがbusyboxを使わないという選択になる。

lsの表示については試してみなよ、インストール必要ないから。

526 :
完全にLinux要らなくなったよな。

527 :
鯖用途でも実運用の為の検証やら総合試験やらでしか必要なくなったしな

528 :
WSL2は20H1で実装されるのかな?

529 :
>>526
WSL自体がLinuxなんだけど?
Windows上でLinux使ってるだけのこと

530 :
やっぱりWSLでもUbuntu使ってる人が多いのかな?

531 :
>>525
落ち着いて人の話を聞きなさい

1. ここはWSLのスレ
2. busyboxはWSL(Ubuntu)版
3. busyboxを実行するのもWSL上

ここはそういう前提のスレですよ?

その前提以外でみんな話をしてるんだから
それ以外ならお前に説明する義務がある

ぐだぐだいってないで説明しましょう
何の話をしてるんだ?

532 :
>>529
今のWSLはWindowsの上でLinuxを使わずに
Linuxアプリを動かせるようにしたものだからLinuxを使ってるとは言えない。

WSL2であれば、Linuxを使ってると言えるが

533 :
>>525
あと、busyboxはGNU Core Utilsとは全く関係ない
GNU Core Utilsを使わずに、最小限のコマンドを詰め込んだもので
組み込み向け用の道具なんだから機能が少ないのはあえてそうしてる。

可能な限り機能削減を目指してるものに、便利さを求めるなって話

結論としては、WSLを使わない方法じゃなくて、WSLを使えばいい
WSLのスレなんだから

534 :
>>532
WSLはカーネルが特殊というだけでLinuxそのもの
そしてWSLで使ってるLinuxディストリもカーネルが違うだけで本物のLinuxディストリ
WSLで動作してるUbuntuはUbuntuそのもの

535 :
OSとしてのLinuxはカーネルだけじゃない
LinuxディストリはOSとして機能するようにいろいろなソフトウェアを組み立てたもので
WSLはそれを使ってる
だから本物のLinux
Linuxを利用してるのにLinuxは不要とか意味不明

536 :
WSL1はLinuxカーネルを偽装してるだけ
WSL2はLinuxカーネルそのもの
カーネル以外は本物のLinux
WSLのUbuntuはカーネルが違うだけで本物のUbuntu

537 :
同じ振る舞いするソフトは同じもんだと思うぞ

538 :
>>534
WSLで使えるディストリにはDebianがあるんだが、

そのDebianにはこういう物がある。

Debian GNU/kFreeBSD
https://www.debian.org/ports/kfreebsd-gnu/index.ja.html
> Debian GNU/kFreeBSD は FreeBSD のカーネル上に GNU C library を
> 使用した GNU ユーザランドと普通の Debian パッケージ群で構成される移植版です。

さて、このDebianはLinuxのDebianとほとんど同じように使えるわけだが、
Linuxカーネルの代わりにFreeBSDを使ってる。
これははたしてLinuxであろうか?

違うよね? Linuxカーネルを使ってないんだからこれはFreeBSDであってLinuxではない
WSLもそれと同じ。Linuxカーネルと互換性をもたせたWindowsを使ってるので
これはLinuxではない。あえて言うなら、Debian GNU/NT と言うべきだろう

WSLはLinux互換ではあるがLinuxではないんだよ

539 :
>>538
debianにlinuxなんて意味はないぞ

540 :
>>538
そんなの言葉遊びだろ
でもDebianではあるわけだ
ならWSLではLinuxと言わずにUbuntuやDebian、OpenSuseとか言えばいいのか?

541 :
まあ、ほとんどの人が使うであろうWSL2はLinuxそのものだけどな

542 :
>>538
WSLがLinuxじゃないならLinux板にスレ立てるなよw
Linux板に立ててるだけでLinuxだと思って使ってる証拠
過疎ってるUNIX板にでも立てとけ

543 :
Debian GNU/kFreeBSDのスレはUNIX板に立ってるぞ

Debian GNU/kFreeBSD
http://mevius.2ch.sc/test/read.cgi/unix/1131675435/

544 :
WSLでGNUソフトを使うのが今風。

545 :
そういう話をするならLinuxじゃなくてGNU/Linuxと言えと昔から言われてるだろ

546 :
グヌーではなくグニュー

547 :
>>546
グは発音しないんじゃないの?

548 :
どちらでもいい
GNOMEもおなじ

549 :
>>535-537
WSLとcygwinの違いは?

550 :
cygwinはどちらかというとPOSIX互換インタフェースです

551 :
>>547
ここ https://www.gnu.org/home.en.html

GNU” is pronounced g'noo, as one syllable, like saying “grew” but replacing the r with n.
こうかいてある。ので、
・gは読む
・g'nooをみると「ぐぬー」、grewのようにだと「ぐにゅー」、と読みそう

552 :
普通に考えてアイコンがヌーだからな

553 :
昔、雑誌に載ってたストールマンを招いての座談会の記事によると

gnuはヌー https://ja.wikipedia.org/wiki/%E3%83%8C%E3%83%BC
gは発音する
発音しないとgnu systemがnew systemと聞こえて紛らわしいから

ということだった

554 :
そろそろXの動く画面は搭載された?

555 :
これ、LinuxがいらないっていうよりMacがいらないって話だと思う
Linuxはどちらにしろ実機で使うんだし。

WindowsにLinuxのパワーが合わされば、
UnixであるMacをらくらく超えちゃうみたいな
実際便利だしね

556 :
>>554
お前の言うXとは、Xで動くアプリの画面なのか?
それともWindowsと競合するデスクトップ環境(アプリの外側)の画面なのか?

557 :
XもだけどWin側でPulse鯖立てないと音も出せないよな

558 :
そりゃまあ、WindowsでLinuxが動くという話ではなくて、
Windows自体がLinuxカーネル相当の機能を備えただけで
Linuxを使わずにWindowsでLinuxアプリが動いてる状態ですから
当然では?

559 :
マルチメディア系は普通にLinux使えよ。
もしくはHyper-Vに突っ込む。

560 :
サービス関連周りのコマンドが通らなかったり、本物と差がある部分を列挙して欲しいな
それと結構頻繁に初期設定が変わっていて、一度できたことが他のPCでつまずくとかそう言うのやめてほしい

561 :
>>560
何度も言われてるようにWSLはLinuxじゃなくてLinuxアプリが動くものですから
つまりね、Linuxが起動してターミナルを開いた状態と
Windowsが起動して(WSLの)ターミナルが開いた状態。
このターミナルが開いた状態から両者は同じになるの
WSLはターミナルだよ。Linuxアプリが動くターミナル

562 :
> それと結構頻繁に初期設定が変わって
なんのことかわからない、WSLとは全く関係ないはなしだろ

563 :
またWSL1なのか2なのかはっきりさせずにレスバ突入

564 :
WSL2はまだリリースされてないんだから、今はデフォルトWSL1だろ
それはともかく仮想マシンにInsider Preview入れてるけど
WSL2はアーキテクチャが違うのにWSL1と同じように使えるね
あれもLinux "カーネル" を使ってるだけで、ディストリそのものではない。
「WSL2でUbuntuを使っている」と言ったとしても、Ubuntuのサービスが起動するわけじゃない。
Ubuntuの起動プロセスはすっ飛ばしてる。
(だからUbuntuを仮想マシンに入れるよりもずっと起動が速い)
WSLはUbuntu以外にもDebian等、複数のディストリを使えるが
仕組み的にはWSL2で動かす全てのディストリが単一のLinuxカーネルを使っていて
Ubuntuのターミナルを開かなくても裏で単一のLinuxカーネルは起動してる。
(これも起動が早い理由)
ようするにLinuxコンテナの仕組みを使ってるんだわ。
だからWSL2でも「WSLのターミナルを開いた状態」=「Linuxが起動してターミナルを開いた状態」というのは同じ

565 :
俺はWSLでもWSL2でも構わんのだが、Linuxで(Ubuntuで)使ってるアプリがWindowsPCで使えてデータ連携が簡単にできればそれでいい。
アプリ使うだけのライトユーザーだし。

566 :
アプリが何を指すのか知らないが、
GUIアプリであればWindows版を使う。
GUIアプリならWindows版はほぼ確実にあるから

Linuxに求めるのはWindowsにはない(あってもLinuxのものとはかけ離れてる)
CLIコマンドとその実行環境であるターミナルで、Ubuntuで使ってる
CLIコマンドがWindowsで連携できて便利に使えればそれでいい。

という人が一番多いと思うわw

一時期MacがもてはやされたのもmacOSのGUI + ターミナルでCLIコマンドが
使えるという点だし。むしろBSD系のコマンドであるmacOSよりも
Linux(GNU)のコマンドのほうが高機能で普及してて使いやすい。

567 :
まあ結局MacもHomebrewなんかでコマンドをGNUのに入れ替えしないと
つかいものにならんし
UNIXマシンとして考えるといまのMacは使いにくいよね
rootlessもきもいし

568 :
FreeBSDも同じだったな
ports/pkgでGNU尽くし

569 :
WSLのターミナルって、タイトルバーが起動した直後はディストリ名になってるのに、
いつの間にか変なのになってるって思ったら、どうやらWindowsのexeを実行したら
その実行したコマンドのパスになってるみたいなんだけど、これ俺だけ?

例えばcmd.exeを実行するとC:\WINDOWS\system32\cmd.exeって表示される
これ戻す方法ないの?見た目の問題だけだから別にいいんだけどさ

570 :
node.exe
> .exit

終了すると、タイトルは元に戻る

571 :
>>556
グラボやサウンドチップを模擬したものだろうね

572 :
いずれは有望だろうし、安いノートでもUbuntuが保証範囲内で動くってのは素晴らしいけどね
ただまだ実用にするには怖くて、とりあえずMacを使っておくか、仮想環境のUbuntuを使うかにしておいた方が安全だろう

573 :
>>557
Raspberry Piの音をPluseAudioで飛ばしてWindowsマシンで鳴らそうと思って
いろいろ試したがVMwareの仮想環境にLinux入れて
それで受けて鳴らすのが一番いいという結論に至った

574 :
>>565
CygwinならXも使えるし、LXDEなどのデスクトップ環境も使えるぞ

575 :
それなら、Cygwin/X + WSLでいいんじゃね?

576 :
VcXsrv入れればいいだけなのに
当然 Xfceなども動かせる

577 :
VirtualBoxやVMwちすいなら小細工しなくても普通のパソコンだよ

578 :
>>576
WSLのおかげでXサーバの需要ができてこういうのの開発が進んでいくんだろうな
そしてLinuxのデスクトップ環境も普及していくと

579 :
だからデスクトップ環境はいつまでもWindowsの後追いから抜け出せねぇんだよな。

580 :
https://mao.2ch.sc/test/read.cgi/linux/1548776755/26-27n

26 login:Penguin2019/04/08(月) 12:51:19.40ID:pOf/Q0Ti
あの頃(どの頃)、Compizとかで無意味にグリグリしてたのってなんだったんだろうな

27 login:Penguin2019/04/08(月) 14:19:26.03ID:LEsHZ2MF
>>26

MS「これからはGUIの処理にGPUを使用します。」
アンチ「デスクトップが立体になるのかよwww」
Linux「俺らのほうが進んでるし(グリグリ)」

MS「お前らそんなのが使いやすいと思ってんの?GUIのレンダリングを
高速化するために、パワー有るGPU能力を使うだけだよ」
アンチ「あっ」
Linux「あっ」

こんな感じ

581 :
windowsの後追い?
そんなの思想のdeがあっても俺は使わないし、windowsが良いならwindows使うよ。

582 :
Vistaや7のDWM環境でガウスぼかし使ってるのを
無駄な高負荷!これだからMSは!!…とか難癖つけてたのは覚えてる

まあWindowsは何だかんだ言ってExplorer(ファイラー/シェルの方)の出来が化け物

583 :
windowsの無駄に重い装飾は嫌いだが
タイトルバーや窓枠のガウスぼかしに関してはすごく有用で重宝してた
8以降で無くしたのほんまクソ

584 :
>>582
ネイバーしか関知しないファイル共有(SMB)と無駄にインデックス蓄積するところは無能だがな。
ssdは関係ないがHDDのシークを考えたとき、ファイル数の少ないLinuxがいいな。今のWindowsはssd/gpu込みの考えだろう

585 :
>>581
君はすべてのDEが使えないなw

586 :
ピロピロピロピ ;ハヽ/::::ヽ.ヘ===ァゴーウィゴーウィヒカリッヘーYOゴーウィゴーウィシンジッテー
ヒーメターオモイ;{::{/≧===≦V:/;ツーヨーサニーカエテデュッウィーヴェヴェーヴェw
ゴーウィゴーウォ;>:´:::::::::::::::::::::::::`ヽ;YOゴーウィゴーウィムカおっおっ(^ω^)(ムカおっおっ)
アーケナイヨ;γ::::::::::::::::::::::::::し:::::::::::ヽ;アーラータナールヨアケッヲーヴォヴォヴォヴォw
ウーシナ _;//::::::し::::::::::::::::::::::::::::::::::::::ハ;ナニカウォマナブソーンナコートーワカアッテイルケド
カーナシミ;| ll ! :::::::l::::::/|ハ::::::::∧::::i :::::::i;ワスレタサヴァイダレガオシエテクレルワケダーンw
スベテヲ;、ヾ|:::::::::|:::/`ト-:::::/ _,X:j:::/:::l;カラダガオイツカナ-イクラッシュマイハート
ダケドマ;ヾ:::::::::|V(◯) !V(◯)/::::/;オージケツクラーイ(クラーイ)イマコソタチアガーッレー
ゴーウィゴ-;∧::::ト “  ,rェェェ  “ ノ:::/;YOゴーウィゴーウィシンジーテ(シンジーテ)
ツーヨーサ;/:::::\ト ,_|,r-r-| ィ::/::| ;ゴーウィゴーウィミライッヘーYOゴーウィゴーウィムカ
アーケナーイ;/            ヽ;アーラータナルヨワケッヲーアヴァヴァヴァヴァw

587 :
wslpathって/initへのシンボリックリンクだったんだなw

588 :
これからはLinuxは独立したOSというよりもJava環境や.NETと同じようにwindows上で動作するプラットフォームとして定着して、WSLを前提としたwindows向けソフトも多く出てくるだろうね

589 :
WSLを前提としたLinuxツールなら見かけたけどね。たしかQiitaで

590 :
Qiita(笑)

591 :
https://qiita.com/qiita
https://qiita.com/mita
https://qiita.com/quarter
https://qiita.com/quaternion

592 :
キター

593 :
早めのパブロン

594 :
web系エンジニアはMAC買えみたいな風潮は変わりますか?

595 :
MacがARMになったらとりあえずMacを買って後でWindowsを買うかどうか決めろとは言われなくなるかも

596 :
armってあかんのですか?

597 :
既にsnapdragon版のwinndows出てるし意外とその時はarm版macでも普通に動くかもよ

598 :
MacがARMになって困る層ってどんな分野だろうか
映像業界か?

599 :
映像もそうだけどグラフィックデザイン系はみんな面倒なことになるんじゃないの
webはOSSで周ってるから余裕だろうけど

600 :
CPUのアーキテクチャなんて何でも変わらんと思うよ
単にグレード・値段の高低があるだけで

601 :
x64と64ビットARMだとx64のがレスポンスが良い。
64ビットARMがx64と同じクロックで動ければ話しは違うんだろうが。

602 :
基本的な命令セットしか使ってなければ互換性は高いけど、
AMDとintelの間ですら最適化まで考えると大変なんですが

603 :
書けもしないアセンブリのことを気にしても仕方ない

604 :
>>594
自分も変わって欲しい、軽いSurface Proの方が正直持ち運びにいいから外に持ってく時にはそっちの方がいいんだよね
iPadがMacOSだったらまた別なんだけど
WSL2の使い勝手に凄い興味がある

605 :
WSL2は仮想マシンを使ってると言うけど、
カーネルと仮想マシンに手を入れてるから全然別物なんだよね。

仮想マシンの一番の問題点であるメモリ使用量を減らすことに成功してるようだし
複数のディストロ使ってもWSL2で使用するカーネルはたった一つで
常に起動した状態だから、仮想マシン起動待ちなんてのはほぼ無いに等しいし

606 :
Dockerに近いというかMSが正式にDockerサポートしてくれればいいのに。
もとのWSLとは住み分けは出来るはず。

607 :
Dockerを買収でもしない限りそれはないでしょw
まあ今のMSなら買収する可能性もあるわけだが

> もとのWSLとは住み分けは出来るはず。
そもそもWSLとDockerは全くの別物

WSLはLinuxカーネルを提供するもので、
DockerはLinuxカーネルのコンテナ機能を利用して
コンテナイメージ開発と起動を行うためのツールだから

608 :
まあ、WSL2ならDocker使えるからもうそれでいいけどね。

609 :
DockerならDocker Desktopで今でも使えるじゃん?
WSL2によるDockerはメモリが効率よく使えるとか
起動が早いってメリットだと思うが。
あぁ、あとボリュームの扱いが今よりましになってればいいな

610 :
どちらにしろHyper-Vがようわからんのだよな

611 :
Hyper-Vは気にしなくていいよ。
Dockerはアプリの配布を楽にするもので
仮想マシンとは関係ないから。

WindowsがLinuxじゃないからHyper-VでLinuxを
動かしていたってだけで、Dockerコンテナイメージを作る
っていう作業はLinuxじゃなくてもできる。

612 :
Hyper-V で MacOS 動けば良いのに

613 :
そりゃライセンス的に問題ありだな。
VMwareなら出来るらしいけど。

614 :
VirtuialBoxやVMwareも使いたいねん
Hyper-V混ぜるとややこしくなるねん

615 :
DockerのせいでHyper-Vは必須になってしまったので
VirtuialBoxやVMwareは諦めてる。
そのうちHyper-V上で動くようになるだろう

616 :
あってると思う。
Androidエミュ(AVD)も昔はHyper-Vと共存できなかったけど、Hyper-Vベースに変更されて共存できる様になったしね。

617 :
これからエンジニア目指すつもりだけど買うのはwindowsノートでも大丈夫??
ここにあるmacの利点ってWSL2あれば十分そうだけど。。。
https://itpropartners.com/blog/8122/#Mac

618 :
開発だったらwindowsが無難だと思うよ

619 :
久しぶりにWSL2入れてみたらすげえ快適になってる。
VcXsrvも動く!

620 :
>>617
ボヤッとしてるなあ
iOSアプリもやるならmacが無難

621 :
vmwareはhyperv有効になっていても使えるようになったのでは
vboxは開発が追いついていないらしいが

622 :
VirtualBoxも6からHyper-Vと共存できるようになったんじゃなかったけ?使ってないから知らんけど

623 :
VMware Workstation
→次期バージョンで対応予定(年末頃ベータ公開見込み)

VirtualBox
→6からHyper-Vが有効な時はハイパーバイザーはHyper-Vを使うようになった
ただ出来はまだまだ(期待通りに動かない場合がある)

だったはず

WSL2は本当にカーネル共有してんのね、dmesgに同じメッセージが表示される
カーネルモジュールロードしたらどうなるかお試し中

624 :
WSL2はサクサクになった。Xアプリもストレスなく動くな。
こっちが本命か・・・

625 :
うちのWSL2何故かまだLocalhostが使えない

626 :
localhostつうか、WSL2とホストのWin10とのマッピングだぞありゃ。

627 :
本物のLinuxカーネルを使うことにしたら互換性が上がって速くなりましたって
当たり前すぎて技術的には全然面白くないな

628 :
面白くないけどそれが最適解だったんだから仕方ないね

629 :
>>627
そうとも言い切れないよ。
仮想マシンを使ってるので、Linux側からWindowsファイルシステムを
drvfs経由で参照すると遅くなってる。
ただし9pを使えばいいので大した問題にならなくなってるが
また、仮想マシンを使った場合の欠点である、メモリ使用量の問題
仮想マシンに一定量取られると言う問題を、Linuxカーネルに手を加えることで解決してる。
また仮想マシンを使うと言ってもディストリごとに起動するのではなく
全ディストリで一つしか起動せず、Linuxコンテナを使うことで共有するという
普通の仮想マシンとは違う構成になってる所も重要
これにより、仮想マシンにUbuntuを入れた時の、起動プロセスをまるごと省略できている
「仮想マシンを使う」と聞いてその後の思考を放棄してるようだが
調べてみると技術的に面白いことの組み合わせになってる。

630 :
initも全ディストロで共有なの?
WSL2でsystemdが使えるようになればよかったのだが

631 :
>>630
WSLはWindowsのCLI環境の一つという扱いなのだから
Linuxそのものではない。
OSはWindowsでその中でLinuxコマンドが動くだけ

632 :
仕組み的にはLinuxコンテナを使ってるDockerと似た仕組みを使ってるんだよね。
DockerがUbuntuのDockerイメージを起動するのに時間がかからないのと同じで
WSL2もUbuntuの起動に時間がかからない。

Dockerは、すでに起動してるホスト(という呼び方は適切ではないが)の
Linuxカーネルを共有してる。だから起動が速い

WSL2もすでに起動してるLinuxカーネルを共有するから起動が速い
しかも起動するのはLinuxカーネルだけで良いので、
CoreOS(Container Linux)のような軽量OSで十分なため
Linuxカーネルそのものも起動が速い。

633 :
>>630
恐らくバイナリは共有だね、ホスト上のカーネルと同じディレクトリにinitってファイルがある、インスタンスは別かな

/proc/mountsやdfコマンドで見ると、/initは9pでどっかからファイルをマウントしてるようなんだよね
ファイルをマウントとかできるんだねぇ

WSL2でのカーネルモジュールのロードは取り敢えずzfsが成功、Ubuntu側でロードしてAlpine側からlsmodで見えてた
うちでは19028辺りからWSL2は良くコケる…、一応フィードバック済み

634 :
>>633
Linuxから見ると、/init がWSLの実体
/init自身が9pプロトコルを扱ってる
wslpathコマンドも/initのシンボリックリンク

635 :
個人的には今の時代になって9Pを引っ張り出してきたというのがWSL2のおもしろポイントだけどな
よくこの選択をしたよ

636 :
9Pが実装されたのはWSL1からだよ

637 :
>>635
9pはqemu/KVMで実績があったから採用しただけだろ

638 :
実績があったって話なら
他のプロトコルだって実績あるだろ

639 :
>>638
他って例えば何?

640 :
Windowsで(おそらく)実績がない9pではなく
NFSとかCIFSとかあるだろう

641 :
procfsやsysfsも公開できるからって話が前にスレで出てたような

642 :
>>640
それただのネットワークファイル共有プロトコルじゃん

643 :
ワロタw

644 :
9pはネットワーク共有プロトコルだぞ?

https://ja.wikipedia.org/wiki/9P
> 9P (または Plan 9 Filesystem Protocol または Styx)

https://www.atmarkit.co.jp/ait/articles/1903/01/news043.html
> WSL$は、9Pと呼ばれるファイル共有プロトコルを利用する。

645 :
9PはNFSとかよりも抽象的なファイルも扱えるんだろ

646 :
>>644
>9PはNFSとは異なり、キャッシュや、仮想ファイル(例えば、プロセスを表現する/proc)の提供も補助する。

>9Pが選ばれたのは、/procファイルシステムなどの疑似ファイルシステムを扱えるのが大きな理由だと考えられる。

なんでそれぞれの文章の直後にこう書かれているのにそこは無視するわけ?

647 :
それは前スレで書かれてるしな

648 :
単にネットワークファイルシステムだぞ
642が意味不明だ

649 :
>>648
9pはvirtfsで使われているので「ただのネットワークファイル共有プロトコル」ではないが

650 :
>>646
その記事を書いた人の考えてることを根拠にされても困るんだがw

WindowsからWSLの/procを参照できることがなんで重要なの?

651 :
virtfsで使われてるただのネットワークファイル共有プロトコルだぞw

652 :
>>649
意味がわからない
「ただの」になんかすごい深遠な概念が含まれてるのかも知れんが俺は脳を共有してないので説明されないとわからん

653 :
>>650
お前が貼ったリンクを参照されても困るとか言われても困るんだが?

>>651
virtfsはネットワークレイヤー介してないが?
https://landley.net/kdocs/ols/2010/ols2010-pages-109-120.pdf

654 :
>>653
今はvirtfsの話はしてないよw

655 :
1. 9pはネットワーク共有プロトコルである
2. だがvirtfsで使うと、そのネットワーク共有プロトコルをネットワークを介さないで使うことができる
3. つまり9pはネットワーク共有プロトコルではない
4. だからvirfsを使わなくても9pはネットワーク共有プロトコルでなくなるのだ!

こういう発想かねぇ?
バカだな

656 :
>>654
ホストとゲストでファイルシステムを共有するプロトコルの話でなかったらなんの話なの?

657 :
>>656
ホストとゲストでファイルシステムを共有できるプロトコルには
NFSやCIFSなどがありますって話だろ

658 :
>>657
NFSやCIFSはネットワーク越しにファイル共有するためのプロトコルでそういう実装しかないんじゃないの?

659 :
なんだこいつ?そんなんパッチ当てれば済むだろ。
virtfsだってパッチ当てたんだろうし

660 :
そのパッチが脳内にしか存在しないなら実績ゼロだね

661 :
実績ってまさかvirtfsの話?
WSLはvirtfsじゃないってさっき言ったよね?
まさか関係ないものが実績になると思ってんの?

662 :
qemu/kvmでlinuxゲストホスト間のファイルシステム共有プロトコルとして使われている9pがwslに無関係なら
ネットワークファイル共有でしか使われてないNFS、CIFSなんかもっと関係ないが?

663 :
Windows Subsystem for Linux 2のメモリ管理を詳しく見る
https://ascii.jp/elem/000/001/981/1981180/

664 :
いい加減そろそろ1つくらい、SMに走らないレズ陵辱ゲーがほしいわ
暴力方向や、わざとらしい首輪つけてペット化とかしなくていいんだよ
よくある男女の陵辱物みたいに、弱みを握ったり、立場を利用したりする感じで、
ノンケのヒロインたちを犯して肉体関係を持ち続けるような作品がほしい
ヤるシーンだけの関係じゃなくて、ヒロイン達の日常生活に侵食していったりすると尚良し

665 :
何処に誤爆してんだか

666 :
和姦しか興味ないからわかんない

667 :
WindowsユーザーやLinuxユーザーにとって
WSLなんてR以外の何物でもない

668 :
>>667
つまらんよ

669 :
俺には文句言うくせに
>>664 はお咎めなしかよ
ダブスタだな

670 :
>>664は誤爆だろ

671 :
お咎めなしじゃねーだろ
>665で速攻つっこまれてんじゃん

672 :
すでに突っ込まれてるならそれでいいだろ。

673 :
ごめん
>>665-666 にも突っ込めって意味ね

674 :
WSLの話をしたアホはお前だけだろ

675 :
客観的には >>664 が一番悪い
二番目は >>666-667
三番目はおまいらが無駄レスしていること同じ罪
10スレも消費するようなことじゃない

676 :
そこで「お前ら」じゃなくて「俺ら」って言えてればまあ説得力もあるんだがな

677 :
rm -f >>1-1000

678 :
まほうのことば rm -f / でたのしいなかまがポポポポーン

679 :
dd if=/dev/zero of=「流石に伏せ字」

ぐらいいかないと

680 :
/dev/sda か?

681 :
失礼しました。
>>678 を "まほうのことば rm -rf / でたのしいなかまがポポポポーン" に訂正いたします。

682 :
echo y | rm -Rf /

683 :
enjoyに見えたわw

684 :
そこは yes| やろ

685 :
yes 高須クリニック

686 :
onedrive上に構築したwslを同期した他のpcで
lxrunoffline register すれば同じ環境に
なりますか?

687 :
onedriveはシンボリックリンク対応してない

688 :
今のバージョンならlxrunoffline使わずexportしてimportで良いやろ

689 :
\\wsl$\ってsymlink対応してないのか?
Preztoを入れた環境で.zshrcや.zpreztorcにアクセスできず.zprezto/runcomsからたどる必要がある

690 :
対応してる

691 :
\\wsl$からfuseでマウントしたディレクトリに入れないな

692 :
WSL 2、実はWSLからパフォーマンス向上ほとんどなし? 2019/12/16 10:23 後藤大地
https://news.mynavi.jp/article/20191216-938538/

Phoronixは12月11日(米国時間)、「Windows Subsystem For Linux Performance At The End Of
2019 - Phoronix」において、開発段階にあるWindows 10のWSLWindows Subsystem for Linux 2と、
すでに出荷されているWindows 10のWSLのパフォーマンスなどの比較結果を伝えた。WSL 2はWSL
よりもファイルシステム性能が大幅に向上すると考えられているが、ベンチマーク結果からはそれほどの
性能向上が計測されなかったようだ。(中略)
ベンチマークは多方面にわたって実施されている。それぞれのベンチマーク結果のポイントとして、以下が
紹介されている。

・Windows 10 Build 19008は、Windows 10 Build 18362よりも概ね優れた性能を示している
・Windows 10 Build 18362 WSLとWindows 10 Build 19008 WSLにはほとんど性能差が見られない
・Windows 10 Build 19008 WSL 2は、WSLよりも少しだけ性能が良くなっている。特に高負荷I/Oと
ネットワークアクティビティが引っ張る形で性能を引き上げている

MicrosoftはWSL 2はWSLよりも高いファイルシステム性能を実現するとしていた。しかし、実際に計測
されたベンチマークでは、ファイルシステムI/Oの特定のマイクロベンチマークで性能の向上が確認されて
いるだけで、全体的に見るとそれほど性能の向上が確認できない状態になっている。

WSLはWindowsでLinuxバイナリを実行するための技術。WSLはレイヤ技術およびコンテナ技術を使って
おり、WSL 2はHyper-Vによる仮想環境技術を使っている。MicrosoftがWSL 2でWSLとまったく異なる
アプローチを採用した理由は不透明。その理由の1つとして、ファイルシステムの性能向上があったが、
当初言われていたほどファイルシステム性能は向上しない可能性が出てきた。

WSL 2は2020年5月または6月に公開が予定されている次のWindows 10フィーチャーアップデート
での導入が予定されている。

693 :
WSL 2の方ができることが多い

694 :
>>692

> ・Windows 10 Build 19008 WSL 2は、WSLよりも少しだけ性能が良くなっている。特に高負荷I/Oと
> ネットワークアクティビティが引っ張る形で性能を引き上げている

だから性能が良くなってるんじゃねーの?
結論はそれだろ?
なんで反対の結論になってるんだ?

695 :
>>694
読んでないのに言うのはなんですが、
I/Oについては、高負荷時でなく、通常時も遅いことが問題視されていたのですから、そこのところが含まれていなければ、期待はずれということになります

696 :
負荷が低いときのI/Oとかどうでもいいわw
必要なときに重いもの(ボトルネック)が軽くなってる。それが重要でしょう?

697 :
言うほど性能上がってなかったって話を
まるで以前より性能が低下したかのように思わせる

698 :
下がってないなら別にいいじゃん

699 :
な。

700 :
WSLにパフォーマンスは期待してないんだよな
ただIOが遅すぎるとパッケージをインストールやアップデートするのにも時間がかかって煩わしさがあった

701 :
パフォーマンスに期待しないと言いながら遅いのは嫌だと言う
自己矛盾に気が付かないない阿呆

702 :
無能ほど万能や全能を求めたがる

703 :
>>701
「遅いのは嫌い」=「パフォーマンスに期待してる」ってことなのか?

例えば「まずいのは嫌い」=「天下一品の味でなければいけない」
そういう意味だと思う?

704 :
パフォーマンスに期待 は 最高レベルを望む という意味ではない

705 :
ファイルシステムのI/Oに関しては9pプロトコルの登場で
WSL2の登場を待たずして解決したようなもんだと思ってるんだけどな
Windowsとのファイル共有で使っていたDrvFSは遅いけどVolFSは速いわけでしょ?
そのVolFSにWindowsからアクセスできるようになったんだから

Windows上高いパフォーマンスが必要ならDrvFSを使う
Linux上で高いパフォーマンスが必要ならVolFSを使う
この使い分けだと思うけどね

WSL2はLinuxの互換性の向上とDocker Desktop for WSL2に期待してる
Docker Desktop for WSL2はWSL2の機能を使って実装されてるから
起動速度アップとメモリ使用量の低下が期待できる。

必要なときに必要なだけ確保するから、仮想マシンにメモリを
大量に割り当てておくという必要がなくなるからね
これは普通の仮想マシンを使ってるmacOSにはないメリット

706 :
9pを採用したWSL2がそれほど早くなかったって内容じゃないのか

707 :
そもそもVMのIOが遅いのは分かってるのでWSL1よりどの程度改善されるかなんだよ

708 :
>>706
9pプロトコルはwindowsとのやりとりの話で
今回の話とは関係ないんじゃないのか

709 :
こんなの見つけた。やっぱりWSL2+ext4はnative linuxに近い速度なんだな
https://vxlabs.com/2019/12/06/wsl2-io-measurements/

WSL1 lxfs を WSL2 ext4 に変えても2倍の速度になったりしないよ。
なぜならnative linuxに変えても2倍の速度にはならないんだから(笑)

lxfsは元から速かったが、WSL2でほぼLinuxの速度になった

710 :
macOS Catalinaで2月3日以降、野良アプリが動かなくなるらしい
Homebrewで入れるアプリも対象だろうから
ますますWSLに移行する人が増えそう

711 :
スレ違いの上に動かなくならないぞ
Appleにアプリ提出する時のチェックが厳しくなるだけ

712 :
wsl1 がらみで申し訳ないが、
wsltty の 3.0.5以降、最新の 3.1.0.2まで、
コンテキストメニューでディレクトリから呼び出した時、PATH の先頭に $HOME/bin が反映されない。
もともとの WSL のコンソールをコンテキストメニューで呼び出すと反映される。
3.0.2.3 だと、問題ない。

コンテキストメニューからの呼び出し(コマンドライン)は
"%LOCALAPPDATA%\wsltty\bin\mintty.exe" ^
-i "%LOCALAPPDATA%\wsltty\wsl.ico" --WSL= ^
--configdir="%APPDATA%\wsltty"

ここで立ち上がった wsltty 上で、
echo $PATH

うちの環境だけなのかな?

713 :
$HOMEという環境変数使わず、/home/hoge/binとかにするとどうなる?

714 :
>>713
レスありがとう。
それを最初に直接 .bashrc でエクスポートしたんだけど、
今度はもとからのWSLコンソールで、二重にPATHが設定されてしまった。

原因自体は、ログインシェルが起動できていないためじゃないかと目星をつけて、
調べていたら、対処方法もわかった。
結論から言うと、wsltty(mintty)の仕様変更があったようで、
ログインシェルにするのに別途新たにオプション "-" を付けることが必要になったようだ。

"%LOCALAPPDATA%\wsltty\bin\mintty.exe" ^
-i "%LOCALAPPDATA%\wsltty\wsl.ico" --WSL= ^
--configdir="%APPDATA%\wsltty" -

同梱のコンテキストメニューを追加するスクリプトはそれに合わせて変更されているんだけど、
自分は以前のオプションのまま、改めてスクリプトを実行していなかったので、
ログインシェルが起動せず、ユーザー環境が反映されていなかった、ということだった。

とはいえ、アップデートのたびにコンテキストメニューのことまでは考えないよなぁ。

715 :
ちなみに、wsltty-3.1.0.2 の config-distros.sh、229行目に変更箇所がある。
> bridgeargs=" -" # now used to request login mode

716 :
wsl2はパフォーマンス向上よりも互換性の改善がメインの目的だから別にいいのでは

717 :
wsl2だとNICの帯域制限も出来るんだっけ?
WSL1はdevice io がサポートしていなかった

718 :
>Our top requests from the WSL community have been to increase the file system performance,
>and make more apps work inside of WSL (i.e: introduce better system call compatibility).
>We have heard your feedback, and are glad to announce that WSL 2 helps solve these issues.


パフォーマンスの改善も互換性の改善も両方同列

719 :
ISCSIの速度って90MBPSぐらい出る?

720 :
怒らないで教えて欲しいんだが

何でお前らMacにしないの?

721 :
ゴミは要らん

722 :
えっ?!

723 :
>>720
もうUnixの時代じゃないからだよ。Linuxの時代。
UnixはFreeBSDかOpenBSDがわずかに生き残ってるだけ
macOSで何ができるかって言ったらそのBSDのマネごと
しかもBSDとして使うと遅い

世の中がLinux(とWindows)の世界なのに
今更BSDを使う意味がない。Homebrewでごまかしてきたけど
WSLに逆転された。WSL2登場でますますWindowsが有利になる。
WSL2の仮想マシンを使うからDockerは起動は速くなり、
WSL2が不要なメモリを解放するからメモリ使用量も大きく減る。
WSL2はDockerとの相性が抜群。

それにたいしてmacOSのDockerは仮想マシンに数GBのメモリを
割り当てないといけない。使わなくても割り当てる必要がある。
メモリ搭載量の少ないノートでは致命的

724 :
>>723が完膚なきまでに論破しててワロタ
そう、Dockerのこと考えたらMacはないんだよな

iOSの開発という苦行をやらざるを得ない人以外にはMacを買う理由がなくなった
※スタバどや除く

725 :
そもそもの話としてMacの利点が分からない

726 :
2010年までのMacBookなら、メモリ増設も
ストレージ増設も簡単。
タイムマシンで外付けHDDに待避すれば
機種変更するのも簡単。

今の機種は、メモリもストレージも増設不可。OSも旧機種には入れさせない。
最後のキラーアプリNiktoがWSLで動けば、
Mac持ち歩く理由がない

727 :
俺はMacのParallels上のWin10でWSL動かしてるわw
WSL2の方が速いけどメモリ喰う。
Wineが動いた時はワラタw

728 :
Dockerもそこで動くけど、今まで通り普通にMacのCLIで叩いた方が楽。

729 :
OSどころかハードまで囲い込みされたくない
macOSを使ってほしいなら以前のように互換機を認めろっとことさ

730 :
>>729
では聞きたいが
MBP/MBAより優れているハード
iPadより優れているハード
iPhoneより優れているハードが
現実に存在するかね?

731 :
>>730
優れてるってどの点で?

732 :
>>730
MBPは優れたハードだと思うけど個人的には高過ぎて選択肢にならんな
16インチメモリとSSD換装できるなら買うんだけどなぁ

733 :
Apple製品興味ないから知らんけど
高くて性能良くて融通効かない純正より
安くて性能そこそこで痒いところに手が届くリーズナブルな互換機使いたい層もいるんでないの?
Apple純正品に興味ないから知らんけど

734 :
CDNやってる企業は今もBSD使ってるよね
ネットワーク周りでLinuxに対して優位性があるのかな

735 :
スループットにおいてはBSDの方が有利と言われてる。
スケジューラの実装がLinuxとはまた違うから。

736 :
YAMAHAのルーターとかはBSDやね
nmapでスキャンすると癖が出る。

Macはタイマーの精度がAT互換機より
高いので、DAW系でProTools使う人には
有利なんて話は聞いた事がある。

メモリ32GBぐらいは積めるノートを安価に
且つ最低10年使えれば需要はあるかも

737 :
BSDは軽くてCLIベースならいいけど、
macOSはBSDをベースにしてるってだけでBSDじゃないからね
自称UnixのくせにCLI環境はCygwinなみに遅い

738 :
BSD使ってたのはライセンスの理由がでかかったと思うわ
カーネルもいじりやすかった
性能はもう関係ないと思う

739 :
macOSがCygwinなみなのはこれが原因だろう

MacOS Xのfork/execが遅い件について
https://oraccha.hatenadiary.org/entry/20080817/1218979879

740 :
おめ

741 :
BSDのコマンドのオプションが微妙に違うくて、サーバがLinuxだと混乱する。これだけでMacOS使おうとは思わない。

742 :
「カッコウはコンピュータに卵を産む」
でpsのオプションの付け方で西海岸の
人間じゃないと喝破するシーンがあったなw

86年だから34年前

743 :
psは酷いよね。すべてのpsで同じように
動くオプションを探したけど無理だった。

その時はLinuxは諦めてprocfs、その他のOSはposix準拠を
期待するコードにしたんだっけな?

posix準拠だとps axとかじゃなくてps -axのようにハイフンが必須
86年だとposix登場よりも前だね

744 :
時代的にはSun-2(1983年)かな、
まだミニコンの時代で、VAXーVMSがゴロゴロと

745 :
>>741
HomebrewでGNU coreutilsでも入れとけ。
BSDとGNUで差があるのは常識だぞ?

746 :
coreutilsはmacOSなのにmacOS標準のコマンドを置き換えるから
macOS用のスクリプトがちゃんと動くか?って所で
置き換えるのは躊躇するんだよな。

747 :
/binとか/usr/binにインストールするマゾな人なの?

748 :
/usr/local/bin/とかに入れても
PATHの優先順位から、coreutilsの方が使われるだろ
lsとかを絶対パスで実行するようなスクリプトはまず無いし

749 :
brew info coreutilsすればわかるが
Homebrewのcoreutilsは
/usr/local/opt/coreutils/libexec/gnubin
にインストールされる。

全部置き換えたいならシェルの設定ファイルに
PATH="/usr/local/opt/coreutils/libexec/gnubin:$PATH"
を書き込めばいい。

750 :
>>749
それをやると、sedとか使ってるmacOS用スクリプトが
ちゃんと動くか疑問って話やねw

751 :
スクリプト中ではフルパス使うもんだよ

752 :
そういって>>751はおもむろに
/usr/local/opt/coreutils/libexec/gnubin/sedと書きました

753 :
で nohup もかね?

754 :
>>749
あんたすげえな釣り抜きで
WSLだmacOSだと騒いでる奴らがみっともなさすぎ
ちなマカー

755 :
で、ここはみっともなくWSLの話を
するスレなのでな

756 :
WSLの話はみっともなくないだろw
なんでみっともないってことにしたがってるんだろうね
その方がry

757 :
>>754
そんなのですごいと本気で思ってるなら釣り抜きで
お前は向いてないよさっさと諦めろ

758 :
>Macはタイマーの精度がAT互換機より
>高いので、DAW系でProTools使う人には
>有利なんて話は聞いた事がある。
あいつら20年も昔の話をまだしてるのか

759 :
>>757
って職場で言われてるんですね
わかります

760 :
>>758
Adobe系がWindows行ったから、
最後のキラーアプリじゃね?

761 :
映像編集はまだMacが優勢らしい

762 :
そうか Final Cut Pro Xもあったな

763 :
macってAT互換機じゃないのか?

764 :
Intel CPUになってるけど、初期からUEFIだしクラシカルなAT互換機とは言えない。

765 :
EFI vs UEFI

766 :
>>737
なにがBSDなのか
どこがBSDなのか全くわかってないアニオタで笑った

767 :
現代日本語訳:
ぼくのそうぞうするかくうのりそうてきなBSDと違うからこいつはアニオタ

もしくは

BSDは無条件で崇め奉るべきなのに畏れを知らない無知蒙昧めお前はアニオタ

768 :
>>760
PCベースのMacも結局10MHzのHPET使ってるなら条件は同じじゃねえの
まあお前ら(マカー)じゃわからんかこの領域(レベル)の話は

769 :
FinalCutなんてそれでオーサリングした映画はクレジット表記してニュースになるくらいマイナーな環境だしなあ

770 :
>>768
同じハードウェア付けてても使うにはOSのAPI通すんだから
実際あるのかは知らんが違いがあってもおかしくはない
ドザはそんな事もわからんのかね

771 :
>>770
ハードウェアの制限の話をしてるから
バカにされてるんだよ

772 :
AnsibleってWSLでも問題なく操作出来ます?
出来るならMacからWindowsへの移行を考えてます、、

773 :
普通に動くよ

774 :
動くものもちゃんと動くとは限らないのが鬼門で、その辺りは自分で調べるしかない
みんな「動いてすげー」してるだけで、誰も実用になるかチェックしとらん

775 :
実用にならなかった文句が出てる。
問題がない人は騒がない。騒いでいる人の少なさは正しく動いているということ

776 :
誰も使ってないから騒いでいる人も少ない可能性もあるから注意な

777 :
>>772だけど皆さんありがとう
やはりまだ完全な代替えにはこわいとこあるかな…

778 :
>>776
残念だが「使ってる」という記事を書く人は多いんだよw

つまり検索してヒットする・・・多ければそれだけ使ってる人がいるという事

ヒットした結果、問題があったという記事が多い・・・問題が多い
ヒットした結果、問題があったという記事が少ない・・・問題が少ない

Ansibleは検索してヒットする記事が多いけど
問題は殆どないことがわかる。つまり普通に動いてる

779 :
>>777
何を根拠にそう思ったの?
むしろMacの方が問題多いのに

780 :
とにかくWindowsだからね。問題だらけで、使い物になる訳がないのさ。

781 :
代替ってことはリモートの環境構築だよな?
それなら普通に動くだろ

782 :
>>780
問題だらけで使い物になる訳がないWindowsの牙城をいまだに崩せないmacって何なの?存在価値あるの?

783 :
>>780
趣味ならMacでもいいさ。ビジネス環境で圧倒的なシェアを持つのはWindows
だからね。会社で支給されるPCがWindowsなのは普通。そういう会社に入っていない人のたわごと聞いてもね。

784 :
まぁ先ずシス管がイントラにWin以外を繋げたがらないだろうし、他のOSにも対応とか上が予算渋るだろうて

785 :
そんなときにSolaris!!!

786 :
そんなあなたにOpenVMS

787 :
いやいや、HP-UXの安心感

788 :
WSLって音も鳴らないんだな
完全な開発用じゃん
Windows版のPulseAudioは音割れして使い物にならないし
結局まともに音声鳴らそうとしたら別のLinuxマシン使うか
仮想マシンにLinux入れることになる
VMwareとかの仮想マシンにLinux入れるくらいならそのままそのLinux使ったほうがいい

789 :
SSHでログインしても鳴らないやん?
それと同じなんだけど

790 :
別にwin用のpulseaudioでも音割れしない

791 :
そもそもWSLは開発者向けだとMSも言ってるじゃん

792 :
>>791
やたらWSL連呼してるのがLinux板にいるが、あれは自分で使ってないのかね?

793 :
>>790
実際に使ってみたが音割れするわ、すぐ落ちるわで酷かったぞ

794 :
>>788
音割れせず普通に鳴るが
もともとの Windowsの設定が悪いのでは

795 :
>>794
どこのバイナリつかってる?

796 :
>>794
ここの
https://www.cendio.com/thinlinc/download

797 :
>>795
アンカ間違ったw
zip ファイルの方をダウンロードして tl-4.10.0-client-windows-x64 配下のファイルを使っている
(現バージョンは 4.11)

798 :
音がならないっていうのは
嘘確定だったという前提で話が進んでいてワロタw

799 :
WSL自体は音が鳴らない
外部のPulseAudioで鳴らしてるだけ

800 :
Linuxカーネルは音がならない
ハードウェアが音を鳴らしてるだけ

801 :
音は鳴るしGUI環境も使えるよなあ
できないのは、君が設定できてないだけ

802 :
外部のサーバでやってるだけじゃん
GUIはXサーバ、音声はPulseAudio
PulseAudioは音源のついてないLinuxマシンでも
外部の音源のついてるLinuxに音声飛ばせる

803 :
>>802
ならお前はX Windowは外部のサーバーでGUIを表示してるって表現するのか?

804 :
>>795
bosmans.ch/pulseaudio/pulseaudio-1.1.zip
これをサービス化して使っているが、特に問題ない

805 :
WSLが普及するとLinuxとの親和性が上がるからマイナスじゃないよね
Raspberry Piを代表とするシングルボードのコンピュータが
高性能化して安くなってるからね

806 :
WSL2でも音ならないの?

807 :
だから鳴るって

808 :
つーかWSLの設計が分かっとらんのじゃないか?
一言で言えば、仮想マシンを "作りたくなかった" んだよ

WSLのOSはなにか?と聞かれたらWindowsなんだよ
WindowsにLinuxのユーザーランドを組み込んだだけ

WSL2も仮想マシンを使ってるけど、どれだけ仮想マシンを
見えなくするかという目標で開発されてる。

Linuxの仕組みに従えば、WSLの中にサウンドデバイスが見え(サーバーとして見えても良い)
それを通してOS(Windows)が鳴らすというのがWSLが目標とする設計なんだよ

809 :
>>807
いや、PulseAudioなくても鳴るのかと聞きたかった。
どうなの?知らないの?

810 :
>>809
Linuxコンテナの機能に特定のデバイスを
一つのコンテナ(ディストリ)に紐づけて
パススルーする方法があればできるんじゃね?

仮想マシンにWSLのディストリの数だけ、サウンドデバイスを
作成することになるけど

811 :
WSL2だと仮想化された音源カード経由でWindowsのDirectSoundとかに回ってくるだけじゃねえの
WSL2側ではサウンドマネージャはPulseAudioに限らず好きなもん使いたきゃ使えるだろ

812 :
OS(カーネル)がWindowsであることを理解してないやつに
何言っても無駄だろう。馬鹿なだけ

813 :
WSL2のカーネルはWindowsじゃねえよニワカ

814 :
>>811
Hyper-VでLinux動かせばそうなるけどWSL2でできるのか?
やってみないと分からんな・・・

815 :
GUIやサウンドはマイクロソフトが意図的にできないようにしてるとしか思えないけどな
サウンドを鳴らす気があるならPulseAudioなど使わなくても鳴るようにしてるだろうね
デフォルトではできないようにして敷居を上げてる
マイクロソフトとしてはあくまで開発者向けという立場だろうね

816 :
別にLinux側のサウンドマネージャはALSAでもOSSでも好きなものを使えば良いだけのことで
WSL2環境ではWAVEのストリームデータは仮想化されたサウンドカード経由でWindowsへ渡る
今時のディストリでデフォルトのサウンドマネージャがPulseでない環境はほとんど無いけど、まあASLAやOSSが使いたいなら自ビルドでも何でもして頑張っておくれや

MSは最も簡単に(既存のディストリの生PCへのインストールと変わらない構成で)使えるように仮想ハードウェアも設定しているように見えるけどね
もしかしたら俺が使っているWSL2とこいつらが使っているWSL2は何か違うものなのかもしれないが

817 :
Windows Subsystem for Linux に関してよく寄せられる質問
https://docs.microsoft.com/ja-jp/windows/wsl/faq

WSL の対象ユーザーは誰ですか。

これは、主に開発者向けのツールです。特に Web 開発者と、オープン ソース プロジェクトで作業している開発者が対象です。
これにより、Bash、一般的な Linux ツール (sed、 awk など)、および多くの Linux ファースト ツール (Ruby、Python など) を使用する必要があるユーザーは、Windows でそれらのツールチェーンを使用できます。

WSL ですべての Linux アプリを実行できますか。

いいえ。 WSL は、Bash およびコア Linux コマンド ライン ツールを必要とするユーザーが Windows 上でそれらを実行できるようにすることを目的としたツールです。
WSL は、GUI デスクトップやアプリケーション (例: Gnome、KDE など) をサポートすることを目的としていません。

818 :
>>817がマイクロソフトの意図した使い道なんだろうね
だけど、マイクロソフトが意図してない用途にもWSLを使えって言ってる変なやつが
この板に居着いてるけどね

819 :
>>818
逆じゃね?

マイクロソフトが意図してない用途に
WSLが使えなーい、WSLが使えなーい、って
言ってるマヌケがいる

GUIアプリが動かないだの、音がならないだの、WSLには制限があるだの
Linuxカーネルの開発には使えないだの、重いだの

820 :
ネットの帯域制限機能ってのが半分無い
WindowsでWSL(1)で出来るかと思って
テストしてみて、IOCTLの機能不足でできなかった
がっかりだよ

821 :
ほらねw >>820もまたその一人

マイクロソフトが意図してない用途(帯域制限)に
WSLが使えなーい、WSLが使えなーい、って
言ってるマヌケがいる

OSはWindowsなんだからWindows側で帯域制限すればいいだけの話
自覚しいてないマヌケがおおいよなー

822 :
人を間抜け呼ばわりするなら
標準機能でインバウンド制限する方法を
公開してみろ。バカたれが

823 :
いやー、どうみてもマヌケでしょw

↓これがマイクロソフトの意図した使い方なんだろうねって話をしてる所に、
意図してない用途に使えないって現れたんだからさw

Windows Subsystem for Linux に関してよく寄せられる質問
https://docs.microsoft.com/ja-jp/windows/wsl/faq

WSL の対象ユーザーは誰ですか。

これは、主に開発者向けのツールです。特に Web 開発者と、オープン ソース プロジェクトで作業している開発者が対象です。
これにより、Bash、一般的な Linux ツール (sed、 awk など)、および多くの Linux ファースト ツール (Ruby、Python など) を使用する必要があるユーザーは、Windows でそれらのツールチェーンを使用できます。

WSL ですべての Linux アプリを実行できますか。

いいえ。 WSL は、Bash およびコア Linux コマンド ライン ツールを必要とするユーザーが Windows 上でそれらを実行できるようにすることを目的としたツールです。
WSL は、GUI デスクトップやアプリケーション (例: Gnome、KDE など) をサポートすることを目的としていません。

824 :
開発者向けだから制限が多くて当たり前と思う人と
開発者向けだからニッチな機能までサポートして欲しい人がいるだけだろ

どうやら前者が後者を馬鹿にしてるようだけど
そういう態度がかえって馬鹿丸出しに見えるから気をつけた方がいい

825 :
>>824
まだ制限が多いとか言ってるのか?
マイクロソフトの意図した使い方に必要な機能はほぼ全て実現されてるだろ
そんなんだから馬鹿にされるんだぞ

826 :
>>825
いやさすがにそれはない

827 :
>>826
何か言えよ

828 :
>>825
開発用に必要な機能が実現してないからWSL2を作ってるんだろ?

829 :
>>828
それと制限の数に何の関係が?
どんなものだってより良くするために
常に改良されているが、
どんなものにも制限が多いと?

830 :
ネットワーク機能がショボイ
Dockerが使えない
fuseが使えない
ブロックデバイスが扱えない

831 :
>>830
>>823を読んだほうが良いぜw
> ネットワーク機能がショボイ
OS(Windows)の機能を使えばいいだけです
> Dockerが使えない
Windows版を使えばいいだけです
> fuseが使えない
Windows側でマウントしましょう
> ブロックデバイスが扱えない
何を使いたいんですか?Windowsではダメですか?

832 :
なぜに頑なにWSLでやろうとするのか
理解できませんね
WSLはWindowsの補完機能なんだから
Windowsでできないことだけやれば良いんです。

833 :
>>832
Windowsが糞だからLinux入れた方が賢いわな

834 :
WSL1でマイクロソフトが意図してる用途を満たしているという前提がまずおかしいから
それならWSL2いらんだろ

835 :
WSL1 意図してる用途を満たしているか?・・・YES
WSL1 意図してる用途を"すべて"満たしているか?・・・NO

Linux 意図してる用途を満たしているか?・・・YES
Linux 意図してる用途を"すべて"満たしているか?・・・NO
だから新しいカーネル作ってるんだろw

836 :
しかし多大な労力を注ぎ込んでカーネルのAPIを移植したWSL1をあっさり捨てられるのはさすがMSというべきか
コミュニティベースのOSSだとこのような切り捨ての決断はまず不可能で、ズルズルと泥舟に乗ったままリソースを浪費しつつ沈んでいくケースが多いんだよな

837 :
>>836
WSL2よりWSL1の方が有能なんだが…?
WSL2なんてVMwareやvirtualboxみたいなもんだ
使い勝手悪過ぎ

838 :
>>836
別に捨ててないよ。同居できるし並行開発していくことが発表されてる。
https://www.atmarkit.co.jp/ait/articles/1906/14/news019.html
> WSL 2はWSL 1を置き換えずに併存する
>  WSL 2が登場したからといって、WSL 1は廃止になるわけではなく、引き続き利用可能である。
> Windows OSの仮想マシン支援機能は、Intel VTおよびAMDvにのみ対応しているため、
> 現時点では、Hyper-Vが組み込まれていないARM64版(Windows On ARM。WOA)では、
> WSL 1が引き続き使われるものと考えられる。
WSL1とWSL2のイメージは違うがインストール後に
データを残したまま相互に変換できる。
MSの凄さは、この開発リソースの多さだろ。あっという間にLinuxカーネルAPIの
変換レイヤーを作ってしまったわけだから、OSSじゃまず無理

839 :
>>837
> WSL2なんてVMwareやvirtualboxみたいなもんだ
> 使い勝手悪過ぎ
VMwareやvirtualboxがWSL1に比べて使い勝手が悪いのは正しい
だってあれ、別にもう一台用意してるのと一緒だからCLIの連携機能がないもの
自分で頑張ってそういう仕組みを作らないといけない
その仕組を作り上げたのがWSL2なので、WSL2の使い勝手はWSL1と同じ
一体どこが悪すぎだっていうんだい?

840 :
すまん相手しちゃいけないやつだった

841 :
はい、逃げたーw

842 :
>>840-841
https://dotup.org/uploda/dotup.org2040270.png

843 :
WSL2がHyper-VやVMwareやVirtualBoxと共存できれば全く問題ない

844 :
>>841
つまり、クソ野郎。

845 :
逃げられた奴にキチガイの自覚なんてないんだろうな

846 :
32bitのバイナリが動かないんだっけ

847 :
Ubuntu自体が32bitを廃止しようとしてるぐらいだからね
ゲーム業界から反対されて延期したけど
WSLはゲームするためのものじゃないのでレガシー技術に
対応する意味はないし、そんな事したら開発スピードが衰える

848 :
qemu-user-staticで動くよ。
Wineも動くけど遅い。

849 :
これを試した
https://blog.tmyt.jp/entry/2018/05/27/065347

850 :
Windows Terminal 試した人いる?
キー入力応答が遅いわ、json設定ファイル使ってるわ、であまり好きになれないんだが。

851 :
うちの環境だと重くないぞ
あとjsonの何が悪いんだ
共有しやすくていいだろ

852 :
jsonは配列の末尾要素のあとに続くカンマがエラーになるのが気に食わない。
以下の例だと"foobar1"でエラー。
{
"foo1",
"bar2",
"foobar1",
}

853 :
>>850
知らない人、あとから見た人にために、
Windows Terminal Preview v0.8はプレビュー版って書いとけ
正式版は4月予定だ

854 :
既に、Ubuntu 16.04 を入れているけど、18.04 も入れてみた!
最初に、/etc/apt/sources.list を空(0 バイト)ファイルにして、
/etc/apt/sources.list.d/ に、iij.list, jaist.list の2つのファイルを置いて、
ミラーサーバーから、大量のパッケージを更新した!
大阪だけど、1MB/s 以上と、IIJ の方が速いためか、すべてIIJからダウンロードされた
perl: Setting locale failed. の警告が出たので、
sudo vim /etc/locale.gen
として、en_US.UTF-8 UTF-8 以外の値がコメントアウトされているので、
ja_JP.UTF-8 UTF-8 のコメントを解除して、
sudo locale-gen
を実行した

855 :
日本語関係なんて特にいじった記憶ないんだけどな
language-pack-jaでも入れれば勝手に日本語化されるんじゃね?

856 :
sudo apt install language-pack-ja
で、日本語ロケールをインストールすると、

locale -a
で、ja_JP.utf8 が表示される

.bash_aliases に、
export LANG=ja_JP.UTF-8
と書いて、日本語ロケールに設定しているけど、これはいらないのかな?

他に、manpages-ja, manpages-ja-dev もインストールする

857 :
なんで.bash_aliasesなんかに書くんだ? .bashrc使えよ
ユーザーのロケール設定はいるだろ
OSは複数のロケールに対応する、ユーザーごとにロケールを切り替える
デフォルト設定じゃなくて、ユーザーごとに決めるものだから

858 :
おや?俺は/etc/default/localeで設定されてた。
こんな所いじった記憶ないし、やっぱり勝手にされてたんじゃないかねぇ

859 :
>>856
自己レス
.bash_aliases に、
export LANG=ja_JP.UTF-8
と書いて、日本語ロケールに設定する必要がある
これが無いと、C.UTF-8 になってしまう!
echo $LANG
C.UTF-8
>>857
.bashrc は既に大量に書いてあって、ややこしいから、
別のファイルに書くことにしてる

860 :
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi
.bashrc の最後の方に、上のように書いてある。
.bash_aliases が存在すれば、それを読み込むようになっているので、
そこに設定を書いている
別のファイルに分けておく方が、わかりやすいから

861 :
if [ -f ~/.bash_おれおれ ]; then
. ~/.bash_おれおれ
fi
とか付け足せよ

862 :
>>858
漏れのは今も、日本語言語パックを入れた後でも、C.UTF-8 になってる!

cat /etc/default/locale
LANG=C.UTF-8

だから、環境変数のexport が必要。
export LANG=ja_JP.UTF-8

863 :
入れたのずっと前だから知らん。
自分でやったかもしれないし、勝手になってたのかもしれん
ぶっちゃけどうでもいいやw

864 :
デフォルトロケール変更するのは
sudo update-locale LANG=ja_JP.utf8
とかじゃね?
言語パック入れただけだと変わらないと思ったけど

865 :
ピンポン

866 :
>>860
エイリアスでないものを.bash_aliasesに書くのは混乱のもとでは?
自分で追記するものは、.bashrcの最後にまとめて書いてるよ。
そういえば、自分も実際にどのようにやったかは思い出せないな。
langパックを入れたのは確かだけど。

867 :
でも、デフォルトロケールを変えても良いの?
皆さん、ja_JP.utf8 に変えてるの?

868 :
wsl環境でもdo-releaae-updateで行けるって話じゃねえの?
なんでそんな外法に出るんだ…何の参考書にもならないし、絶対真似すんなとしか言えない
チラシの裏にでも書いてママに見せて誉めてもらえ、余所様に見せるな、ってクソ話

869 :
>>866
漏れの、.bash_aliases の内容は、数行しかない
export LANG=ja_JP.UTF-8
export EDITOR=vim
shopt -s expand_aliases
で、少しエイリアスを書いてるだけだから

870 :
>>868
Ubuntu 16.04 を、18.04 に変える、簡単な方法があったの?
ただ、もし動かなかった時に、元に戻したいから、
18.04を別にインストールした方が安全かなと思って
16.04も、パッケージの更新を続けていたので、1GB 以上になってるから、
18.04の動作を確認するまで、しばらく消さずに置いておきたい

871 :
LXDを削除してdo-release-upgradeでいけたけどな

872 :
口では18.04が信頼できないので16.04を残しておきたいと言いつつ、非正規な手段で16.04環境を自分で壊している自覚すら無いアホか…
まあお前の環境がどうなろうと俺らの知ったことではないし、自分でぶっ壊した環境の尻拭いの救済を他人に求めるのも筋違いだ

873 :
自分自身のスタイルが固まっていて、ディストリのお仕着せ環境なんか向こうに回してオレ環境をバリバリ整備していくような話かと思ったら、言語ロケール設定をbashaliasに書くようなトンチキだし
無知なアホが自分で環境ぶっ壊して行くのは止めるつもりも謂われもないが、それをいちいちこんな所に書くなよ
誰も助けないし、助けるべきでもないアホだこういうのは

874 :
18.04 の最初の大量のパッケージ更新で、
下のようなログが、10ぐらい出てるけど、異常は無いの?
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory

875 :
wsl環境ではubuntuはwindowsストアに16.04と18.04が別のアプリとして存在していて、別個のアプリ扱いなので両方を平行して導入できるし
導入済みの16.04からdo-release-upgradeで18.04化した16.04はストア上では16.04扱いになるので、18.04環境を2つ平行で存在させることもできる
逆に言えば16.04から18.04にアップグレードした環境はストア上では18.04としては扱われない訳だが
将来的にはwindowsストア上でリリース毎に別扱いという状態はなくなって、ubuntuはLTSとその間の個別リリースにする予定だとは聞いてるけど、現時点ではそのようになっている

876 :
やっぱり、do-release-upgrade をやらずに、16.04/18.04 を別々に持っておきます
ところで、16.04のファイルを、18.04へコピーするには、どうやれば良いですか?
漏れのやり方は、一々、16.04のファイルをvim で開いて、
Windows 側のファイルに内容をコピーして、改行コードをLF に変える
次に、18.04を起動して、Windows側から、そのファイルをUbuntu側へコピーするという、
非常に面倒くさい事をしていますw

877 :
今、思いついたけど、

Linux 側から、Windows 側には、アクセスできるので、

16.04 から、コピーしたいフォルダー以下を再帰的に、Windows側へコピーして、
そのフォルダー以下のすべてのファイルの改行コードを、LF に変えてから、

18.04 を起動して、Windows側から、
そのフォルダー以下のすべてのファイルを、Ubuntu 側へコピーすると良さそう

878 :
なんで改行コード変えるんだ?

879 :
普通にWindowsからアクセスできるだろ

880 :
ICUというunicode関連のライブラリがあるんだが、gitレポジトリをGit for Windowsでクローンすると改行問題に遭遇する。
WSLのgitを使うことで回避可能。こういう時に、WSLのちょっとしたありがたみを感じる。

881 :
>>876
改行コード変える意味がわからんけど
sshでいいだろ

882 :
つーか普通にWSLからWindowsのディレクトリ見えてるんだから
コピーすればいいだけの話

883 :
>>876 >>877
エクスプローラーでコピペするだけ

884 :
バージョンアップのとき移行処理用のスクリプトが用意されておらず手作業でリポジトリを入れ替えてアップデート強行、発生した諸問題を逐一で泥縄対応…って、古いBSDのやり方だな
doreleaseupgradeはdebian系の作法、wsl環境では通用しないと勝手に思い込むユーザーは居たかもしれないが、ubuntuを含めdebian系を扱うなら存在自体は半ば常識かと思っていたが。

指摘後に環境を戻して再試行したとは到底思えないレスポンスタイム、自分で環境を壊しては直しもせず、やらかす手前に戻りもせずに次々と時代遅れの環境依存ネタを振り出すという時代錯誤な態度。
20年くらい昔に時折見かけたような、わざわざ喧嘩売りに来ておいて速攻で泣かされて逃げていくBSDキチガイを思い出す。
大方、仮想PCに突っ込んだWin10とwsl環境をデタラメに貶しながらぶっ壊してlinuxとwindowsを叩き、ひとしきりあざ笑った後でBSDに戻りますと言い出すような猿芝居じゃないのかこれ。

いずれにしても、自分で勝手に18.04のリポジトリに書き換えてapt updateしてしまった16.04環境なんて、もはや16.04環境ではないし、18.04にも移行し切れていない、半端にぶっ壊されたゴミ環境。
ここから叩き直して18.04に仕立てるくらいなら18.04を新規で入れた方が手間がないだろうし、残しておく意味もない。

885 :
ファイルコピーではなくファイル編集でテキストのコピーペーストを延々やってるってことかね

linuxユーザーって意識高い系のイメージ強いけどここまでトンチキなのもいるのか
読んでて頭痛くなってきた

886 :
今はもうトンチキがほとんどだよ

887 :
トンチキとかいう単語を久しぶりに見た

888 :
>とん‐ちき【頓痴気】
>
>《「ちき」は接尾語。「頓痴気」は当て字》とんま。まぬけ。人をからかい、ののしっていう語。「またへまをしたな、この頓痴気め」

889 :
へのかっぱ

890 :
とん-テキの方が良いです

891 :
今日の晩ごはんはトンカツとチキンにしよう

892 :
ウィナーウィナーチキンディナー

893 :
WSL では、Linux 側からは、Windows 側にアクセスできるけど、
Windows側からはアクセスできない!
だから、Windows側から触れない

改行コードが変わってしまうのは、クリップボード経由でコピーしたからw

cp コマンドを使ってみます

894 :
Windows側からWSLのディレクトリにアクセスできるだろ
何年前の話をしてるんだ?

895 :
wsl1ならば、アクセス自体はできるが、ファイルの変更すると
パーミッションを改めて与えないとファイルが認識できない

896 :
>>893
複数のディストリを起動していてもエクスプローラーでそれぞれのホームディレクトリとか参照できるし操作もできるぞ
無知で頑固なやつだなぁ

897 :
wsl$経由なら大丈夫じゃない?
オフラインで大量ファイルの引っ越しならtar使うかなぁ

898 :
俺は/mnt/c/Users/名前/directoryを~/以下に作ったシンボリックリンクからアクセスしてる
つまりほぼすべてのデータはWindows側にあるから、複数ディストリがあったとしても
同じようにアクセスできる

899 :
いまはwindows側にファイル置いてlinux側からアクセスしても全く問題ないんだっけ?

900 :
それは最初から問題ない

901 :
ところでWSL2で他のディストロのファイルシステムをクロスマウントできるって本当?

902 :
>>901
全部じゃないみたいだね
リリースノートにはあるけど具体的な手順が見つからん、と思ったら/mnt/wslがデフォで共有されてた
tmpfsだからインスタンスが全部落ちると中身は消える

903 :
>>895
そんなことにはならないが

904 :
>>893
https://docs.microsoft.com/ja-jp/windows/wsl/release-notes#build-18342

ユーザーが Windows から WSL ディストリビューションの Linux ファイルにアクセスできるようにする機能を追加しました。
これらのファイルには、コマンド ラインを使用してアクセスできます。また、ファイル エクスプローラーや VSCode などの Windows アプリもこれらのファイルと対話できます。
\\wsl$\<distro_name> に移動してファイルにアクセスするか、\\wsl$ に移動して実行中のディストリビューションの一覧を表示します。

905 :
\\wsl$ 経由でコピーすると実行権限が落ちるな
ユーザー名とかは、一般的なパターンでは変わらないだろうし、
むしろコピー先のユーザー名になってほしいぐらいだけど

実行権限がつくようなスクリプトはプログラムなわけで
どっちみちgit管理して、githubにアップしてるので実はどうでもいい
落ちたら落ちたでつければいいかな

906 :
>>905
実行権は落ちるが、コピー先のユーザー名にはなってくれるよ。

907 :
~/.bash_history をメモ帳などWindows向けテキストエディタで手動編集したい場合は、
\\wsl$経由じゃないとファイルのアクセス権限を正常に維持したまま保存できない。

908 :
Macでよくね?w
それか普通にLinuxインストールした方がいいよ

909 :
wslのスレまで来て、Macで良くね?とかLinux入れろよって人って、的はずれなことも分かってないんだろうな

910 :
>>907
それはエディタによる
まともなエディタであれば\\wsl$経由じゃなくても
アクセス権というかファイルのメタ情報が消えることはない

911 :
>>908
MacはBSDなので問題外

912 :
今年Office2016のサポートが切れる。
windowsより5年早い。
Apple&AdobeだけじゃなくMSにまで食い物
にされる信者乙w

913 :
OSSとやらは旧バージョンを半永久的にサポートしてくれるの?

914 :
永久ではないけど商用よりは長いね
4.3倍くらい長い

915 :
>>913
人が居なくなれば自然にサポから外れてしまいますね

916 :
>>908
macである時点で論外。
finderがexplorerよりマシになってからの話だな。

917 :
>>910
~/ 以下はlinuxアカウントのディレクトリなので通常のWindowsパスによる操作ではlinuxアカウントの権限情報が失われる。

918 :
>>911
LinuxとBSDなんて実質的に変わらないだろ…
カーネル読んだりメンテナーやってる人かな?w

919 :
似たような動きするし、似たような作りになってるな。
カーネルソースはLinuxもBSDもディレクトリ構造がそっくりというか大元からパクってるな。

920 :
>>907 >>910
\\wsl$ 経由ではないアクセスってどうやるの?
MSのページにそんなの載ってたっけ?

921 :
linuxの大元と言うとAmebaなのか、Minixなのか?
哲学的やな

922 :
UNIXのユーザーランドは正統のSysV系と傍流のBSDでAPIから違うし、コマンドのオプションや主流シェル等も分断してる
GNUはSysVのクローンでSysVの方言とみなすこともできるが、まあ実際はGNU/SysV/BSDで分断されてると言っていい
Linuxはほぼ全てのディストリでGNUを採用しているのでマイナーなBSDとは環境的にも互換性が無い
というかマカーの人はGNU由来のツールとか導入したらBSD由来の環境と断絶してるものがシステムに混在することになるけど、どうやって棲み分けてるんだろうね
設計思想的に異なるものが無節操に混在したグチャグチャの環境になってつらそう

923 :
>>912
Office2016の延長サポートは2025年10月14日まで
あと5年

924 :
>>920
/mnt/cからアクセスできるだろ
Windows上にファイルを置いてLinuxから
使うという使い方が最初の使い方なんだよ

925 :
>>918
> LinuxとBSDなんて実質的に変わらないだろ…
機能的に Linux(GNU)> BSD なので
BSDしか使ってない人は、GNUと変わらないように見えるかもしれんが
普段GNUを使ってるとBSDのコマンドは不便すぎて苦痛

926 :
あとMacはCLIコマンドがOS標準だと基本的なものしか無い。
Homebrewなどのサードパーティの
パッケージ管理システムに頼らないといけないのもいや

927 :
>>923
windowsはな。Mac用は今年で延長サポート無し

928 :
>>922
普通にMacでgcc使ってて一度も問題になったことなどないが…

929 :
>>924
.bash_history編集するのにわざわざ/mnt/c?
それって効率悪いよね

930 :
>>926
Homebrewが面倒ってもう宗教的ないちゃもんでしかないよ、あんた

931 :
ID:6Fy97RgUはマイクロソフトの信者さんなんだろうな、、
大人しくWindowsだけ使ってればいいのに
こういう人にLinuxを騙って欲しくないわ…

932 :
>>927
Mac版Office延長サポートなしワロスw
>>929
.bash_historyなんか編集してはいけません
そもそも実行権限の有無が関係ないファイルなんてどうでもいい
>>930
Homebrewが面倒なんて言ってないぞ
cygwinなどと同じで、サードパーティのパッケージ管理システムだって言ってるの

933 :
>>932
一応ソース
http://pcclick.seesaa.net/article/460420086.html
MS純正もあるけど長文でうざいので
省略版

934 :
Win/Mac/Linux侵入コンテストはMacBook Air陥落で終了、所要時間2分
https://japanese.engadget.com/2008/03/28/win-mac-linux-macbook-air-pwnd/

935 :
>>929
あと効率とかシンボリックリンクはるだけだろ

936 :
>>932
参考として.bash_historyを引き合いに出したけど実機でも編集しないし編集するもんじゃないとは思ってる、チョイスミス、悪い。
単にアクセス方法を聞いてみたかっただけ。

937 :
だからディストリ間で共有したいなら、Windows側の
/mnt/c/Users/ユーザー名/以下に置いて
シンボリックリンクでも貼ればいいだけだって言ってる

938 :
>>934
そんな化石記事を引っ張り出してドヤられても・・・

939 :
>>935
普段WSLからWindowsのファイルはさわらず、WSL内かWindowsからアクセスするのでWSL内へのショートカットを張ってるよ。
WSLは実機に落とし込むための仮環境的な使い方なので。

940 :
>>937
コピーや移動はするがディストリ間共有はしないよ

941 :
>>932
> .bash_historyなんか編集してはいけません
おやおや精神勝利法を使いましたか。

942 :
/mnt/cからだとwslのrootfsは触れないと思うが…
(例えば1909だとパーミッションが無い)
ホームディレクトリが/mnt/c配下にあるって事?

943 :
.bash_history を見たら、同じコマンドばっかりw

これは面倒。
重複排除した方がよい

>>939
漏れはいつも、Linux 側から、Windows 側を、grep してる

944 :
>>943
まぁ、それは普通の使い方

945 :
Windows 10のWindows Subsystem for Linux(WSL)を日常的に活用する
https://www.clear-code.com/blog/2017/11/8.html

この記事は、2019/4/10 に追記もしてるから、わりと新しい

946 :
>>941

お前はスタートラインにも立ってないから>>936よめな
> 参考として.bash_historyを引き合いに出したけど実機でも編集しないし編集するもんじゃないとは思ってる、チョイスミス、悪い。

947 :
「できないこと」を「してはいけないこと」として甘受する奴隷精神。そこに進歩やビジネスチャンスはない。

948 :
鍋奉行やマナー奉行みたいなのがしゃしゃり出てきて、あれはするな、これはするな、と言い出したら、そのコミュニティは終わり。

949 :
「それは今はできないがいずれできるようにすべき」と考えることができない人は、開発や品質向上プログラムに参加しないほうがいい。
「それはするな」と勝手なルールを作る奉行気質の人は、コミュニティから出ていくべき。進歩が止まる。

950 :
始まる前から腐りかけているのが心配。

951 :
土曜日も出勤してくれ

「それは今はできないがいずれできるようにすべき」と考えることができない人は、開発や品質向上プログラムに参加しないほうがいい。

952 :
「それをするな」は異常系処理として実装されなければならない。「それをするな」で心の中に納めてしまうと、不具合が残ったままになる。
岡山県の排水溝のような無様な姿を晒しているのがLinuxコミュニティの現実。

953 :
「電源を切るな」は異常系処理として実装されなければならない。「電源を切るな」で心の中に納めてしまうと、不具合が残ったままになる。
電源が切られても問題がないようなシステムを作らねばいけない。採算度外視や!

954 :
3年で転落死79人…「人食い用水路」 車ごと飲み込む岡山県の側溝の今を探る|くるまのニュース
https://kuruma-news.jp/post/145436

955 :
>>953
日本の原発事業がまさにそれ。事なかれ完全主義を求めた結果、かえって進歩が止まる。

956 :
完全にやれ

「それは今はできないがいずれできるようにすべき」と考えることができない人は、開発や品質向上プログラムに参加しないほうがいい。

957 :
玄人気取りの奉行がコミュニティの進歩を止める。

958 :
異常系対応に価値を置かない人がコミュニティに居座って不具合報告する人を威嚇している状態。

959 :
明日太陽が昇らないときのことも考えるべきである

960 :
オープンソースコミュニティにマナー奉行が居座るのはなぜなのか。ソースコードではなく他人を管理することに喜びを感じるからか。

961 :
>>959
免責事項を明記しておけばOK。マナー奉行の要求に屈して心の中で納めるのではなく、公にするのが筋。

962 :
>>961
「それをするな」

963 :
文句あるなら使うな。

964 :
WindowsとLinuxを透過的にすることに価値を見出すからこそのWSL。マナー奉行はいらない。

965 :
>>963
ストイックな自分に酔いしれるオープンソースの甘え体質、乙。
文句ある人も使えるようにしないと、いつまでたってもすそ野が広がらない。

966 :
おまえに使わせるために作ったわけじゃないだろ。

967 :
文句ある人自身がforkして改良すればいいんだよ
それが許されてるのがOSSってやつだ

968 :
言い出しっぺの法則ってやつな。

969 :
プロシュート兄貴も言っていたが。
バグってると心の中で思ったなら。
その時すでにパッチが上がってるものなんだ。
だから俺たちにバグなんか無え、わかったか。

970 :
>>969
そうだな。岡山の用水路はお前らに使わせるために作ったわけじゃないから当然だ。

971 :
>>970
オメーは「ママッ子」なんだよペッシ!ビビったんだ・・・

972 :
よう分からんが
岡山の用水路とやらの問題を他県の人間に周知させるために連投荒らし装って宣伝活動してるんかいな
こんな過疎スレよりもっと人の多い所でやるほうが効率いいのでは?

973 :
このポエム朗読独演会はいつになれば終わるのか

974 :
やけにスレが伸びてると見に来たらこれか
俺は天気いいから散歩ついでに鍋焼きうどん食いに行ってたのになw

975 :
       / ̄ ̄ ̄ ̄ ̄\
       |  おまえらも |
  ∩_∩  |          |
 (´ー`) <  暇な奴ら   |
 (   )  |          |
  | | |   |  だなぁ    |
 (___)__)  \_____/

976 :
ここは低レベルなインターネッツですね。

977 :
   ∧_∧  / ̄ ̄ ̄ ̄ ̄
  ( ´∀`)< オマエモナー
  (    )  \_____
  | | |
  (__)_)

978 :
所詮はLinuxマンセースレだからな。

979 :
Windows上でLinuxサブシステムを実現・実行する環境のスレで、Linux以外の何かの方が優位でないと御不満か。
頭おかしいだろ。

980 :
コミュニティというのはPR送る場所で、文句言う場所ではないからな。
何勘違いしてんだコイツ。

981 :
>>926
windowsでもscoopとか使うだろ

982 :
>>981
scoopというのもあるのか?
Windowsのパッケージマネージャーは
MS公式のPackageManagementしか無いと思っていた
いつの間にかWindows環境も充実してるんだね

983 :
chocolateyもあるのに

984 :
scoopにもう一票

985 :
scoopマジ便利

986 :
おすすめはChocolatey

987 :
chocoは管理者権限いるし、アンインストールの挙動微妙だしなぁ
scoop知ったらscoop一択だわ

988 :
Chocolateyもscoopも共存してたけど、確かに開発環境だけならscoopの方が便利かもな。
scoopで管理しているのは今のところgiboだけ。

989 :
>>1
誘導しますんで下記の板でやってくだすれ
Windows板
http://mevius.2ch.sc/win/

990 :
たとえ、ホストOS が、Windows 10 でも、
使うOS は、各種Linux ディス鳥だから、この板でよい!

MS ストアにある、多くのディス鳥が、Windows の訳ないだろw

991 :
ここはWSL自体について語るスレなのか
それともWSL上で動かすディストロについて語るスレなのか

992 :
どっちもありだろ
ディストロなし、頼らずに動かすのは稀だ

993 :
>>989
板はここでいい

994 :
新スレ立てたのなら教えてくれよ意地悪な連中だ
https://mao.2ch.sc/test/read.cgi/linux/1579395785/

995 :
板はここでいいと思うけど
いまどき香具師とか漏れとか言ってる恥ずかしい奴はもう黙れ
前スレの日記も酷い内容だったがさすがにもう見てらんない

996 :
>>995
∧_∧  / ̄ ̄ ̄ ̄ ̄
( ´∀`)< オマエモナー
(    )  \_____
| | |
(__)_)

997 :
新スレからわざわざコピペすんなよ
マルチだと思われるやん

998 :2020/01/29
店仕舞い間近

SpeedybootはGPL違反?
coLinux野郎ぜ! Part7
Linuxmint
2chproxy.pl
デスクトップでLinuxが普及する訳ないと思った時 14
skipstoneスレ
Ubuntu(゚听)イラネで1000目指すスレ Part2
【初心者】Ubuntu Linux 123【本スレ】
【初心者】Ubuntu Linux 128【本スレ】
Kona Linux 5杯目
--------------------
創価学会と冤罪ねつ造(警察との癒着について)
浜田省吾 ON THE ROAD Part191 [無断転載禁止](C)2ch.net
【戦場の絆】どんな質問にも全力で答えるスレpart72
【PS4/XBOX1】 Dead by Daylight part434
Q-CHAN牧師の伝道部屋15
【来月は】エレカシの噂【ラジオ】
【大阪維新】日本維新の会295【大阪都再始動】
寝る前にこのまま眠るように死ぬことを祈るスレ8
【日本一】マルハン 加島店 3箱目【負けず嫌い】
☆雷が嫌いな人の集い49☆
ふるさと納税返礼品に関する情報交換スレ2
【決済】セブン‐イレブンが6月からNFC Type A/B非接触決済に対応へ
【社長売上持って逃亡】スーパー北野倒産【京都】
marvel オールスターバトル ☆35
運転免許を簡単に取れる国
スパロボで苦戦した敵
(´・ω・`)ろくでなしショボンのなかよし広場 189
関西弁をNGワードにしてください!!
中央美術学園
■性欲■日本人女性の売春ツアーを語れ!!■処理■
TOP カテ一覧 スレ一覧 100〜終まで 2ch元 削除依頼