Velocizzare boot e prestazioni su Debian Squeeze parte 1

 

 

Questa guida si propone di rendere più veloce e performante Debian Squeeze, partendo dalla fase di boot. Allo stesso tempo ho voluto provare questi stessi passi anche su LMDE che di default, a mio avviso, è più lenta di Debian Squeeze. Questa guida è adatta chiaramente in ambito Desktop, io stesso sono alla ricerca di un compromesso accettabile, quindi è da considerarsi "sperimentale", di conseguenza da usare a proprio rischio e pericolo. Questa guida ho deciso di dividerla in due parti, nella prima parte si parlerà di come velocizzare  la fase di boot, mentre nella seconda parte di come aumentare le prestazioni del sistema. Quindi c'è la possibilità di provare singolarmente queste due guide e farsi un idea dei vantaggi e degli svantaggi.

 

Velocizzare Boot

 

Step 1 servizi:

Indubbiamente la base da cui partire è sempre l'eliminazione dei servizi di avvio che non si utilizzano, a questo proposito esistono nei repository degli strumenti come Bum è sysv-rc-conf. quest'ultimo molto potente, per ottenere uno snellimento dei servizi.

 

Step 2 insserv:

installare insserv se non già presente, ed abilitare l'esecuzione in parallelo dei servizi:

 

# echo 'CONCURRENCY=makefile' >> /etc/default/rcS

 

Step 3 preload:

installare preload che si occuperà di monitorare le applicazioni lanciate dagli utenti e dalle analisi di questi dati predice quali applicazioni potrebbero eseguire gli utenti, di conseguenza recupera e porta in memoria i relativi binari e le loro dipendenze in modo da velocizzarne l'avvio (programmi).

 

Step 3 readahead-fedora:

installare readahead-fedora, uno strumento che precarica file, in questo caso quelli usati durante il processo di boot, per accelerare l'avvio del sistema. Il file di configurazione è in /etc/readahead.conf, assicurarsi che readahead punti a preload:

 

RAC_EXECIGN="/sbin/readahead /usr/sbin/preload"

e passare da 300 a 100 in:

RAC_MAXTIME="100"

quindi:

# reboot

all'avvio di grub bisogna passare un parametro al kernel per avviare il processo:

init=/sbin/readahead-collector

 

Per concludere questa prima parte mi soffermo su dei numeri appena testati su LMDE, e ne ho fatto una media, il tempo è stato preso dal push del tasto invio fino alla comparsa del desktop (musichetta e compiz) il mio OS è settato senza password, quindi login automatico.

Boot in 23.8 secondi

Halt/Reboot in 10 secondi netti.

Certo ci sono i pro ed i contro con un boot veloce 🙂 Nei prossimi giorni la parte 2.

 

enjoy 😉

Debian Repository kernel 2.6.37 e 2.6.37-ck1

 

Nel mio nuovo Repository si trovano i kernel 2.6.37 sia per architettura i386 che amd64, inoltre si trovano le stesse versioni del kernel col ck1, ossia patchati Con Kolivas. Da aggiungere ad /etc/apt/sources.list il seguente indirizzo:

 

#### Edmond's repository
deb https://www.edmondweblog.com/repo/ binary/

 

Consiglio:

Per chi ha i driver Nvidia installati, almeno a me succede questo, consiglio dopo aver installato il nuovo kernel, quindi prima di riavviare, di modificare il file /etc/X11/xorg.conf, e sostituire sotto Device la voce Nvidia con nv, questo per evitare che avviando il nuovo kernel, il server X, si pianti e renda difficile il passaggio in tty1 (Ctrl-Alt-F1), dopo di chè si possono installare i driver Nvidia, col solito metodo del :

Ctrl-Alt-F1

# /etc/init.d/gdm3 stop

andare nel percorso dei driver Nvidia ufficiali:

# ./NVIDIA-Linux-x86_64-260.19.21.run

 

enjoy 😉

Edmond's Weblog Repository

 

 

Ho voluto creare un piccolo Repository dove poter condividere nuovi programmi o nuovi kernel, con qualche visitatore temerario di passaggio 🙂 Era un pò che ci pensavo se farne uno o meno, ed in questi giorni di festa, stando a casa dal lavoro, mi sono deciso ad abbozzarne uno. La mia titubanza stava nel fatto, che giustamente dopo aver fatto un  Repository qualcosa dentro bisogna mettere, e siccome il tempo che il lavoro mi prende è quello di un'intera giornata, la mia paura era quella di non riuscire a metterci nulla, ma poi riflettendo mi sono detto, scusa, ma in questi ultimi anni quello che hai fatto e scritto lo hai fatto di sera-notte ed il fine settimana, quindi finche la passione arde, andiamo avanti così 🙂  Ordunque l'indirizzo da aggiungere ad /etc/apt/sources.list è il seguente:

