martedì 25 maggio 2010

Velocizzare Ubuntu 10.04


-Boot
-Uso della memoria
-Hard disk
-File system EXT4
-La rete


BOOT
:
Processo di Boot in parallelo per chi possedesse un sistema multi processore :
modifichiamo /etc/init.d/rc
erchiamo la voce

CONCURRENCY=none e cambiamola in CONCURRENCY=startpar

Alleggeriamo l'avvio ELIMINANDO I SERVIZI INUTILI ,per farlo serviamo ci di
sysv-rc-conf ,installiamolo con il comando:
sudo apt-get install sysv-rc-conf
lanciamolo con il comando sudo sysv-rc-confSpostiamoci sul runlevel 2
tra i vari demoni possiamo eliminare
acipd,laptopmode pcmiautilis (se non avete un portatile potete toglierli)
Avahi-daemon utile solo se avete una rete localeBinfmt-support supporto kernel per
altri formati di file binari
Cron, Anacron e Atd per le operazioni pianificate (possiamo disabilitarli)
cups per la stampante
ondemand serve per il cpu scaling(se nn lo usate disabilitatelo
fancontrol lmsensor controllano la
temperatura e la velocità delle ventole lasciamoli
kerneloops invia a kerneloops.org informazioni sui crash del kernel (può essere disabilitato)
Dbus gestisce la comunicazione tra le applicazioni lasciamolo
Dns-Clean ppd-dns utili per connessioni dial-up
rsync gestione di copia e sincronizzazione file su macchine remote (disabilitatelo)
saned per gli scannerper attivare o disabilitare il servizio premere la barra spaziatrice,
per uscire e salvare la configurazinepremiamo q.

Uso della memoria
Pacchetti non utili
disinstalliamo Openssh,eliminiamo poi tcpdump e sempre dal gestore di pacchetti eliminiamo modem-plugin(se nn usiamo un dispositivo a chiavetta per la connessione) ,libbluetooth3 (che porterà con se tutti i pacchetti per il bluetooth), se non usiamo lo scanner libsane sane-utilis libksane0 ,xserver-xorg-input-synaptics per il touchpad ,quindi cerchiamo ttf e eliminiamo i pacchetti che sono indispensabili alla codifica di alfabeti non latiniSnelliamo l'uso della ram RIDUCENDO IL NUMERO DI CONSOLE APERTE all avvio,su un desktop due console bastano,di default sono 6:
ATTENZIONE io usero come editor di testo Kate in quanto uso kde se usate gnome potete
usare gedit.Spostiamoci nella cartella /etc/init e lanciamo l'editor di testo per aprire come root tty3.conf


sudo kate tty3.conf
cerchiamo le righe che cominciano con : start on runlevel e stop on runlevel è anteponiamo il simbolo #
# tty3 - getty## This service maintains a getty on tty3 from the point the system is
# started until it is shut down again.#start on runlevel [23]
#stop on runlevel [!23]
Ora facciamo la stessa operazione con tty4.conf,tty5.conf,tty6.conf lasciamo solo tty1 e 2 inalterati.
Per completare l'operazione spostiamoci in /etc/default e apriamo console setup cerchiamo ACTIVE_CONSOLES e modifichiamo il valore da [1-6] a [1-2]
Come qui sotto:
# Setup these consoles. Most people do not need to change this.
ACTIVE_CONSOLES="/dev/tty[1-2]"

Per modificare grub usaimo il tool grafico startupmanager con il comando

sudo apt-get install startupmanager

Per chi usa KDE questa operazione è sconsigliata dal momento che comporta l'installazione di molte librerie di gnome quindi
o lo installiamo ugualmente per poi rimuovere startupmanager e gli altri file dopo aver modificato grub in questo modo :
sudo apt-get remove startupmanager
sudo apt-get autoremovesudo apt-get clean
Oppure passiamo alla modifica manuale , lalternativa per kde sarebbe kgrub ma allo stato attuale nn supporta grub2 sebbene l'autore abbia detto che entro il 2010 porrà rimedio.
Con questo programma è possibile modificare il timeout a 0 per un 'accesso diretto saltandogrub utile se usate solo linux, o per impostare un nouvo kernel di default magari dopo averlo ottimizzato.

Ottimizzare la memoriaLa partizione di swap è utilizzata dal kernel per memorizzare i
dati e scambiarli poi con quelli in ram
e viceversa,se avete molta
ram e non usate lo stato ibernate allora potete ridurre l'uso della swap andando a migliorare la reattività del sistemapermettendo al kernel di memorizzare i dati in ram e quindi avere un accesso più rapido,viceversa se avete poca ram non conviene ridurre la swap.
andiamo ad editare /etc/sysctl.confsudo kate /etc/sysctl.confe in fondo al file aggiungiamo
vm.swappiness=0
o il valore che ritenete migliore.IL valore 10 va bene in una macchina con 512mb
quindi con 2 gb si può anche azzerare.

L'HARD DISK
In questa fase utilizzeremo hdparm già installato in ubuntu 10.04ora per conoscere la velocità del nostro hdd lanciamo
sudo hdparm -Tt /dev/sda (dove sda è il vostro dispositivo)

/dev/sda:Timing cached reads: 16284 MB in 2.00 seconds = 8151.61 MB/sec
Timing buffered disk reads: 248 MB in 3.00 seconds = 82.65 MB/sec

bene ora sappiamo l'attuale resa dell'hdd
proviamo a lanciare hdparm con queste opzioni:
sudo hdparm -c1 -d1 -A1 -a40 -u1 -W1 /dev/sda
ATTENZIONE bisogna un pò giocare sul valore -a nel mio caso ho trovato una buona
resa con il valore 40 (io uso un hhd raptor 10.000rpm) se avete questo hdd allora
potreste trarne giovamento se il vostro hdd è diverso allora cercate il valore che
vi darà un risultato migliore valutando ogni volta i miglioramenti, lanciando
sudo hdparm -Tt /dev/sda
i risultati che ho ottenuto sono:
sudo hdparm -Tt /dev/sda

/dev/sda:Timing cached reads: 17068 MB in 2.00 seconds = 8544.30 MB/sec
Timing buffered disk reads: 250 MB in 3.02 seconds = 82.78 MB/sec
un piccolo miglioramento.Ora per rendere definitive le nostre opzioni editiamo il
file /etc/hdparm.conf

sudo kate /etc/hdparm.conf

spostiamoci alla fine del file e modifichiamo l'ultima parte command lin
insserendo i nostri valori ,nel mio caso:
command_line {
hdparm -c1 -d1 -A1 -a40 -u1 -W1 /dev/sda}
salvate ed uscite.

il File system EXT4
Ottimizzare il file system è una buona idea se vogliamo ottenere un sistema più reattivo,ATTENZIONE questa
parte è consigliata ad utenti già navigati.Iniziamo dalle modifiche più semplici.
Prima però salviamo una copia dei file che andiamo a cambiare in questo modo se qualcosa non dovesse funzionare possiamo andare in live e ripristinare i vecchi filelanciamo i camandi
sudo cp /etc/default/grub /home
sudo cp /etc/fstab /homeora nella directory home abbiamo la copia dei 2 file originari .In caso di disastro accedete tramite Live cd e
da linea di comando risostituite i file cambiati.Ad ogni modo sulla mia kubuntu 10.04 non ho avuto problemi....ma non si sa mai
1 Apriamo il file fstab con un editor di testosudo kate /etc/fstab
modifichiamo il file che inizialmente sarà così:
# / was on /dev/sda1 during installationUUID=05f23436-bbe5-4db4-b4e1-eda47a43def8 / ext4 errors=remount-ro 0 1
# swap was on /dev/sda5 during installation
UUID=12ab3a8b-27eb-48ca-a925-629ddbf48e6c none swap sw 0 0e diventerà così ATTENZIONE MODIFICARE SOLO LA PARTE IN GRASSETTO
# / was on /dev/sda1 during installationUUID=05f23436-bbe5-4db4-b4e1-eda47a43def8 / ext4 noatime,barrier=0,commit=100,nouser_xattr 0 1
# swap was on /dev/sda5 during installation
UUID=12ab3a8b-27eb-48ca-a925-629ddbf48e6c none swap sw 0 0
Salviamo chiudiamo e andiamo a modificare il file /etc/default/grub
sudo kate /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="quite splash"

e modifichiamolo in :
GRUB_CMDLINE_LINUX_DEFAULT="elevator=noop rootflags=commit=100"

l'opzione quite splash può essere rimossa se non volete il boot grafico.Quindi lanciamo

sudo update-grub2

2 A questo punto se vogliamo ulteriormente migliorare la resa del disco inseriamo il disco Live della nostra distribuzione
quindi quando il desktop in live sarà caricato modifichiamo nuovamente il file fstab aggiungendo data=writeback,nobh in questo modo
# / was on /dev/sda1 during installation
UUID=05f23436-bbe5-4db4-b4e1-eda47a43def8 / ext4 noatime,barrier=0,data=writeback,nobh,commit=100,nouser_xattr 0 1
# swap was on /dev/sda5 during installation
UUID=12ab3a8b-27eb-48ca-a925-629ddbf48e6c none swap sw 0 0

quindi sudo update-grub2
Se invece avete un disco SSD non conviene questa opzione quanto rimuovere il journaling
in questo modo riduciamo gli accessi al disco e aumentiamo la vita del nostro disco ssd
Anche in questo caso entriamo da Live cd e digitiamo:
sudo tune2fs -O ^has_journal /dev/sda1

Nel mio caso è sda1 nel vostro caso cercate nel file fstab
che abbiamo modificato precedentemente (ECCO IN GRASSETTO DOVE SI TROVA L'INFORMAZIONE CHE CI SERVE)
# / was on /dev/sda1 during installation
UUID=05f23436-bbe5-4db4-b4e1-eda47a43def8 / ext4 noatime,barrier=0,data=writeback,nobh,commit=100,nouser_xattr 0 1

quindi
sudo update-grub2

LA RETE
Se state usando una linea ADSL e non dial-up possiamo ottimizzare il tcp
aggiungendo alcune opzioni al file /etc/sysctl.conf

net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_sack = 1
net.ipv4.tcp_no_metrics_save = 1
net.core.netdev_max_backlog = 2500

quindi possiamo modificare aggiungere anche quresti valori di seguito sempre nello stresso file:
net.ipv4.tcp_keepalive_time=25
net.core.rmem_max=253792
net.ipv4.tcp_window_scaling=1
net.ipv4.tcp_rmem=8388608
net.ipv4.tcp_fin_timeout=25
net.core.wmem_max=253792
net.ipv4.tcp_wmem=8388608

quindi salaviamo il file , usciamo e diamo il comando:
sudo sysctl -p


Ora aprimao il file /etc/hosts
e modifichiamno il file in questo modo
127.0.0.1 localhost nometuohost
127.0.1.1 nometuohost
Dovete sostituire nometuohost ,che ho usato come esempio,con il nome della vostra macchina



vedi anche

5 commenti:

Anonimo ha detto...

grazie ottima guida

Anonimo ha detto...

Ottimo proprio quello che cercavo punto punto le varie modifiche da apportare anche se quelle sull'hdd non le faccio che mi spaventano un pochino !!!

Mcr ha detto...

E' un pochino inquietante la parte su hdparm e grub2.. penso comunque che ad ubuntu per un ulteriore alleggerimento ci metterò lxde.

Anonimo ha detto...

Correggi , è "net.ipv4.tcp_window_scaling=1"

grazie e...ottima guida !

Antonio ha detto...

grazie Anonimo ho corretto