lunedì 28 settembre 2009

Get Smart! (SMART Usage Attribute: 194 Temperature_Celsius changed from X to Y)


Da quando ho attivato il supporto SMART per il monitoraggio degli hard disk, mi trovo sempre un misterioso messaggio sui log di sistema:
/dev/sdb : Usage: Temperature_Celsius (194) changed to 157, 162, 157, 162

Considerato che non vedo ne' fiamme ne' fumo provenire dal CED, mi pare impossibile che i dischi stiano viaggiando su temperature (in gradi celsius) cosi' alte.
Vediamo la situazione attuale con con il comando:
smartctl -a /dev/sdb

Viene visualizzato questo Output (mostro solo la parte interessante per questo post):
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
(...)
194 Temperature_Celsius 0x0002 162 162 000 Old_age Always - 37 (Lifetime Min/Max 25/42)
(...)

37 mi sembra una temperatura piu' credibile (anche toccando fisicamente il disco non mi si e' liquefatta la mano).
Il problema e' causato dal una errata configurazione di smartd, il demone che si occupa di monitorare i dischi.
Questo infatti registra sui log non la temperatura reale (registrata nella colonna RAW_VALUE) bensi' il valore delle colonne VALUE e WORST.
Per convincere smartd a usare correttamente i dati sulla temperatura bisogna utilizzare il parametro
-R 194

ad esempio sul mio sistema ho modificato nel file /etc/smartd.conf la riga:
DEVICESCAN -m root -M exec /usr/share/smartmontools/smartd-runner

in
DEVICESCAN -m root -R 194 -M exec /usr/share/smartmontools/smartd-runner

Possiamo modificare ulteriormente questa riga in modo da segnalare le variazioni (ad esempio) maggiori o uguali a 4 gradi celsius:
DEVICESCAN -m root -R 194 -W 4 -M exec /usr/share/smartmontools/smartd-runner

Una ulteriore modifica per segnalare il raggiungimento di un limite (seppur considerato ancora in sicurezza) in questo caso 45 gradi celsius:
DEVICESCAN -m root -R 194 -W 4,45 -M exec /usr/share/smartmontools/smartd-runner

Una ulteriore modifica per segnalare il raggiungimento di un limite critico, in questo caso 55 gradi celsius:
DEVICESCAN -m root -R 194 -W 4,45,55 -M exec /usr/share/smartmontools/smartd-runner

Il parametro
-m

(presente in tutti gli esempi) indica a smartd di inviare una mail all'utente indicato (o a piu' utenti separati da virgole) in caso di errore grave (o di raggiungimento di limite critico).

venerdì 25 settembre 2009

mt-daapd non parte piu'!!!!

Si si , non vi fidate di chi dice che avahi non serve sui server :)
Dopo averlo rimosso (vedi post precedente) mt-daapd ha smesso di funzionare.
Si rifiutava di partire senza il suo compagno di giochi avahi.
Per tranquillizzarlo e' necessario farlo partire con l'opzione
-m

Aprite il file /etc/init.d/mt-daapd
trovate la linea (a inizio file)
DAEMON=/usr/sbin/mt-daapd

subito dopo, se non esiste, aggiungete la linea
DAEMON_OPTS=-m

oppure aggiungete il
-m

alla esistente linea
DAEMON_OPTS=

Ora potete rieseguire mt-daapd con il comando
/etc/init.d/mt-daapd start

Avahi? No grazie, preferisco un rabarbaro

Credo di aver capito la ragione di certi strani comportamenti che avevano afflitto il networking di certi server debian utilizzati per l'ultimo corso. La colpa potrebbe, accetto eventuali smentite, essere di avahi che su un server pare sia di troppo (ma 'ndo avahi?).

Per star tranquillo ho provato a disabilitarlo sul mio server (mi impediva ad esempio di eseguire rsnapshot su server remoti tramite ssh):
/etc/init.d/avahi-daemon stop
sudo update-rc.d -f avahi-daemon remove

se volete riattivarlo al boot successivo lanciate il comando:
sudo update-rc.d -f avahi-daemon defaults

lunedì 21 settembre 2009

Shift, CTRL, ALT e Caps Lock in sciopero???

Notte di rilasci, vuoi che non saltasse fuori qualche avvenimento folkloristico-informatico?
Ebbene i 4 tasti citati nel titolo hanno smesso di funzionare all'improvviso...per ben 3 volte.

Il problema e' quasi sicuramente legato a VMware, forse ai VMware Tools, e' stato riscontrato sia con server che workstation.

Nel mio caso stavo utilizzando la VMware Remote Console di un Ubuntu 9.04 collegata a un VMware server 2.0 installato su una Debian Lenny a 64bit.

Se ne parla nel bug 195982

SOLUZIONE 1

