Rimozione permanente del file sleepimage in / var / vm in macOS


4

Corro l'alta sierra, e il grande private/var/vm/sleepimage il file mi ha infastidito. Il mio computer ha 16 GB di RAM, il che significa sleepimage occupa 16 GB sul mio disco. Ho letto i tutorial su come rimuoverlo, ma non funziona per me. Ho provato a digitare sudo rm -R private/var/vm/sleepimage nel terminale, ma il terminale risponde rm: private/var/vm/sleepimage: No such file or directory. Cosa faccio?


1
private/var/vm/sleepimage è la stessa directory di ./private/var/vm/sleepimage, che punta a una sottodirectory nella directory corrente, ma stai cercando di eliminare un file / cartella sotto /. Se non lo fai cd /, questo comando non funzionerà. Oppure puoi semplicemente aggiungere un / prima del percorso: /private/var/vm/sleepimage
pixelomer

Risposte:


6

Quel file può essere cancellato - non c'è bisogno di -R ma assicurati di avere il percorso completo:

 sudo rm /private/var/vm/sleepimage

Se lo "elimini", lo spazio non verrà liberato finché il kernel e gli altri processi non chiuderanno il file, quindi riavvia il tuo Mac. Il file immagine verrà ricreato la prossima volta che hai bisogno di dormire, quindi se hai un HDD con quel file allocato in modo contiguo, peggiorerai le cose quando vengono allocati blocchi non contigui. SSD non si cura in alcun modo.

Mi concentrerei sulla pulizia / riposizionamento di altri file a lungo termine rispetto a questo.


2

Informazioni in questa risposta sono state estratte da questa pagina .

Il file di sleepimage è protetto da SIP, che deve essere disabilitato prima della cancellazione. Inoltre, è necessario disattivare il meccanismo che crea il file sleepimage per evitare che crei il file in futuro.

Disattiva la modalità di sospensione (che potrebbe essere ripristinata durante gli aggiornamenti / aggiornamenti futuri del sistema :)

sudo pmset -a hibernatemode 0

Riavvia la tua macchina e tieni premuto Cmd-R per avviare la modalità di ripristino. Quando si carica, vai su Utilità & gt; Terminale e inserisci quanto segue per disabilitare SIP:

csrutil disable
reboot

Quando la tua macchina si riavvia, entra nel terminale e rimuovi l'immagine del sonno. Questa volta, funzionerà. Dovrai anche creare un file vuoto di sleepimage e renderlo non scrivibile, altrimenti il ​​file completo tornerà abbastanza velocemente.

sudo rm -f /private/var/vm/sleepimage
sudo touch /private/var/vm/sleepimage
sudo chflags uchg /private/var/vm/sleepimage

Ora riavvia in modalità di ripristino e riattiva SIP:

<s>csrutil enable</s>
reboot

Quando torni in MacOS, entra nel terminale un'ultima volta e verifica che l'immagine sleep abbia una dimensione di 0 byte:

ls -la /private/var/vm

Alla 10.13.4 e inferiore, questo non è richiesto - il file di immagine di sonno non è protetto da SIP. $ ls -lO /private/var/vm/sleepimage -rw------T 1 root wheel - 1073741824 May 26 19:29 /private/var/vm/sleepimage Ci sono molte buone informazioni qui e il potenziale per provare e modificare i permessi su questo file, ma posso cancellarlo in qualsiasi momento come normale admin / sudo con SIP completamente abilitato su molte installazioni di High Sierra
bmike

Cosa succede quando il flag immutabile dell'utente è impostato su 10.13 per il file di immagine del sonno e un altro script sovrascrive le impostazioni di risparmio energia? +1 per mantenere questo aggiornamento!
bmike
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.