Domanda Come posso aggiungere lo swap dopo l'installazione del sistema?


Non ho creato una partizione di swap durante l'installazione di Ubuntu. Più tardi ho liberato spazio e creato una partizione di swap. Ora dopo ogni avvio, sto aprendo manualmente gparted per fare clic con il tasto destro sulla partizione di swap per attivare l'opzione 'swapon'.

Come posso abilitare automaticamente la partizione di swap all'avvio?

Inoltre, se non avessi creato la partizione di swap, quali sono le mie altre opzioni?


142
2018-04-05 20:02


origine


askubuntu.com/questions/299417/... - Qasim


risposte:


Devi modificare /etc/fstab e aggiungi la nuova partizione di swap.

sudo nano /etc/fstab

Devi aggiungere una linea simile

UUID=735b3be3-779c-4d21-a944-b033225f3ab4 none   swap    sw      0       0

e ottieni l'UUID usando il comando

sudo blkid /dev/sda3

(sostituire /dev/sda3 con il nome del dispositivo appropriato).

Relazionato:


122
2018-04-05 20:23



Hai bisogno di aiuto per / etc / fstan sto ottenendo output: - bash: / etc / fstab: permesso negato - Ashu_FalcoN
Usa sudo gedit / etc / fstab
Per trovare il nome del dispositivo appropriato: sudo fdisk -l (a partire dal: askubuntu.com/questions/182446/...) e quindi cercare Type: Linux swap. - NumesSanguis
sudo blkid /dev/sda4 non stampa niente per me (sda4 è una partizione appena creata con il codice 82h, fdisk dice che è una partizione "Linux swap / Solaris"). - Egor Skriptunoff
@ elvis.dukaj è perfettamente adatto anche a usare il nome del dispositivo. In pratica esprimono due cose diverse. Uno dice di usare il volume esattamente con quello UUID (qualcosa che cambierà con un altro mkswap eseguire) e l'altro dice di utilizzare la partizione primaria numero 3 del disco /dev/sda. Alcuni preferiscono gli UUID perché anche se l'assegnazione dei nomi dei dispositivi cambia, gli UUID rimarranno gli stessi. Ecco perché la differenza è importante. Ma se sei sicuro di non ripartizionare l'unità, /dev/sda3 dovrebbe essere ugualmente sicuro da usare. - 0xC0000022L


Per creare una partizione di swap dopo l'installazione, creare una partizione vuota. Non dovrebbe avere buchi. È quindi possibile formattare questa partizione con:

sudo mkswap /dev/sdX

sostituzione /dev/sdX con il tuo partizione. Montare questa partizione come scambio con

sudo swapon -U UUID

dove UUID è quello del tuo /dev/sdX come letto da questo:

blkid /dev/sdX

Unisci il tuo nuovo scambio /etc/fstab aggiungendo questa riga:

UUID=xxx    none    swap    sw      0   0

Se si desidera utilizzare lo scambio per ibernazione, è necessario aggiornare l'UUID in /etc/initramfs-tools/conf.d/resume con questo contenuto RESUME=UUID=xxx. Non dimenticare di $ sudo update-initramfs -u.

Per completare le cose: è anche possibile creare un file di scambio se non si dispone di una partizione di ricambio. Questa risposta ti dà un'idea di come creare un file di scambio e abilitarlo all'avvio.


96
2018-04-05 20:34



A partire da ora, ho un SSD con due partizioni, ma vorrei fare un terzo. Se ho una partizione ext4 primaria che contiene il sistema operativo e i miei file, posso usarla per rimuovere 2 GB da questa in una nuova partizione? Questa partizione primaria ha più spazio sufficiente per cui non dovrebbe esserci un problema. - dustin
Guarda a gparted per ridimensionare la tua partizione. - NumesSanguis


