トップページ⇒linux
1002コメント333KB

Windows搭載予定のLinuxサブシステムでUbuntuが動作 [無断転載禁止]©5ch.io

■ このスレッドは過去ログ倉庫に格納されています
0001login:Penguin2016/03/30(水) 14:57:55.72ID:2b3xF4As
WindowsはLinuxの機能をもエミュレートする


?Microsoft and Canonical partner to bring Ubuntu to Windows 10
You'll soon be able to run Ubuntu on Windows 10.

http://www.zdnet.com/article/microsoft-and-canonical-partner-to-bring-ubuntu-to-windows-10/
0554login:Penguin2016/05/11(水) 23:19:39.84ID:u8i8VkAi
サーバーだけ動かなくすることは不可能
何か特別な機能を使ってる訳じゃないし

彼の中で「未対応」という言葉が「不適切な使い方」という意味だったりする可能性もあるが
0555login:Penguin2016/05/11(水) 23:37:34.76ID:hRmz01/s
apt-get install tcsh してから chsh でログインシェルの設定を変更 ( /bin/bash → /usr/bin/tcsh ) まで
事前にやっておいても、Windowsのコマンドプロンプトから、bash.exe実行して
bash on Windowsモード開始してみると、シェルはやっぱり tcsh ではなくて bash なんだな・・
0556login:Penguin2016/05/11(水) 23:46:36.40ID:YjSChOJz
完全にVMと区別がついてないなこいつらw
0557login:Penguin2016/05/11(水) 23:58:35.40ID:hRmz01/s
.bash_profile に /usr/bin/tcsh 書いておいてみたけど、そもそも.bash_profileは読まれて無いみたいだな
bash.exe の実行はログインて訳じゃないからそんなもんか
0558login:Penguin2016/05/12(木) 00:20:54.66ID:5rFGZTtF
>>556
Windowsのサブシステムだとデーモンが動かない理由は何?
今 mysql-server入れたら普通に動いてるんだけど。
あと>>550 >>554 もとても親切だからお礼言ったほうがいい。
0559login:Penguin2016/05/12(木) 00:26:27.37ID:5rFGZTtF
ついでにこれ貼っといてやる。礼は言わなくていい。
https://twitter.com/tako_ashi/status/221939205226500099
0560login:Penguin2016/05/12(木) 01:54:58.41ID:Brv2issc
なにこのイライラする感じ
0561login:Penguin2016/05/12(木) 07:03:55.69ID:7hmu2K0m
>>558
俺が親切に教えてやってんのに
> mysql-server入れたら普通に動いてるんだけど
まともにテストもしないでこんなデマを広めるなよ
>> 559 とかまさにお前みたいな奴の事だぞw
0562login:Penguin2016/05/12(木) 07:34:53.24ID:Dil9/fbN
Win10 の Insider Previewのbuild 14342が来たな
https://msdn.microsoft.com/en-us/commandline/wsl/release_notes

>Fixed issue preventing PHP server from launching
今までphpサーバ起動できなかったらしいが、それが治った様だな。

>/proc/meminfo now returns correct information
>Multi-core systems now showing correctly in /proc/cpuinfo
/proc以下の情報表示も徐々に修正してはいるんだな。まだまだ表示できない箇所多いが。
0563login:Penguin2016/05/12(木) 07:42:06.78ID:Dil9/fbN
>>561
# python3 -m http.server
のコマンドで簡易Webサーバーを動かすぐらいなら俺もやっていたけど。
恒常的に動かしている訳ではないが、今のところは特に不具合らしい不具合にはあったって無いぞ。
0564login:Penguin2016/05/12(木) 07:51:35.68ID:7hmu2K0m
>>563
だから動作報告するなら計画的なテスト結果と合わせてしろ
0565login:Penguin2016/05/12(木) 08:25:56.94ID:Lgr+IabG
そうそう完全なレポート以外受け付けないよ
0566login:Penguin2016/05/12(木) 08:46:30.80ID:4RDrvPTA
daemonは動くよ、bash.exe上でな。
bash.exeを終了させたら、daemonも一緒に終了してしまう。
Windowsのサービスのようにはならない。
試せばわかることをなんでやらないんかね。
0567login:Penguin2016/05/12(木) 09:31:10.77ID:f1jZTGfr
無能な人は自身の無能さに気付けないため自信過剰になる傾向がある
http://science.srad.jp/story/14/10/31/0514248/

