domenica 18 ottobre 2009

Virtualizzare, oggi


Volendo portarmi appresso una chiavetta USB con su l'immagine virtuale di un'installazione di un linux da condividere tra casa e lavoro, stavo sperimentando le varie soluzioni di virtualizzazione presenti in giro.

Poichè a casa ho ubuntu, mentre in ufficio Windows XP, mi sono concentrato sulle due soluzioni multi-piattaforma: VirtualBox e VmWare.

A livello di sensazione, Virtual Box mi sta molto più simpatico, per cui ho iniziato con questo. Dopo averlo usato un po' posso elencare vantaggi e svantaggi:

Pro:
  • E' presente nei repository di ubuntu per cui si installa molto facilmente.
  • La creazione e l'esecuzione di una macchina virtuale è molto semplice.
  • Sicuramente usa l'estensione VT del mio processore.
Contro:
  • La procedura per spostare la macchina virtuale da un pc all'altro è abbastanza ostica: non è possibile copiare semplicemente un file o una cartella ma bisogna lanciare un comando da shell, poi aggiornare un file xml etc etc.
Ho provato ultimamente VmWare, e come prime impressioni posso dire che:

Pro:

  • Copia della macchina virtuale molto semplice: basta copiare il contenuto della directory che la contiene ed eseguirla su di un altro pc.
Contro:
  • L'installazione è un po' particolare, bisogna prima installarsi la versione server, che serve per creare una macchina virtuale, e poi si installa il player che effettivamente la esegue.
  • Il player non fa uso dell'estensione VT.

Procedura di installazione di VmWare

Mi appunto qui la sequenza delle operazioni necessarie all'installazione, creazione ed esecuzione di una macchina virtuale usando le soluzioni free di VmWare:
  1. Installare il server, password nella mail usata per la registrazione, segnarsi il numero di serie
  2. modificare /etc/vmware/hostd/authorization.xml
  3. Scaricare il player.

domenica 27 settembre 2009

Atlantide Media Center: Video Streaming

Gli utlimi aggiornamenti riguardo al media center scritto in python sono:
  • ho contattato il creatore dell'immagine che inizialmente avevo impostato come sfondo, per sapere se potevo usarla in via 'ufficiale'. L'autore, gentilissimo e bravissimo, mi ha risposto che i diritti di quell'immagine sono già venduti (buon per lui). Dopo una infruttuosa ricerca su internet, ho deciso di farmene una da me. Con Gimp ho quindi creato questo sfondo, che mi sembra adeguato.
  • ho attivato la visualizzazione del canale demoscene.tv alla tv! Da shell bisogna lanciare il seguente comando:
    mplayer -vc vp6 -framedrop -fs http://91.121.4.152:PORTA
    se PORTA = 8000: streaming in alta risoluzione (qui da me spesso si blocca)
    se PORTA = 8074: streaming in bassa risoluzione (meglio)
    se PORTA = 8072: streaming in bassa risoluzione del canale OldSchool! Amiga rulez! :)
  • ho impostato i movimenti all'interno del menù mediante i bottoni del mouse con il seguente codice:
    if event.type == MOUSEBUTTONDOWN:
    #sx
    if event.button == 1:
    command = lCurrentMenu[iItemSelected][1]
    globals()[command]()
    #cx
    #elif event.button == 2:
    #dx
    elif event.button == 3:
    sys.exit(0)
    #su
    elif event.button == 4:
    iItemSelected -= 1
    #giu
    elif event.button == 5:
    iItemSelected += 1

lunedì 27 luglio 2009

Problemi di mldonkey

E' già la terza volta che il servizio mldonkey del media-center non parte più.

La prima volta ho reinstallato il pacchetto e sono riuscito a ripristinare i download recuperando i file che iniziano con "urn_ed2k_" nella cartella /var/lib/mldonkey/temp e il vecchio file di configurazione files.ini.

Dopo di chè ho creato un back-up archivio della cartella /var/lib/mldonkey.

La seconda volta che si è bloccato, ho ripristinato l'archivio vecchio, e recuperato il file files.ini; la cartella /var/lib/mldonkey/temp è un link simbolico, da ripristinare.

La terza volta, il file files.ini era corrotto, ma ho recuperato quello che viene automaticamente backuppato ad ogni lancio del server, situato nella sottocartella old_config/.

Sarà forse il caso di rendere un po' più robusta la gestione dei file di configurazione?

E' anche vero che la versione installata nel media box è la 2.9.5, mentre l'ultima ad oggi è la 3.0.0., che magari risolve il problema. Potrei provare a sostituire il binario mlnet contenuto nella cartella /usr/bin (da fare).