Nel caso in cui non lo desideri o non sei sicuro di come creare una partizione di swap, puoi creare un file di scambio che funzionerà allo stesso modo della partizione. Ecco i passaggi (utilizzando il terminale):

  1. Crea un file vuoto (1K * 4M = 4 GiB).

    sudo mkdir -v /var/cache/swap
    cd /var/cache/swap
    sudo dd if=/dev/zero of=swapfile bs=1K count=4M
    sudo chmod 600 swapfile
    
  2. Converti il ​​file appena creato in un file di spazio di scambio.

    sudo mkswap swapfile
    
  3. Abilita il file per il paging e lo swapping.

    sudo swapon swapfile
    

    Verifica da: swapon -s o top:

    top -bn1 | grep -i swap
    

    Dovrebbe mostrare la linea come: KiB Swap: 4194300 total, 4194300 free

    Per disabilitare, utilizzare sudo swapoff swapfile comando.

  4. Aggiungilo dentro fstab file per renderlo persistente all'avvio successivo del sistema.

    echo "/var/cache/swap/swapfile none swap sw 0 0" | sudo tee -a /etc/fstab
    
  5. Ri-testare il file di swap all'avvio di:

    sudo swapoff swapfile
    sudo swapon -va
    

    Nota: i comandi sopra riportati ricontrollano la sintassi di fstab file, altrimenti il ​​tuo Linux non potrebbe avviarsi correttamente.


42
2017-07-10 12:44



Grazie per l'unica risposta che utilizza una partizione di swap e non di swap. In questo caso non sono riuscito a creare una partizione. I comandi funzionavano alla grande. - Sarel Botha
Per coloro che necessitano di uno spazio di swap di dimensioni superiori, aumentare il conteggio = 4M, su XM, per lo spazio di scambio X GiB. Nel caso in cui qualcuno lo mancasse. - saurabheights
Non sono sicuro del passaggio 5. Perché dovrei disattivare lo swap per testare? - Raffi Khatchadourian
@RaffiKhatchadourian La ripetizione periodica alla fine aiuta a ricontrollare la sintassi di fstab file (contro qualsiasi refuso), altrimenti Linux potrebbe non avviarsi correttamente causando problemi di avvio importanti, specialmente su server remoti. - kenorb
Ah capisco ora. È necessario farlo prima di riavviare. Sono stato buttato via all'avvio. - Raffi Khatchadourian


C'è un modo grafico per farlo usando gparted.

Esegui Gparted con:

sudo gparted

Se non lo hai installato, puoi installarlo usando

sudo apt-get install gparted

Una volta avviato gparted:

  1. Assegnare la partizione come si farebbe facendo clic con il pulsante destro del mouse su qualsiasi blocco non allocato e facendo clic new
  2. Formattare la partizione come linux-swap
  3. Fare clic con il tasto destro sulla partizione e fare clicswapon

Una volta terminato, dovrebbe esserci un'icona di chiave accanto al nome della partizione


8
2017-09-16 18:33



di gran lunga la risposta più semplice - Shobi P P
Per renderlo permanente, devi ancora modificare il file fstab come nella risposta da @ user4124 - Madura Pradeep


a partire dal linux.com basta creare il file di swap in quanto è più flessibile e puoi regolare dinamicamente quanti e quanti depositi di swap hai. Ciò consente anche di spostare la partizione di swap dal disco di sistema, rendendo così il sistema più veloce. Inoltre, se utilizzi più spazi di scambio, regola la priorità di utilizzo allo stesso valore, in modo che round-robin venga utilizzato per scrivere in essi, consentendoti di ottenere ancora più miglioramenti di velocità.

post scriptum userei l'UUID al posto del nome del dispositivo, perché è facilmente possibile cambiare l'ordine del dispositivo se per caso lasci la memoria USB all'interno dello slot USB e semplicemente rimuovi e ricolleghi i cavi sata - non devi preoccuparti troppo di quale unità è connessa .


2
2018-04-06 11:54



Questa è stata la risposta più utile, poiché non richiede la ripartizione del disco dell'unità. Peccato che Ubuntu non crei lo swap di default quando lo installi su una nuova macchina! - Ernie


Questo è un tutorial completo su come creare un Ram Drive per Ubuntu. Purtroppo .. gli screenshot non vengono visualizzati in questo tramite taglia e incolla .. Più tardi li aggiungerò, ma non sono necessari.

La prima cosa che devi fare è creare spazio per la tua ram drive. Ho un sistema di avvio doppio con solo un disco rigido da 32 GB. La mia Ubuntu è effettivamente installata su una scheda SD (sì, una vera installazione e non una cosa di Casper Live). Il mio scambio era anche su SD e potrebbe essere consumato rapidamente. Ho cercato come cambiare lo swap e ho trovato questo articolo e non mi piacevano le risposte, quindi ho fatto un tutorial mentre ho apportato la modifica.

