WSL(ubuntu / windows)AppData \ Local \ Lxssは実際にはubuntuに同期されません、アイデア?


10

bashでファイルを作成した場合(touch /root/foo.txt)隠しディレクトリに表示されるファイルをAppData\Local\Lxss\ 変更すると、bashで変更されません。エクスプローラーで変更したファイルがbashで再度変更すると、問題が悪化します!

に実際のマウントポイントはありますC:\か?

実際の画像はどこに隠れていますか?(実際にファイルシステムがイメージファイルに書き戻すのと同じですか?)

このhttps://channel9.msdn.com/Events/Build/2016/C906の 0:14:29は、エクスプローラーからの完全なアクセス権があると主張しているようです。0:16:30彼らはあなたを表示しますAppData\Local\Lxss\ が、私が説明したようにあなたのファイルが同期しないことを一度は言及しません。


刑務所の外でntkernelに教えたsys呼び出しを使用できるlinux-binaryや物がない(それはcygwinに戻る:()ですが、少なくともWindows C:\に書き込み可能なルートファイルシステムをマウントする必要があります。周年が
金曜日に

私はいつもサンバがあると思います:(
sabgenton

1
どうやらそれはそのように使用することを意図していません。github.com/Microsoft/BashOnWindows/issues/45
wbkang

なんてこった cosmicdanコメントの終わり近くに私がやったことだけを言っているようです。Macは今でもより良いセットアップのようです。
サブジェントン

回答:


4

Windowsエクスプローラーで作成された新しいファイルは、特別なLXSS NTFS属性がないため、bashに表示されない可能性があります。

LXSSがLXSSルートにファイルを作成するとき、LXSSは、NTFS属性を介してそれらに追加情報を添付し、Linuxファイルのアクセス許可など、標準のNTFS属性では表現できないものを格納します。これらがない場合、ファイルは表示されません。

これは、bashでファイルを作成し、Windowsエクスプローラーでそのコピーを作成すると、bashに表示されるという事実によってサポートされます。これはおそらく、特別なLXSS属性のすべてがファイルと重複していたためです。

LXSSファイルシステムレイヤーもファイルシステムをキャッシュしているように見えるため、すべてのbash端末が停止する(LXSSサービスのLXSSセッションが終了する)までファイルが追加または削除された場合、bashのディレクトリエントリはファイルシステムの実際の状態を反映しませんしたがって、キャッシュをクリアします)。


3

わかりました。AppData\Local\Lxss\変更可能で、Ubuntu bashセッションに同期されます。

bashを完全に閉じる必要があります。そして、あなたは新しいファイルを作成することはできません。

Microsoftができないと言っているように奇妙です。

しかし、煩わしいこと以外は、新しいファイルを作成するのはうまくいかないようで、これはまだあまり使えません。

bashセッションがramにデータを入れるかどうかはわかりませんが、Microsoftがこれを実現できるかどうかはわかりません。


3

私にとってうまくいくのは、エクスプローラーを使用する代わりにbashでコピーすることです。

Cドライブは/ mnt / cにあるため、C:\ tmp \ test1フォルダーをbashホームディレクトリの/ tmp /にコピーするには、次のようにしますcp -r /mnt/c/tmp/test1 ~/tmp


3

私はあなたがこれを非常に役立つと思うと思います... そこには非常に多くの有用な情報がありますが、1つのセクションで適用されるため、要約することができます。

Windowsとの相互運用性

VolFsファイルは上記のディレクトリのWindows上の通常のファイルに保存されますが、Windowsとの相互運用性はサポートされていません。Windowsからこれらのディレクトリの1つに新しいファイルを追加すると、VolFが必要とするEAが不足するため、VolFはファイルの処理方法を認識せず、単に無視します。多くのエディターはまた、既存のファイルを保存するときにEAを取り除き、ファイルをWSLで使用できなくします。

さらに、VFSはディレクトリエントリをキャッシュするため、WSLの実行中にWindowsから行われたディレクトリへの変更は正確に反映されない場合があります。

この記事では、ファイルシステムの詳細と拡張属性についても触れています。しかし、要約すると、WindowsからWSLファイルを変更することはできません。


0

この問題が解決するまで、ネイティブNTFSファイルシステムを表示するためにcygwin sshdをインストールし、lsxx linuxファイルを表示するためにubuntu sshdを実行しました。apt-getを使用してsshfsをインストールし、win-sshfsを使用して双方向でマウントします。回り込み型のハックですが、今のところ私には問題ありません。

cygwin sshdを台無しにしたくない場合は、cygwin sshを使用してファイルを前後にscpできます。

cygwin sshdを使用すると、.ssh / configファイルで実際の管理者アカウントを使用することにより、ファイル権限の問題を回避できます。DevFS / NTFSインターフェイスを通過する奇妙なアクセス許可がいくつかありました。


ルートファイルシステムではなく、LXSSの/ mnt /を通じてのみファイルを「共有」する必要があります。
ZiggyTheHamster
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.