Home
» LINUX
»
Come aumentare le dimensioni della cartella /tmp su Linux
Come aumentare le dimensioni della cartella /tmp su Linux
Se Linux segnala che la /tmpdirectory è piena, non ridimensionarla alla cieca. Prima verifica quale filesystem supporta effettivamente la directory. Se /tmpsi tratta di un mount tmpfs , puoi aumentarne immediatamente il limite di dimensione con un remount e rendere tale limite permanente /etc/fstab. Se fa parte di un filesystem ext4, XFS, Btrfs o di un altro filesystem basato su disco, l' size=opzione tmpfs non è applicabile.
Il findmntcomando identifica il filesystem che contiene /tmp, mentre dfmostra la sua dimensione e l'utilizzo corrente. La documentazione originale di findmnt raccomanda di utilizzare l'opzione target per risolvere il filesystem per un percorso.
Se FSTYPEè tmpfs, continua con i passaggi seguenti. Se è qualcosa come ext4, xfs, o btrfs, passa alla sezione con supporto su disco.
/tmpPrima di modificare il limite di dimensione di un filesystem tmpfs, verifica che si tratti effettivamente di un mount tmpfs.
Aumentare temporaneamente un tmpfs /tmp
Non è necessario smontare tmpfs /tmp. Il filesystem tmpfs di Linux supporta la modifica della sua dimensione massima durante un rimontaggio senza eliminare i file già presenti. Ad esempio, per aumentare il limite a 5 GiB, eseguire:
sudo mount -o remount,size=5G /tmp
Quindi verifica il risultato:
df -h /tmp
La documentazione del kernel Linux relativa a tmpfs afferma che il size=limite può essere modificato al momento del rimontaggio. Un valore come questo 5Grappresenta un limite di capacità, non 5 GiB di RAM riservati immediatamente. tmpfs consuma memoria man mano che i file vengono memorizzati e può utilizzare lo swap quando questo è disponibile.
Non impostare un limite eccessivamente elevato. Un carico di lavoro che satura un tmpfs di grandi dimensioni può creare una forte pressione sulla memoria. Inoltre, un rimontaggio di questo tipo è temporaneo: la configurazione di avvio originale viene ripristinata dopo un riavvio, a meno che non si modifichino le impostazioni di montaggio persistente.
Un rimontaggio modifica il limite di dimensione del tmpfs attivo senza smontarlo /tmp.
Rendi permanente la dimensione maggiore di /tmp
Utilizza questo metodo solo dopo aver verificato che /tmpsi tratti effettivamente di tmpfs. Esegui /etc/fstabprima un backup:
sudo cp /etc/fstab /etc/fstab.backup
Apri il file con il tuo editor preferito che supporti i privilegi di root, ad esempio:
sudoedit /etc/fstab
Se è presente una riga tmpfs esistente /tmp, mantieni le sue opzioni di sicurezza e compatibilità correnti e modifica solo il suo size=valore. Se il tuo sistema utilizza il tmpfs predefinito di systemd /tmpe non ha /tmpalcuna voce in fstab, systemd documenta che una /etc/fstabvoce può essere utilizzata per modificare le opzioni di montaggio di tmpfs. Un esempio tipico è:
L' mode=1777impostazione mantiene i normali permessi di scrittura per tutti gli utenti delle directory temporanee con il bit sticky. Non aggiungere opzioni come questa solo per il ridimensionamento; la modifica di comportamenti di montaggio non correlati può compromettere il software che si aspetta la configurazione esistente. Consultare le linee guida sui file system APInoexec di systemd e la documentazione di fstab upstream .
Per un limite persistente, impostare size=nella configurazione tmpfs esistente o prevista per /tmp.
Su una distribuzione basata su systemd, ricaricare le unità generate dopo la modifica fstab:
sudo systemctl daemon-reload
Se /tmpè già montato come tmpfs, puoi applicare fstabsubito le nuove opzioni con:
sudo mount -o remount /tmp
In alternativa, riavvia il sistema in un momento opportuno. Successivamente, verifica sia le opzioni di montaggio che la capacità:
Dopo la modifica, verificare il tipo di filesystem, le opzioni di montaggio e la capacità riportata.
E se /tmp non fosse tmpfs?
Se findmntmostra che /tmprisiede sul filesystem di root o su un altro filesystem basato su disco, non esiste un limite indipendente per tmpfs da espandere. È necessario liberare spazio o espandere il filesystem, la partizione o il volume logico sottostante. Un'altra opzione è quella di indirizzare un programma specifico a una directory temporanea più grande se rispetta TMPDIR:
Le linee guida di systemd sulle directory temporanee indicano che il software dovrebbe utilizzarle $TMPDIRquando vengono impostate e che /var/tmpsono generalmente più adatte a dati temporanei di grandi dimensioni che dovrebbero sopravvivere a un riavvio.
Se continui a ricevere il messaggio "Spazio insufficiente sul dispositivo"
Verifica sia l'utilizzo degli inode che quello dei byte:
df -h /tmp
df -i /tmp
Un filesystem può esaurire gli inode anche quando dispone ancora di byte liberi. È inoltre opportuno indagare su quale applicazione stia generando i dati temporanei, anziché limitarsi a ridimensionarli ripetutamente /tmp. Il ridimensionamento è appropriato quando il normale carico di lavoro richiede effettivamente maggiore capacità temporanea, ma una crescita incontrollata è generalmente meglio gestirla alla fonte.