mercoledì 22 luglio 2009

Super penna! (usb)

Ho una penna usb bella spaziosa (16GB), e mi stavo giustappunto chiedendo come sfruttarla bene.

Mi piacerebbe avere una partizione con un linux permanente installato, una swap se serve, e il resto dello spazio vfat o ntfs per l'accesso da macchine win come normale penna usb.

Un primo tentativo: ho partizionato la penna in questo modo:
Dispositivo Boot Start End Blocks Id System
/dev/sdb1 * 1 9538 2441712 83 Linux
/dev/sdb2 9539 62111 13458672+ 5 Esteso
/dev/sdb5 9539 11492 500208 82 Linux swap / Solaris
/dev/sdb6 11493 62111 12958448 c W95 FAT32 (LBA)
ed installato un linux mediante l'utility usb-creator, ma non è andato a buon fine:
  1. senza la penna inserita all'avvio non si boota più il pc!!
  2. la penna non è letta da windows (nemmeno la partizione fat32...forse perchè estesa?)
  3. la penna non boota
per risolvere il primo grave punto, ho dovuto avviare il pc con la penna, ed entrare nel sistema insstallato; poi ho smontato la penna e reinstallato grub con il comando grub-install /dev/sda (sda=partizione locale).

Per risolvere il punto 2 pensavo di mettere la partizione fat32 nella primaria, ed installare linux nell'estesa, istruendo grub dove andare a prendersi i file di boot.

Per quanto riguarda il punto 3, il manuale del GRUB potrebbe essermi d'aiuto, sopratutto le istruzioni per installare grub manualmente.

Una procedura per rendere avviabile la penna usb è con syslinux: il comando syslinux /dev/sdb1 dovrebbe fare al nostro caso; il problema è che alcune penne non bootano con alcuni sistemi per misteriosi motivi di incompatibilità, per cui spesso una penna che pare non bootare in realtà potrebbe funzionare su un altro pc.