これは机上の空論ではなく、実際に行われた実験で証明されているとのこと。
その人物が持ち合わせている知識や技術が、文章力や感情知能、論理的推論、銃の安全管理、討論、金融知識など
何であろうと、いずれにしても無能な人は大概にして
自分の能力を過剰に評価してしまうという結果が得られているとのこと。
0568login:Penguin2016/05/12(木) 09:36:50.51ID:5rFGZTtF
>>561
お前>>556ではVMと違ってデーモンは原理的に動かないみたいなこと言ってるじゃん。
その場しのぎでコロコロ言うこと変えてんじゃねえよクズ。

つうかお前、ほんとにインストールしてんの?
$ service --status-all
の実行結果とか見られる奴なら >>556 みたいなクソ発言するわけねえだろ。

まあいい。こんな馬鹿でもデーモンも動くと認めたわけで、スレのノイズが一つ減った。
あとは完成度と動作保証の問題だというのは正しい。

現状ではCygwinの比べることもできない荒削りさだけど(emacs-nox起動したら落ちやがった。クソ)、
将来的にはCygwinの諸問題を解決し、Windowsの標準開発プラットフォームになる
可能性を秘めている。

Big Sky :: Windows ユーザは cmd.exe で生きるべき。
http://mattn.kaoriya.net/software/why-i-use-cmd-on-windows.htm
0569login:Penguin2016/05/12(木) 12:33:51.78ID:9vxcik7g
>>568
お前は本当に馬鹿だな

大体公式に動作保証のされていないものをテストもせずに動いたって喜んでるようだが
一体何がしたいんだよw
0570login:Penguin2016/05/12(木) 12:53:08.46ID:5rFGZTtF
>>569
お前は都合の悪いことには一切答えないな。まあ答えるとは思ってなかった。
クズには自己欺瞞による自己正当化が組み込まれているから、
お前には自分がごまかしをしている自覚すらない可能性もある。
俺はクズにはなりたくないんで、お前のクズ質問に答えてやろう。

Bash on Windowsは現在、Insider Preview Buildのfastにしか含まれていない。
インストールしてないお前にもわかるように言うと、まあアルファ版だ。
つまり、公式に動作保証のされていない段階のものを、内輪で触って動いた動かないって喜ぶためのものだ。

理解できたか?できたらこれ以上のスレ汚しをやめろ。まあ無理だろうが。
0571login:Penguin2016/05/12(木) 12:54:52.48ID:MrtCD7s4
>>569
論点をずらすな。
>未対応言うのは動かんて事だぞw

>>551で言ったこの発言が馬鹿だと言われてるだけだろ
0572login:Penguin2016/05/12(木) 14:07:50.82ID:FFKVxfCm
>>567
そういえばいまどき珍しい中卒の奴がそうだったなぁ・・・・
0573login:Penguin2016/05/12(木) 17:03:51.65ID:XIuNAQhx
>>555
single user modeだろ
0574login:Penguin2016/05/12(木) 17:04:58.74ID:XIuNAQhx
>>564
>>569
可哀想な奴
0575login:Penguin2016/05/12(木) 17:08:34.50ID:XIuNAQhx
>>562
/procは地道で単調なコーディングが続く部分と
WSL的再解釈を考えないといけない部分があるので
コツコツやってる感じですかね
0576login:Penguin2016/05/12(木) 19:23:29.98ID:7hmu2K0m
>>570
もう何度も答えてるけど何を教えて欲しいのおバカさんw
0577login:Penguin2016/05/12(木) 19:53:10.89ID:i7cs+fZm
>>566
> bash.exeを終了させたら、daemonも一緒に終了してしまう。
お前の daemon の定義はどうなってるんだ?
0578login:Penguin2016/05/12(木) 20:50:16.25ID:5rFGZTtF
>>577
たぶんbash.exeの方がシェルの定義と違うんだろう。
0579login:Penguin2016/05/12(木) 21:37:04.38ID:mGC84+9j
>>578
daemon にシェルの定義なんて関係ない
0580login:Penguin2016/05/12(木) 22:03:59.81ID:XIuNAQhx
bash.exeはUNIXシェルじゃない
WSL起動コマンドでWindows実行形式
終了することはWSL終了を意味する
0581login:Penguin2016/05/13(金) 01:18:23.52ID:N/r71rfw
もしかして、Windowsの実行形式のbash.exeとelfのbashがあるのかな。
0582login:Penguin2016/05/13(金) 02:56:45.78ID:vXl22fXQ
>>581
そう>>580
Bash.exeは名前が悪い>>542
>>538の図の二つのbashは別物です
実体が違うだけでなくBash.exeはbashではなくWSL起動コマンド
0583login:Penguin2016/05/13(金) 07:36:09.41ID:Nm5+dgrk
>>555
c:\windows\system32\bash.exeの中にwsl側で最初に起動するプログラムのパス(/bin/bash)が
ハードコーディングしてある。ここを書き換えれば/bin/bash以外でも起動できるよ。
0584login:Penguin2016/05/13(金) 08:52:34.62ID:bFH8FO86
単に今はbashが動くという体でやってるから
bash.exeなだけだろ。