Se desideri semplicemente aumentare o diminuire la partizione Swap, devi solo aumentare o diminuire la partizione tramite il tuo gestore delle partizioni preferito. Ubuntu sa già dove andare ed è indipendente dalla dimensione. Se vuoi cambiare la posizione o fare un nuovo Swap, allora continua a leggere. La prima cosa che devi fare è Ridurre il tuo disco rigido per fornire spazio per uno scambio. Se stai riducendo un disco con il sistema Windows su di esso, allora è meglio usare Windows per ridurre il disco (Conosce le sue stesse cose). Se sei su una Ubuntu pura, prova a ridimensionarla usando una Ubuntu USB attiva.

Istruzioni per ridimensionare Windows:

  1. Effettua il backup del tuo sistema e deframmenta il tuo disco.
  2. Fare clic con il tasto destro sulla barra di avvio.
  3. Seleziona Gestione disco
  4. Fare clic con il tasto destro del mouse su CORRECT DRIVE
  5. Seleziona Riduci.
  6. Digita l'importo corretto.

Se sei in Ubuntu. Assicurati di utilizzare gli strumenti di Ubuntu. Per completare l'allocazione, userò una USB Live avviabile di Ubuntu che include GParted. Un Live USB è il modo migliore di usare Gparted per qualsiasi motivo, e dovresti avere una USB dalla tua prima installazione o farne una per tenerla a portata di mano.

Digitare nel 2000 non era permesso perché non c'era abbastanza spazio per farlo anche se avevo "deframmentato" il disco (non credo che Windows lo abbia deframmentato veramente). Con qualche sperimentazione, mi è stato concesso 1000. Poi ho provato di nuovo 1000 e ha funzionato. Dovrei ringraziare il mio insegnante di matematica della scuola primaria per quello in più rispetto ai programmatori di MS Windows. Questo mi ha lasciato con 1.95 GB che è abbastanza vicino per la mia matematica della scuola primaria.

Formattare la partizione

Ora sono pronto per gparted per formattare quello spazio come una corretta unità di scambio. Se si utilizza Windows e si passa da Ubuntu a Windows, assicurarsi di tenere premuto il tasto MAIUSC quando si fa clic su "Power" e "Shut down". Questo è molto importante, specialmente quando si stanno scherzando con i particolari dell'azionamento "C" in un altro sistema operativo. Se si esegue il dual boot, è necessario sapere già che Windows fa un falso chiuso in circostanze normali. Alcune persone hanno disabilitato "Fast Boot". Non ho questa scelta sul mio sistema (Windows 10) e devo usare il tasto maiuscole grazie al mio amico Google. Se si avvia con una USB live e non è possibile installare l'unità "C" (facendo clic su di essa), non è stato arrestato completamente correttamente. Ricarica le finestre e chiudi di nuovo usando il tasto Maiusc.

Ora sei in Modalità Live di Ubuntu e leggi sotto:

Se sei una pura Ubuntu e non si riduce in Windows. Utilizzerai l'opzione Ridimensiona in gParted. Se hai già ridotto l'unità, non eseguire il passaggio di ridimensionamento. Puoi digitare GParted nella barra di Dash e ottenere l'applicazione abbastanza rapidamente. Fare clic con il tasto destro del mouse sull'unità che si desidera ridimensionare.

Ora formeremo lo spazio non allocato come unità partizionata:

Prima:

Non sapevo cosa fare, quindi ho guardato il mio precedente Ram Drive su SD. È formattato come Linux Swap. Così ho formattato la mia nuova allocazione che recentemente ho rifiutato come Linux Swap.
Ho detto OK alla partizione primaria e l'avviso e ha funzionato!

Formattazione della partizione

Dopo il formato e la nuova partizione

È una coincidenza che la vecchia partizione di swap sul sd è stato chiamato mmblk1p5 e anche uno nuovo p5 con mmblk0 di fronte. Il tuo potrebbe essere p6 o p7. Non ti preoccupare

Il mmblk0 è il disco fisico e p è la partizione su quel disco fisico. E mmblk01 è un altro disco fisico, ecc. (Questa è la mia SD) Prima che facessi altro lavoro, ho riaperto Windows per assicurarmi che Windows fosse ancora avviato. Non hai bisogno di fare questo passo se sei pigro o su una macchina Ubuntu pura. Se si rompesse Windows, probabilmente cancellerei Windows facendo una nuova installazione di Ubuntu su quel disco (anche con uno swap). Se ho rotto il mio sistema, non avrei bisogno di seguire ulteriori passaggi perché posso allocare lo swap sulla nuova installazione. Tutto è andato bene e Windows è stato avviato. Ora puoi vedere la nuova partizione nel gestore del disco di Windows: (Fai clic con il pulsante destro del mouse sulla barra di avvio per ottenere la gestione del disco)

