X


【Bash】Windows Subsystem for Linux【WSL】3

レス数が950を超えています。1000を超えると書き込みができなくなります。
2018/06/05(火) 04:49:41.27ID:ZoJ8+rBb
Install the Windows Subsystem for Linux
https://docs.microsoft.com/en-us/windows/wsl/install-win10

前スレ
【Bash】Windows Subsystem for Linux【Ubuntu】2 https://mao.5ch.net/test/read.cgi/linux/1468149353/
2018/10/31(水) 11:47:57.85ID:qwJ4s5+d
kill出来ないなら1809からだけど、wslconfig /terminateで再起動しちゃえば良いのでは
2018/10/31(水) 15:02:39.97ID:8Aa5vq4y
何度も言うけど、I/Oが遅いのは、MicrosoftがさっさとNTFSを捨てないから。
さっさと、NTFSなんか捨てるべき。
2018/10/31(水) 15:23:20.59ID:tg1fbO7V
>>892
1809より前でもwslサービス停止させればkillできたけど、
書き込み処理中でも強引に全体を終了させるからファイル
破損すると被害大きかった
2018/10/31(水) 15:40:43.59ID:u9fQvkoU
https://www.sqlite.org/download.html
から
SQLiteの公式バイナリ落として、WindowsネイティブとLinux on WSLとでどれくらい違いがあるんだろうか?
単純なSQLでベンチマーク取ってみると10倍くらい差が出そう。
2018/10/31(水) 16:30:32.03ID:bF/gw1Xi
NTFSが原因ではないでしょ。WindowsネイティブとLinux on WSLはともにNTFSなのだから。
2018/10/31(水) 16:32:33.65ID:8K2ZlZTx
(Defenderを切るのです…)
2018/10/31(水) 16:40:31.82ID:tg1fbO7V
>>895
たとえば、
openbenchmarkにある、同じマシンでのsqliteへのinsertionテストで
ubuntuだと2.27秒の処理がwindows binaryだと24秒で十倍くらい
さらに同じマシンで
ubuntu:2.62秒、Ubuntu@wslで60秒
となってる
このベンチ取った人はopenbenchmarkの中の人
test suite見るとwindowsのsqliteは32bit版みたい
https://openbenchmarking.org/system/1810126-SK-WSLWINDOW35/Windows%2010%20October%20WSL
2018/10/31(水) 16:48:34.19ID:J+AnuWvN
>>897
ほんこれ
2018/10/31(水) 17:06:58.50ID:u9fQvkoU
>>898
いくら32bitのEXEでも遅すぎる・・・ワロタww
2018/10/31(水) 17:08:15.90ID:u9fQvkoU
遅いのはマジでNTFSのせいかもしれんな。
>>893を疑ったけどその通りみたいだw
2018/10/31(水) 17:34:16.77ID:weiO8F14
前スレで自分がそもそもNTFSが遅いんじゃないかと書いたらボロクソに叩かれたのを思い出したわw
http://mao.5ch.net/test/read.cgi/linux/1468149353/715-721n

しかしNTFSってWindows Serverとかでも使われてるわけで、もしNTFSが原因で一桁遅いんだったら、IISとかSQL Serverとか遅くて製品として成り立たなくなっちゃうと思うんだけど、そういう話は聞いたことないしなあ。
2018/10/31(水) 18:03:33.00ID:KHyUGfIf
>>898
NTFSが原因ってことは、
それがexFATにしたら10倍になるってこと?

exFATはえーなw
2018/10/31(水) 18:04:53.43ID:KHyUGfIf
>>902
> 前スレで自分がそもそもNTFSが遅いんじゃないかと書いたらボロクソに叩かれたのを思い出したわw

そりゃそうだな。

NTFSが遅いと仮定するならば、NTFSから変更すれば
Windowsは爆速になると言っているようなもんだ