そのうちLinuxサブシステムがが完璧と思えるようになれば、
wsl.exe /bin/bash とかで起動するようになるんじゃねーの?
0585login:Penguin2016/05/13(金) 13:25:31.03ID:N/r71rfw
でも、bash.exeだと、バッチファイルの中からワンラインで呼び出すとかの時に便利じゃね?
wsl.exe /bin/bash だとちょっとうっとうしい気がする。
まあwsl.exeとbash.exeがあればいいのですが。
0586login:Penguin2016/05/13(金) 19:21:54.42ID:6npeVNHM
>>577
>>566

だからなんで手を動かさないんだよ。
試せばわかることなのに偉そうに間違ったことを堂々とほざくなよ。100年ロムってろ。
0587login:Penguin2016/05/13(金) 20:05:34.26ID:3w8kJo22
>>586
ひょっとしてバカなの?
0588login:Penguin2016/05/13(金) 20:19:35.31ID:+m9qKeX3
bash固定はハードコーディングのせいにフイタww
バイナリエディタでzsh.exeつくるか
0589login:Penguin2016/05/13(金) 22:27:32.64ID:vXl22fXQ
>>584
最初に呼び出されるのはinit
次はubuntuベースだからbash
>>588
他のデストリならdashなのがあるけどzshなんて馬鹿げてる
single user modeをなんだと思ってるんだ
0590login:Penguin2016/05/14(土) 00:07:58.20ID:tpA7DezX
>>589
> single user modeをなんだと思ってるんだ

なんだと言われてもな?

一人でログインしたいときに使うもので、
そのときに使用するシェルを選ぶ持っているって
ことぐらいは知っているが?


シングルユーザーモードだからなんだって言うんだ?
0591login:Penguin2016/05/14(土) 00:08:25.71ID:tpA7DezX
そのときに使用するシェルを選ぶ機能を持っているって
0592login:Penguin2016/05/14(土) 00:15:55.77ID:lrkYz3iS
>>590>>591
> 一人でログインしたいときに使うもので、
> そのときに使用するシェルを選ぶ機能を持っているって

全く理解してませんね
0593login:Penguin2016/05/14(土) 00:19:23.44ID:tpA7DezX
>>592
やっぱり質問に答えていませんねw

もう一回聞きますよ?

シングルユーザーモードだからなんだって言うんだ?
0594login:Penguin2016/05/14(土) 00:24:05.51ID:lrkYz3iS
>>593
全く理解できてないですが
これからもがんばってくださいね
0595login:Penguin2016/05/14(土) 00:31:12.73ID:Mirp84tK
両方的外れなので、見ていて楽しいなあ(某)
0596login:Penguin2016/05/14(土) 00:32:54.63ID:tpA7DezX
質問に答えないからねw

