【Bash】Windows Subsystem for Linux【Ubuntu】2©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
随分と高機能になったよな
昔は内向きにしか対応してなかったのに Windows10 Home で、WSL(Windows Subsystem for Linux)正式版を簡単に導入できた
MS Store から簡単に、Ubuntu 16.04 をダウンロードできた。
サイズは、200MB ほど
パッケージマネージャーで、Ruby 2.3 も簡単にインストールできた Fedoraより先にRedstone 4が来るなこれは WSL で、Ubuntu 16.04 をダウンロードして、
sudo apt-get update
sudo apt-get dist-upgrade
それに、Ruby をインストールして、日本語ロケールを導入して、man を日本語化したら、
結局、850MB ほどになっていた Build 17093のWSLに関する変更点
ttps://kledgeb.blogspot.jp/2018/02/wsl-131-build-17093wslunixwsl.html
>「DrvFs」は、ディレクトリーごとに大文字・小文字の区別の有無を識別するフラグを設定できるようになりました。
>このフラグは各ディレクトリーごとに設定でき、このフラグが指定されたディレクトリー内に対するすべての操作は、
>大文字・小文字の区別が行われるようになります。
>またこのフラグが指定されたディレクトリーは、Windowsアプリも大文字・小文字を区別するようになります。 >>622
すごいな・・・
NTFSでは大文字小文字を区別できる能力はあったとは言え
Windowsで区別しないものを
WSLでは区別できるようにするとは
>またこのフラグが指定されたディレクトリーは、Windowsアプリも大文字・小文字を区別するようになります。
これもうコアレベルの修正じゃねーか
まあフラグ方式なら安全だろうけど >WSLでは区別できるようにするとは
ずっと前から区別してんのに何を今更なこと言ってんだろう 前世紀のPOSIXサブシステムですら大文字・小文字の区別はしてたんだけどな
https://technet.microsoft.com/ja-jp/library/mt629097(v=vs.85).aspx
Windows は大文字と小文字を区別しませんが、POSIX サブシステムでは大文字と小文字の区別がサポートされています。
このため、POSIX サブシステムのユーザーによって、
名前が同じで大文字と小文字の組み合わせだけが異なる別々のファイルが作成される可能性があります。
この場合、通常の Win32 ツールを使ってこれらのファイルにアクセスしようとしても
一方のファイルにしかアクセスできないため、ユーザーに混乱をもたらす可能性があります。 Windows側の、TeraPadで、ファイルを保存せずに編集しているけど、
クリップボード経由では、Linux側のvim, nano へ、paste できない
ファイルを一々、保存しなきゃいけないのか?
Windowsアプリの、win32yank を使うと、
クリップボードで渡せるみたいだが、皆どうしてる? おおー、vim, nano も、
右クリックメニューで、エディタ間の範囲のコピペも、自由にできる! おいカスども!
WSL入れたら次はX Windowだろうが!
貴様らASTEC-Xですか?
それともVcXsrvですか? >>632
ありがとうございます。
MobaXtermは試されましたでしょうか?
パッと見なかなか魅力的ですが。 >>633
mbaXterm 知らなかった。もろwsl用って感じてすね。
これからちょっと試してみる >>634
おっとっと
当方VcXsrvをお試し中 mobaXtermってmingw+パッケージ管理+ssh GUIという印象だったんだけど
WSLだとちょっと余計なものがつきすぎてるような >>638
方向性がまるっきし違うよ
mingwとかcygwinのそうだが、これらはWindows上で
動く新しいディストリを作るもの
Linuxカーネルは作らず、ディストリのみを作る
WSLはLinuxカーネルを作ろうとしている
ディストリは作らない。既存のディストリを拝借
前者は別のディストリなので、パッケージ管理システムは別だし
そのディストリ用にビルドが必要になる
本来カーネルレベルで必要なものをエミュレートしてるから
どうしても限界がある
それに対してWSLはLinuxカーネル互換機能をWindowsカーネルそのものに
追加しているから理論上はWindowsがLinuxそのものになる WSLは余計なものがつきすぎてるどころか
何もついていないと言ったほうがいい
パッケージ管理もGUI?もSSHもbashもWSLにはついていない
Linuxカーネル互換機能とディストリをブートする所までだ MobaXterm側に余計な物が付きすぎてるって話でしょ? >>639
こいついつも壊れたレコードみたいに同じ文章コピペしてんな >>639
>WSLはLinuxカーネル互換機能をWindowsカーネルそのものに追加している
そんな事してねーよ
環境サブシステムについて勉強しなおしてこい 638はmobaXtermはXサーバーとしては余計なものが付きすぎていると言っている
639はそのレスをWSLに余計なものが付きすぎていると誤解釈して突然の長文レスを投稿した可愛そうな人 WSLって大昔のPOSIXサブシステムみたいなもんか? あ、ウブンチュとか入れないとlsもできないからチョット違うか そうまでしてubuntu使いたいなら
もうwindows要らないじゃん ちょっと前までWSL使ってたけど、本物との微妙な違いに馴染めず
今じゃUbuntuをVMやDockerで使ってるわ。 >>638
>>634
msys2をつかっていて、wsl+ubuntu+cmder+VcXsrvに移行中の俺がmobaXtermを軽く使ってみている。
確かにお手軽でよい。インストールしていきなり使える。
見た目はかなりゴテゴテしているので、普段使いにはもう少し控え目がいいなぁ。
肝腎のXの性能はVcXsrvに比べてちょっともたつくような気がする。といっても、emacsしか使わないか。
そもそもsshクライアントなので、cmderと比べるのはフェアでないかな。
sshでの作業が多い職場での作業に役立ちそう。 なんかすまん…趣旨は>>643 の言うとおり
VcXsrvで今の所困ってないけど、VcXsrvがUnix domain socket対応したら
WSLとのやり取りはもうちょっと早くなるかもしれんね >>654
微妙な違いってどんなこと?
ほとんど違和感とか感じないで使っているので気になる >>657
違いというか、ファイルシステムが結局NTFSだからそれがボトルネックになってしまっている感じはあるな。 >>658
具体的に何で困っているのか、
後学のためお聞きしてよろしいか VcXsrvで日本語表示日本語入力できたけど
WindowsのIMEで日本語入力できた人いる?
IMEのユーザ辞書にイロイロ登録してるから
uimよりMS-IMEで入力したいんだよね。 >>661
ASTEC-X ならば可能のようです。
ttp://www.astec-x.com/FAQ/windows_ime.html 個人的にはcygwinとVM使ってるけど
どっちの代わりにもならんから使いどころが今のところわからない
特にvmはともかくcygwinの代わりには絶対ならなさそうなのが残念 >>661
emacs限定になるけど、mozc_emacs_helper.exeを使えばWindowsのgoogle日本語入力
と連係できる。自分はshellもemacs内で使っているので、これで満足している。 cygwinだとかえって環境汚染になっちゃわない? あるあるw
CygwinでVagrantやら色々やろうとしてぐっちゃにした覚えがある。 >>667
デーモン動かしたりし始めるとイロイロおかしくなってわけわからんようなる
>>666
グーグルは脳みそ吸われそうで怖い。
MS-IMEがいい。
VcXsrvってソースホージからソース落としてVC ++2012でコソパイルできるんだっけ?
俺一人だけ幸せになろうかな… とりまgitでVcXsrvのソース落としてきた。
明日はビルド…と行きたいところだが仕事。
社畜つらい。
しかしMS-IMEに対応させるのどうするんや?
皆目見当が付かんけど、デバックモードで
コンパイルしてキー入力辺りをトレースしてみるか。
しかしX Windowスレの連中は無能やな。
ゴミしかおらん。
無事に対応できても絶対に公開せん。
あいつらには恩恵を与えん。 cygwinはwin32コンソールアプリと連携するのに使う >>670
ASTEC-X の様な MS-IMEと連携できる独自入力メソッドの実装か、
Win上で動く X端末エミュレータの様に MS-IME を受けられるオブジェクトの実装が、
実現しやすそうな気がします。 >>674
WSLのbashからWindowsのEXEを起動できる /mnt/c 以下で、Windows の、c: 以下にアクセスできる
漏れは、~/.bash_aliases に、こう設定してる
export LANG=ja_JP.UTF-8
shopt -s expand_aliases
alias mydoc='cd /mnt/c/Users/ユーザー名/Documents' cygwinはアプリを再ビルドしなきゃいけない
WSLはLinux向けのバイナリがそのまま動く GemsやNodeJSの環境が手軽に用意できるのは嬉しい。
Windows環境に突っ込むのは気が引けるがこっちならいい。
後でいらない・気に入らないならごっそり消せるし・・・ /mnt/c を自動マウントしないようにできませんか?
あるいはreadonlyだけでマウントできたらうれしい。 >>681
ありがとう。現行バージョンでマウントしないようにするためには
/mnt/c -> /dev/null
にリンクしておくといけた。 それで/mnt/cにファイル放り込むと消えるかな?
/dev/nullが動くのか見てないな。 Build 17110
https://docs.microsoft.com/ja-jp/windows/wsl/release-notes#build-17110
DrvFs now uses per-directory case sensitivity by default (equivalent to the “case=dir” mount option).
Using “case=force” (the old behavior) requires setting a registry key.
Run the following command to enable “case=force” if you need to use it:
reg add HKLM\SYSTEM\CurrentControlSet\Services\lxss /v DrvFsAllowForceCaseSensitivity /t REG_DWORD /d 1
If you have existing directories created with WSL in older version of Windows which need to be case sensitive,
use fsutil.exe to mark them as case sensitive:
fsutil.exe file setcasesensitiveinfo enable >>680
現行(v1709)だと
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Lxss\{GUID}\Flags
の3ビット目を下げる方法がある
https://msdn.microsoft.com/en-us/library/windows/desktop/mt826872.aspx >>685
こんなのあるんですね。参考になります。
all or nothing になっちゃいますので次のバージョンに期待かな。 めっちゃ初心者な質問ですまん
shutodownコマンドとかrebootコマンドが使えないみたいだけどexitとか×ボタンでウィンドウを閉じたらいいの?
OS自体が動いてるわけじゃないらしいから、WSL上でshutdownとか打ち込んだらWindowsをシャットダウンする意味になるから止められてるって感じ?
同じくOS自体が動いてるわけじゃないから、設定ファイルを編集したから再起動する、とかそういう必要も起こらない? >>687
Windowsのshutdownコマンド呼べない? shutdownコマンド入れると
Failed to connect to bus: No such file or directory
って出るよ
言い忘れてたけど入れたのはubuntu init ( systemd ) が動いてなきゃshutdownコマンドの意味ないけど動いてたっけ? >>687
linuxのバイナリがそのまま使えるというだけの機能なので、osを制御するコマンドはあっても使えないでしょう。
設定変更で再起動が必要になるのは、バックグラウンドで動いているプロセスに変更を反映させるためなので、そういうプロセスの設定を変えなければ不要。
そのうちデーモンも使えるようになるらしいから、そうなったら必要かもね。
でも、osまで再起動する必要は無いでしょうね いや、おれが言ってるのは
/mnt/c/Windows/System32/shutdown.exe
のことなんだけど・・・ >>690
topコマンドを入れてみたら、
init
bash
top
が表示された
>>691
なるほど、VMっぽいの想像してたけどだいぶ違う感じなんだな
まだ触っただけだけどラグもなくポンッとlinuxのシェルが立ち上がったからびっくりした >>693
vmとは全く違うね
どちらかというと、cygwinやmsysに近い
でも、windows用にコンパイルし直すのでなく、専用のファイルシステムを用意して、バイナリがそのままうごくようになっている >>692
調べてないけど、linuxのshutdownの方が前のパスにあるんでしょ。
で、shutdownは使えないようになっているのでなくて、使えるようになってない。 %LocalAppData%\lxssが見つからないんだが… 場所変わった。というかそんな場所忘れたほうが良い。
Windowsから直接編集するとファイルの拡張情報がおかしくなって
正常にアクセスできなくなることがある Linux知ってるなら、chrootの仕組みが一番近いかな
WindowsがLinuxカーネルの機能を持つ
そのLinuxカーネルの機能をメインにchrootする マイクロソフト、仮想マシン上のUbuntuへWindowsからコピー&ペースト、Ubuntuからローカルドライブへのアクセスなど可能に
http://www.publickey1.jp/blog/18/ubuntuwindowsubuntu.html なんだ、仮想マシンからか
早くWindowsからWSL上のファイルを
簡単に編集できるようにならないかな >>700
それがしたい理由ってなに?
linux側からwindowsにシンボリックリンクを張る方法では解決できないこと? >>702
Windows上の使い慣れたGUIの
テキストエディタを使いたいだけ いやだからWindowsで普通にアクセスできるところに置けばWSLからもWindowsアプリからも編集可能になるのに
何でそれをやらないのかという話 >>706
それをやるとWSLから見た時にパーミッションや実行権限などが
おかしく見える。遅いという問題も有る。
lxfsはLinuxの標準的なファイルシステムと高い互換性があり
パフォーマンスも良いが。drvfsはそうではない。 Windowsのアプリでファイルを編集するという話なのに
遅いもパーミッションも実行権限もクソもないでしょ...
結局702の言うようにそうしなきゃいけない理由が分からないと何とも >>706
>何でそれをやらないのか
それをわざわざやりたくない Linux側で遅かったりパーミッションや実行権限が
おかしかったら問題が有るでしょ
何を言ってるんだろうか? ■ このスレッドは過去ログ倉庫に格納されています