Vor kurzem musste ich verschiedene Kernel-Boot-Optionen mit einem Live-System testen und ein Programm installieren, um die Systeminformationen bei jedem Boot zu überprüfen (ich hatte kein USB-Laufwerk zur Verfügung und die CD war zu diesem Zeitpunkt die zuverlässigere Wahl).
Nach einigen Installationen begann ich mich zu fragen, wo das Programm tatsächlich "gespeichert" ist, da die CD keinen dauerhaften Bereich hat und es auch möglich ist, USB-Laufwerke ohne einen zu erstellen. Es ist auch möglich, Dateien herunterzuladen oder Screenshots mit einem nicht persistenten Live-System zu erstellen und diese vorübergehend in den Benutzerverzeichnissen zu speichern.
Wo werden diese Dateien tatsächlich gespeichert? Werden sie in den RAM geladen, sodass der maximal verfügbare Speicher für das Live-System tatsächlich die RAM-Kapazität des Computers ist? Sind installierte Programme im CPU-Cache oder an einem anderen Ort vollständig gespeichert? Oder sind diese Informationen möglicherweise auf den leeren Platz des CD-Mediums geschrieben? Es kann offensichtlich kein nicht zugewiesener Festplattenspeicher sein, da Live-Systeme auch vollständig verschlüsselt oder sogar vollständig ohne installierte Festplatten arbeiten.
quelle
aufs
ein anderes Overlay-Dateisystem - sie sind einfacher einzurichten als eine klassischetmpfs
Konfiguration.Das mit Ubuntu ISO gelieferte Live-System ist eine Ubuntu-Installation in einer komprimierten Datei namens
filesystem.squashfs
. Diese Datei verfügt über ein Dateisystem von SquashFS 1, das mit dem ISO-Dateisystem von CDs und DVDs vergleichbar ist, das bereitgestellt und verwendet werden kann. 2Diese Datei befindet sich im
/casper/
Verzeichnis der CD. Sie können diese Datei sogar auf dieselbe Weise bereitstellen wie ISO-Dateien.Diese Datei wird beim Booten gemountet und in den Speicher geladen, um als Live-System verwendet zu werden. Die vollständige Datei wird jedoch nicht sofort geladen, sondern nur die erforderlichen Teile / Programme bei Bedarf.
Ein Live-System kann mithilfe einer persistenten Datei Dateien des Mediums erstellen / ändern . Die in Ubuntu verwendete persistente Datei heißt
casper-rw
und enthält Dateisysteme wieext3
oderext4
die beschreibbar sind. Bei einem bootfähigen USB-Stick befindet sich dieser im Stammverzeichnis des Laufwerks.Diese
casper-rw
Persistenzdatei wird als Overlay-Dateisystem in Union gemountet. Dies bedeutet, dass sowohl schreibgeschütztfilesystem.squashfs
als auch schreibgeschützt / beschreibbarcasper-rw
gemountet sind/
. Alle Dateien, die geändert oder erstellt werden, werden in diesem beschreibbaren Dateisystem von gespeichertcasper-rw
. So entsteht effektiv die Illusion, dass die Live-CD beschreibbar ist, wo sie eigentlich nicht sind.Beantworten Sie also Ihre Fragen -
Antwort oben gegeben.
Ich nehme an,
memory
Sie beziehen sich auf den Raum. Ihre Frage lautet: "Der maximal verfügbare Speicherplatz für das Live-System ist also genau die RAM-Kapazität des Computers."Nein. Der maximal verfügbare Speicher für ein Live-System entspricht der Größe der persistenten Datei (falls vorhanden) + Swap Space (falls bereits vorhanden) + RAM (muss bis zum Neustart als Speicher verwendet werden.)
Wenn Sie ein Programm in einem Live-System ohne persistente Datei installieren , befinden sich diese in Ihrem Speicher. Wenn Sie neu starten, geht alles verloren. Wenn Sie jedoch eine
casper-rw
persistente Datei verwenden, werden diese in dieser Datei gespeichert und sind nach dem nächsten Neustart verfügbar ( vorausgesetzt, Sie haben diese Datei nicht gelöscht ).Nein, es wird nicht auf das CD-Medium geschrieben. Wie in der vorherigen Antwort erklärt.
Hoffe du bekommst deine Antworten.
Anmerkungen:
SquashFS - Es handelt sich um ein schreibgeschütztes Dateisystem, mit dem Sie ganze Dateisysteme oder einzelne Verzeichnisse komprimieren, auf andere Geräte / Partitionen oder normale Dateien schreiben und diese dann direkt (wenn ein Gerät) oder mithilfe eines Loopback-Geräts (falls vorhanden) bereitstellen können es ist eine Datei). Quelle
Sie können es mit Befehlen wie mounten
sudo mount ./filesystem.squashfs /mnt -o loop
Durch das Mounten von Vereinigungen können mehrere Verzeichnisse zu einem Verzeichnis kombiniert werden, das den kombinierten Inhalt zu enthalten scheint. Quelle
quelle
/
. Man sieht sie wie/usr/
,/var/
,/home
usw. in Live - CD können Sie nicht erstellen, zu ändern Dateien , die weiter besteht. Ja, Sie können erstellen, ändern, aber das wird verschwinden, da sie sich wirklich im RAM befinden. Dies ist das gleiche in Live USB ohne Persistenzdatei odercasper-rw
Datei/
. Wenn Sie also eine Datei in Ihrem/home
Verzeichnis erstellen , wird diese Datei tatsächlich in dercasper-rw
Datei gespeichert , aber Sie denken, das ist der Inhalt der CD. Wenn Sie öffnencasper-rw
, erhalten Sie alle geänderten / aktualisierten Dateien dort am jeweiligen Speicherort. Da dies über das schreibgeschützte Original montiert wird, entsteht die Illusion