自分の意見を言えない人っていうのが
よくわかったでしょw
0597login:Penguin2016/05/14(土) 00:58:05.48ID:Q+biQ51H
588だけど、なんか俺のせいでまたケンカになってるw
こんなおまけシステムにマジになってどうすんの?
0598login:Penguin2016/05/14(土) 01:44:25.53ID:vExSFZcf
よく聞け。
シングルユーザーモードとは漢の生き様だ。
0599login:Penguin2016/05/14(土) 06:07:21.82ID:n2b4+qhr
つまりおまえらのことか
0600login:Penguin2016/05/14(土) 08:08:18.08ID:vbVFKIiz
おまえらはノーユーザーだろw
0601login:Penguin2016/05/14(土) 13:20:27.25ID:tpA7DezX
そもそも、何を見てシングルユーザーモードという
言葉を持ち出してきたのかがわからん。
0602login:Penguin2016/05/14(土) 13:39:38.78ID:Q+biQ51H
WSLはtrustyのinitで起動してるらしいから、RunLevelを見れば判断できるんじゃね?
おれもIPにしてWSLインスコしたけど面白くなかったから消しちゃった。
0603login:Penguin2016/05/14(土) 16:16:53.52ID:YyenpchU
systemdにrunlevelなんてあったっけ?
0604login:Penguin2016/05/14(土) 16:55:54.51ID:+ToqjGxi
WSLは14.04LTSベースだからsystemdの話は影響は無いはず

# runlevel
runlevel:/var/run/utmp: No such file or directory

まあいつものWSLの通り・・
0605login:Penguin2016/05/14(土) 19:46:41.40ID:tpA7DezX
>>542で突然現れる(bashをシングルユーザーモードだと勘違いしてる?)

> Bash.exeは名前が悪いな
> SingleUserMode.exeとかにしたらどうだ?


>> 573でも同じように繰り返す。

# (参考 >>555)
# bash on Windowsモード開始してみると、シェルはやっぱり tcsh ではなくて bash なんだな・・

>>555
> single user modeだろ


>>589でも更に繰り返す

> single user modeをなんだと思ってるんだ


本当にこの人はシングルユーザーモードを何だと思ってるんでしょうか?(笑)
0606login:Penguin2016/05/14(土) 19:52:14.39ID:tpA7DezX
>>603
> systemdにrunlevelなんてあったっけ?

無いよ。

あるのはsystemdが提供している、レスキューターゲットとエマージェンシーターゲット
ランレベルっていうのはinitデーモンが提供している機能

だからLinuxサブシステムで動かすものを変えると当然initもシングルユーザーモードも
関係ないものとなってしまうw
0607login:Penguin2016/05/14(土) 20:15:20.59ID:sKfR7F8W
WSLが正式リリースされる頃にはUbuntu 16.04ベースになるん?
update / upgradeはaptで勝手にやれっていうスタンスかな?
それともupdateはWindowsと纏められてわけ分からんことになるのか
0608login:Penguin2016/05/14(土) 20:18:39.94ID:tpA7DezX
検索すると↓とかいくつか見つかるね。

http://ascii.jp/elem/000/001/145/1145133/http://ascii.jp/elem/000/001/145/1145133/
> カークランド氏によれば、現在のパッケージはUbuntu 14.04 LTSベースで作成したものだが、
>数週間後には最新版であるUbuntu 16.04 LTSのパッケージ化も完了するという。
0609login:Penguin2016/05/14(土) 20:52:57.82ID:+ToqjGxi
>>607
Windows10 自体のまるごとアップデートで来ると思う

4月6日ののWin10のBuild 14316版で bash on Windows が使える様になって
それから一か月程度だけど、もう5回ぐらい Windows updateでWin10自体のアップデートが来てるような

アプリとかはupdate後もそのまま残ってるから特に気にならない。DL時間と再起動が多少めんどい感じ
0610login:Penguin2016/05/14(土) 23:42:06.10ID:Q+biQ51H
今のWSLで擬似Linuxカーネルのバージョンは3.4だけど、16.04ベースにするということは
カーネルバージョンは4.4になるってこと?
あとsystemdが起動プロセスになる?
0611login:Penguin2016/05/15(日) 00:51:01.84ID:beeaIlhV
あくまでもvmでは無くてSubSystemなんでbootシーケンスまでエミュレートしないんじゃないかな。
今もinitが走ってるというよりはinitし終わった後のbash起動からな感じだし。
0612login:Penguin2016/05/15(日) 01:50:06.60ID:dq/vDRE9
流れと関係ない話でごめん。
SSHサーバ起動できた人いる?自分うまくいかないわ。ファイルが足りないらしい。

