Differences between revisions 7 and 8
Revision 7 as of 2011-06-16 15:58:40
Size: 7770
Comment: sync with English version
Revision 8 as of 2011-09-07 14:45:17
Size: 8311
Comment: sync with English version
Deletions are marked like this. Additions are marked like this.
Line 110: Line 110:
 * DebianPkg:rdfind
Line 128: Line 129:
=== Convertire gli spazi in tabulazioni ===
Convertire gli spazi in tabulazioni può ridurre la dimensione dei file di testo, anche se la differenza è di solito minima.
Per questo esempio sono necessari i comandi
{{{find}}} in DebianPkg:findutils, {{{unexpand}}} in DebianPkg:coreutils e rewrite, che si può trovare su [[https://oss.ezic.com][ ma non è disponibile come pacchetto.{{{
find -type f -writable -name '*.txt' -exec rewrite '{}' 'unexpand --all' \;}}}
Line 145: Line 152:
##The following file systems provide compression.
Line 153: Line 162:
Il livello di sviluppo di questi file system è tale da non renderli ancora adatti per l'uso generalizzato.
Questi file system potrebbere non essere abbastanza affidabili per l'archiviazione di dati critici.

Translation(s): Deutsch - English - Italiano


Liberare spazio su disco

Uso del disco o spazio occupato

Per determinare il grado di uso di dischi e partizioni, ma non delle singole directory, vedere Disco pieno .

Strumenti per vedere quali directory stanno usando più spazio su disco

baobab nel pacchetto gnome-utils.

Il programma a riga di comando du nel pacchetto coreutils.

/usr/bin/du --total --summarize --human-readable --one-file-system

Strumenti a riga di comando per vedere i file usati raramente

Questi strumenti non funzionano se i filesystem non sono solitamente montati senza l'opzione strictatime.

/usr/bin/find

In questo caso, sono particolarmente interessanti le seguenti opzioni.

  • -usage

  • -atime

Vedere quali pacchetti stanno usando più spazio su disco

Riga di comando

  • I pacchetti dei kernel sono molto grandi; le vecchie versioni non vengono rimosse automaticamente per ragioni di sicurezza.

Per elencare i pacchetti che usano più spazio usando aptitude in modalità visuale, selezionare Viste → Nuovo elenco unico dei pacchetti (questa voce di menu è disponibile solamente a partire dalla versione etch), premere l e inserire ~i, premere S e inserire ~installsize; si ottiene così un bell'elenco con cui lavorare. Per avere accesso a questa nuova funzionalità bisogna aver aggiornato aptitude.

In lenny, aptitude ha "why" e "why-not".

 aptitude why pacchetto1 

mostra perché è stato installato pacchetto1.

 aptitude why pacchetto1 pacchetto2 

cerca di capire perché installare il pacchetto1 comporterebbe l'installazione di pacchetto2.

"why-not" guarda i conflitti.

Questi comandi forniscono solo una possibile spiegazione. Per avere informazioni conclusive controllare /var/log/aptitude.

Uso di aptitude per elencare pacchetti raccomandati o suggeriti che non sono installati:

aptitude search '~RBsuggests:~i!~i'

Per elencare i pacchetti aggiornabili:

aptitude search '~U'

Per elencare i pacchetti installati manualmente:

aptitude search '~i!~M'

Per installare senza i pacchetti raccomandati ma non disinstallando gli altri raccomandati:

aptitude install -R -o Aptitude::Keep-Recommends=true

Per elencare i pacchetti in ordine crescente di dimensione:

aptitude -F '%I %p' search '~i'|egrep '^[0-9]+[\.,]?[0-9]*[MG]B'|sort -n

Uso di dpigs (debian-goodies):

dpigs -n50

Uso di wajig :

wajig size

Ordinare i pacchetti installati in base alla dimensione:

dpkg-query -W --showformat='${Installed-Size} ${Package}\n' | sort -n

Interfaccia grafica

synaptic, andare nei pacchetti installati e cliccare sulla colonna della dimensione.

Trovare cose da eliminare

Directory definitivamente sacrificabili

Temporanee

/tmp
/var/tmp

Il contenuto di queste directory è solo pensato per essere usato nel breve termine o mentre un programma è in esecuzione ed è generalmente eliminabile.