少し考えばありえないってことぐらいわかるだろう
2018/10/31(水) 18:09:01.09ID:6HoLP0ek
Linux on VirtualBox on Windows はバリバリ速いよ。
NTFS上の1ファイルにファイルシステムがあるから?
やはりDefenderとかが悪さしているのかも。調べてみるか。
2018/10/31(水) 18:15:06.29ID:KHyUGfIf
>>898
10倍っていうのはforkの遅さと一致するんだわ
俺の計測だと、Linuxではfork1回で0.2ミリ秒だがWSLだと2.5ミリ秒になる
たった10000回forkしただけでLinuxで2秒がWSLで25秒になるわけだ
2018/10/31(水) 18:16:02.49ID:KHyUGfIf
>>905
> NTFS上の1ファイルにファイルシステムがあるから?
1ファイルだろうが、アクセスはブロック単位だろw

ほれみろ、Linux on VirtualBox on Windows がバリバリ速いことからも
NTFSに原因がないってことは明らかじゃねーかw
2018/10/31(水) 18:16:35.30ID:KHyUGfIf
ちなみにSQLiteも1データベース=1ファイルなので
1ファイルだと速いことは否定される
2018/10/31(水) 18:18:46.76ID:KHyUGfIf
>>902

WSLで遅い
WindowsはNTFSだ

この2つになんの関連も示せてないのに、NTFS使ってるから遅いんだって
言ってるから馬鹿にされるわけで

例えばNTFSだと遅いならば他の条件を同じにして
NTFSからexFATに変えるとかして検証ができるはず
2018/10/31(水) 18:44:48.74ID:6HoLP0ek
>>906
これでテストしてみた。
while :; do date; done | uniq -c
Hyper-V動かしているUbuntuとの比較だけど、こんなに違うんだよな。
・Hyper-V
1598 2018年 10月 31日 水曜日 18:36:16 JST
・WSL
48 2018年 10月 31日 水曜日 18:35:47 JST
Disk I/O の話ではなくなってるけど。
2018/10/31(水) 19:22:20.53ID:6HoLP0ek
上記のテストは、ウイルススキャンの影響も受けるようです。
47 2018年 10月 31日 水曜日 19:18:07 JST
47 2018年 10月 31日 水曜日 19:18:08 JST
47 2018年 10月 31日 水曜日 19:18:09 JST
47 2018年 10月 31日 水曜日 19:18:10 JST
136 2018年 10月 31日 水曜日 19:18:11 JST ← McAfee VirusScan のオンラインスキャンを手動停止
167 2018年 10月 31日 水曜日 19:18:12 JST
162 2018年 10月 31日 水曜日 19:18:13 JST
129 2018年 10月 31日 水曜日 19:18:14 JST
153 2018年 10月 31日 水曜日 19:18:15 JST
152 2018年 10月 31日 水曜日 19:18:16 JST
153 2018年 10月 31日 水曜日 19:18:17 JST
151 2018年 10月 31日 水曜日 19:18:18 JST
36 2018年 10月 31日 水曜日 19:18:19 JST ← しばらくすると 停止していた Window Defender が動き出す
27 2018年 10月 31日 水曜日 19:18:20 JST
26 2018年 10月 31日 水曜日 19:18:21 JST
27 2018年 10月 31日 水曜日 19:18:22 JST
24 2018年 10月 31日 水曜日 19:18:23 JST
2018/10/31(水) 19:37:58.06ID:KHyUGfIf
>>991
おお、すげぇ。確かに速くなった。

とある処理を各シェル実行してるんだが、だいたい速くなった
一つkshだけ殆ど変わらなかったが、このシェルの特徴として他のシェルでは
サブシェル(forkが行われる)で実行する所をサブシェル使わずに
高速化してるのでこの結果は納得がいく所

参考 http://magicant.txt-nifty.com/main/2007/12/post_b430.html