$ sudo service ssh start
* Starting OpenBSD Secure Shell server sshd \
Could not load host key: /etc/ssh/ssh_host_rsa_key
Could not load host key: /etc/ssh/ssh_host_dsa_key
Could not load host key: /etc/ssh/ssh_host_ecdsa_key
Could not load host key: /etc/ssh/ssh_host_ed25519_key

$ ssh localhost
ssh: connect to host localhost port 22: Connection refused

SSHサーバ立てたいのは、標準のターミナルが現状あり得ないダメさなんで
PuTTY あたりでつないで使いたい。

256color.pl
https://gist.github.com/hSATAC/1095100
これがこんなに崩れるターミナルは初めて見た。
0613login:Penguin2016/05/15(日) 01:51:29.46ID:Nks4+zN1
ファイルがないってわかってるなら、Linuxから持っていけよ
0614login:Penguin2016/05/15(日) 02:08:04.00ID:zMS5SBnc
sshd_configをまともに編集出来る知能がないなら諦めた方がよい
0615login:Penguin2016/05/15(日) 03:00:51.84ID:dq/vDRE9
書き方が悪かった。実際にSSH接続できた人いるのかを聞きたいんだよ。特に外部から。

他のLinuxからファイルを持ってきたり、sshd_config の編集したりは
自分にも普通にできる。つうかさっきやったらsshdサーバ起動のエラーは出なくなった。
でも相変わらず内部からもsshでつながらない。
$ ssh localhost
ssh: connect to host localhost port 22: Connection refused

自分はネットワークは疎いんで、ここから先を追いかける自信がない。
ifcofig や ping localhost も使えない環境だし、ググってもSSH接続できたと言ってる
人が見つからない。
だからそもそもSSH接続できるのかどうかと、できるのならその方法を教えてほしいんだわ。
0616login:Penguin2016/05/15(日) 03:23:26.78ID:tHnCK4wm
君には無理だよ。
0617login:Penguin2016/05/15(日) 07:00:31.31ID:3MdQi/D7
>>612
最初に入ってるopenssh-serverはpostinst処理を実行してないみたい。
sudo apt-get install --reinstall openssh-serverとかで再インストールして
postinst処理を実行すれば鍵作ってくれたはず。
1回目のアップデートの時はそっから動かなかった
(ssh localhostするとすぐコネクション切られる)。
rsyslogが動かないから原因を調べる気にならん。
0618login:Penguin2016/05/15(日) 07:06:18.41ID:3MdQi/D7
蛇足だけど、ポートはWindows側で空ける必要あったようななかったような。
0619login:Penguin2016/05/15(日) 07:17:18.79ID:Ry1CTZ/G
>>615
自分も今ちょっとやってみたけど、やっぱり出来なかったわ
試したことのメモ

�@WindowsファイヤーウォールでTCP port22の受信を許可
�Asshd_configにパスワード認証を許可するように↓に変更
 PasswordAuthentication yes
�Bsshdを起動
 /etc/init.d/ssh start
 (service ssh start の方だと upstartに接続できない警告が出て気持ち悪いので避けた)

これでWindows側のTeratermから接続しようとすると確かに「接続が拒否されました」になった
ただ、この理由は単純で、期待するポートをLISTENしていないからっぽい

WSLでsshdを起動させた状態で WindwosのCMDプロンプトからnetstat -anしてみると↓
TCP [::]:22 [::]:0 LISTENING
つまり、IPv6の方をListenしていて IPv4の方はLISTENしていないっぽい

なので
�C sshd_configに↓を追記
 AddressFamily inet
 ListenAddress 192.168.x.xx (自分のPCのアドレス)
�D sshd再起動
 /etc/init.d/ssh restart

これで IPv4の方のアドレスをLISTENする様になった。
> TCP 192.168.x.xx:22 0.0.0.0:0 LISTENING

