Ich habe kürzlich Ubuntu 12.04 neben meinem Windows 7 installiert. Aber ich habe kein Swap-Volume für Ubuntu erstellt. Es gibt bereits 4 Partitionen auf meiner Festplatte (eine Windows 7, eine System-Tools (Windows 7), eine für Ubuntu und eine für Common Media Storage (ntfs)). Daher erlaubte mir Gparted nicht, eine weitere Partition für das Swap-Volume zu erstellen. Es sagte alles, um eine erweiterte Partition zu erstellen, aber ich weiß nicht, wie man das macht. Ich möchte ein Swap-Volume aus einem gemeinsamen Medienspeicher erstellen. Wie kann ich das erreichen?
Und ich bin völlig neu bei Ubuntu, können Sie also ein gutes Einstiegstutorial dafür vorschlagen?
Akzeptierte Antwort:
Um eine fünfte Partition zu erstellen, müssten Sie eine Ihrer vier vorhandenen primären Partitionen entfernen, eine erweiterte Partition erstellen (die ein Container für logische Partitionen ist, sodass Sie effektiv mehr als vier Partitionen auf einem System mit einem MS-DOS-Typ haben können Partitionstabelle), und erstellen Sie die gelöschte Partition als logische Partition innerhalb der erweiterten Partition neu. Sie müssten irgendwo eine Sicherungskopie der von Ihnen entfernten Partition (oder zumindest ihres Inhalts) haben. Dies ist ein großer Aufwand, in einigen Fällen unerschwinglich.
Daher sollten Sie es so einrichten, dass es stattdessen eine Auslagerungsdatei verwendet, es sei denn, Ihr Ubuntu-System muss den Ruhezustand unterstützen (was eine Auslagerungspartition erfordert). Dies funktioniert genauso gut (vorausgesetzt, Ihre Auslagerungsdatei ist auf einer ext2-, ext3- oder ext4-Partition gespeichert, was der Fall wäre).
Die folgenden Anweisungen stammen aus der Swap-FAQ in der Ubuntu-Community-Dokumentation. Es ist kein genaues Zitat, da ich die Formatierung für die interne Konsistenz und für die Kompatibilität mit AskUbuntu geändert habe; Ich habe auch ein paar kleine Änderungen für Klarheit vorgenommen. Diese Dokumentation ist unter CC-BY-SA lizenziert, was die Aufnahme (mit oder ohne Änderung) in Artikel wie diesen erlaubt (die als Inhalt von AskUbuntu.com auch unter dieser Lizenz verfügbar gemacht werden). Es kann sinnvoll sein, dies aus Gründen der Übersichtlichkeit (oder aus anderen Gründen) weiter zu bearbeiten, aber wenn wesentliche weitere Änderungen vorgenommen werden, wäre es gut, diese explizit „Upstream“ zur Prüfung anzubieten (um auch die Originalquelle zu verbessern).
Vier-Schritte-Prozess zum Hinzufügen einer Auslagerungsdatei
- Erstellen einer Datei in der gewünschten Größe.
- Formatieren dieser Datei, um ein Auslagerungsgerät zu erstellen.
- Hinzufügen des Swaps zum laufenden System.
- Die Änderung dauerhaft machen.
INFO:Dies funktioniert derzeit nicht auf btrfs-Dateisystemen. Siehe man swapon
.
Anleitung zum Hinzufügen eines 512-MiB-Swaps
-
Erstellen Sie eine Datei mit einer Größe von 512 MiB (oder ersetzen Sie sie durch die gewünschte Größe):
Wir erstellen eine
/mnt/512MiB.swap
swap-Datei und stellen Sie die Berechtigungen so ein, dass Benutzer sie nicht direkt lesen können.sudo fallocate -l 512m /mnt/512MiB.swap sudo chmod 600 /mnt/512MiB.swap
fallocate
Längensuffixe sind:k, m, g, t, p, e (Sieheman fallocate
.)Standardmäßig kann Ihre Auslagerungsdatei für alle lesbar erstellt werden. Wir setzen die 600-Modus-Berechtigungen, um zu verhindern, dass Benutzer möglicherweise vertrauliche Informationen aus der Auslagerungsdatei lesen können.
Wenn Fallocate mit
fallocate failed: Operation not supported
fehlschlägt wie es derzeit auf meiner Maverick-Maschine der Fall ist, können Sie dies auf die alte Weise tun, wieder 512 MiB:sudo dd if=/dev/zero of=/mnt/512MiB.swap bs=1024 count=524288 sudo chmod 600 /mnt/512MiB.swap
-
Formatieren Sie diese Datei, um ein Wechselgerät zu erstellen:
sudo mkswap /mnt/512MiB.swap
-
Fügen Sie den Swap dem laufenden System hinzu:
sudo swapon /mnt/512MiB.swap
Der zusätzliche Swap ist jetzt verfügbar und kann von
cat /proc/meminfo
gesehen werden . -
Die Änderung dauerhaft machen:
Bearbeiten Sie
/etc/fstab
:gksudo gedit /etc/fstab
Fügen Sie diese Zeile am Ende der Datei hinzu:
/mnt/512MiB.swap none swap sw 0 0
Speichern. Nach dem nächsten Neustart wird der Swap automatisch verwendet.
Beispiel für die Erstellung einer Auslagerungsdatei
Dies ist ein Beispiel für das Erstellen und Verwenden einer Auslagerungsdatei auf einem Computer ohne Auslagerungspartition.
[email protected]:~$ sudo fallocate -l 512m /mnt/512MiB.swap
Password:
[email protected]:~$ sudo mkswap /mnt/512MiB.swap
Setting up swapspace version 1, size = 536866 kB
no label, UUID=dd6a01c8-93f0-41e0-9b7a-306956d8821b
[email protected]:~$ sudo swapon /mnt/512MiB.swap
[email protected]:~$ cat /proc/meminfo
MemTotal: 499496 kB
MemFree: 9156 kB
Buffers: 4748 kB
Cached: 233140 kB
SwapCached: 724 kB
Active: 254432 kB
Inactive: 157920 kB
HighTotal: 0 kB
HighFree: 0 kB
LowTotal: 499496 kB
LowFree: 9156 kB
SwapTotal: 524280 kB
SwapFree: 523556 kB
Dirty: 128 kB
Writeback: 0 kB
Mapped: 243420 kB
Slab: 20672 kB
CommitLimit: 774028 kB
Committed_AS: 648680 kB
PageTables: 2224 kB
VmallocTotal: 524280 kB
VmallocUsed: 5708 kB
VmallocChunk: 518176 kB
[email protected]:~$ gksudo gedit /etc/fstab
[email protected]:~$ free
total used free shared buffers cached
Mem: 499496 479488 20008 0 8256 215892
-/+ buffers/cache: 255340 244156
Swap: 524280 3856 520424
#####Then, after running a few more programs...
[email protected]:~$ free
total used free shared buffers cached
Mem: 499496 492768 6728 0 1240 142336
-/+ buffers/cache: 349192 150304
Swap: 524280 53384 470896
#####Next, reboot to make sure it will work consistently.
[email protected]:~$ free
total used free shared buffers cached
Mem: 499496 493136 6360 0 7528 174700
-/+ buffers/cache: 310908 188588
Swap: 524280 17148 507132
Ihre Änderungen rückgängig machen
Das Rückgängigmachen folgt im Grunde dem gleichen Prozess in umgekehrter Reihenfolge.
gksudo gedit /etc/fstab
Entfernen Sie die Zeile:
/mnt/512MiB.swap none swap sw 0 0
Entfernen Sie die Auslagerung aus dem laufenden System und entfernen Sie die Auslagerungsdatei:
sudo swapoff /mnt/512MiB.swap && sudo rm /mnt/512MiB.swap
Kein Neustart erforderlich.
Quelle:Wie oben ausführlich beschrieben, ist dies eine abgeleitete Arbeit von SwapFaq in der von der Ubuntu-Community verfassten Dokumentation. Diese Seite wurde von Contributors to the Ubuntu documentation wiki
geschrieben . (Betreuer von dieser AskUbuntu-Antwort sollte diese rechtlichen Informationen sorgfältig lesen, bevor Sie dieses Zitat bearbeiten oder entfernen, um sicherzustellen, dass die Anforderung, die ursprünglichen Autoren zu würdigen, weiterhin erfüllt wird.)