
この春、MicrosoftはLinuxツールを新しいWindows 10オペレーティングシステムに統合し始め、最初のステップは、ビルド14316にUbuntuおよびBashツールを含めることでした 。 アップデートの本質は、LinuxシステムコールをWindowsシステムコールに変換するWSLレイヤーを追加することでした。これにより、エミュレーションおよび仮想化なしでメインのWindows環境に完全なUbuntu Linuxツールキットをデプロイできます。
昨日、 Microsoftは公式ブログにエントリを公開し 、Windowsツールまたはアプリケーションを使用してLinuxファイルを変更、作成、または削除しないように開発者に促しています。
MSDNのブログ投稿の冒頭には大きな警告があります。
いかなる状況でも、Windowsを使用してLinuxファイルを作成および/または変更しないでください。アプリケーション、ツール、スクリプト、コンソールなどです。
WindowsからLinuxファイルを作成/変更すると、データが破損したり、Linux環境が破損したりする可能性があり、将来的には配布キットを再インストールする必要があります。
Windows 10のLinuxサブシステムの
%LOCALAPPDATA%\lxss
にあるファイルまたはフォルダーについて話しています。
WSLのロジックにより、ブログの情報から判断すると、同様のことが起こります。
WSLがファイルのLinuxメタデータファイルを見つけられない場合、ファイルが破損または削除されているか、ファイルを正しく開いたり読み取ったりできないと判断され、クラッシュにつながります。 場合によっては、削除されたファイルは「破損」として認識されます。
「ファイルのメタデータ(拡張子、作成日、およびその他の情報)は、LinuxとWindowsでは異なる方法で生成されます。 このため、Windows用のソフトウェアとツールは、Linuxファイルのメタデータを正しく保存および書き込むことができません(原則として、できません)。 さらに、一部のWindowsソフトウェアは、ソースファイルを編集せず、コピーを作成することがよくあります。 この場合、元のファイルは削除されて別のファイルに置き換えられ、メタデータは失われます」とブログは述べています。
この問題は、Windowsツールで処理される必要なファイルをMicrosoft OSファイルシステムのフレームワーク内に保存することで解決され、LinuxファイルはWindowsツールを使用して変更、作成、または削除できません。