だけれども、Teratermから接続に行くと、一瞬TeratermのID/Password入力画面が出るけど
「SSHパケットを送信中に通信エラーが発生しました
切断します。(retry_send_packet:10053)」
のエラー表示になって結局SSHは成立しなかった
0620login:Penguin2016/05/15(日) 10:04:27.31ID:K+I7oYEh
>>615
> 他のLinuxからファイルを持ってきたり、sshd_config の編集したりは自分にも普通にできる。
そんなスキルがある奴なら
> Could not load host key: /etc/ssh/ssh_host_rsa_key
見て質問なんてしない
どうせコピペで動かしたことがあるレベルなんだろ
0621login:Penguin2016/05/15(日) 15:42:32.67ID:uR2dT0Ih
256color.pl
が崩れるのはbashが動くターミナルがコマンドプロンプトだから。
cygwinみたいにコマンドプロンプトから脱却して専用のターミナル実装してほしい。
コマンドプロンプトじゃ力不足に感じる。おれもTereTerm使いたい。
0622login:Penguin2016/05/15(日) 15:57:33.05ID:tHnCK4wm
telnetクライアントは持ってるんだから、
そっち経由にしてくれるだけでいいのにね。
0623login:Penguin2016/05/15(日) 16:35:24.86ID:nXypx20r
>>621
今そのコマンドプロンプトを改良してるだろ?
0624login:Penguin2016/05/15(日) 23:41:54.65ID:dq/vDRE9
>>617-619
ありがとう。詳しい人でも現状だと難しいのね。

/etc/ssh/ssh_host_*_key が存在しないのに気がついた時、
これMSが意図的にSSHを殺しておこうとしたのかな、
だったら自分の手には負えそうにない、と思った。
でもお二人の書き込みを見ると、単にまだそこまで手が回ってないだけなのかも。

-------
別件

MySQL Server は何も問題なく動いている。Windows側からも接続できる。
これは自分は大変うれしい。
ちなみに慣れてるCygwinで試しました。
$ mysql -u root -p protocol=TCP

HTTPサーバも立てようと思って、とりあえずPython3 で試してみたんだけど、
$ python3 -m http.server
Serving HTTP on 0.0.0.0 port 8000 ...
なぜかこれ、Webブラウザで http://localhost:8000/ にアクセスすると
2回に1回ぐらい「このサイトにアクセスできません」ってなってしまう。
よくわからん…。
0625login:Penguin2016/05/16(月) 00:32:40.03ID:IGj0N0vb
まだ公式リリースされてない。
開発途中版だってわかってるはずなのに、
何言ってるんだろうか?
0626login:Penguin2016/05/16(月) 07:48:55.07ID:j6eeivK2
>>624
> HTTPサーバも立てようと思って、とりあえずPython3 で試してみたんだけど、
> $ python3 -m http.server
> Serving HTTP on 0.0.0.0 port 8000 ...
> なぜかこれ、Webブラウザで http://localhost:8000/ にアクセスすると
> 2回に1回ぐらい「このサイトにアクセスできません」ってなってしまう。

うちのPCでは発生してないな、毎回正常にアクセス可能

参考までに聞いてみるけど http://127.0.0.1:8000/ でアクセスした場合も結果は同じ?
あとWebブラウザはどのWebブラウザでも再現する?
こちらも余り詳しくないけど、IPv6で名前解決された場合にアクセス出来てない可能性を予想してみたり

>ちなみに慣れてるCygwinで試しました。
「別件」以降が全部Cygwinでやってる話なのかな? もしそうなら話が続くようなら別スレがいいかも
0627login:Penguin2016/05/16(月) 13:53:51.57ID:m/NEgkl3
>>626
$ mysql -u root -p --protocol=TCP
でBash on WindowsのMySQLサーバに接続したのだけがCygwinで、
それ以外は、MySQLサーバを起動したのも、
Python3でWebサーバを起動したのも全部Bash on Windows。
わかりにくい書き方でごめん。

あと、Python3のWebサーバに安定して接続できないのは自分の環境のせいみたい。
他の環境では Python3のWebサーバは安定しているということなんで、
Cygwinでも同様のWebサーバを起動してみたら、同様に不安定だった。
スレ汚しごめん。
ちなみに localhost:8000 でも 127.0.0.1:8000 でも 192.168.XXX.XXX:8000でも、
Chrome以外のブラウザでも同様だった。
0628login:Penguin2016/05/16(月) 14:12:46.47ID:22itw8Cu
ろくに設定も出来ない奴が手を出すのはまだ早いんだよ。わかった?
0629login:Penguin2016/05/17(火) 15:27:25.60ID:ctsYjtq9
これ、/mnt/c/ディレクトリ以下でだけ失敗するな。