aprire un terminale e lanciare il comando:
setxkbmap

SOLUZIONE 2
eseguire un logoff
rientrare

Qualcuno ha trovato che in corrispondenza di questo problema era sparita l'indicazione di DEFAULT nei layout di tastiera in System->Settings->Keyboard and select layout

domenica 20 settembre 2009

GNOME: icone cestino e dischi montati

Sia che le vogliate visualizzare o che le vogliate nascondere la procedura e' la stessa.
Lanciate il comando:
gconf-editor

Andate almenu:
/apps/nautilus/desktop

Le voci da modificare sono
volumes_visible

per visualizzare o meno l'icona dei dischi montati e
trash_icon_visible

per il cestino.

Esecuzione automatica di script contenenti comandi zenity

Avete uno script che utilizza zenity ma se lo inserite nei programmi avviati da Gnome in automatico non riesce a visualizzare nulla?
Utilizzate questa sintassi come linea di comando:
sudo -s -u $USER NOME_DELLO_SCRIPT

Premuratevi anche di lanciare il comando:
visudo

e di aggiungere questa linea:
username ALL=(ALL) NOPASSWD:NOME_DELLO_SCRIPT

Completiamo il tutto inserendo nelle prime linee dello script:
xhost local:$USER

SW installato: Hard Disk Sentinel Linux Edition

hdsentinel e' un bel programmino (free nella sua versione Linux) per il monitoraggio dei vostri hard disk.
Lo potete trovare sul sito http://www.hdsentinel.com/hdslin.php

Recensione Geo

La protagonista del cortometraggio e' ora gentile ospite dello Stato Italiano presso la residenza "I Casetti" di Rimini con l'accusa di imbrattamento di muri e istigazione a delinquere.
Le componenti della troupe cinematografica sono tuttora latitanti, su di loro e' stato spiccato un mandato di cattura internazionale. Un'agenzia appena arrivata in redazione ci comunica che l'interpol e' gia' sulle loro tracce.

Installare Xten Softphone (X-lite) su Ubuntu

X-Lite e' un'applicazione VoIP prodotta da http://www.counterpath.com/, basata su protocolo SIP.

Scaricate l'applicazione ed eseguite i comandi seguenti:
tar -zxvf X-Lite_Install.tar.gz
cd xten-xlite
chmod +x xtensoftphone
./xtensoftphone

Molto probabilmente riceverete l'errore:
./xtensoftphone: error while loading shared libraries: libstdc++.so.5: cannot open shared object file: No such file or directory

E' sufficiente installare la libreria libstdc++.so.5 con il comando:
apt-get install libstdc++5

Completiamo l'installazione con il comando:
apt-get install alsa-oss

Ridimensionare immagini da command line

Possiamo usare il comando mogrify command incluso in ImageMagick.
Copiare le immagini da ridimensionare in una nuova directory e lanciare il comando:
mogrify -resize 1024x768 *

Durante il ridimensionamento vengono mantenute le proporzioni originali (ratio)
Naturalmente potete utilizzare la dimensione che desiderate.

Xten softphone in Linux

Configurare X-Lite 2.0 su Linux

1. Selezionare MENU (il tasto a sinistra del tasto verde del telefono).

2. Doppio click su SYSTEM SETTINGS.

3. Doppio click su SIP PROXY.

4. Doppio click su [Default] per settare la vostra configurazione:

ENABLED - yes
DISPLAY NAME - il vostro nome
USER NAME - il vostro username SIP
AUHTORIZATION USER - il vostro username SIP
PASSWORD - il vostro PIN SIP
DOMAIN/REALM - se usate i record SRV del DNS, inserite qui il vostro dominio.
SIP PROXY - FQDN del server SIP


5. Click su BACK per vedere il menu [DEFAULT]. Dovreste vedere il dominio da voi inserito nel campo DOMAIN/REALM.

6. Tornare al menu SYSTEM SETTINGS e poi al menu NETWORK:

AUTOSELECT IP - yes
OUT BOUND SIP PROXY - indirizzo IP del server SIP
PRIMARY DNS SERVER - indirizzo IP del vostro server DNS primario


7. Click su BACK

8. Fate ripartire X-Lite

MEMO: Installare TLQ come servizio

\remotebanking\TLQ\bin\tlqsched.exe -install

mercoledì 9 settembre 2009

D-LINK: tabella standard di deautenticazione:

Questa è la tabella standard di deautenticazione:

Code Reason
0 Reserved
1 Unspecified reason
2 Previous authentication no longer valid
3 Deauthenticated because sending station is leaving (or
has left) IBSS or ESS
4 Disassociated due to inactivity
5 Disassociated because AP is unable to handle all
currently associated stations
6 Class 2 frame received from nonauthenticated station
7 Class 3 frame received from nonassociated station
8 Disassociated because sending station is leaving (or has
left) BSS
9 Station requesting (re)association is not authenticated
with responding station
10-65535 Reserved