Ora collega lo Swap alla routine di avvio

Le risposte precedenti a questa domanda avevano effettivamente comandi swapon / off che non sono necessari e possono essere complessi. Tutto quello che devi fare è trovare il file giusto e indirizzare lo swap alla nuova partizione. Di nuovo, se hai ridimensionato la partizione, non devi fare nulla. È già impostato per trovare la partizione. La dimensione viene eseguita automaticamente.

Se hai cambiato la partizione o stai effettuando un primo scambio in assoluto, leggi di seguito:

Lascia che te lo dica, questa è la prima volta che lo faccio. Non sono un disadattato UNIX e preferisco gli strumenti GUI. Sto imparando e incrociando le dita mentre faccio questo tutorial. Tutto è andato bene finora. Alla radice del tuo sistema c'è una directory chiamata ecc. All'interno di quella directory c'è un file chiamato fstab (nessuna estensione). Dovrai modificare questo file con i diritti "su" di superutente. Prima di farlo, abbiamo bisogno dell'UUID della nuova partizione di swap creata con Live USB. Digita sudo su Ora sei in modalità Super User. Puoi fare qualsiasi cosa (incluso pulire la tua esistenza).

genere blkid e cerca l'uuid della nuova partizione di swap. Ho visto il mio di seguito e l'ho evidenziato:

Non prestare attenzione a PartUID.

Ora, le altre persone diranno il tipo:

sudo gedit /etc/fstab

Tuttavia, l'ho provato e non ho trovato il file giusto (commenti per favore).

Quindi ho appena digitato gedit e aperto la stravagante interfaccia grafica (successo!). Dato che ero già in modalità Super User (sudo su) ho il permesso di root di fare QUALCHE COSA in Gedit, incluso il salvataggio del file dopo averlo modificato. Meraviglioso! Prima di modificare o corrompere qualcosa, salva il file fstab come backup chiamato ... fstab.bak.

Effettua il backup usando la stravagante interfaccia grafica e scegli il familiare "Salva come" e aggiungi "bak" al file fstab.bak. Controlla che ci sia un'estensione .bak. Geeks ti dirà di usare il comando cp del terminale, ma noi novizi non possiamo trovare il file nel terminale per arrivare così lontano in primo luogo. Proprio come qualsiasi elaboratore di testi, dopo il comando "salva come", il tuo file attuale è ora il fstab.bak. Apri quello vero che avevi prima e poi chiudi il file di backup. Fai un doppio controllo per vedere che stai modificando il reale fstab senza estensione. Se si modifica il file di backup, non si verificherà nulla al riavvio, inoltre la copia di backup non sarà un vero backup dell'originale.

Il mio originale fstab il file assomiglia a questo:

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/mmcblk1p6 during installation
UUID=a611601a-6ea8-4e34-9859-42a2470cac29 /               ext4    errors=remount-ro 0       1
# /boot/efi was on /dev/mmcblk0p1 during installation
UUID=00F2-C0CE  /boot/efi       vfat    umask=0077      0       1
# swap was on /dev/mmcblk1p5 during installation
UUID=8fb20159-62e4-41a3-8550-791c7a66c328 none            swap    sw              0       0

L'ultima riga (che ho reso rosso per te), ha le informazioni di scambio originali che vengono utilizzate probabilmente all'avvio. Dal precedente comando blkid, ho potuto vedere il mio nuovo UUID dell'unità. Copia quella frase evidenziando il testo nel terminale e poi facendo clic destro e scegliendo la copia. Incolla quella frase in un altro editor separato senza su diritti come un blocco appunti (puoi usare Libre Office e i geek possono usare nano). Questo passaggio ti aiuta a ottenere facilmente il testo giusto senza le virgolette, in modo che tu possa incollare facilmente nel fstab file. Vuoi cambiare questo file il meno possibile.

New UUID
UUID="709ea197-e6fb-428b-9c1f-4b258452b10c"