$ cp hoge.txt HOGE.txt
cp: ‘hoge.txt’ and ‘HOGE.txt’ are the same file
0630login:Penguin2016/05/17(火) 16:23:26.20ID:qq2Npnav
NTFSやFATをマウントしてるってオチで?
0631login:Penguin2016/05/17(火) 19:08:25.41ID:D/UYe8Ee
>>629
当たり前だろ
0632login:Penguin2016/05/17(火) 19:51:39.91ID:ctsYjtq9
>>631
なんで当たり前なの?
すべてのディレクトリでエラーになるという仕様の可能性もあった。
実際Mac OS Xはそうなっているそうだし。
0633login:Penguin2016/05/17(火) 20:20:39.32ID:xRMSTkW7
ファイルシステム上では hoge.txt と HOGE.txt は共存可能だから
Linux では単純に別ファイル扱いだけど Windows サブシステムでは
同一視される変な仕様だから折衷案でそうなったんだろ
0634login:Penguin2016/05/17(火) 20:34:57.45ID:D/UYe8Ee
>>632
Mac OS XもUFSは大文字小文字区別するよ
OSじゃなくてfile systemの仕様だから
FS内部関数のlookupの仕様
0635login:Penguin2016/05/17(火) 20:55:31.84ID:ctsYjtq9
>>634
めんどくさいなあ、もう。
じゃあMac OS X 標準のHFS+だと区別しない、と書きなおす。
でもWSLのファイルシステムが標準で区別することは、
当たり前じゃなくてありがたい仕様じゃないの?

ついでだけど、ファイルシステムを見ようとするとエラーになるわ。
$ df -T
df: cannot read table of mounted file systems: No such file or directory
0636login:Penguin2016/05/17(火) 21:03:49.42ID:D/UYe8Ee
>>635
言っていることがよく分からない
「WSLのファイルシステム」ってのは何のこと?
もしかしてWSLがNTFSドライバをわざわざ独自実装してると思ってるの?
>>634に書いたことでその辺のこともカバーしてるんだけど分かりにくかったかな
WSLはWindowsのNTFSドライバに仕事丸投げしているはずで
そこでignore caseならWSLでcase sensitiveにすることは不可能
0637login:Penguin2016/05/17(火) 21:04:48.85ID:wmT3kSQ3
>>635
/proc まだ実装されてないんでなかった?
/proc/partitions とかが開けないってだけだと思うけど。
0638login:Penguin2016/05/17(火) 21:32:04.71ID:ctsYjtq9
>>636
自分は /mnt/c 以下はNTFSをマウントされて、それ以外はext4あたりなんじゃないかと想像してた。
それ以外のディレクトリで hoge.txt と HOGE.txtが共存できるのはそのせいだと。
しかし $ mount を実行してもそれっぽい結果にならないんで困惑中。

全体をNTFSが管理しているのなら、なんで /mnt/c 以外では大文字小文字が区別されんの?

>>637
あ、なるほど。 /proc に依存しない確認方法ってある?
$ sudo /sbin/parted -l
は何も返さなかった。
0639login:Penguin2016/05/17(火) 21:47:22.48ID:D/UYe8Ee
>>638
そもそもNTFSはフォルダ内にFOOもfooも同時に持てる
NTFSはPOSIXサブシステムのためにPOSIX互換があるから
けどWindowsサブシステムでは大文字小文字区別しないから
Windowsサブシステムは自分が使う領域にはFOOがあればfooは作らない
そういうセマンティクスだから/mnt/cではWSLがそれに合わせないと
Windowsサブシスタム側のアプリが困ってしまう
0640login:Penguin2016/05/17(火) 21:49:17.39ID:D/UYe8Ee
ちなみにロングファイルネーム拡張が入る前のFAT内部では
パス名にアルファベットは大文字しか使えず
参照時に大文字と小文字は区別しなかった
0641login:Penguin2016/05/17(火) 21:49:22.14ID:xRMSTkW7
>>638
> 全体をNTFSが管理しているのなら、なんで /mnt/c 以外では大文字小文字が区別されんの?

だからNTFSでは大文字小文字は区別されるのに
WindowsAPIでは区別しないから面倒くさいことになってるんだろ
0642login:Penguin2016/05/17(火) 21:54:26.22ID:D/UYe8Ee
>>638
mountコマンドによれば
/以下はrootfsっていう特殊なファイルシステムのようです
/dev/の下にもdisk deviceはない

