Cosa posso eliminare da / private / var / vm?


80

Cos'è questa cartella? È enorme e posso usare la stanza in più. Ho letto sleepimage non è necessario, è vero? Dovrei solo occuparmene? La cartella "privata" viene svuotata automaticamente o dovrei farlo manualmente? Se non è utile (o necessario), esiste un modo per impedirne la ricomparsa in futuro?

inserisci qui la descrizione dell'immagine


1
Sei ancora interessato alla prevenzione sulla questione? Potrebbe essere meglio chiedere separatamente ora che hai una risposta agli aspetti principali della tua query.
bmike

Sembra che Lri l'abbia trattato qui sotto, ma grazie per la punta
Wolf

Risposte:


79

/var/vm/sleepimageviene utilizzato per archiviare il contenuto della RAM durante l' ibernazione e l'ibernazione ibrida e la modalità di sospensione utilizzate dai laptop Mac per impostazione predefinita. Se si dispone di 8 GiB di RAM, /var/vm/sleepimageoccupa circa 8 GiB di spazio su disco. Non so perché non sia stato cancellato dopo essersi svegliato dal sonno. Potrebbe essere per garantire che vi sia spazio su disco sufficiente per esso o in modo che non venga archiviato su blocchi non contigui se lo spazio su disco è basso.

Puoi eliminare in /var/vm/sleepimagemodo sicuro, ma verrà ricreato quando metti il ​​Mac in sospensione. Se esegui sudo pmset -a hibernatemode 0; sudo rm /var/vm/sleepimage, il Mac utilizzerà una normale modalità di sospensione (come i Mac desktop per impostazione predefinita) e non verrà ricreato /var/vm/sleepimage.

Da man pmset:

hibernatemode = 0 (binario 0000) per impostazione predefinita sui desktop supportati. Il sistema non eseguirà il backup della memoria su memoria permanente. Il sistema deve svegliarsi dal contenuto della memoria; il sistema perderà il contesto sulla perdita di potenza. Questo è, storicamente, semplice vecchio sonno.

hibernatemode = 3 (binario 0011) per impostazione predefinita sui portatili supportati. Il sistema memorizzerà una copia della memoria nella memoria permanente (il disco) e alimenterà la memoria durante la sospensione. Il sistema si riattiverà dalla memoria, a meno che una perdita di potenza non lo costringa a ripristinare dall'immagine del disco.

hibernatemode = 25 (binario 0001 1001) può essere impostato solo tramite pmset. Il sistema memorizzerà una copia della memoria nella memoria permanente (il disco) e rimuoverà l'alimentazione della memoria. Il sistema verrà ripristinato dall'immagine del disco. Se si desidera "ibernazione": dormi più lenti, riattacchi più lenti e durata della batteria migliore, è necessario utilizzare questa impostazione.

  • 0 (modalità di sospensione tradizionale) consente una rapida attivazione e sospensione, consente di risparmiare spazio su disco e riduce la scrittura sull'unità.
  • 3 (ibernazione ibrida e modalità sleep sicura) consente di svegliarsi e dormire rapidamente e di ripristinare lo stato dopo un'interruzione di corrente.
  • 25 (letargo) consente di risparmiare energia e di ripristinare lo stato dopo una perdita di potenza.

Ho usato hibernatemode 0 con il mio MacBook Air. Anche se il MacBook Air è andato a dormire quando la batteria era quasi scarica, di solito la batteria non si scaricava completamente durante il sonno. /var/vm/sleepimageha impiegato circa 4 GiB di spazio su disco e la sua scrittura centinaia o migliaia di volte potrebbe aver ridotto la durata dell'SSD.


23

Aggiunta: ciò che Dan Barrett ha detto sulla ricostruzione del pigiameria è vero. Tuttavia, c'è un modo per aggirarlo e quindi liberare permanentemente lo spazio su disco occupato da sleepimage.

Tutti i passaggi:

disabilita la modalità di ibernazione:

sudo pmset -a hibernatemode 0

elimina / private / var / vm / sleepimage:

sudo rm /private/var/vm/sleepimage

crea un file vuoto e chiamalo "sleepimage":

sudo touch /private/var/vm/sleepimage

cambia la sua bandiera in immutabile:

sudo chflags schg /private/var/vm/sleepimage

In questo modo il sistema non può più ricreare sleepimage. Questo ha funzionato perfettamente per me e non ho riscontrato alcun problema sul mio Mac per 4 mesi.


4

Non rimuovere / private / var / vm sono i file di scambio che il sistema operativo utilizza costantemente.

Quando hai bisogno di meno scambio o riavvia il sistema operativo ridurrà il numero di file che utilizza qui.


Mi ricorda il detto. Se non si è rotto, non aggiustarlo!
iProgram

4
Ho eliminato la mia intera cartella vm pensando che il sistema si sarebbe ricreato quando necessario, ma ciò non è accaduto. Quando il sistema voleva utilizzare i file di scambio, si bloccava e si riavviava. Ora ho creato la cartella VM e il file di scambio, sperando che questo risolva il problema. Quindi, NON cancellarlo!
Rahul Thakur, l'

2

Se non occupa troppo spazio (come nel tuo caso), lascerei così com'è. Le cose nella cartella privata non sono pensate per essere incasinate. Fa parte del sistema UNIX su cui è basato il tuo Mac e non dovrebbe essere visibile. È per questo che chiamano la cartella privata . Ma il software, come hai usato tu, lo ha reso visibile, il che non è una buona cosa.

Detto questo, puoi eliminare questa immagine del sonno senza alcun problema, ma non lo consiglierei. Se hai davvero bisogno di quei 4 GB, prova a utilizzare un disco rigido per i tuoi film, musica o così e risparmia spazio con i tuoi file, non i file di sistema.


3
La prossima volta che il tuo Mac si addormenta, ricrea l'immagine di sospensione, quindi non ha senso rimuoverla. @sean: non aumentare la RAM, il file sleepimage sarà grande quanto la RAM installata nel tuo sistema.
Dan Barrett,

Mi rimangono solo 15 GB sul mio laptop e / private / var / vm sta occupando circa 12 GB che potrei usare. Non è immediatamente urgente in questo momento, ma lo sto prendendo in considerazione.
user3932000

2

Una nota aggiuntiva alla risposta principale:

Dato che puoi scegliere di disabilitare il sleepimage o attivarlo ma poi essere costretto a tenerlo dopo il risveglio, ho trovato un piccolo trucco per la mia soluzione preferita: avere un sleepimage ma eliminarlo dopo il wakeup per liberare spazio su disco. Se sei una persona come me che si trova costantemente a circa 2-6 GB di spazio libero sul tuo piccolo SSD, questa potrebbe essere la tua soluzione.

Basta puntare l'immagine del sonno sulla .Trashcartella e svuotare il cestino dopo il risveglio.

sudo pmset -a hibernatefile ~/.Trash/sleepimage

Questa è solo una soluzione praticabile, se usi solo un account sul tuo mac. Non sarai in grado di eliminare facilmente il file del sonno da un altro account (ovviamente puoi farlo se l'altro account ha diritti sufficienti, ma perderebbe la sua semplicità perché non significherebbe semplicemente fare clic sul cestino).

Se per qualsiasi motivo si desidera ripristinare le impostazioni di fabbrica, digitare

sudo pmset -a hibernatefile /var/vm/sleepimage

(Nota: io uso 10.8, questo potrebbe cambiare in altre versioni, basta controllare man pmsetper essere sicuro.)


-1
sudo pmset -a hibernatefile /dev/null/sleepimage
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.