mercoledì 22 agosto 2012

Linux non si avvia!

Linux è un sistema robusto ma un "disturbo" hardware comunque può mettere in crisi il SO.
Il mio caso è quello di un HD che funziona male. Nonostante gli avvisi dello SMART mi accanisco a non cambiare il disco e quindi mi è accaduto che un bel giorno mi è apparsa la seguente schermata che mi ha ricordato i tempi di windows.

il sistema ti avverte che il sistema ha il filesystem con problemi e ti chiede di metterli a posto perchè c'è bisogno della supervisione dell'operatore per cancellare e riparare parti di file. Il sistema apre una shell di riparazione "(repair filesystem) 1 #" e aspetta comandi. Comunque se si vuole soprassedere si digita "exit" e fedora prova comunque a fare il BOOT. Nel mio caso il boot va e quindi il problema è abbastanza circoscritto.
Comunque, se si vuole mettere a posto il filesystem
dopo vari tentativi ho trovato il comando giusto
"fsck.ext4 /dev/root"
il sistema mette a posto tutto e sembra che tutto sia tornato normale.
Alla Prossima e evviva fedora!

giovedì 2 agosto 2012

virtualizzare... da remoto!

Aggiornamento4: da fedora18 in poi
http://niranjanmr.wordpress.com/2013/03/20/auth-libvirt-using-polkit-in-fedora-18/

Aggiornamento3: finalmente! Bisogna avviare il servizio ssh sul server fedora che ospita le macchine virtuali: leggendo il blog di darchino.ch bisogna fare tre semplici passi:
1. Installare il pacchetto openssh-server (da root digitare: "yum install openssh-server")
2. Attivare la porta ssh (usando il programma firewall, per farlo partire da terminale digitate "system-config-firewall") mettete quindi la spunta alla porta 22 protocollo tcp
3. Attivare il server ssh sul proprio computer (sempre da root digitare "/sbin/service sshd start")
a questo punto si avvia il demone libvirtd con
libvirtd -d e quindi finalmente parte la connessione sul client
Ora ci sono 2 piccole noie da superare: la connessione o la potenza di calcolo del client sembrano troppo lenti per rendere scorrevole l'utilizzo della macchina virtuale. Teamviewer regola la qualità ottimizzando l'usabilità. Con virtual manager non è possibile. Però rimane la comodità di accendere o spegnere una macchina virtuale da remoto

Aggiornamento2: non riuscivo ad avviare il demone di libvirtd, ecco cosa succede
"# libvirtd -d
libvirtd: errore: Unable to obtain pidfile. Controllare /var/log/messages o eseguire senza --daemon per maggiori dettagli."
Sembrerebbe che il file è occupato da qualche altro applicativo come virtual manager ma invece scopro che non devo usare i privilegi di root per avviarlo.

Aggiornamento1:  http://linux.die.net/man/8/libvirtd

l'idea è questa: hai una macchina potente (server) dove puoi far girare qualche SO virtualizzato senza che l'operatore soffra problemi di appesantimento. Poi hai uno scassone tipo pentium 3 che riesci a far girare con qualche distro light di linux. Il bello sarebbe che lo scassone possa accedere al server e accendersi la macchina virtuale e quindi poter usare Microsoft XP o 7 senza hardware dedicato.
Come si fà?
Incominciamo a dire che server e client devono stare in una LAN
Seconda cosa, devono usare Virtual Machine Manager (VMM): una applicazione sviluppata da redHat
"The application logic is written in Python, while the UI is constructed with Glade and GTK+."
che funziona abbastanza bene sotto fedora
L'applicazione si basa su libvirt e può creare e gestire macchine QEMU, KVM o XEN.
Io ho installato un windows XP su piattaforma QEMU e funziona molto bene, molto meglio di virtualbox (si blocca e fa crashare anche il DE) o vmware (non si installa in fedora).
Insomma installi VMM sul server, ti installi una o più macchine virtuali e hai una console che ti permette di gestirle (accendi, spegni, controlli le risorse in uso). La cosa simpatica è che se chiudi la finestra della macchina e anche la console di VMM la macchina continua ad essere residente in memoria e disponibile a future interrogazioni.
A questo punto installi la console di VMM sul client scassone e quello che ti rimane da fare è un collegamento tramite prot ssh al libvirt-deamon del server per poter gestire da remoto le macchine virtuali come se stessi sul server.
Qui però le cose si fanno difficili, bisogna passare alla riga di comando ed impostare alcuni file di configurazione...
Avendo Fedora17 ho seguito le seguenti istruzioni
http://wiki.libvirt.org/page/SSHSetup
che poi ti deviano sulla seguente pagina
http://wiki.libvirt.org/page/SSHPolicyKitSetup

praticamente bisogna scrivere un file con estensione .pkla
un esempio è quello che ho scritto io che permette all'utente ettore di accedere alla libvirt

[Remote libvirt SSH access]
Identity=unix-user:ettore
Action=org.libvirt.unix.manage
ResultAny=yes
ResultInactive=yes
ResultActive=yes

Leggi gli aggiornamenti ad inizio pagina...