/dev/adssはAndroid subsystem時代の名残ですかね
0643login:Penguin2016/05/17(火) 22:03:11.71ID:D/UYe8Ee
ちなみに
$ cd
$ echo foo > foo
$ echo FOO > FOO
$ ls
foo FOO
$ cat foo
foo
$ cat FOO
FOO
だが同じファイルをcmd.exeで
> cd \Users\誰かさん\AppData\Local\lxss\home\リナックスの誰かさん
> dir
xxxxxx 0 FOO
xxxxxx 4 foo
> type foo
foo
foo
> type FOO
foo
foo
となる
Build 14342ね
0644login:Penguin2016/05/17(火) 22:12:33.48ID:D/UYe8Ee
>>514
それから上でinitに話が出てるけど
psして出てくるのは/sbin/initではなくて/init
これは一部モジュールがLxssManager.dllと共有されてると思われるLxss独自のコマンド
たぶんLinuxサブシステムから起動されて渡された情報を元に
普通のLinuxでは/etc/init.d/rc等の仕事をやるコマンド
hostnameの設定とか
/etc/hosts, /etc/resolv.confもこいつが作ってるみたい
情報の授受に使うモジュールが共通なのだろう
0645login:Penguin2016/05/17(火) 23:36:52.54ID:ctsYjtq9
遅くなりました。いろいろありがとう。
> なんで /mnt/c 以外では大文字小文字が区別されんの?
この質問は、理由や動機じゃなくて仕組みを聞いたつもりだったんだけど、
WSLがこのディレクトリを特別扱いしているということなのね。

>>643 は大変勉強になりました。
しかし自分の環境では
\Users\誰かさん\AppData\Local\lxss
が見つからない。
\Users でファイル名 lxss で検索しても引っかからない。うう。
0646login:Penguin2016/05/17(火) 23:38:48.37ID:+GSpJ1gK
大文字小文字区別のcase sensitive file systemの投票はここ。
https://wpdev.uservoice.com/forums/266908-command-prompt-console-bash-on-ubuntu-on-windo/suggestions/13375260-bashonwindows-must-support-a-case-sensitive-file-s

OSXでandroidビルドする時にこれが原因でビルドエラーになったことがあるな。
0647login:Penguin2016/05/17(火) 23:42:02.44ID:+GSpJ1gK
>>644
WSL用のinitの挙動は知りたいね。
現状なんもやってない気がするけど。
0648login:Penguin2016/05/18(水) 00:09:18.85ID:J6kxD2XB
>>638
君の知識レベルで手を出すのは早いと思うよ
0649login:Penguin2016/05/18(水) 00:26:53.60ID:pM439fj4
ぶっちゃけWSLはアプリを動かす環境であって
デバイスを管理する環境じゃないんだわ。

目標はハードウェアのエミュレータじゃないので、
ファイルシステムがどうとか、そういうのは
後回しにするべきだし、実際後回しなんだろ。

ディスクなんかはWSLを通さずにWindowsから
直接管理すればいいわけで、つまりお前使い方間違ってるぞ。
0650login:Penguin2016/05/18(水) 00:27:52.71ID:SNqH199o
>>645
エクスプローラのフォルダパス欄に↓の文字を貼り付ければ一発で行ける
shell:UsersFilesFolder\AppData\Local\lxss
0651login:Penguin2016/05/18(水) 00:44:40.66ID:W2GL/G7L
>>650
ありがとう。行けました。
つうかシステムファイルの表示してなかったんで設定変えました。
まだWin10自体慣れてないな…。
0652login:Penguin2016/05/18(水) 00:53:16.99ID:12S2FVU/
つうかbashかcmd.exe使ってよ
エクスプローラかよ
0653login:Penguin2016/05/18(水) 01:12:12.63ID:CGIuw4Kk
Ubuntuでやりたいことをしたかったら、WSLでなくHyper-VにUbuntu入れろってことだ。
Win10 Proならできるだろ。
0654login:Penguin2016/05/18(水) 01:31:24.21ID:12S2FVU/
そういう話は誰もしてない
■ このスレッドは過去ログ倉庫に格納されています