File di registro

/var/log

Cache

  • i pacchetti in /var/cache/apt/archives di solito occupano un po' di spazio. Come utente root o usando sudo, si può eliminarli con:

apt-get clean

o

aptitude clean

Usare apt-get autoclean se si desiderano rimuovere i vecchi pacchetti per i quali si ha anche il pacchetto più recente.

Spool

Le cose in

/var/spool

sono pensate per essere elaborate ma possono essere sacrificabili.

Gestire i duplicati

Quando si trovano duplicati si possono creare collegamenti fisici, se i duplicati sono sullo stesso file system, oppure si possono eliminare i duplicati per rendere unici i file rimanenti.

Strumenti di ricerca

  • fdupes è veloce

  • fslint fa anche altri compiti di manutenzione e riduzione delle dimensioni

  • rdfind

file non desiderati

pacchetti non desiderati

  • debfoster

  • deborphan L'interfaccia utente testuale è fornita dal programma orphaner.

  • popularity-contest Richiede l'opzione strictatime per il file system e un server di posta locale; eseguire  popularity-contest | sort > popcon .

Strumenti per alterare i file per rimpicciolirli

Usare strip su dbus-daemon smaschera un bug in BFD. L'esecuzione di find /usr/bin -not -name strip -and -not -name dbus-daemon -execdir strip --strip-unneeded '{}' \;  ha ridotto la dimensione del contenuto della directory in un'installazione Squeeze da 140MB a 120MB.

Non comprimere bash o i propri script andranno in crash. Gli eseguibili compressi possono aver bisogno di più memoria per essere eseguiti.

Convertire gli spazi in tabulazioni

Convertire gli spazi in tabulazioni può ridurre la dimensione dei file di testo, anche se la differenza è di solito minima. Per questo esempio sono necessari i comandi find in findutils, unexpand in coreutils e rewrite, che si può trovare su [[https://oss.ezic.com][ ma non è disponibile come pacchetto.

find -type f -writable -name '*.txt' -exec rewrite '{}' 'unexpand --all' \;

Ridurre la creazione dei dati

Usare la riga seguente come file di configurazione di /etc/rsyslog.conf allo scopo di non salvare i file di registro ma di mandare il loro output sul terminale virtuale 12:

*.* -/dev/tty12

In quei casi in cui un collegamento simbolico non funzionerebbe, si può fare in modo che l'output che andrebbe in file venga diretto in /dev/null, come in questo esempio che ridirige l'output di .xsession-errors:

mknod .xsession-errors c 1 3

Nei sistemi in esecuzione da molto tempo si può considerare l'idea di rimuovere o comprimere i vecchi file di registro; logrotate può essere di aiuto.

File system

L'uso di una diversa dimensione dei blocchi per il file system può portare ad un risparmio di spazio a seconda della dimensione dei file archiviati sul di esso.

A livello applicazione / In spazio utente

  • Gli archivi in formato GVFS Zip possono essere montati da GVFS.
  • fuse-utils Ci sono molti file systems che offrono la compressione e che funzionano via FUSE.

In Linux

  • squashfs solo in lettura

Non ancora pronti per l'uso comune

Questi file system potrebbere non essere abbastanza affidabili per l'archiviazione di dati critici.

  • Reiser4FS
  • BTrFS

Disabilitare i blocchi riservati su ExtFS

ExtFS riserva, in modo predefinito, il 5% del file system per l'utente 'root' come misura di sicurezza. Per disabilitare questa funzionalità:

tune2fs -r 0 /dev/sda2

Può essere fatto anche su un file system montato.

Archiviazione offline

Si possono spostare dati in un'archiviazione non inlinea, come dischi ottici rimovibili o dischi su un bus dati esterno (come Firewire o USB).

Se si ha una fonte in sola lettura, come un disco ottico scrivibile una sola volta, un file system sovrapposto unificato come aufs o "union mount" di Linux può salvare i cambiamenti in un file system scrivibile, risparmiando all'utente lo spazio delle porzioni immutate. La stessa cosa può essere ottenuta con istantanee di file system come con Linux Volume Manager (lvm2).

Desiderara:

  • compressione con perdita di dati.

  • uso delle quote, come usrquota, groupquota, waringquota in quota