Quindi, il mio nuovo UUID è elencato in rosso sopra. Tutto quello che devo fare è cambiare l'uuid per lo swap. Se non si dispone di un'unità di scambio, copiare la riga nel file fstab precedente e quindi aggiungere l'uuid corretto dal precedente comando blkid. (scegli l'uuid giusto per favore!)
Se questa è la tua prima linea di Swap, assicurati di includere la linea completa con le cose extra

none            swap    sw              0       0

Non preoccuparti così tanto della distanza esatta.

Il mio nuovo file ha il seguente aspetto: Avviso Ho aggiunto un commento sopra la mia modifica Il # carattere significa che è un commento.

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/mmcblk1p6 during installation
UUID=a611601a-6ea8-4e34-9859-42a2470cac29 /               ext4    errors=remount-ro 0       1
# /boot/efi was on /dev/mmcblk0p1 during installation
UUID=00F2-C0CE  /boot/efi       vfat    umask=0077      0       1
# swap was on /dev/mmcblk1p5 during installation  NOW changed to mmcblk0p5
UUID= 709ea197-e6fb-428b-9c1f-4b258452b10c  none            swap    sw              0       0

Non incollare le virgolette. Non avere spazi dopo il = cartello.

Salva il tuo file.

Aprilo di nuovo, solo per essere sicuro che le tue modifiche siano state salvate. Chiudere il gedit e il terminale con pericolosi su diritti che i geek ti sgrideranno per aver fatto (perché è facile lavorare con ... e facile anche distruggere le cose).

REBOOT e incrocia le dita!

Ho riavviato e poi ho controllato se il mio swap funzionava guardando l'app di performance del sistema. Ho ancora avuto una Swap drive! Ma era quello nuovo o quello vecchio? Non ho potuto verificare che la mia nuova unità sia stata effettivamente caricata perché quella nuova ha le stesse dimensioni della vecchia unità. Pertanto, ho digitato: swapon (NON SCRIVERE NULLA DI PIÙ DI SWAPON e verrà elencato solo lo swap per te: sicuro). Ora vedo il mio nuovo disco mmblk0p5 che corrisponde al lavoro UUID che ho fatto fstab. La mia sottile unità principale da 32 GB ha avuto effetto:


Questo conclude questo tutorial da un utente inesperto che non l'ha mai fatto prima. La metà del motivo per cui ho fatto questo tutorial è stato che i Geek che ci aiutano (e grazie) possono vedere come aiutare gli utenti inesperti. Sospettavo che le risposte precedenti fossero fuorvianti e ho deciso di fare un tutorial mentre facevo il mio lavoro ... Indovinando dalle altre risposte che erano utili, ho concluso che tutto ciò che dovevo fare era modificare il fstab flle e riavviare. Tutto ha funzionato bene e ho ancora Windows 10 e non ho ancora cancellato il mio sistema. Se qualcuno sa come condividere un Windows pagefile.sys come file di scambio di Linux, sarei interessato poiché 2 GB è preso per quello in Windows e lo spazio hd è molto caro sulla mia macchina da 32 GB.


2
2018-01-29 15:09





Devi avere un filesystem di swap definito in / etc / fstab. Dovrebbe contenere una linea simile a

UUID=67682d1b-a1d8-4377-a3dd-67340c141619 none            swap    sw              0       0

Ovviamente è necessario sostituire il valore di UUID con l'identificativo del dispositivo.


1
2018-04-05 20:20



come posso averlo?
Puoi invece usare il nome del dispositivo, come / dev / sda1 (senza UUID). - Adam Byrtek


(sostituisci la "x" in sdax con il numero della partizione di swap ad esempio: sda5)

sostituire "xxx" con il numero UUID ad es .: 67682d1b-a1d8-4377-a3dd-67340c141619)


su (fornire la password per ottenere il permesso di root)

blkid / dev / sdax (ottieni UUID) mkswap / dev / sdax (partizione di swap in formato) swapon -U xxx

nano / etc / fstab (modifica fstab)     UUID = xxx none swap sw 0 0 (inserisci e salva questo testo per rendere permanente lo swap)                             (quindi chiudere fsantab)


nano /etc/initramfs-tools/conf.d/resume (crea un file "resume" e salva questo testo per usare hibernate / resume)     RESUME = UUID = xxx (ctrl + x per chiudere nano) -> (y per salvare)

riavviare la macchina

accedi e ora puoi testare l'ibernazione / riprendere


1
2018-06-16 11:55