【Bash】Windows Subsystem for Linux【Ubuntu】2©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
>>375
お前vmと勘違いしてるだろw
カーネルは一つなのだから理想としては
どのユーザーランドから見ても、動いているプロセスは
同じように見えないといけない。 ubuntuとfedoraとsuseを同時に動かせるらしいからubuntuだけを複数動かすのもできるんじゃないか >>376
そんなことはわかってる
それにメリットがあるかどうかの話だよ >>378
意味がわからん。
メリットが有るかどうかじゃなくて
常識的な動きの話をしてる。
まずWSLが作られた理由を考えてみようか。
これは単にWindows上でLinux用のバイナリを
そのまま動くようにしたもの。
言い換えるとLinux用のバイナリがWindows上で動くようにしただけ
だからOS(カーネル)をプロセスごとに分離しようかそういうものじゃない。
LinuxとWindowsのプロセス管理方法の違いから、WSL側から
Windowsのプロセスをちゃんと見せるようにするのは難しいようだが
WindowsのタスクマネージャーからLinuxのプロセスは見える。
WindowsがLinuxのシステムコールをサポートして、
Windows上でLinux用のバイナリを動かしているだけなんだから
そりゃ当然の話しだわな
そこにVMやらの話を持ち出してきて、VMのメリットを言われた所で
それはWindows上でLinuxバイナリを動かすのとは別の話ですね。で終わり だからそんなことどうでもいいんだよ
ってこの流れ前もやったな あぁ、違うか。
どうでもいいんじゃなくて、
どうでもいいって流れにしたいんだなw
だからいちいち話を中断させようとしてるわけか。 まあ ID:pvMVz25D はLinuxにも興味が無くて単に何かにケチ付けたいだけの人だろ WSLでX使うのって Xmingとかでできるんだけど
GTK使ってるやつが フォント設定しても文字化け状態かわらん
(gitkとか)
EmacsやFirefoxは フォント設定すればメニューも文字化けしないけど
本家に寄付してXming最新版ダウンロードしようかと思ったが
Paypalが日本からUKへの寄付を受け付けてないという始末
WSLとの連携でうまく動いてるWindows上のXって何かある? >>385
一応、VcXsrvをインストールしている。
試しにインストールして起動してみた程度。
GTKを使っているかどうかはわからんけど、gvimは日本語表示は普通にできた。
正直いって、自分にはWSLでXを使うと便利って場面があんまり思い浮かばない。 >>386, 387
thx 試してみる
まあそこまでするなら別マシンにインストールするかVMでいいだろって話でしょ
それはそうなんだけどね……
いずれMS謹製でそこまでやってくれたら
俺的には完全にMac要らない子になる(今でも登板回数減ってるが)
FreeBSDに構築されたAquaと
WinカーネルとLinuxカーネルが併走するWin10
出自はMacの方がいいのに Unixマシンとしては色々やることがあったり
縛りあったりして使いづらいんだよね ・XNUカーネルの上に構築されたAqua(とFreeBSDユーザーランド)
・NTカーネル上に構築されたLinuxサブシステム Fedoraはまだ来てないけどストアのUbuntuが何か更新されてる これってインストール場所をDドライブに出来ない?
Cドライブをかなり小さめにしてるから困る >>392
ストアアプリ扱いになった奴なら移動はできるだろ。従来の奴は知らね VcXsrvでGTKを使ってるアプリでも文字化けしなくなった
64bit版もあるし こっちの方がいいね
ありがとう ホームディレクトリがわかんねえ
lxssって見当たらないが ストア版は%LOCALAPDATA%\Packagesの下だ
それともlxssフォルダがシステム隠し属性で見えないという話か? >>399
ありましたわ
ストア版はやっぱり違ったのか
ありがとん NTEmacs のシェルを wsl の bash に設定することはできるの? 「Bash on Windows」という名称は非推奨に。正式名称「Windows Subsystem for Linux」(WSL)としてベータを卒業、正式リリースに
http://www.publickey1.jp/blog/17/bash_on_windowswindows_subsystem_for_linuxwsl.html
端末エミュレータでbold文字がちゃんと出るやつなんかない?
ConEmuとか試したけどboldにならない。
sshd使うのは負けな気がしている。 Windows で Linux を実行する
ms-windows-store://collection/?CollectionId=LinuxDistros アンインストールの時に/fullオプションつけてないからゴミが残ったままっていうオチか? Fall Update前に入れたからコンソールの色がひどく見づらい
特に青色
Fall Updateの後にいったんwxrun uninstallしてストアから入れ直したけど
色合いはまったく変わらず
なんとかならん?? >>413
これだけで、日本においてWindows OSを業務で使用するなど、あり得ない。 >>414
Welcome to real world 日経Linux 11月号
WSL 特集
Docker の記事もある
Ubuntu 側では、Dockerデーモンが動かないため、
Windows 側の、VirtualBox に、Vagrant で、CoreOS を入れて、
その中に、Dockerデーモンをインストール
Ubuntu側から、Dockerコマンドで使う
付録は、サーバーがゼロから分かる本、100ページ。
サーバーでできること、77
付録DVD は、
Ubuntu 17.04 日本語 Remix (64 ビット版)
Ubuntu Server 17.04 (64 & 32 ビット版)
CentOS 7.3 LiveGNOME (64 ビット版) OS標準機能だけにしたいならDocker MachineはHyper-Vで動かす方がいい。 WSL自体をアップデートする方法として公式に
lxrun /update
と書かれてるが....最新リリースを試す方法ないの?
FCUの公式リリースで変わったんですか? DockerMachineなんてほぼ使わねーんだが Docker Toolbox だろ
>>420
10月の、Windows 10 Fall Creators Update では、
WSL 正式版を、Windows ストアからインストール
正式版になったから、ベータ版をアップデートできないのでは?
GUI を使うには、Windows 側で、
VcXsrv Windows X Server Docker Toolbox は レガシーあつかい
https://docs.docker.com/toolbox/toolbox_install_windows/
今はDocker for Windowsを使う
https://docs.docker.com/docker-for-windows/install/
違いは前者がVirtualBoxを使って後者がHyper-Vを使うと考えていい。
Docker推奨のDocker for Windowsを使うならVirtualBoxは諦めるしかない。
VagrantのためにVirtualBoxを使っているという人も多いかもしれないが
VagrantはHyper-Vでも使える
VirtualBoxとHyper-Vが同居できると良いんだがな
Docker MachineはDocker Toolboxで使うんだっけな
要するにDockerっていうのはサーバーがあってクライアントから
接続するものだからその接続先をDocker Toolboxに切り替えるために使う
Docker for Windowsの場合はそういう切り替えなしに接続できる >>418
> Ubuntu 側では、Dockerデーモンが動かないため、
> Windows 側の、VirtualBox に、Vagrant で、CoreOS を入れて、
> その中に、Dockerデーモンをインストール
よんでないけどそんなこと書いてあるのか?
WSLのUbuntu側ではDockerデーモンが動かないため
Docker for WindowsでインストールしたDockerに対して接続する。
VirtualboxもVagrantもCentOSもいらない
コマンドプロンプトの(つまりWindows版の)Dockerクライアントからは普通にDockerサーバーに接続できる
WSLのUbuntuのDockerクライアントから接続したい場合は
まずDocker for Windowsの設定「Expose daemon on tcp://localhost:2375 without TLS」
これにチェックをいれる
あとはUbuntu環境で export DOCKER_HOST='tcp://0.0.0.0:2375' を実行する
(これをdocker-machineを使ってやっても良い) Linux では、Hyper-V は見たことない
VirtualBox か、VMware >>426
ttps://msdn.microsoft.com/ja-jp/commandline/wsl/reference 警告: lxrun.exe は、Linux ディストリビューションのためにレガシ Windows サブシステムを構成するだけに使用されます。
ディストリビューションは次の Windows ストアを訪問してインストールすることができます:
https://aka.ms/wslstore
使用法:
/install - サブシステムをインストールします
オプションの引数:
/y - ユーザーに許可を求めないか、ユーザー サブシステムを作成しない
/uninstall - サブシステムをアンインストールします
オプションの引数:
/full - 完全アンインストールを実行します
/y - ユーザーに確認を求めません
/setdefaultuser - 既定のサブシステム ユーザーを設定します。ユーザー アカウントが存在しない場合は作成されます。
オプションの引数:
username - ユーザー名を指定します
/y - ユーザー名が指定された場合、パスワードの作成を求めません >>423
>Docker MachineはDocker Toolboxで使うんだっけな
>要するにDockerっていうのはサーバーがあってクライアントから
接続するものだからその接続先をDocker Toolboxに切>り替えるために使う
>
>Docker for Windowsの場合はそういう切り替えなしに接続できる
docker-machineはホスト操作のcliってだけでToolbox限定じゃない
Docker for WindowsでもインストールされるしHyper-Vのホストも立てられる
まぁリモートのホストに切り替えたりするのが主な用途だろうが >>424
ちなみにその方法だとTLS接続できないからセキュリティ的に問題がある場合はdocker-machineでホスト立てる、つーのが割と使われる回避策
こだわりがあるならvagrantなり諸々の方法で立ててもいいけど、そこまでの事情があるなら自力で何とでもできるわな 俺達のMicrosoftが本気を出せばUTF-8のサポートなど容易いことだ
Windows 10のInsider PreviewでシステムロケールをUTF-8にするオプションが追加される
https://srad.jp/story/17/11/14/0640253/ ええな
不具合は出るだろうけど強引にでもutf8へ移行させるべき >>433
LinuxでUTF16対応できないのは、
カーネルを含めC言語ライブラリが幅を利かせているからだよ
C言語ライブラリは文字を一文字ずつ眺めていってNULL文字が
登場したらそこが文字列の終わり。ASCII互換の文字列以外は扱えない
だからUTF16やUTF32のようなマルチバイトの中にNULL文字が
含まれてるような文字コードには簡単には対応できない
Windowsのように当初からASCII互換以外の文字列も
扱えるように設計されているOSと比べるのはかわいそう C言語「wchar_t系ライブラリもあるのに対応出来ないのはお前の頭が悪いからだぞ」 Windowsもwcharで対応してるだけなのにID:gh7zcXCzは何を言ってるんだろう... そのwcharがLinuxカーネルで使われてないという話 あとwcharはUTF16のような2バイト or 4バイトのような
可変長文字を扱うのが面倒ってのもあるな UTF16 は、2バイト文字だけなら、
例えば10バイトなら、5文字って簡単に計算できるけど、
4バイト文字(サロゲートペア)があるから「2, 4, 2, 2, 2」で4文字になったりするから、
前から順番に、すべて走査しないと、文字数がわからない
UTF32 にすると、すべてが4バイト文字になるから、簡単に文字数が計算できるけど、
メモリを2倍使うから、無駄が大きい
また、mac では「が」などを、「か」+ 濁点で表すから、「が」が検索できない
Windows, Linux は、合成済み文字・NFC。
mac は、結合文字列・NFD Firefox Quantum 激早!
HTTP/2の恩恵を受けてるわ・・・ 業務のPCに窓以外を導入した団体はだいたいメンテやサポートのコストが増えて後悔してる
上記の理由でDELLのubuntuプリインストールも即消えた いまいちよく解ってないんだがubuntu使ってて
/以下に通常のubuntuのaptで入るもの以外のWSL固有なファイルってあるの?
Windowsのリリース・ビルドが変わらない限りWSLも更新されないで合ってる? /initはupstartでもsystemdでもないWSL独自だよね systemdじゃないのか
systemctlどうなってんだろ archlinuxにしたいんだけど、WSL部分のアップデートがどうなるのか解らなくて踏み切れない >>448
WSLはOSじゃない。Ubuntu用のバイナリが動くってだけ
OSはWindowsのままだよ。新しいOSが動き出すわけじゃない
だからWindowsからいきなりバイナリが実行される
それがbashなわけ boot: linux init=/bin/bash
ぐらいに考えとくのがよろしい chrootやdockerで何かのプロセスを
隔離された環境で起動したことがあればわかると思うけどね
WSLは隔離することが目的じゃないから
ネットワーク空間などを共有してる。
その点でchrootに近い。
Windows上でLinux環境でchrootするようなものだ
実際にWindows上のUserディレクトリの深い場所が
rootになるわけだしな まさしくそうなんだよなぁ。
ファイルシステムがボトルネックになってる。 /init はMS-DOSのコマンドインタプリタ様なるぞ
皆の衆頭が高い、ひかえおろう
root@NOTE:(/root) # cat dos-script
#/init
dir /mnt/c
/mnt/c/Windows/notepad.exe
root@NOTE:(/root) # chmod +x ./dos-script
root@NOTE:(/root) # ./dos-script zshの過去に使ったコマンドの補完が効かないんだけど何か対処法はありますかね?
いちいち全文打ったり検索したりするのが面倒臭い... >DrvFs creates NT symlinks when certain conditions are met. [GH 353, 1475, 2602]
>Add wslpath to do WSL<->Windows path conversions. [GH 522, 1243, 1834, 2327, et al.]
Release Notes
https://msdn.microsoft.com/en-us/commandline/wsl/release-notes#build-17046 > 同社は「sshd、httpd、screenもしくはtmuxを起動した場合、
> コンソールウィンドウを開き続ける必要があったものの、ビルド17046以降は
> 最後のコンソールウィンドウを閉じても、プロセスはバックグラウンドで実行し続ける」と説明した。
マジか、これでひとまずはsshd使ってWindows側でWSL側のファイルを編集できそうだ
本当はWSL側のファイルシステムをWindows側のドライブとして参照できてほしいけどね
>>462
Linux互換レイヤーを持っているだけでカーネルはWindows
Linuxはまったく使ってないのでLinux Serverとはいえないと思う
Ubuntu Serverという言い方なら正しいかもね 最初のsshd起動するにはやっぱり窓開かなあかんのか Fedoraまだなんですか?
仕事でRedhatしか使わないから、Ubuntuとか覚える気にならない…… WslRegisterDistributionでCentOSのDockerイメージがイミフなエラーでインストールできないんだけど、っていうissue上がってるしFedoraも案外同じ問題にぶつかってたりしてな こんなのlinuxじゃねえから
これ使ってlinux使ってますアピするやつ見かけると笑われるよ Linuxをまったく使ってないんだからLinuxなわけないだろw Linuxのバイナリがそのまま動いてるから
カーネル的な意味では確かにLinuxではないがユーザーランド的な意味ではLinux(互換)と言っても差し支えないと思う ■ このスレッドは過去ログ倉庫に格納されています