#### Edmond's repository
deb https://www.edmondweblog.com/repo/ binary/

al momento non c'è bisogno di chiave per l'autenticazione.

 

Ah….quasi dimenticavo….c'è già qualcosa di nuovo ed interessante all'interno 🙂

 

enjoy 😉

Wake on LAN (WOL) su Debian Squeeze

 

Wake on LAN (WOL) è uno standard Ethernet che consente di avviare un computer in standby da una postazione remota, a patto di conoscerne l'indirizzo MAC. Tutto questo è possibile dato che i computer recenti anche se spenti, continuano ad essere alimentati con una tensione di standby. Questa guida è stata testata su Debian Squeeze con dei pc in lan.

 

Requisiti:

Verificare che WOL sia attivato nel Bios dei pc che vogliamo accendere.

 

# apt-get install ethtool wakeonlan

 

verificare che sulla schede di rete sia abilitato WOL:

# ethtool eth0

 

il risultato nel mio caso è questo:

 

root@debian:/home/edmond# ethtool eth0
Settings for eth0:
    Supported ports: [ TP ]
    Supported link modes:   10baseT/Half 10baseT/Full
                            100baseT/Half 100baseT/Full
                            1000baseT/Full
    Supports auto-negotiation: Yes
    Advertised link modes:  10baseT/Half 10baseT/Full
                            100baseT/Half 100baseT/Full
                            1000baseT/Full
    Advertised pause frame use: No
    Advertised auto-negotiation: Yes
    Speed: 100Mb/s
    Duplex: Full
    Port: Twisted Pair
    PHYAD: 1
    Transceiver: internal
    Auto-negotiation: on
    MDI-X: on
    Supports Wake-on: pumbag
    Wake-on: g
    Current message level: 0x00000001 (1)
    Link detected: yes
 

"g" significa che WOL è abilitato

nel caso fosse su "d" significa che è disabilitato, quindi per abilitarlo:

 

# ethtool -s eth0 wol g

 

creare uno script chiamato wol ed inserire:

 

## /etc/init.d/wol
#
# chkconfig: 2345 99 99
# description: Force NIC into WOL mode
#
ethtool -s eth0 wol umbg
exit

 

quindi:

 

$ chmod a+x wol

# cp wol /etc/init.d/

# update-rc.d wol defaults

 

adesso per svegliare il nostro pc, basta inviare i Magic Packet:

 

$ wakeonlan indirizzo_mac_pc

 

 

enjoy 🙂

Installazione di Metasploit su Debian Squeeze

 

 

Metasploit Project è un progetto di sicurezza informatica che fornisce informazioni sulle vulnerabilità, semplifica le operazioni di penetration testing ed aiuta nello sviluppo di sistemi di rilevamento di intrusioni. Il sub-project più conosciuto è Metasploit Framework, uno strumento per lo sviluppo e l'esecuzione di exploit ai danni di una macchina remota. Altri sub-project importanti comprendono l'Opcode Database, l'archivio di shellcode e la ricerca nella sicurezza (Wikipedia) Ci sono diverse distribuzioni Linux che si occupano di testare la sicurezza di un sistema, tra cui la più famosa è sicuramente Backtrack. Ma Metasploit possiamo anche installarlo sulla nostra distro preferita, nel caso specifico Debian Squeeze.

 

Requisiti:

 

# apt-get install build-essential subversion ruby libruby irb rdoc libyaml-ruby libzlib-ruby libopenssl-ruby libdl-ruby libreadline-ruby libiconv-ruby rubygems sqlite3 libsqlite3-ruby libsqlite3-dev

 

Installazione:

 

$ svn co https://metasploit.com/svn/framework3/trunk/ metasploit

$ cd metasploit

$ svn up

 

avvio in modo console:

 

$ ./msfconsole

 

premere help per visionare ulteriori comandi. Per il momento mi fermo quà, in una prossima guida non escludo di proseguire con degli esempi di utilizzo.

 

enjoy 😉

Modificare SpringBoard Iphone su Debian/Ubuntu

 

 

 

Per modificare la SprigBoard del proprio Iphone da Linux c'è bisogno di Sbmanager e di libimobiledevice-1.0 >= 0.9.7.       Per avere Sbmanager su Ubuntu 10.10 basta aggiungere i PPA:

 

$ sudo add-apt-repository ppa:vbkaisetsu/ppa
$ sudo apt-get update
$ sudo apt-get install sbmanager

 

inserire l'Iphone e dare il comando:

 

$ sbmanager

 

Per avere sbmanager su Debian:

 

$ sudo apt-get install build-essential git automake autoconf libtool libgnutls-dev libglib2.0-dev libxml2-dev libreadline5-dev swig python-dev libusbmuxd-dev libplist-dev libplist++-dev libplist++1 libzip-dev libclutter-1.0-dev libclutter-gtk-0.10-dev intltool

 

