Windows Subsystem for Linux(以下、WSL)には、wslconfig.exeというコマンドがある。これはディストリビューションを管理するためのもの。Windows 10 Ver.1809(October 2018 Update、RS5)から「/upgrade」オプションが増えた。オンラインヘルプには、「ディストリビューションを WslFs ファイル システム形式にアップグレードします。」とある。この「WslFs」とは何かについて少し調べた。
Windows Subsystem for Linuxのファイルシステムには
VolFsとDrvFsの2つがある
WSLには、2つの独自のファイルシステム「VolFs」と「DrvFs」がある。前者は、ディストリビューションがインストールされるファイルシステムで、Linuxのメインのファイルシステムに相当する。名称は「Volume File System」の意味と思われるが、最近のWSLでは、「lxfs」と表記される。後者は、WSL内からWindowsのNTFSにアクセスするためのもので「Drive File System」の略と思われる。
wslconfig.exeの「/upgrade」オプションは、VolFsをアップグレードするためのものだ。実行は簡単で、WSLが起動していないときにディストリビューション名を指定して実行すればよい(ディストリビューション名は「/list」オプションで表示できる)。
そもそもLinuxのファイルシステムとは?
Linuxのファイルシステムは複数あり、カーネル内でVFS(仮想ファイルシステム)として管理され、ファイルシステムへの操作は、すべてVFSに対する操作として実行される。このVFSの下に物理的なストレージを操作するファイルシステムがある。
Unix系OSでは、OSの管理する資源をファイルシステムとして管理する。たとえば、デバイスも「/dev」というパスを持つ「ファイル」として表現され、デバイスファイルへの書き込みが、デバイスへのデータ転送になる。また、Linuxカーネルなどの情報を「/proc」や「/sys」といった「疑似ファイルシステム」で表現している。
ファイルと同じくパスを使うことで、複数の同名の資源にユニークな名前を付けることができ、アクセスもファイルと同じようにすればよいのでソフトウェア開発が簡素化される。
話を戻すと、Linuxのファイルシステムは、VFSが持つメタデータなどを管理する必要がある。メタデータとは、ファイルの中身ではないが、ファイルに関連する情報(たとえば、ファイルの作成日時や、作成者など)をファイルシステム内でファイルに対応させる形で保持していなければならない。
また、Linuxのファイルシステムでは、シンボリックリンク(ソフトリンク)、ハードリンクなどのファイル構造を作ることができるが、その情報もファイルシステム内でなんらかの形で保持していなければならない。
本記事はアフィリエイトプログラムによる収益を得ている場合があります

この連載の記事
-
第527回
PC
Windowsがクラッシュする原因を究明する方法 AIを活用すると結構早い -
第526回
PC
今年6月にPCが起動しなくなる心配はないが、セキュアブートが機能しないとWindowsのセキュリティ機能は一部使えなくなる -
第525回
PC
6月以降「PCが起動不可能に?」と間違った騒がれ方をしている原因の「セキュアブート」とは? -
第524回
PC
Windows Insider Programが変化 チャンネルが3つになって整理される -
第523回
PC
AI傾倒に一息入れて、既存のWindowsの改良を宣言するMicrosoft タスクバーを画面の上下左右に移動可能に!? -
第522回
PC
Windowsでも完全キーボード操作派は注目! PowerToysのコマンドパレット -
第521回
PC
Windowsでアプリをインストールしたときに警告が表示する「Defender SmartScreen」と「Smart App Control」 -
第520回
PC
WindowsターミナルのPreview版 v1.25では「操作」設定に専用エディタが導入 -
第519回
PC
「セキュアブート」に「TPM」に「カーネルDMA保護」、Windowsのセキュリティを整理 -
第518回
PC
WindowsにおけるUAC(ユーザーアカウント制御)とは何? 設定は変えない方がいい? -
第517回
PC
Windows 11の付箋アプリはWindowsだけでなく、スマホなどとも共有できる - この連載の一覧へ