C'è anche da dire che l'utility di creazione di dischi di avvio di default per ubuntu ogni tanto sembra fallire (avviando da penna il menù di selezione rimane quello dell'iso precedente) e non riconosce le iso non ubuntu (?)

Un programma da tenere in considerazione è Plop, un boot manager che potrebbe aiutare all'avvio da usb.

domenica 12 luglio 2009

Sessione di VNC con x11vnc

Alcune volte sorge la necessità di accedere da remoto al media box in modalità grafica.
In questo caso ci viene in aiuto programma x11vnc, che implementa un server vnc.
Si installa il pacchetto omonimo, e si esegue con il comando (via ssh):
x11vnc -display :0
Non lo metto in esecuzione automatica, perchè non mi serve automaticamente, ma solo saltuariamente.

Per la visualizzazione, lanciare dal client il programma "Visualizzatore di desktop remoti" nel menù Internet.

Apt/dpackage da linea di comando

Ci sono occasioni (tipo la gestione del media box via ssh) in cui risulta comodo o necessario accedere alla lista di pacchetti installati/installabili senza l'ausilio di interfaccie grafiche (synaptic in primis). Ecco quindi una breve lista di comandi da terminale utili all'uopo:
  • lista di pacchetti installati: dpkg -l
  • lista di pacchetti installabili: less /var/lib/dpkg/available
  • ricerca di una stringa all'interno dei pacchetti: apt-cache search "stringa"
  • ricerca di un file all'interno dei pacchetti: dpkg -S "file"
  • lista di file installati da un pacchetto: dpkg-query -L

martedì 7 luglio 2009

Caratteri Unicode comodamente disponibili


Uno degli elementi più utili da aggiungere al pannello di gnome è sicuramente la Tavolozza Caratteri.

Questo breve post per indicare quali simboli mi sono più utili:
«»·~→ª✓
ÀÈÌÒÙ
Altri simboli si possono aggiungere sfruttando una comoda utility raggiungibile dal menù Applicazioni→Accessori→Tabella caratteri, o ancora meglio, inserita nella barra di menù di Gnome (il nome è Tavolozza caratteri):


In alcuni casi nella tabella caratteri non si trova il simbolo che si vuole aggiungere, come ad esempio il "check mark" (✓) che ho aggiunto per ultimo, per cui è necessario andare su google e cercare "check mark unicode"; in questo modo si recupera con il copia-incolla il carattere richiesto.
Ricerche che riguardano le lettere ad apice o pedice si possono fare usando i termini "unicode superscript" o subscript.

Un buon sito dove cercare i caratteri unicode è il seguente:
http://unicode-table.com/en/

andando a spulcuiare nella tabella mostrata dal sito, si notano un'infinità di caratteri interessanti a partire dai codici:
(per cercare a partire da un codice: http://unicode-table.com/en/#codice)

2010: percento, punti interrogativi, punti per liste (‰, ‱, ⁈, ⁋, ⁍)
2100: caratteri matematici e fisici: omega, gradi, farheneit, frazioni, numeri romani (Ω, ℇ, ℃, ℉, ℕ, ℝ, ⅀, ⅗, Ⅷ)
2200: insiemistica (∉, ∩, , ≅)
2470: elenco numerato (⒄, ⒗, ⒦, Ⓦ)
2600: tempo, religione, oroscopo (☀, ☔, ☠, ☣, ☧, ,☪, ☭, ♎, ♕, ♤, )
2710: asterischi (✥, ✾, ❅, ❂)
3370: unità di misura (㎆, ㎉, ㎓, , ㎨)

e molto altro...

Un altro modo per ricercare caratteri unicode, è usare questo splendido tool che permette di disegnare con il mouse il carattere cercato, ed il sistema trova i caratteri unicode simili a quello disegnato. Utilissimo! Ulteriori informazioni su questo blog italiano.


sabato 4 luglio 2009

Un Mare Di Musica

A partire da un post su Ubuntu Forums, ecco una lista di possibili posti dove poter scaricare un sacco di musica interessante:
- Jamendo
- magnatune
http://www.ghacks.net/2005/12/03/free-music-list-december-2005/
-remix kwed org
netlabels
http://netlabels.org/
http://www.archive.org/details/netlabels
http://www.nettare.org/
http://www.eclassical.com/

streaming:
- shoutcast
- icecast

...

martedì 30 giugno 2009

Atlantide Media Center: menù di partenza

Un po' di brainstorming per il media center:
  • ogni menù ha una voce 'setup' che permette di configurare gli aspetti di quel menù, come ad esempio il percorso dove trovare i file multimediali, o il comando da impostare per riprodurli
  • ogni menù ha una voce 'indietro' ('esci' su quello principale)
  • dati possono essere directory e file, che si possono rinominare, cancellare, copiare, spostare; si possono creare directory nuove
  • se evidenziata una cartella, ti dice il numero di file e la data del più recente
  • se evidenziato un file ti dice dimensione, data e lunghezza (e magari copertina e info IMDB o equivalente italiano!)
  • nel menù 'Guarda TV' la funzione 'Setup' attiva la funzione di popolamento dei canali, e il comando per la visualizzazione dei canali stessi
  • i programmi registrati vanno in 'Registra TV', si possono poi spostare a piacere; in quel menù sono presenti le programmazioni
E ora un po' di codice python...

#!/usr/bin/python
########################################################
# Note sul nome delle variabili e funzioni :
# iniziano tutte con una sequenza che indica il tipo
#
# i = intero
# s = surface
# str = stringa
# font = font
# r = rect
########################################################
# Imports
########################################################
import pygame, sys, os
from pygame.locals import *
########################################################
# Inizializzazione variabili
########################################################
pygame.init()
iiResolution = (800, 600)
fontDefault = pygame.font.Font(None, 36)
# set screen resolution
pygame.display.set_mode(iiResolution, 0, 32)
sScreen = pygame.display.get_surface()
strBackgroundFile = os.path.join(".","Atlantis_by_aksu.jpg")
sBackground = pygame.image.load(strBackgroundFile)
strCurrentMenu = os.path.join(".","main.mnu")
########################################################
# Functions
########################################################
def drawMenu(menuFile, iSelected):
# Disegna il contenuto del menuFile ed evidenzia il selected
global sForeground, fontDefault
##################################
file = open(menuFile, 'r')
i=0
centerx = sForeground.get_rect().centerx
offsy = sForeground.get_rect().centery/2
for line in file:
line = line.replace ( "\n", "" )
sText = fontDefault.render(line, 1, (255, 255, 255))
rText = sText.get_rect()
rText.centerx = centerx
rText.y = i*32+offsy
if i == iSelected:
rText2 = rText.inflate(118,4)
rText2.centerx = centerx
sBox = pygame.Surface.convert_alpha(pygame.Surface((rText2.width, rText2.height)))
sBox.fill((0, 255, 255, 100))
sForeground.blit(sBox, rText2)
sForeground.blit(sText, rText)
i=i+1
# Setup string
sText = fontDefault.render("Setup", 1, (255, 255, 255))
rText = sText.get_rect()
rText.centerx = sForeground.get_rect().centerx
rText.y = i*32+offsy
sForeground.blit(sText, rText)
# Exit/back string
i=i+1
sText = fontDefault.render("Exit", 1, (255, 255, 255))
rText = sText.get_rect()
rText.centerx = sForeground.get_rect().centerx
rText.y = i*32+offsy
sForeground.blit(sText, rText)
##################################
def input(events):
# Gestisce gli eventi di input
global iItemSelected
##################################
for event in events:
if event.type == KEYDOWN:
if event.key == K_UP:
iItemSelected -= 1
elif event.key == K_DOWN:
iItemSelected += 1
elif event.key == K_ESCAPE:
sys.exit(0)
else:
print event
########################################################
# Main
########################################################
iItemSelected =0

# Main loop
while True:
sForeground = pygame.transform.scale(sBackground, iiResolution)
input(pygame.event.get())
pygame.display.flip()
drawMenu(strCurrentMenu, iItemSelected)
sScreen.blit(sForeground, (0,0))

domenica 28 giugno 2009

Atlantide Media Center: prime prove

Nell'ottica di implementare un front-end grafico per la mia linux-box, sto studiando il python e pygame.

Questo è il risultato di un paio d'ore di smanettamento:

#!/usr/bin/python

import pygame, sys, os

from pygame.locals import *

screenwidth = 800
screenheight = 600

pygame.init()

# set screen resolution
pygame.display.set_mode((screenwidth, screenheight))#, pygame.FULLSCREEN)
screen = pygame.display.get_surface()

back_file_name = os.path.join(".","Atlantis_by_aksu.jpg")
back_surface = pygame.image.load(back_file_name)

font = pygame.font.Font(None, 36)
text = font.render("Guarda un film", 1, (255, 255, 255))
textpos = text.get_rect()
textpos.centerx = back_surface.get_rect().centerx
back_surface.blit(text, textpos)

fore_surface = pygame.transform.scale(back_surface, (screenwidth, screenheight))

screen.blit(fore_surface, (0,0))

pos = 0,0

def input(events):
for event in events:
if event.type == MOUSEBUTTONDOWN:
sys.exit(0)
elif event.type == MOUSEMOTION:
global pos
pos = pygame.mouse.get_pos()
screen.blit(back_surface, (pos[0],pos[1]))
else:
print event

# Main loop
while True:
input(pygame.event.get())
pygame.display.flip()

Visualizzare codice sorgente in HTML

Per visualizzare del codice C all'interno di una pagina HTML, ho effettuato i seguenti passi:
  • usato il programma code2html, che non necessita di installazione, basta aprire il pacchetto tar.gz ed estrarre l'eseguibile, e si esegue con il comando code2html codice.c codice.c.html
  • con un editor sostituire ai tab la stringa &#09";" (senza doppi apici), come suggerisce wikipedia
  • ricopiare dal tag "<" pre > al < /pre > ed incollare nel codice html...et voilà
Da notare che il programma code2html gestisce più linguaggi di quelli indicati nella sua homepage, tra cui il python.

Un altro metodo potrebbe essere quello di usare lo SCIntilla Text Editor, e sfruttare la funzione Export→as HTML..., ma non lo sto usando perchè adopera i CSS che in questo blog non posso inserire, inoltre il codice creato è piuttosto complesso.

Un terzo metodo che ho usato oggi a distanza di 6 anni è il seguente:
  1. andare alla pagina https://www.palfrader.org/code/code2html/cgi/
  2. riempire il form e cliccare invia richiesta (si può lasciare il campo HTML title vuoto)
  3. cliccare con il tasto destro sulla pagina creata, visualizzare il sorgente e copiare la parte che ci interessa compresa tra i tag PRE
Un altro sito utile per la formattazione in HTML è hilite.me che supporta molti più linguaggi rispetto al link precedente.

Ultimo usato: tohtml.com

martedì 23 giugno 2009

Configurazione di firefox

Se per qualcuno Firefox è sicuramente il miglior browser sulla piazza (me compreso) è grazie alla sua configurabilità e alle estensioni, che rendono la navigazione in internet una gran comodità; (certo non è stato esente da problemi, come quando si freezava ogni 3 per 2 e per la gestione delle animazioni flash).

Ecco un breve appunto su come configurarlo al meglio.

Lista delle estensioni utili
  • adblock (plus)
  • Context Search
  • DownThemAll
  • Gmail space
  • Google Bookmarks button
  • Plain Text Links
  • gTranslate (provare quick TransLation)
Configurazione
  • tutte le tab sempre visibili: da about:config mettere browser.tabs.tabMinWidth a 0
  • scrivere nella barra indirizzi rallenta: da about:config mettere
browser.urlbar.matchOnlyTyped = True
browser.urlbar.matchBehaviour = 2 (provare 0 che con 2 mi si blocca)
browser.urlbar.maxRichResults = (max results, put between 2-5)
browser.urlbar.search.timeout = (search timeout, put something lower than 100, depending on ur needs)
Motori di ricerca da impostare
  • wikipedia en, it
  • wordreference en-it
  • de mauro paravia
  • virgilio sinonimi & contrari
  • wordnet
  • acronymfinder

domenica 14 giugno 2009

Chi fa da se fa per tre

Freevo, il media center che sto usando adesso, non mi sta soddisfacendo troppo:
- è di installazione complicata
- spesso alcune funzioni indicate nel wiki non vanno (ad esempio per giocare con il mame)
- per far funzionare la tv sia in visualizzazione che in registrazione bisogna evocare antichi riti voodoo
- le istruzioni per l'installazione non sono sufficienti

Ad esempio ho scoperto da poco che per poter funzionare correttamente freevo ha bisogno di lanciare altri processi suoi, separatamente e rigorosamente a mano...ma non è indicato da nessuna parte...molto utile!

Dopo diversi mesi di utilizzo di freevo, ho deciso di provare ad impostare da me un mio media center, appoggiandomi ai programmi che ho potuto vedere in azione finora, come ad esempio mplayer.

Con Mplayer, infatti, si possono eseguire operazioni di visualizzazione filmati, canali tv e la possibilità di registrarli facilmente.

L'idea è quindi quella di implementare un front-end grafico, che permetta l'esecuzione di Mplayer per le suddette operazioni, con l'aggiunta della possibilità di lanciare il mame per i giochi da bar.

Il front-end sarà implementato in Python, linguaggio che non conosco ma che sembra abbastanza facile, assieme alla libreria pygame che fornisce immediate funzionalità grafiche senza dover conoscere l'hardware sottostante.

lunedì 1 giugno 2009

Freevo & il topo

Non avendo ancora acquistato un telecomando per controllare freevo, mi sono inventato un modo per poter usare in alternativa il mouse.

Ho appositamente creato una pagina nel wiki di freevo, nella quale descrivo come si configura.

Quello che non ho indicato, ma che potrebbe essere utile farlo in un altra pagina del wiki, è come lanciare freevo dopo che la fase di avvio del mediabox è terminata.

Ho deciso infatti di non eseguire automaticamente freevo, visto che potrei avere bisogno del media box solo come server (mldonkey o file) e non per vedere un film. Inoltre, l'esecuzione di freevo incrementa l'uso della CPU dal 3 al 30% (in modalità idle!), per cui in ottica di risparmio energetico e di durata di componenti hardware ho deciso di lanciarlo solo in caso di necessità.

Login automatico

La prima cosa da fare è quella di impostare il login automatico: si compila il semplice file dal nome autologin.c contentente:
int main() { execlp( "login", "login", "-f", "nomeutente", 0); }
dove al posto di nomeutente si mette l'utenza con cui si vuole effettuare l'accesso automatico.

Poi si modifica il file /etc/event.d/tty1 (/etc/init/tty1.conf) in modo che risulti simile a questo:


start on stopped rc2
start on stopped rc3
start on stopped rc4
start on stopped rc5

stop on runlevel 0
stop on runlevel 1
stop on runlevel 6

respawn
exec /sbin/getty -n -l /usr/local/sbin/autologin 38400 tty1
dove /usr/local/sbin/autologin è il programma compilato poco sopra.


Segnalazione di boot terminato

Nel file .bashrc, eseguito automaticamente nel passo precedente, si mette alla fine la seguente sequenza di comandi:
if [ -z "$DISPLAY" ] && [ $(tty) == /dev/tty1 ]; then
beep
./mousem
fi
Con beep si intende un comando che esegue un suonetto, disponibile nella fattispecie eseguendo "sudo apt-get install beep" da terminale. Se non si sente il suonetto, probabilmente è disabilitato nel file /etc/modprobe.d/blacklist, riabilitarlo commentando la riga "blacklist pcspkr".


Lancio di freevo a schermo spento

Il comando mousem del passo precedente è un altro applicativo scritto in c da compilare
#include <stdio.h>
#include <gpm.h>
#include <unistd.h>

int my_handler(Gpm_Event *event, void *data) {
switch(event->buttons) {
case 1:
printf("tasto dx\n");
break;
case 2:
printf("tasto cx\n");
break;
case 4:
printf("\a\n");
execl("/home/zac/vai.sh", "vai.sh", (char *)0);
break;
}
return 0;
}

int main() {
Gpm_Connect conn;
int c;
conn.eventMask = ~0; /* Want to know about all the events */
conn.defaultMask = 0; /* don't handle anything by default */
conn.minMod = 0; /* want everything */
conn.maxMod = ~0; /* all modifiers included */

if(Gpm_Open(&conn, 0) == -1)
printf("Cannot connect to mouse server\n");

printf("mouse menù\n");

gpm_handler = my_handler;
while((c = Gpm_Getc(stdin)) != EOF)
printf("%c", c);
Gpm_Close();
return 0;
}
Questo programma associa al tasto sinistro del mouse l'esecuzione di un programma a nostra scelta, nella fattispecie lo script vai.sh che contiene:
#!/bin/sh
xinit
./mousem
che esegue il server x, e quando si esce da freevo rilancia automaticamente il programma che ascolta il mouse.


mercoledì 15 aprile 2009

Linux Media Center: hardware consigliato


Principali caratteristiche di un media box devono essere la dimensione contenuta e la bassa rumorosità. La scelta dell'hardware ricade quindi su schede madri con form-factor ridotto, come ad esempio le Mini-Itx, e la totale assenza di ventole (fanless).

Infatti la potenza richiesta per decodificare/visualizzare filmati mpeg, o per videoregistrare da fonti esterne, o ancora per giocare con il mame, non è altissima, ed una CPU a 1GHz (magari con decoder hardware) va più che bene.

La mia scelta è quindi ricaduta su una scheda madre LN10000EG della VIA, dotata di processore fanless, decoder e uscita TV, e di chipset (north e southbridge) abbastanza supportati da linux (il supporto non è ancora al 100%, bisogna comunque smanettare).

Per chi abita a Roma uno dei pochi negozi che le tratta è Facal Point, che consiglio anche per la gentilezza & disponibilità del personale: ho avuto dei problemi di avvio della scheda madre, dovuti all'incompatibilità con la RAM da me scelta, per cui mi hanno fatto delle prove lì per lì con vari banchi fino a che non abbiamo trovato quello funzionante. Per la cronaca, avevo preso un banco da 1GB della Corsair, ma non è risultato compatibile, così come uno di marca Kingston; un banco di marca sconosciuta coreana invece ha funzionato al primo colpo...

Per quanto riguarda la RAM ho optato per 1GB nell'ottica di avere meno rallentamenti possibile durante l'esecuzione di operazioni di codifica-decodifica di stream video, e di poter avere in esecuzione più processi contemporaneamente (tipo i vari server samba, ssh, mldonkey, ecc..).
Probabilmente anche 512MB sono sufficienti...

Per quanto riguarda il case, ne ho cercato uno con trasformatore esterno, tipo quello dei portatili, estremamente silenzioso e a basso consumo (un massimo di 60w, anche se il manuale della scheda madre dichiara un consumo medio di circa 20 watt). La marca è NILOX, e un'immagine è la seguente:
Il problema è che al suo interno c'è spazio solo per un dispositivo di tipo slim, per cui il mio hard disk l'ho dovuto montare con il coperchio del case aperto appoggiato sopra per dissipare il calore.

domenica 22 marzo 2009

Recupero dei dati


Mi è capitato ultimamente di avere a che fare con hard disk esterni usb che hanno smesso di funzionare in toto od in parte.

Sto avendo l'impressione che la tecnologia USB per l'archiviazione dei dati non sia molto affidabile. Già il fatto di dover smontare il dispositivo per poterlo rimuovere anche sotto windows sembra rendere il procedimento incline agli errori: che succede se non lo smonto? Se salta la luce? Se il sistema si blocca per un qualunque motivo?

In caso che succeda qualcosa di brutto alla nostra penna usb, fortunatamente ci viene in aiuto questo splendido tool: Photorec. Non bisogna farsi ingannare dal nome, questo simpatico programma è in grado di recuperare dai meandri delle nostre memorie file pdf, documenti word, musica, immagini, video, eseguibili.

Sarà la terza volta che questo tool mi salva alla grande da situazioni altrimenti disperate! Sarà il caso di donare qualcosa?

martedì 6 gennaio 2009

Trust Mouse Optical Wireless in Linux

La mia pigra navigazione sul divano o intense sessioni a Wesnoth sul letto sono da oggi attività più semplici grazie ad un comodo mouse ottico wireless per il portatile acquistato per la befana. Un cavo in meno attorno al notebook è veramente una gran comodità, così come l'alta sensibilità di movimento e la morbidezza data dal sensore ottico.

L'unica attenzione da porre è quella verso il ricevitore USB che sporge (di 2 cm), per cui in caso di movimenti o cuscini appoggiati si potrebbe piegare (certo che uno come quello qua sotto risolverebbe sicuramente questo problema!)

Inserite le batterie (magari ricaricabili, da 1,5V e non da 1,2!) ed infilato il ricevitore USB, il comando dmesg mostra il seguente output:
usb 4-1: new low speed USB device using uhci_hcd and address 2
usb 4-1: configuration #1 chosen from 1 choice
usbcore: registered new interface driver hiddev
input: MLK Trust Mouse 15313 as /devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0/input/input11
input,hiddev96,hidraw0: USB HID v1.10 Mouse [MLK Trust Mouse 15313] on usb-0000:00:1d.3-1
usbcore: registered new interface driver usbhid
/build/buildd/linux-2.6.24/drivers/hid/usbhid/hid-core.c: v2.6:USB HID core driver
Una cosa fastidiosa che salta subito all'occhio è la completa assenza di un bottone dello spegnimento del mouse, per cui il laser rimane accesso anche a pc spento, con conseguente spreco di energia...

La confezione indica che il raggio di applicazione della comunicazione radio è di 8 metri, per cui nell'ottica media center lo si potrebbe usare addirittura come telecomando! Vanno comunque configurati i due bottoni aggiuntivi attivabili col pollice. Prendendo spunto dalla ricerca effettuata in questo vecchio post, verifico se nel frattempo sono state implementate soluzioni migliori.

In effetti è così, come indicato in questo post di ubuntuforums. Ho eseguito le istruzioni fino allo step 5, ma ho avuto difficoltà nel capire quale voce del file di configurazione /etc/X11/imwheel/imwheelrc attiva la funzione indetro e avanti di firefox con i tasti pollice. Per effettuare i test si modificano i file di configurazione e si lancia la riga messa nel file amouse.desktop, tipicamente imwheel -k -b "0 0 0 0 8 9". Alla fine ho creato il mio file ~/.imwheelrc contenente:
".* - Mozilla Firefox"
None,Thumb1,Control_L|KP_Subtract
None,Thumb2,Control_L|KP_Add

Da verificare se il bug di imwheel si ripresenta o meno, visto che nel post sopraindicato pare che sia preso in considerazione nello step 3.

lunedì 5 gennaio 2009

Orthodox file managers

Dal libro dell'ortodossia.

E' dai tempi del dos che faccio uso di un orthodox file manager:
Il problema di mc è che dopo aver usato tanto Total Commander sotto windows, ci si abitua a dei comodi comandi assenti nella controparte sotto linux, come ad esempio:
  • tasto canc per cancellare;
  • rotellina per scrollare l'elemento selezionato;
  • tasto destro per selezionare il file
Un'altro aspetto che imposto sempre in total commander, è il classico sfondo blu, scritte azzurrine, giallo per i selezionati, inverso per gli elementi attivi e font leggibile.

Insomma, ogni tanto mi vien da installare soluzioni alternative, ma con scarsi risultati: sembra che a tutti manca qualcosina, o siano ancora poco maturi, instabili e pieni di bug per un uso avanzato giornaliero.

Da provare:
Tux Commander v. 0.6.50-dev
Premendo invio su un file jpg, mi aspetto che parta un visualizzatore di immagini, invece appare questo dialog:

selezionando l'opzione "Si", viene fuori una schermata che permette di configurare un'applicazione per ciascuna estensione...ma il sistema già conosce queste informazioni...le devo re-inserire per tux commander io a mano? Direi proprio di no. Avanti il prossimo!

BeeSoft Commander v.2.27
Il sito indicato nell'about non è raggiungibile (pessimo segno). Su quest'altro sito che sembra essere ufficiale si legge che ci sono 2 versioni a seconda delle librerie qt usate. Ho trovato questa recensione, su un blog dal titolo interessante. Insomma, questo ofm non permette di visualizzare il contenuto di un pdf nè cliccandoci sopra né con il tasto F3-View. Inoltre la configurabilità è molto bassa, e non mi permette di impostare i colori da me usati solitamente. Neext!

Deco
File manager in console, senza interazione col mouse: scartato!

Gnome Commander
Sarebbe perfetto se non fosse per un maledettissimo bug che affligge le installazioni in italiano che fa crashare clamorosamente l'applicazione tentando di cancellare un file! Che peccato! Il prossimo!

muCommander
Il migliore clone di mc/tc finora! Se non fosse per la lentezza (è scritto in java) non ci sarebbe niente da eccepire! Da usare per un po'!

Ultimate Commander

Non esistono package da installare, ma va compilato a mano. Niente di grave, se non fosse che richiede la suite Mono, il che mi rende molto restio ad installarlo...

wxCommander


Il package di installazione di linux al momento non sembra raggiungibile...

XFE
Problemi con questo commander:
  • non seleziona i file col tasto INS
  • non apre gli archivi
  • non mostra le immagini
  • difficile configurazione dei colori
Il prossimo!

Pygoscelis


This project has not released any files.

Atol

Sembra un progetto vecchio non più supportato...


Conclusioni

Non esiste un buon equivalente di Total Commander sotto linux; l'unico che mi ha convinto di più è stato muCommander, ma mi riservo il giudizio dopo un po' di utilizzo...

Aggiornamento 1
Problemi con muCommander:
- non si possono ridimensionare i campi, il nome lungo di un file viene tagliato
- lentezza generale (es. per cancellare un file)

Aggiornamento 2
Abbiamo risolto il bug che affliggeva la versione italiana di gnome-commander! Mi includo anche io per aver suggerito che si trattava di un problema nella localizzazzione!! bene!! Adesso posso usarlo anche io!! Per adesso bisogna installarsi il file .mo sistemato a mano, ma mi aspetto che il fix venga incluso nella prossima versione!

sabato 3 gennaio 2009

Linux Media Center: i primi passi

Avevo invero acquistato un gioiellino di hard disk multimediale, ma il fatto che non fosse compatibile con la mia TV (dopo un milione di prove è risultata l'unica sulla quale si vedeva in bianco e nero!) e che implementava un terzo delle funzionalità precedentemente elencate mi ha spinto ad assemblare da me un media box. Ho così recuperato un vecchio PC che stava prendendo polvere e l'ho rimesso su; questa è la configurazione Hardware:
  • CPU: AMD k6 III 400MHz
  • RAM: 256 mega
  • Scheda Video: Nvidia Geforce MX 440
  • Scheda Audio: Sound Blaster 16 su slot ISA
  • Scheda Ethernet: una vecchia supportata senza problemi da linux
  • Scheda di aquisizione video Typhoon TV Tuner PCI del '98 (un pezzo vintage)
A prescindere dall'hardware impiegato, i vari passi da seguire per impostare un media box dal punto di vista software sono i seguenti:
  • installare una distribuzione che si conosce e con facilità di configurazione (ho scelto prima debian e poi ubuntu perchè mi trovo bene con apt)
  • impostare un indirizzo IP fisso, comodo per far riferimento sempre allo stesso indirizzo in caso di accesso SSH, VNC, Samba, ecc, modificando il file /etc/network/interfaces:
auto eth0
iface eth0 inet static
address 192.168.0.3
netmask 255.255.255.0
gateway 192.168.0.1
  • impostare un name resolver (DNS), modificando il file /etc/resolv.conf
  • installare un server SSH, per amministrare comodamente il media box dal proprio pc: pacchetto openssh-server (e pacchetto openssh-client sul client);
  • seguire la procedura per l'autologin via SSH, troppo comoda;
  • installare il server VNC: pacchetto x11vnc; si lancia quando serve con il comando x11vnc -display :0
  • installare driver nVidia, per questo vecchio modello bisogna scaricare la versione 96.43.05, e rimuovere il supporto glx da xorg.conf;
  • sistemare una fastidiosa cornicetta blu attorno ai filmati con il comando 'xvattr -a XV_COLORKEY -v 0'
  • attivare l'autologin;
  • attivare il supporto al Network Time Protocol;
  • attivare la soundblaster: è una scheda vecchia e le distribuzioni moderne non la configurano automaticamente: bisogna inserire in /etc/modules la voce 'sb16';
  • rimuovere il gracchiare della scheda audio giocando con i valori del mixer; ho risolto con aumix -L /etc/aumixrc
  • installare la condivisione samba
  • intallare e configurare mldonkey
  • rimuovere paccheti inutili, font, printing (sarebbe interessante avere però una stampante di rete)
  • attivare l'acpi con la stringa acpi=force nella riga che lancia il kernel in /boot/grub/menu.lst
  • entrare direttamente in modo grafico andando a lanciare xinit nel file /etc/event.d/tty1

La ricerca del software da media box mi ha fatto optare prima per Elisa (bello, ma un po' lento), poi per Freevo, leggermente più performante e dotato anche della possibilità di videoregistrare, assente in Elisa.