Adobe Reader: perche' appare sempre la richiesta di accettazione della licenza?


Se ad ogni esecuzione di Adobe Reader vi appare la finestra di accettazione della licenza, e' dovuto al fatto che il vostro utente non ha permessi di scrittura sul file
~/.adobe/Acrobat/9.0/Preferences/reader_prefs

Per rimediare potete salvare/rinominare questo file se avete modificato le preferenze del programma e poi cancellare il file con il comando:
sudo rm -rf ~/.adobe/Acrobat/9.0/Preferences/reader_prefs

Al prossimo lancio di Adobe Reader avrete di nuovo la richiesta di accettazione della licenza....ma per l'ultima volta :)

Pare che questo buggettino sia stato eliminato a partire dalla versione 9.1.2 del Reader

Postfix: come svuotare le code

Potete usare il comando pfqueue per gestire interattivamente tutte le code di postfix oppure ricorrere (come da esempi seguenti) al comando postsuper fornito con postfix.


Comando per svuotare tutte le code di postfix (incoming, hold, active, deferred):
postsuper -d ALL
Comando per svuotare una coda di postfix:
postsuper -d ALL incoming
o
postsuper -d ALL hold
o
postsuper -d ALL active
o
postsuper -d ALL deferred

domenica 6 settembre 2009

Prove di guida su strada


Non so se fossero piu' numerosi i cani, i cinesi o le auto...i piu' civili erano, come era logico pensare, i gatti che senza disturbare osservavano assonnati e forse un po' annoiati la scena...

venerdì 4 settembre 2009

Screenshot da linea di comando

xwd -root -out screen.dump;convert screen.dump screen.png;rm -f screen.dump

Sono necessari i pacchetti x11-apps (per xwd) e imagemagick (per convert)

Esempi (utili) di utilizzo del comando find

find / -type f -name *.jpg  -exec cp {} . \;
find . -type f -size +10000 -exec ls -al {} \;
find . -atime +1 -type f -exec mv {} TMP \; # mv files older then 1 day to dir TMP
find . -name "-F" -exec rm {} \; # a script error created a file called -F
find . -exec grep -i "vds admin" {} \;
find . \! -name "*.Z" -exec compress -f {} \;
find . -type f \! -name "*.Z" \! -name ".comment" -print | tee -a /tmp/list
find . -name *.ini
find . -exec chmod 775 {} \;
find . -user xuser1 -exec chown -R user2 {} \;
find . -name ebtcom*
find . -name mkbook
find . -exec grep PW0 {} \;
find . -exec grep -i "pw0" {} \;
find . -atime +6
find . -atime +6 -exec ll | more
find . -atime +6 -exec ll | more \;
find . -atime +6 -exec ll \;
find . -atime +6 -exec ls \;
find . -atime +30 -exec ls \;
find . -atime +30 -exec ls \; | wc -l
find . -name auth*
find . -exec grep -i plotme10 {};
find . -exec grep -i plotme10 {} \;
find . -ls -exec grep 'PLOT_FORMAT 22' {} \;
find . -print -exec grep 'PLOT_FORMAT 22' {} \;
find . -print -exec grep 'PLOT_FORMAT' {} \;
find . -print -exec grep 'PLOT_FORMAT' {} \;
find ./machbook -exec chown 184 {} \;
find . \! -name '*.Z' -exec compress {} \;
find . \! -name "*.Z" -exec compress -f {} \;
find /raid/03c/ecn -xdev -type f -print
find /raid/03c/ecn -xdev -path -type f -print
find / -name .ssh* -print | tee -a ssh-stuff
find . -name "*font*"
find . -name hpmcad*
find . -name *fnt*
find . -name hp_mcad* -print
find . -grep Pld {} \;
find . -exec grep Pld {} \;
find . -exec grep Pld {} \;
find . -exec grep PENWIDTH {} \; | more
find . -name config.pro
find . -name config.pro
find /raid -type d ".local_sd_customize" -print
find /raid -type d -name ".local_sd_customize" -print
find /raid -type d -name ".local_sd_customize" -ok cp /raid/04d/MCAD-apps/I_Custom/SD_custom/site_sd_customize/user_filer_project_dirs {} \;
find /raid -type d -name ".local_sd_customize" -exec cp /raid/04d/MCAD-apps/I_Custom/SD_custom/site_sd_customize/user_filer_project_dirs {} \;
find . -name xeroxrelease
find . -exec grep xeroxrelease {} \;
find . -name xeroxrelease
find . -name xeroxrelease* -print 2>/dev/null
find . -name "*release*" 2>/dev/null
find / -name "*xerox*" 2>/dev/null
find . -exec grep -i xeroxrelease {} \;
find . -print -exec grep -i xeroxrelease {} \;
find . -print -exec grep -i xeroxrelease {} \; > xeroxrel.lis
find . -exec grep -i xeroxrel {} \;
find . -print -exec grep -i xeroxrel {} \;
find . -print -exec grep -i xeroxrel {} \; | more
find /raid/03c/inwork -xdev -type f -print >> /raid/04d/user_scripts/prt_list.tmp
find . -exec grep '31.53' {} \;
find . -ls -exec grep "31/.53" {} \; > this.lis
find . -print -exec grep "31/.53" {} \; > this.lis
find . -print -exec grep 31.53 {} \; > this.lis
find . -exec grep -i pen {} /;
find . -exec grep -i pen {} \;
find . -print -exec grep -i pen {} \; | more
find . -exec grep -i pen {} \;
find . -atime +6 -exec ll | more \;
find . -atime +6 -exec ll \;
find . -atime +6 -exec ls \;
find . -atime +30 -exec ls \;
find . -atime +30 -exec ls \; | wc -l
find . \! -name '*.Z' -exec compress -f {} \;
find . -name 'cache*' -depth -exec rm {} \;
find . -name 'cache*' -depth -print | tee -a /tmp/cachefiles
find . -name 'cache[0-9][0-9]*' -depth -print | tee -a /tmp/cachefiles
find . -name 'hp_catfile' 'hp_catlock' -depth -print | tee -a /tmp/hp.cats
find . -name 'hp_catfile' -name 'hp_catlock' -depth -print | tee -a /tmp/hp.cats
find . -name 'hp_cat*' -depth -print | tee -a /tmp/hp.cats
find . -name 'hp_cat[fl]*' -depth -print | tee -a /tmp/hp.cats
find /raid -name 'hp_cat[fl]*' -depth -print
find . \! -name '*.Z' -exec compress -f {} \;
find . -name '*' -exec compress -f {} \;
find . -xdev -name "wshp1*" -print
find . -xdev -name "wagoneer*" -print
find . -name "xcmd" -depth -print
find /usr/contrib/src -name "xcmd" -depth -print
find /raid -type d -name ".local_sd_customize" -exec ls {} \;
find /raid -type d -name ".local_sd_customize" \
-exec cp /raid/04d/MCAD-apps/I_Custom/SD_custom/site_sd_customize/user_filer_project_dirs {} \;

