非永続的なライブシステムのどこにプログラムとファイルが保存されているのですか?


8

最近、ライブシステムでさまざまなカーネルブートオプションをテストする必要があり、すべてのブートでシステム情報をチェックするプログラムをインストールする必要がありました(利用可能なUSBドライブがなく、その時点ではCDがより信頼性の高い選択肢でした)。

数回のインストールの後、CDに永続的な領域がなく、USBドライブを作成することもできないため、プログラムが実際に「保存」される場所を知り始めました。また、ファイルをダウンロードしたり、非永続的なライブシステムでスクリーンショットを作成したり、ユーザーディレクトリに一時的に保存したりすることもできます。

これらのファイルは実際にどこに保存されますか?それらはRAMに読み込まれているので、実際のシステムで使用可能な最大メモリは実際にはマシンのRAM容量ですか?インストールされたプログラムは、CPUキャッシュまたは他のどこかに完全に格納されていますか?それとも、その情報はCDメディアの空きスペースに書き込まれているのでしょうか?ライブシステムは完全に暗号化された状態でも動作し、ハードドライブがインストールされていなくても動作するため、ハードドライブの空き容量を確保することはできません。

回答:


10

それは非永続的です。そのため、再起動の間は「持続」しません(存在し続けます)。何が起こるかというと、RAMの一部がRAMディスクとして使用されます。基本的に、RAMの一部はディスクのシミュレーションに使用されます。これですべてです。そのため、LiveCDセッション中に/ home / ubuntuにファイルを作成できます。再起動後は、存続しません(=持続します)。

便利なLiveCDはありませんが、df -h次にターミナルに入力して/マウントポイントを探してみてください。デバイスを見てください。それはおそらくのようなものになりますtmpfs。(この1つのライナーで、関心のある行が表示されます。df -h | grep \/$

RAMディスクについてのいくつかの読書。


3
最近では、aufsまたはその他のオーバーレイファイルシステムである可能性が高く、従来のtmpfs構成よりもセットアップが簡単です。
マーク

11

Ubuntu ISOに付属しているライブシステムは、Ubuntuインストールと呼ばれる圧縮ファイルですfilesystem.squashfs。このファイルには、SquashFS 1のファイルシステムが含まれています。これは、マウントして使用できるCDおよびDVDのISOファイルシステムに相当します。2

このファイルは/casper/CD のディレクトリにあります。ISOファイルをマウントするのと同じ方法で、このファイルをマウントすることもできます。

このファイルは、起動時にマウントされてメモリにロードされ、ライブシステムとして使用されます。ただし、ファイル全体が一度に読み込まれるのではなく、必要な部分/プログラムのみがオンデマンドで読み込まれます。

ライブシステムは、永続ファイルを使用してメディアのファイルを作成/変更できます。Ubuntuのに使用される永続的なファイルが命名されたcasper-rwとのようなファイルシステムが含まれているext3か、ext4書き込み可能です。起動可能なUSBでは、これはドライブのルートにあります。

このcasper-rw永続性ファイルは、オーバーレイファイルシステムとしてユニオンマウントされます。つまり、読み取り専用filesystem.squashfsと読み取り/書き込み可能のcasper-rw両方がにマウントされ/ます。変更または作成されたファイルは、のこの書き込み可能なファイルシステムに保存されますcasper-rw。したがって、Live CDが書き込み可能であるという幻想を効果的に作成しますが、実際には書き込み可能ではありません。

だから、あなたの質問に答える-

これらのファイルは実際にどこに保存されますか?

上記の回答。

それらはRAMに読み込まれているので、実際のシステムで使用可能な最大メモリは実際にはマシンのRAM容量ですか?

memoryあなたはスペースについて言及していると思います。あなたの質問は、「実際のシステムで使用可能な最大スペースは、実際にはマシンのRAM容量である」ということです。

いいえ。ライブシステムで使用可能な最大ストレージは、永続ファイルのサイズ(ある場合)+スワップスペース(既に存在する場合)+ RAM(再起動するまでストレージとして使用する必要があります)

インストールされたプログラムは、CPUキャッシュまたは他のどこかに完全に格納されていますか?

永続ファイルなしでライブシステムにプログラムをインストールすると、それらはメモリに保存されます。再起動すると、すべてが失われます。ただし、casper-rw永続的なファイルを使用している場合、それらはそのファイルに保存され、次回の再起動後に利用できます(そのファイルを削除しなかった場合

それとも、その情報はCDメディアの空きスペースに書き込まれているのでしょうか?

いいえ、CDメディアには書き込みません。前の回答で説明したように。

あなたがあなたの答えを得ることを願っています。


ノート:

  1. SquashFS-これは読み取り専用ファイルシステムで、ファイルシステム全体または単一のディレクトリを圧縮し、それらを他のデバイス/パーティションまたは通常のファイルに書き込んでから、直接(デバイスの場合)またはループバックデバイスを使用して(ファイルです)。ソース

  2. 次のようなコマンドを使用してマウントできます sudo mount ./filesystem.squashfs /mnt -o loop

  3. ユニオンマウントは、複数のディレクトリを1つのディレクトリに結合する方法で、結合されたコンテンツが含まれているように見えます。ソース


キャスパーはファイルシステムの友好的な小さな幽霊です。

1
詳しい説明ありがとうございます。個々の質問に対する回答を回答に追加したことは知りません。それはそれをかなりよく説明します。しかし、casper -rwのセクション、特に「これにより、Live CDが書き込み可能であるにもかかわらず、実際には書き込み可能ではないという幻想を効果的に作成する」の意味を完全には理解していませんでした。それ。あなたは質問に答えましたが、永続的なファイルはCDメディアで利用できず、スワップファイルは論理的にはRAMにのみ存在できるため、私の場合はそこに情報が格納されていました。
Prototype700

1
イリュージョン部分を説明しています。読み取り専用ファイルはにマウントされ/ます。Live CDの、などのよう/usr/に表示されます。永続化するファイルを作成、変更することはできません。はい、作成、変更できますが、それらは実際にはRAM内にあるため、なくなります。これは、永続化ファイルまたはファイルなしのライブUSBでも同じです/var//homecasper-rw
Anwar

1
ただし、永続化ファイルを含むライブUSBでは、これもにマウントされてい/ます。したがって、/homeディレクトリにファイルを作成すると、そのファイルは実際にファイルに格納されcasper-rwますが、それはCDの内容だと思います。を開くcasper-rwと、変更/更新されたすべてのファイルがそれぞれの場所にあります。これは元の読み取り専用のものの上にマウントされているため、イリュージョンを作成している
Anwar

2
もう1つは、「スワップファイルは論理的にはRAMにしか存在できない」というあなたの言ったことは正しくありません。スワップはディスクに保存されているパーティションまたはファイルであり、起動時に使用するためにマウントされます。美しいのは、ディスクにすでにスワップパーティションがある場合、ライブUbuntuがそれを認識して使用することです。しかし、はい、それは揮発性であり、@ Prototype700を再起動するときれいになります
Anwar
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.