scaricare ed installare libimobiledevice-1.0.1:

 

$ wget https://www.libimobiledevice.org/downloads/libimobiledevice-1.0.1.tar.bz2

$ tar xvjf libimobiledevice-1.0.1.tar.bz2

$ cd libimobiledevice-1.0.1

$ ./configure

$ make

$ sudo make install

 

scaricare ed installare sbmanager:

 

$ git clone git://git.sukimashita.com/sbmanager.git

$ cd sbmanager

$ ./autogen.sh

$ ./configure

$ make

$ sudo make install

 

inserire l'Iphone e dare il comando:

 

$ sbmanager

 

enjoy 😉

Leggere sito web con espeak e links

 

Qualche giorno fa ho fatto un post dal titolo Terminale parlante in Linux, utilizzando espeak come sintezizzatore vocale per fargli ripetere una frase prestabilita. Oggi invece voglio usare espeak insieme a links per farmi leggere una pagina web:

 

$ links -dump https://www.edmondweblog.com | espeak -v it -s 160

 

enjoy :)

Come aggiungere PPA in Debian

 

Chi ha provato ad aggiungere repo PPA in Debian, si sarà senz'altro accorto del tipico errore add-apt-repository: command not found, quindi non è possibile aggiungerli…..anzi è possibile, anche se sconsigliato. Comunque per chi vuole avere anche questa possibilità sulla propria Debian o Debian based, ha bisogno di questo script:

 

#!/bin/bash
if [ $# -eq 1 ]
then
    ppa_name=`echo "$1" | cut -d":" -f2 -s`
    if [ -z "$ppa_name" ]
    then
        echo "PPA name not found"
        echo "Utility to add PPA repositories in your debian machine"
        echo "$0 ppa:user/ppa-name"
    else
        echo "$ppa_name"
        echo "deb maverick main" >> /etc/apt/sources.list
        apt-get update >> /dev/null 2> /tmp/apt_add_key.txt
        key=`cat /tmp/apt_add_key.txt | cut -d":" -f6 | cut -d" " -f3`
        apt-key adv --keyserver keyserver.ubuntu.com --recv-keys $key
        rm -rf /tmp/apt_add_key.txt
    fi
else
    echo "Utility to add PPA repositories in your debian machine
"
    echo "$0 ppa:user/ppa-name"
fi

 

salvare come add-apt-repository.sh e copiarlo in /usr/bin:

 

$ sudo cp add-apt-repository.sh /usr/bin/add-apt-repository

$ sudo chmod o+x /usr/bin/add-apt-repository

$ sudo chown root:root /usr/bin/add-apt-repository

 

adesso siamo in grado di aggiungere PPA:

 

$ sudo add-apt-repository ppa:nome

 

enjoy 😉

Download ad orario prestabilito

 

A volte capita di voler scaricare un grosso file, ma siccome si sta facendo altro oppure si ha bisogno di tutta la banda disponibe, alla fine succede che ci si dimentica. Per ovviare al problema della dimenticanza servirebbe un comando da digitare subito ma che posticipi il download ad un orario prestabilito . Ecco fatto 🙂

 

$ echo 'wget link_da_scaricare' | at 23:00

 

enjoy ;)

Download ed Upload con Plowshare

 

Plowshare è una fantastica applicazione a riga di comando progettata per alcuni dei più popolari siti di file-sharing come: Megaupload, Rapidshare, 2Shared, 4Shared, ZShare, Badongo, Divshare.com, Depositfiles, Mediafire ecc.ecc. Questa applicazione secondo me può risultare molto utile soprattutto quando si hanno tanti link per il download e magari su hosting diversi. Comunque iniziamo con ordine:

 

Requisiti:

$ sudo apt-get install curl recode imagemagick tesseract-ocr-eng spidermonkey-bin aview perlmagick

al posto di spidermonkey-bin si può installare anche il pacchetto rhino.

 

Download pacchetto deb

oppure:

Download tarball

installarlo con:

$ tar xvzf plowshare-VERSION.tgz

$ cd plowshare-VERSION

$ sudo bash setup.sh install

 

Esempi di utilizzo:

il motivo principale per cui mi piace è proprio questo, e cioè creare un file lista.txt e mettere dentro tutti i link da scaricare, (basta pensare ai grossi programmi che si trovano divisi in tanti rar) quindi basta un semplice:

$ plowdown lista.txt

download di un singolo file:

$ plowdown

download con account premium su megaupload:

$ plowdown -a myuser:mypassword

cancellare download premium su megaupload:

$ plowdel -a myuser:mypassword

limitare velocità di download:

$ plowdown -r 50k

per altri comandi controllare:

$ man plowshare

per i comandi di upload (che a me non servono) controllare:

$ man plowup

 

enjoy 😉