mercoledì 2 settembre 2009

Streaming audio: aggiornare il database del vostro server DAAP

Torniamo a parlare di mt-daapd.
Se avete aggiunto dei file .mp3 al vostro repository ma non vengono visualizzati, ad esempio, da rhythmbox, e' necessario fare una ricostruzione del database di mt-daapd:

In teoria potete eseguire la procedura direttamente dall'interfaccia web di mt-daapd, ma personalmente non mi ha dato gran risultati...meglio fare nella vecchia maniera:

Cercare il file songs3.db
(da me si trova in /var/cache/mt-daapd)

Cancellare il file suddetto:
rm /var/cache/mt-daapd/songs3.db

Eseguire un restart del server:
/etc/init.d/mt-daapd restart

Configurazione default ricerche con catfish

Gettato da tempo tracker nel canneto (non e' mai riuscito ad attirare la mia simpatia) ho ripiegato per le mie ricerche (quando non le faccio da terminale a suon di find e locate) su catfish.
Purtroppo viene impostato un default non proprio ideale:
Modalita' di ricerca: find
Directory in cui viene eseguita la ricerca: /usr/share/catfish

Io avrei preferito locate e la mia home o la directory Documenti.
Ho cominciato a ravanare e ho trovato quanto segue. Lanciate il comando:
gconf-editor

e selezionate la voce:
/apps/panel/objects/object_0/launcher_location

Alla voce launcher_location trovate il nome del file utilizzato per lanciare il programma. Sul mio sistema e' impostato a:
/usr/share/applications/catfish.desktop

Andiamo un po' ad editare questo file, ecco come si presenta:
[Desktop Entry]
Version=1.0
Type=Application
Name=Catfish
Comment=File search
Comment[de]=Dateisuche
Comment[es]=Buscador de archivos
Comment[fi]=Etsi tiedostoja
Comment[fr]=Recherche de fichiers
Categories=GTK;Utility;Filesystem;
Exec=catfish
Icon=catfish
Terminal=false
StartupNotify=true

La linea che ci interessa e' quella contenente l'identificativo Exec=
Per poter eseguire le ricerche dalla nostra home utilizzando locate come metodo di ricerca, dobbiamo modificare questa linea nel modo seguente:
Exec=catfish --path=/home/utente --method=locate