domenica 24 gennaio 2010

Ripristino del Master Boot Record di Windows 7

Può capitare di voler ripristinare Master Boot Record (MBR) di windows dopo l'installazione di un grub. L'operazione è molto semplice basta avviare il computer e fare boot col CD di windows 7, selezionare la voce risolvi problemi e poi Prompt dei comandi. Quindi per finire digitare i seguenti comandi


cd X:\Windows\system32\

bootrec .exe /fixmbr

bootrec.exe /fixboot


giovedì 21 gennaio 2010

Music Player Daemon

Music Player Daemon è un serve riproduttore di musica che permette la riproduzione audio agendo in background (demone).

MPD principalmente si occupa di creare un database di canzoni (chiamato “mpd.db”), e setta un utente mpd che possiede i diritti sul folder.
La configurazione del demone è semplice basta editare il file /etc/mpd.conf aggiustando le seguneti voci.
----------------------------------------------------------------------------------------------
music_directory "/home/tuo-utnente/Documenti/Musica"

playlist_directory "/home/tuo-utnente/.mpd/playlists"

db_file "/home/tuo-utnente/.mpd/mpd.db"

log_file "/home/tuo-utnente/.mpd/mpd.log"

pid_file "/home/tuo-utnente/.mpd/mpd.log"

state_file "/var/lib/mpd/state"

user "mpd"

bind_to_address "localhost"
bind_to_address        "/var/run/mpd/socket"

port "8000"
--------------------------------------------------------------------------------------------
Il path del demone “mpd” e /etc/init.d/mpd, per avviare il server si puo digitare il comando.
sudo /etc/init.d/mpd start
L'utilizzo di questo programma richiede in abinamento l'utilizzo di un programmia fronted che consente l'accesso al demone.Esistono diversi client compatibili con mpd, con interfaccia grafica, come ad esempio "Ario" e "Sonata", io comunque vi consiglio il progetto ncmpcpp che funziona in console ed ha un consumo molto ridotto ri risorse.
Adesso per configurare il client ncmpcpp copiamo il file "/usr/share/doc/ncmpcpp/examples/config.gz" e scompattiamolo nella directory ".ncmpcpp" quindi editiamo le seguenti voci
------------------------------------------------------------------------------------------------
user "mpd"
bind_to_address "localhost"
port "8000"
music_directory "~/Musica"
playlist_directory "~/.mpd/playlists"
db_file "~/.mpd/tag_cache"
log_file "~/.mpd/mpd.log"
error_file "~/.mpd/errors.log"
pid_file "~/.mpd/pid"
state_file "~/.mpd/state"
-----------------------------------------------------------------------------------------------


mercoledì 20 gennaio 2010

cron:automatizzare i processi

Problema: Avviare automaticamente l'esecuzione di un processo.

Soluzione: L'esecuzione automatica di programmi sulla base di una agenda stabilita può essere facilmente realizzata in ambiente “unix” grazie al comando “crontab”. Per esempio immaginiamo di aver a disposizione uno script “ backup.sh” per eseguire la copia di backup di una selezione di importanti documenti su di un disco esterno. Per cominciare creiamo una directory nascosta tipo “.cron.daily” nella nostra home, copiamoci il file “ backup.sh” dentro e rendiamolo eseguibile

  1. mkdir .cron.daily

  2. cp backup.sh /home/nome_utente (sostituire col vostro nome utente) .cron.daily/

  3. sudo chmod +x /home/nome_utente/.cron.daily/backup.sh


I processi che vengono eseguiti da cron sono elencati in appositi file. A livello di sistema i processi sono elencati nel file /etc/crontab, a livello utente è però possibile creare nella home un file crontab, per esempio possiamo creare un file nascosto .crontab

Ecco un crontab campione

# minuti ore mday month wday comando

15 03 * * * sh /User/nome_login/.cron.daily/backup.sh

15 03 1 * * sh /User/nome_login/.cron.daily/Sample1

15 03 * * 6 sh /User/nome_login/.cron.daily/Sample2

*/15 03 * * * sh /User/nome_login/.cron.daily/Sample3

Nella prima linea ci sono le intestazioni dei file che specificano il significato delle diverse entry che iniziano dalla seconda linea. Le voci sono raggruppate in colonne separate da un tab.

La seconda linea corrisponde all'esecuzione dello script di backup, lanciato alle 03:15 tutti i giorni della settimana (wday) per tutti i giorni (mday) di tutti i mesi (month). Gli asterischi significano sempre.

Ci sono anche altri esempi:

Linea 3: esegue il comando sample 1 alle 3:15 soltanto il 1 giorno di ogni mese.

Linea 4: esegue il comando sample 2 alle 3:15 de 6 giorno ogni della settimana.

Linea 5: Esegue il comando sample 3 ogni 15 minuti.

Alle variabili di cron tab è possibile assegnare i seguenti parametri

"minuti" 0-59, "ore"0-23, "mday2 1-31, "wday" 0-7 (0 e 7 = domenica), oppure con le prime 3 lettere del nome del giorno, (es. “Thu” per Thursday), month 1-12, oppure con le prime tre lettere del nome del mese (es. “Jan” per “January”).

É possibile settare anche intervalli o sequenze (separati da virgole). Per esempio, 8-11 nella colonna delle ore verrà associato l'esecuzione di un comando alle 8, 9, 10, e 11. Una sequenza come 1,2,5,9 nella colonna delle ore verrà associata alla esecuzione dello script alle ore 1, 2, 5, e 9.

Una volta creati e posizionati crontab e i relativi script non resta che avviare il processo digitando:

crontab /Users/nome_login/.crontab

per fermare cron basta eseguire il comando:

crontab -r

Mentre per stampare a schermo la lista dei processi gestiti da cron basta digitare

cronta -l

é importante periodicamente controllare quali processi sono in funzione dal momento che crontab può occasionalmente fermarsi ad esempio in occasione dell'aggiornamento del software.


Lettori fissi