プロセス起動時のメモリチェックでも時間がかかってるんだな
2018/10/31(水) 22:31:13.29ID:K+Zm0bn7
日経Linux11月号の特別付録Windows版Linuxのすべてがわかる本、
買ってみたけどこれいらんなぁ
100ページとあるが、半分以上はLinuxのコマンド集とかになってるし、
今時点の記事なのにApril2018Updateに関わる事しか言ってないし
tmux書いてるなら罫線が乱れることも書けばよいのに(設定で直るけど
2018/11/01(木) 01:15:23.03ID:YSSOTNb5
雑誌は安いが失った時間は高くつく
Windows Subsystem for GNUの速度測定をしてる君たちの着地点はどこなんだい?
2018/11/01(木) 01:33:00.20ID:ukWML0sX
>>914
もう着地してる。遅い原因はわかったので、その機能を減らすことで
速度を上げることに成功した。WSLでも快適なツールに仕上がったよ
916880
垢版 |
2018/11/01(木) 03:25:04.70ID:B4HSlXBB
日経Linux 11月号の付録の、WSL 特集、100 ページの冊子

コマンドの説明も、Windows のpowershell で処理して、Linux でgrep するとか、
powershell.exe 何々 | grep

Linuxのls を、Windowsのクリップボードに入れるとか、
ただし、改行がLF だけになるけど、
ls | clip.exe

Windows, Linux双方のコマンドが入り乱れて、なかなか面白い
2018/11/01(木) 10:29:42.11ID:UYW3lBp2
WSL will not work on this build. If you require WSL to work, you can rollback to Build 18267.
https://blogs.windows.com/windowsexperience/2018/10/31/announcing-windows-10-insider-preview-build-18272/
2018/11/01(木) 10:41:57.64ID:zrAWDiO/
>>917
めんどくせーな。
WSLでDebianパッケージのFFmpeg使ってたのに。
2018/11/01(木) 10:50:34.87ID:ukWML0sX
>>918
プレビュー版を使わなければいい
2018/11/01(木) 10:56:33.04ID:UGvjJoVP
新機能試したいならInsider Preview使うしかない。
WindowsごとHyper-Vに入れとけばいい。
2018/11/01(木) 11:27:43.62ID:zrAWDiO/
>>919
>>920
とりあえず春まで待つことにします…
2018/11/02(金) 15:44:55.66ID:Qdg8eyUy
18272のWSLは残念なことになってるけどエクスプローラーに突如現れたWSLって名前のフォルダは何だろうな(こちらに同じように何も機能していない)
2018/11/02(金) 22:57:11.27ID:oYfoVFEa
>>920
> 新機能試したいならInsider Preview使うしかない。

WSLはもう新機能じゃないじゃん。
安定版WSLが提供されてるのに、あえて開発版を使う必要はない
2018/11/02(金) 23:03:05.32ID:eyr7ZKEC
WSLにも新機能出てくるから、
新機能試したいならInsider Preview使うしかないってのは別に間違いでもないでしょ

そういうのに興味ないなら別に追随しなくて良い
2018/11/02(金) 23:35:19.39ID:6ft4OM4J
しかしIPの最新ビルドではWSLが動作しないのであった
2018/11/02(金) 23:37:09.04ID:ptkULAu8
既存のWSLは実用的だけど、まだ伸びしろもある。
たとえば、wslpathは作りかけっぽいし、OpenGLはなんか変。
デーモンを自動実行する上品な方法もあったらいいなと思う。
2018/11/03(土) 02:34:46.67ID:W8fhmCw9
>>924
なんか試したい新機能あるの?
2018/11/03(土) 04:37:40.87ID:/2tiGouT
>>927
人それぞれだろうからリリースノートに気になるのがあったらじゃないのかねぇ
https://docs.microsoft.com/en-us/windows/wsl/release-notes

1803や1809では機能的に変わった所があったからな
2018/11/03(土) 07:19:23.35ID:mDVABffR
最近だとdockerに必要なMS_SLAVEの
サポートがあった
2018/11/03(土) 11:14:50.05ID:PfkSQJ7I
Dockerサポートする気があるのか
2018/11/03(土) 11:39:36.88ID:W8fhmCw9
LinuxカーネルのAPIとの互換性を高くすればDockerが動くのは必然

Dockerが動くのを視野に入れてると思うが、
Dockerを個別にサポートしているのではなく、
Dockerが使用しているカーネルのプロセス分離とか
そういったAPIがWindows上に搭載された結果だろう
932login:Penguin
垢版 |
2018/11/05(月) 22:31:00.46ID:9tNeL5VO
日経Linux 11月号に載っている、
端末上で動く、CUI のファイラー、ranger は、Ubuntu 16.04 で動きますか?

他には、LXD (Linux Containers)も動きますか?
2018/11/06(火) 02:04:10.54ID:XLUOnSMa
動かしてみればいいじゃん
934932
垢版 |
2018/11/06(火) 03:28:24.88ID:3phxz94y
Ubuntu 16.04 で、ranger をインストールできた

sudo apt install ranger

設定ファイルをコピーする。
ranger --copy-config=all
2018/11/06(火) 08:54:32.30ID:03ixmVH3
What’s New for WSL in the Windows 10 October 2018 Update
https://blogs.msdn.microsoft.com/commandline/2018/11/05/whats-new-for-wsl-in-the-windows-10-october-2018-update/
2018/11/06(火) 11:12:00.67ID:ELX6+dT+
>>935
ついに、メモ帳がLFに対応するのか…
2018/11/06(火) 12:22:22.96ID:bXr3BB3+
デフォルトの改行コードもLFでいい。
Macもとっくの昔にそうなってるし、テキストデータオンリーならそれで困らないと思う。
2018/11/06(火) 13:21:43.67ID:7l+DzFcO
BOMも廃止しなさい
2018/11/06(火) 13:54:50.57ID:CE01juj7
>>936
> ついに、メモ帳がLFに対応するのか…

もう対応してる。

rsyncを使ってバックアップで、改行コードがLFで
出してるのがあったんだが、サクッと確認するのが楽になった。
2018/11/06(火) 14:41:01.16ID:bWVr+9b2
最新の安定バージョンでついに対応と言った936に対してもう対応してるとかアスペかよ
2018/11/06(火) 14:47:18.58ID:CE01juj7
>>940

>>936が言ったのは、「ついに対応した」ではなくて
「ついに対応するのか」だからな。

つまり>>936は未来の話をしてる。
だから、もうみんなに公開されている安定版の
October 2018 Update ですでに対応していると言った。

理解できた?本物のアスペさん
2018/11/06(火) 16:04:31.07ID:IyC5Rl4z
1809にした人は知ってる事だから、そいつが無知だったんだろ
943login:Penguin
垢版 |
2018/11/06(火) 19:04:10.82ID:GGFQveOH
分割されたバイナリファイルをmsysのcat.exeで結合したら暗黙で改行コード変換されたことに気づけず苦しむところまでが遠足です。
2018/11/06(火) 21:18:40.08ID:7mpws/1F
>>938
Windows 10のInsider PreviewでシステムロケールをUTF-8にするオプションが追加される
https://srad.jp/story/17/11/14/0640253/
2018/11/06(火) 22:30:27.98ID:CE01juj7
>>943
catがテキストモードで開いてるわけねーだろ
変換なんかしねーよ。
946932
垢版 |
2018/11/06(火) 22:45:44.30ID:3phxz94y
日経Linux 11月号には、

端末上で動く、CUI のファイラー、ranger の他にも、
mc というファイラーも載っている

ただし、どのバージョンのOS で動くかは、書いていないけど

sudo apt install mc
2018/11/06(火) 22:51:34.92ID:3phxz94y
Windows のExplorer では、BOM 付きUTF-8 じゃないと、sjis と区別できないから、文字列検索できない

ただし、BOM付きにするとバグるアプリがあるから、漏れは、BOMなしにしている。
それで文字列検索は、WSL 側のgrep を使う
2018/11/06(火) 22:55:05.34ID:7I/aBvI8
>>946
midnight commanderかな?
懐かしいね
949login:Penguin
垢版 |
2018/11/06(火) 23:00:04.91ID:hVtyeU5d
iconvは入力文字のコードがUTF8前提で、最初7ビットアスキーの範囲で途中からSJIS交じりのファイルを変換させると字化けしまくるバグ(ばぐ?しよう?)があるからキライ。
2018/11/06(火) 23:03:49.50ID:CE01juj7
> iconvは入力文字のコードがUTF8前提で、

入力文字コードの指定ぐらいしろ
本当にアホ
2018/11/06(火) 23:24:13.86ID:m1ufrJ5r
iconvで-f指定しないでCP932を変換しようとする猛者か
2018/11/07(水) 00:18:48.52ID:mxffy5Jo
天才的なバカ現るw
2018/11/07(水) 01:08:21.23ID:tPtVSurb
わかってねえのはてめえらだ!
天才は何をしても許されるんだぞ〜!
2018/11/07(水) 01:23:59.46ID:ms4ssKlr
ウェブページのHTMLを、ウインドーズのメモ帳で開くと、ダーーーーーーーーーーっと全部一行に表示されたことありますよね?
その現象が、ウインドズーを他のオペレーティングシステムと連携させて使用する上での最大の問題点の見える化です。

この問題は一見簡単に解決できそうですが、実際は今の人類のIT技術では解決不可能です。
格段にAIが進歩すれば、あるいはギリギリ解決できるかできないか、それぐらい難しいテーマです。
この問題を解決できる究極アルゴリズムを発明できる人なら、次のgoogleになれます。
2018/11/07(水) 01:50:05.88ID:v7o9U8jP
意訳「メモ帳が改行コードLFに対応したんだよ」というレスをしてください。お願いします。
2018/11/07(水) 02:00:00.64ID:D9iFbs5Q
>>941
一般提供絶賛停止中なのに安定版とかw
2018/11/07(水) 02:28:25.27ID:nOyk7sd9
>>954
10/3 から正常にメモ帳で参照できるようになりました。不思議です。
2018/11/07(水) 02:42:41.51ID:ms4ssKlr
>>957
究極アルゴリズム、完成していたのか…!
2018/11/07(水) 11:11:21.61ID:MDpN/AEY
すげえマジレスするけど、一度スプリットして再度改行コード入れるだけやで。
エディタの改行コードを選べれば解決なんやで。
windowsの問題はsjisと改行コード。これをスッキリ解決してくれたらネイティブで使えるし、
bashの連携もうまくいくねん。Bashだとすんなりうまくいくcurlのコマンドもwindowsネイティブなら
sjisで日本語送るからサーバーではねられて死ぬ。
2018/11/07(水) 11:46:24.02ID:v7o9U8jP
>>959
日本語専用の文字コードであるsjisが
日本以外の世界中のWindowsで使われるわけ無いだろw
こう突っ込むと、sjisとか言ってたやつは逃げるんだよなw
2018/11/07(水) 12:21:50.17ID:MDpN/AEY
>>960
世界規模で考えてるとはご苦労だな。俺もコンソールやコマンドプロンプトに日本語は打ちたくないけども
日本人だし、curlでアクセスしたいサイトは日本語のサイトなんだ。
俺は快適にPCを使うのに母国語が使えるっていうのは大きなポイントでね。
あとアジア圏には全く同じ問題がつきまとうんでそのへんの理解を頼むわ。英語が母国語の地域は少ないんだぞ。
2018/11/07(水) 12:26:49.81ID:v7o9U8jP
> 世界規模で考えてるとはご苦労だな。

そりゃOSなんだから世界規模で考えてるだろ

で、いつからWindowsはSJISを世界規模で
使うようになったんだ?
いい加減嘘つくのやめろよ
2018/11/07(水) 12:37:21.39ID:MDpN/AEY
>>962
煽るのは自由にしてくれたらいいんだが、展開が早すぎないか?
「windowsの問題がsjisと改行コード」の文節が「WindowsはSJISを世界規模で使う」になったんだ?
今回は人を嘘つきにするのが早いな。嘘つきくんと呼ぼうか。
ローカルな話と理解してくれるならローカルな問題だとわかりそうなもんだが、う〜ん、なにか別の意図があるに違いない。
僕の知らないグローバルななにかが。
あと、世界規模の話すると、海外PCから日本語見ると文字化けするんだよね。あれはグローバルな問題じゃない?
2018/11/07(水) 12:38:59.89ID:HgmPaRgu
そういや、AIXのデフォルトってまだSJISなん?とっくに変わった?
2018/11/07(水) 12:42:59.18ID:tPtVSurb
SolarisもSJISだったな。
2018/11/07(水) 14:24:04.47ID:v7o9U8jP
>>963
そりゃ日本以外ではSJIS使ってないんだから、
SJISに問題はないってことになるからねw
2018/11/07(水) 20:27:29.53ID:xIHeRZSi
SJIS時代の比較関数はUnicode対応された今でも世界中のWindowsで静かに生きている。
これは、Windows95とWindowsNTで同じソート結果が必要だったことによる。
2018/11/07(水) 22:42:05.02ID:AYyN+HB9
>>965
EUCだよ
SJISにも設定出来るけどな
2018/11/08(木) 00:46:31.68ID:Ueh2RoXc
>>957
メモ帳以外の普通のエディタは、文字コード・改行変換できる

Windows10 October 2018 Update(1809)では、WSL・Windows の自動変換ができるようになったのかも?

漏れのは、1803 だから、Ubuntu 16.04.5 だけど、未だに、Ctrl+C, Ctrl+V でコピペできない

winver というコマンドで、OS バージョンでも見てみれば?
2018/11/08(木) 02:08:50.81ID:985q7oGK
1809は改行なおしに力いてれきたのな
まだ3だがうp知こない
はや来ぼんぬ
2018/11/08(木) 03:10:46.46ID:Ueh2RoXc
Linux の端末では、コントロールキーはシグナルに使われるから、
ショートカットを使えないようにしているのか

Ctrl+Shift+C, Ctrl+Shift+V で、コピペ出来るようになるのかも
2018/11/08(木) 03:16:29.59ID:HSa3bpy4
>>971
1809 ではそれでコピペができます
2018/11/08(木) 08:57:26.91ID:2Vy+xVl9
Announcing Windows 10 Insider Preview Build 18277
https://blogs.windows.com/windowsexperience/2018/11/07/announcing-windows-10-insider-preview-build-18277/

> We fixed the issue causing WSL to not work in Build 18272. Thanks for your patience.
2018/11/08(木) 18:01:17.21ID:h/WOFYgQ
Microsoft Storeにて2種類のLinuxディストロが配信開始
https://pc.watch.impress.co.jp/docs/news/1152338.html

Windows 10上でのLinuxの動作をサポートする「Windows Subsystem for Linux(WSL)」機能への追加Linuxディストリビューションの配信をMicrosoft Storeで開始した

配信が開始されたのはWLinux、OpenSUSE 15/SLES 15の2種類。
WLinuxに関しては有償での配布で価格は2,350円となっているが、現在期間限定で1,150円で販売されている。

このほか、ARM版Windows 10上のWSLにおけるUbuntu 18.04の動作が新たにサポートされ、
エクスプローラ上のコンテキストメニューからLinuxシェルが開けるようになったり、コンソール上でのコピーアンドペーストが使えるようになったりと、細かな機能追加もされている。
2018/11/08(木) 21:33:18.91ID:zorDwTYQ
WLinuxなら自分で入れれば良いと思うんだけどな
githubで公開されてるんだから
特別なものでもなく中身Debianだし
2018/11/08(木) 21:36:57.31ID:c9bskb9T
何言ってっだこいつ
2018/11/08(木) 21:47:39.08ID:zorDwTYQ
何言ってんだも何も無料で入れられるって言ってるんだが?
2018/11/08(木) 22:20:45.25ID:p9+Em52w
「何言ってっだ」という東北なまり?に微妙に心が安らぐ。
2018/11/09(金) 00:19:12.35ID:nZbJ72jS
WSLに追加する手順を教えろくだせー
2018/11/09(金) 00:52:20.26ID:6LiDE00M
https://news.mynavi.jp/article/20180328-607196/
2018/11/09(金) 01:02:32.29ID:eMu9wHXZ
WLinuxが記事になってる時、東南アジアにいて、Windowsの国と地域の設定を東南アジアの国にしてたせいか、WLinuxが100%割引になってたんよね
それで買った
2018/11/09(金) 02:05:50.82ID:nZbJ72jS
面倒だわw
2018/11/09(金) 07:42:55.32ID:F2RsN0P0
俺はこれでDドライブとかにWSL環境構築してるわ

https://github.com/DDoSolitary/LxRunOffline
984login:Penguin
垢版 |
2018/11/09(金) 12:48:55.28ID:3WMswF4A
-OyomiオプションつきでWSL版mecabで開いた状態だと、Windows版mecabで同じ辞書フォルダを開けない。
Windows側でCreateFile()の共有指定をFILE_SHARE_READからFILE_SHARE_READ | FILE_SHARE_WRITEに変更して再ビルドすることで回避できた。
同じ問題が、いろんなアプリで起きそうな予感。

WSLで読み取りで開いているファイルにアクセスできないWindowsアプリとか潜在的に多そう。
ちなみにMSのCライブラリだとfopen(filename, "r") でFILE_SHARE_READ | FILE_SHARE_WRITEが指定されるので大丈夫。
CreateFile()というWindows固有のWin32APIを直接呼び出すコードで問題が起きる可能性がある。
読み取りで開くからといって共有指定をILE_SHARE_READ | FILE_SHARE_WRITE ではなくFILE_SHARE_READだけにするとハマる。
2018/11/09(金) 13:10:43.96ID:93OjXMJz
なんだそのクソ仕様は・・・
986984
垢版 |
2018/11/09(金) 13:51:52.09ID:3WMswF4A
説明補足。Mecabは、オープンソース 形態素解析エンジン。
以下URLが公式。多分。
http://taku910.github.io/mecab/

>>984 で再ビルドしたってのはソースを修正してmecabバイナリ群をリビルトしたという意味。
CreateFile()を呼び出している箇所は一ヶ所だけなので修正はさほど手間ではない。

開発者の方には、そろそろMecabの最新版を公式リリースしてもらいたい。64bit対応とかあるだろうし。
なお、Mecabの最終更新が2013-02-18と5年以上前。

Mecabに限らず、WSLとWindowsで同時にファイルを開くアプリは要注意。
Bzという割とメジャーなバリナリエディタもCreateFile()の共有指定がFILE_SHARE_READだけなので同じ現象が起きる。


この件、WSLの仕様がおかしいようにも思える。
2018/11/09(金) 14:01:12.91ID:93OjXMJz
WSLのファイルシステムかメタデータ周りの問題かもな。
WSLなんて所詮オマケみたいなもんだ。遊びでしか使えん。
2018/11/09(金) 14:14:02.13ID:+MT3NdP/
>>986
えとさ、安全かどうかでちゃんと考えてる?

読み取りで開いているって言ってるけど、
読み取り専用じゃねーからな。読み込み共有モードだからな

私は読み取りしかしない!と宣言してファイルを開いた時
その他のプロセスが書き込みしたら、一回目に読み取ったときと
二回目に読み取ったときでデータが変わってしまう

FILE_SHARE_READっていうのは自分が読み込みしかしない!と
宣言することじゃない。自分は書き込まないから他の人が読み込んでも
いつだって同じデータが読み取れるよ。
他の人は書き換えないと宣言するなら、読み取ってOKって言ってることになる。


同様にFILE_SHARE_WRITEは、自分はうまいことやるから
他の人書き込んでもOK!っていうことだ。

つまりは、自分は読み込みしかしないが他人に書き換えられたら困る!
ってときはFILE_SHARE_READだけにするんだよ
たいていは読み込み途中に書き換えられたら困るだろう?
mecabは他人に書き換えられてもOKと言ってるのか?
2018/11/09(金) 14:15:35.87ID:+MT3NdP/
自分は読み取りしかしない!と宣言していても、
他人に書き換えられても大丈夫ってことにはならないからな
2018/11/09(金) 14:38:57.87ID:30xrhl21
Bzでの再現手順教えてくださいな
wsl上のemacsでc:/wsl/test.txtを開いたまま
win上のBz162でc:/wsl/test.txt開いてみたけど
問題なく開けるのでどうすればいいのかわからない
2018/11/09(金) 15:03:07.22ID:3WMswF4A
>>988
書き込み側、読み込み側、どちらかが優先されるべきかは
それはアプリ次第であって、こうすべきと決めつけるものでもないでしょう。
起動中の読み取りアプリを犠牲にしてでも書き込み優先するという割り切り方もある。

>>990
後学のためにmecabをインストールしてみては?
レス数が950を超えています。1000を超えると書き込みができなくなります。