Help us understand the problem. What is going on with this article?

OverlayFSについて

More than 5 years have passed since last update.

CoreOSが最近btrfsをやめてoverlayfsに移行するという発表をしたのでoverlayfsについて簡単に調べてみた。

そもそもFileSystemとは

Wikipedia 英語版 の説明がわかりやすい。

In computing, a file system (or filesystem) is used to control how data is stored and retrieved. Without a file system, information placed in a storage area would be one large body of data with no way to tell where one piece of information stops and the next begins. By separating the data into individual pieces, and giving each piece a name, the information is easily separated and identified. Taking its name from the way paper-based information systems are named, each group of data is called a "file". The structure and logic rules used to manage the groups of information and their names is called a "file system".
http://en.wikipedia.org/wiki/File_system

簡単にポイントを抽出すると、

  • ファイルシステムとは、どうやってデータを格納し探しだすかを制御する仕組み
  • ファイルシステムが無いと、ストレージに入れられた情報が、ただのデータの塊になってしまい、どこからどこまでが1つの情報で次はどこから始まるかがわからなくなってしまう
  • データを情報のピースに分けて、そのピースに名前を与える
  • これら情報のピースの集合と名前をどう管理するかという仕組みがファイルシステムと呼ばれる

OverlayFSとは

UnionFSと言われる、分離したファイルシステムのファイルやディレクトリを透過的に重ねることができる仕組みの実装の1つ

https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/Documentation/filesystems/overlayfs.txt
(日本語訳)

以下メモ

  • overlayfsは上の層と下の層をマージして1つのファイルシステムに見せる仕組み
  • ディレクトリだけマージするが、その他のファイルは単純に上だけが見える。上がない場合は下が見える
  • このマージは、statやreaddirなどのシステムコールの値を何と報告するかを適切に調整することにより行われる
  • 下の層はReadonly、上の層はReadonly/Writableどちらでも良い
  • Readonlyの層はNFSや別のoverlayfsでも良い
  • Wratableの時は、trusted.*拡張属性と、readdirのd_typeを返す必要があり、NFSではいけない
  • Readonlyな削除を実現するため、そのディレクトリ以下のファイルを見せなくするwhiteoutという機能がある
  • 上だけを見せて下を見せないという不透明というモードもある
  • 下の層に対して書き込みをする際、copy_upと言い、上の層に内容がディレクトリ階層/メタ情報ごとコピーされる

OverlayFSに関するニュース

追記

OverlayFSの挙動を簡単に実験してみました!
http://qiita.com/awakia/items/af9b46c322905cdce1d7

awakia
検索とか推薦とかやってきたエンジニア。早稲田の山名研出身。大学院の頃、論文を書こうとしない僕を見かねた教授に、北京のMSRAに追放されるが3ヶ月後無事帰還。 大学を卒業後、エンジニアのブラックホールとの別名を持つGoogleに吸収されそうになるが1年2ヶ月後無事生還。 現在は、Wantedly(https://www.wantedly.com/ )の4番目のエージェントとして救出活動に専念。
http://awakia-n.hatenablog.com/
wantedly
「シゴトでココロオドル」ためのビジネスSNS「Wantedly」の開発・運営をしています。
https://wantedlyinc.com/ja/presentations
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away