GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

Swap-Volume hinzufügen?

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

  1. 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 (Siehe man 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
    
  2. Formatieren Sie diese Datei, um ein Wechselgerät zu erstellen:

    sudo mkswap /mnt/512MiB.swap
    
  3. 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 .

  4. 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.

Verwandte:Wie ersetzen wir iptables durch firewalld in Ubuntu 16.04?

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.)


Ubuntu
  1. So fügen Sie eine Auslagerungsdatei unter Ubuntu hinzu

  2. So erstellen Sie einen Swap unter Linux

  3. So erstellen Sie eine Auslagerungsdatei unter Linux

  4. Erstellen Sie eine Linux-Auslagerungsdatei

  5. Abschnitt zur ELF-Datei hinzufügen

So fügen Sie Swap Space unter Ubuntu 20.04 hinzu

So fügen Sie Swap Space unter CentOS 7 hinzu

So fügen Sie Swap Space unter CentOS 8 hinzu

So fügen Sie Swap Space unter Debian 9 hinzu

So deaktivieren Sie Swap unter Linux

So fügen Sie eine Auslagerungsdatei unter Ubuntu 20.04 hinzu