venerdì 12 giugno 2009

Debian Testing ... file manager predefinito (PCMan e Nautilus)

Come capita spesso usando una versione testing di Debian alle volte le cose cambiano senza che non lo desideriamo, non è certamente una stable e lo sappiamo tutti. In questo caso il problema si è manifestato con il cambio di file manager di default, senza chiedere nulla mi sono ritrovato PCMan al posto del buon vecchio Nautilus.

Ho risolto il problema velocemente, non so se sia la via migliore, ma funziona quindi può essere una buona toppa senza ambire ad altro sia chiaro.

Dopo essersi trasformati misticamente, senza destare sospetti, in root entriamo con passi leggeri nella directory:

cd /usr/share/applications/


A questo punto senza chiedere niente a nessuno facciamo una comoda e saggia copia di backup del file che andremo a modificare:

cp mimeinfo.cache mimeinfo.cache.bck


Ora con il nostro editor di testo preferito, ovviamente VIM, ci verrà in aiuto. Editiamo il file e andiamo a cercare tutte le righe che contengono "pcman", noterete subito che sono delle righe formate da stringhe separate dal carattere ";" e noterete anche che pcman è al primo posto della lista.

Con attenzione adesso basterà semplicemente copiare la stringa fino al nome nautilus escluso e incollarla alla fine della riga, per ognuna di quelle che troverete.

Io ne ho scovate tre e le ho modificate come segue:

  • x-directory/normal=nautilus-folder-handler.desktop;pcmanfm.desktop;pcmanfm-folder-handler.desktop;pcmanfm-find.desktop;
  • inode/directory=nautilus-folder-handler.desktop;kde4-dolphin.desktop;pcmanfm.desktop;pcmanfm-folder-handler.desktop;pcmanfm-find.desktop;
  • x-directory/gnome-default-handler=nautilus-folder-handler.desktop;pcmanfm-folder-handler.desktop;


Una volta eseguite queste operazioni salvate il file (vim: ":x") e andando su Risorse e aprendo la vostra Home ritroverete il buon vecchio Nautilus.

Questo è tutto, più facile a farsi che a dirsi ;)

giovedì 12 marzo 2009

VmWare - Hack VDM Web Access - Come accedere con Iceweasel 3 o Firefox 3

Livello: Ostico

Salve a tutti. ;)

Spesso e volentieri capita di dover accedere a servizi web che supportano solo determinati tipi o versioni di browser. Nella maggior parte dei casi (senza andare a pensare a questioni di marketing o altro) è solo una questione di compatibilità, quindi con altri strumenti diversi da quelli specificati non è possibile far funzionare un bel niente. Alle volte però capita che il suddetto servizio non sia semplicemente stato aggiornato con il passare del tempo quindi le specifiche di compatibilità non considerino nuove versioni dei programmi, come ad esempio Firefox 3 o Iceweasel 3, ma si fermino semplicemente alla seconda versione.

Questo è il caso di VDM Web Access di VmWare, invatti con Linux Debian Lenny o comunque con tutti i sistemi operativi dove si utilizza l'ultima versione del suddetto browser l'accesso non sarebbe consentito perchè la versione non è semplicemente prevista anche se con tutta probabilità funzionerebbe ugualmente.

La soluzione che ho trovato, ma potrebbero essercene altre più comode, è di cambiare le informazioni che il nostro WebAgent comunica al servizio web a cui si connette in modo da camuffarsi in ciò che a noi va bene.

Innanzi tutto per scoprire cosa considera adeguato o meno come browser la nostra pagina di accesso VMware VDM Web Access esegue dei javascript lato client del tipo:

// *** PSO VDM LiveCD ***
var pso_linux = SupportedOS("PSO Linux");
pso_linux.minJVM = '1.5';
pso_linux.browser['Iceweasel 1.5'] = 1;
pso_linux.browser['Iceweasel 2.0'] = 1;

// *** Partly supported Linux configurations ***
var other_linux = SupportedOS("Linux");
other_linux.minJVM = '1.5';
other_linux.browser['Firefox 1.5'] = 1;
other_linux.browser['Firefox 2.0'] = 1;
other_linux.browser['Firefox 3.0'] = 1;
other_linux.browser['Iceweasel 1.5'] = 1;
other_linux.browser['Iceweasel 2.0'] = 1;
A questo punto noi sappiamo esattamente cosa viene controllato al nostro accesso, consentendoci o meno di continuare.

Ora non ci resta che andare a scaricarci questo comodissimo componente di Firefox UserAgentSwitcher e quindi prelevare anche il file xml da importare per non dover compilare tutto a mano user_agent_xml_file . Installiamo il nostro addon, andando nelle opzioni, importiamo il nostro file XML ed editare le informazioni appena importate (Firefox 2 (Windows XP)) modificando le seguenti voci:

User agent: Mozilla/5.0 (Linux; U; Linux i686; en-US; rv:1.8.1) Gecko/20061010 Firefox/2.0
App Version: 5.0 (Linux; en-US)
Platform: Linux
A questo punto salviamo tutto e usciamo.

Rechiamoci di nuovo all'indirizzo web del nostro VMware VDM Web Access server ma prima andando in Strumenti->User Agent Switcher (Preferences->User Agent Switcher) e selezioniamo la voce che abbiamo appena modificato.

Ecco fatto avremo accesso al sistema remoto inserendo le dovute credenziali.

Nota importante: a giugno dovrebbe uscire la nuova versione del prodotto VMWare e quindi la lista di compatibilità dovrebbe preferibilmente allungarsi rendendo questo sistema non più necessario.

lunedì 9 marzo 2009

Creare un semplice server ftp con vsftpd

Livello: Facile.

Ambiente di riferimento: debian lenny
Server ftp usato: vsftpd

L'installazione e la configurazione di base sono quasi banali:
Si installi il server ftp

su
apt-get install vsftpd


A questo punto il sistema è configurato con una directory /home/ftp/ che funge da home per l'utente anonymous.
Nessun altro utente può accedere via ftp.
Se questo è sufficiente abbiamo finito :-)

Se invece si desidera dare accesso ad altri utenti è possibile lavorare sul file di configurazione

vim /etc/vsftpd.conf


Alcune righe interessanti sono le seguenti:

anonymous_enable=YES
Questa se presente (o se commentata dato che il default è YES) permette l'accesso all'utente anonymous, come abbiamo appena visto. Impostare a NO per bloccare l'accesso anonimo.

local_enable=YES
Questa permette agli utenti locali della macchina di accedere via ftp, entrando nella propria home directory.
Nel file di configurazione di default è commentata. Scommentarla per consentire l'accesso non anonimo.
Attenzione: di default (almeno su debian) gli utenti non anonimi hanno possibilità dinavigare in tutto il filesystem con i permessi dell'utente locale.
Per aggiungere un utente basta crearlo nel server con:

adduser gianni

Alcune righe sono interessanti per le impostazioni relative all'upload. Di default sono commentate, e il server risulta in sola lettura. Si consiglia comunque di leggere con attenzione i commenti del file di configurazione prima di utilizzarle.
Abilitandola proma opzione (write_enable=YES) si ottiene che gli utenti non anonimi adispongano dei permessi di scrittura (e modifica, e cancellazione, ...).

# Uncomment this to enable any form of FTP write command.
#write_enable=YES
#
# Default umask for local users is 077. You may wish to change this to 022,
# if your users expect that (022 is used by most other ftpd's)
#local_umask=022
#
# Uncomment this to allow the anonymous FTP user to upload files. This only
# has an effect if the above global write enable is activated. Also, you will
# obviously need to create a directory writable by the FTP user.
#anon_upload_enable=YES


Occhio che questa ultima opzione permette a chiunque di caricare file nella directory dell'accesso anonimo!
Con la seguente invece si modifica l'owner dei file caricati.

#
# If you want, you can arrange for uploaded anonymous files to be owned by
# a different user. Note! Using "root" for uploaded files is not
# recommended!
#chown_uploads=YES
#chown_username=whoever


Le righe che seguono servono a gestire il chroot. Di default sono commentate e gli utenti non anonimi possono navigare in tutto il filesystem. Consiglio caldamente di scommentare chroot_local_users=YES.
L'altra impostazione serve ad indicare una lista di utenti a cui viene fatto il chroot (non possono uscire dalla loro home directory). Attenzione al funzionamento, se la precedente riga vale YES allora questa diventa la lista degli utenti che non subiscono il chroot e possono navigare in tutto il filesystem.

#
# You may restrict local users to their home directories. See the FAQ for
# the possible risks in this before using chroot_local_user or
# chroot_list_enable below.
#chroot_local_user=YES
#
# You may specify an explicit list of local users to chroot() to their home
# directory. If chroot_local_user is YES, then this list becomes a list of
# users to NOT chroot().
#chroot_list_enable=YES
# (default follows)
#chroot_list_file=/etc/vsftpd.chroot_list


Per comprendere meglio le opzioni consigliodi applicarle una alla volta e verificare che si ottenga il risultato desiderato.
Ovviamente ad ogni modifica del file di configurazione si riavvii il demone con il seguente comando:

/etc/init.d/vsftpd restart

Nota: l'autore e il presente Blog declinano ogni responsabilità per danni, accessi illegittimi o perdite di dati. Provare sempre i sistemi su macchine di prova prima di metterli in produzione. Ogni miglioria al presente scritto è ben accetta.

sabato 21 febbraio 2009

Arch Linux: come un vestito su misura

Livello: Avanzato

Approfittando dell'aggioramento delle immagini alla versione 2009.2 di questa distro mi sono deciso a provarla, confesso che era da mesi che ne sentivo parlare, ma non avevo ancora avuto quello spunto per testarla.

Diciamolo subito, mi piace, una distro snella senza inutili fronzoli, veloce nella sua installazione di base e seguendo i suoi chiari e ben strutturati Wiki è stato semplice configurare tutto il resto.

Una delle caratteristiche principali di questa distro è la sua messa appunto attraverso l'editing dei file di configurazione, ben fatti e ben strutturati, come ad esempio rc.conf che gestisce tutta la parte di avvio del sistema operativo. Certo per una persona allergica alla riga di comando certi passaggi possono anche essere fastidiosi e ostici, ma per chi adora avere sotto controllo il proprio sistema ed è affezionato alle schermate di installazione testuali simili a quelle della buon vecchia Debian, sinceramente è un ambiente che ispira e soddisfa.

Interessante anche il sistema di localizzazione del sistema che attraverso il file di configurazione locale.gen e le impostazioni della lingua in rc.conf consente di tradurre tutto nella lingua preferita.

Modificare la localizzazione:
# vi /etc/rc.conf
LOCALE="it_IT.utf8"
HARDWARECLOCK="localtime"
TIMEZONE="Europe/Rome"
KEYMAP="ir"

#vi /etc/locale.gen

Decommentare la riga della lingua scelta e salvare

#locale-gen

che scarica tutti i pacchetti per aggiornare il sistema


La gestione dei demoni costringe l'utente a decidere cosa far partire e non a togliere ciò che è partito, quindi porta l'utente ad informarsi in primis sul cosa serve e poi ad aggiungerlo, nella stessa sintassi in rc.conf è possibile anteponendo al nome del daemon la "@" far partire il processo in modalita "concorrente" velocizzando e ottimizzando l'avvio.

Ma sarete già stanchi di sentirmi parlare quindi vi faccio un'ultimo commento, la comunity mi ha impressionato positivamente, gente preparata, disponibile dove non mi pare di aver visto inutili campanilismi fra distro o discussioni utopiche tipiche di altri paesaggi. Insomma anche questo è un valore aggiunto che non tutte le distro possono vantare.

Insomma una distribuzione che ti permette, per come è stata pensata, di costruire un vestito che si adatta alle esigenze dell'utente nella maniera più aderente senza dover inoltrarsi in compilazioni di pacchetti, risolvere dipendenze e quant'altro. Provatela è il consiglio che posso dare, se poi non vi piace almeno avrete imparato certamente qualcosa di nuovo sul mondo Linux ;)

lunedì 16 febbraio 2009

Organizzazione dei contenuti.

Salve gente, rieccomi per spiegare un concetto strutturale del blog. Da ora in poi gli articoli che usciranno avranno appena sotto il titolo un indicazione sulla difficoltà intrinseca di quanto esposto, valore che non si andrà a basare sulla mia personale esperienza, ma su una media di utenza che io ho incontrato che vanno dalla casalinga al super sistemista a cui non arriverei nemmeno se studiassi una vita intera e oltre. ;)

La scala da me pensata è la seguente:

Tutti - colore arancione - opzione di default se assente
Facile - colore verde - per chi sa accenderlo il pc e conosce la differenze fra "case" e "monitor" ;)
Ostico - colore azzurro - per chi oltre ad accenderlo sa anche andare a configurare alcune cose, non si spaventa davanti al concetto di "pannello di controllo" e magari una volta staccato il pc sa anche ricollegare i cavi e non gli è estraneo nemmeno il concetto di USB, porta seriale, parallela e VGA ( la DVI è facoltativa ;P )
Avanzato - colore blu - Qui è necessario magari lavorare al prompt del dos, alla console linux, editare file di configurazione e saper controllare i permessi dei file.
Esperto - colore viola - Praticamente un sistemista Microsoft o Linux. Argomenti magari non complessi che danno però per scontato molti concetti di base e non.
Sperimentale - colore rosso - Qui appartengono gli studi effettuati su argomenti particolari, gli esperimenti e i test di sicurezza, compatibilità. Un livello dove è necessario comprendere e capire a fondo e magari umilmente chinare il capo e dichiarare un fallimento. :(

(N.B.: la divisione dei livelli non è ancora definitiva, infatti essendo all'inizio del progetto non è stato ancora possibile testare la fattibiità della cosa)

domenica 15 febbraio 2009

Debian 5 - Lenny...


Come primo post vero e proprio potrebbe sembrare un argomento banale davvero, ma come potevo ignorare un simile evento?

Ebbene con soli quattro mesi di ritardo, visti i sei a cui eravamo abituati, ecco arrivare fra di noi la nuova stable di Debian, nome in codice Lenny. Ventidue mesi di sviluppo con nuovi programmatori full-time che si sono aggiunti al team in quest'ultimo hanno reso possibile questo, anche perchè diciamocelo per la portata di un progetto simile non è semplice trovare finanziamenti per portarlo avanti nell'ottica del free software. Ma di questo ne parleremo in un altro post ;)

Cosa dire se non che è un ottima versione? La sto usando da circa un anno e devo dire che non mi ha mai dato problemi nemmeno quando era in testing. Come sempre non è una versione aggiornatissima, ma anche questo non è una novità per chi lo conosce, infatti la sua priorità è la stabilità e la sicurezza a discapito di qualsiasi altra cosa, quindi nelle sue versioni stable i pacchetti disponibili non sono mai stati dell'ultimissima versione.

Novità da segnalare sono intanto l'Xorg 7.3 che riesce a configurarsi in maniera automatica con gran parte dell'hardware in vendita, un miglior supporto per i portatili e per le applicazioni Java. Simpatica cosetta è goplay un simpatico game browser che permette di vedere i vari giochi disponibili con schermate e riferimenti, in modo da rendere più semplice la loro gestione.

Dal lato pratico di installazione, per i server io consiglio una stable, mentre per chi volesse installare Debian sul proprio client non è una cosa azzardata usare direttamente la versione di testing che ora si chiamerà in codice squeeze.

Quindi cos'altro rimane da fare se non un apt ...

Angolo tecnico:
Per eseguire un upgrade della distro basta:
# apt-get update
# apt-get dist-upgrade
A questo punto ricordatevi di controllare il file debian_version sotto etc se tutto è in ordine e nei log se ci sono stati errori rilevanti.

sabato 14 febbraio 2009

Iniziando da zero ...

Salve sparuti lettori che visiterete queste pagine, forse vi siete persi o forse vi perderete, questo non lo so, fatto sta che era da anni che mi chiedevo il perchè la gente apre i blog ed era da anni che le risposte più banali mi venivano in mente.

Ultimamente però mi sono reso conto che banale non è sinonimo di inutile, soprattutto nell'ottica della condivisione delle informazioni, della scoperta, della creatività stessa che ognuno di noi possiede e può donare, insomma un brain sharing ;)

Condivisione, opensource, closedsource, free, linux, windows, microsoft, design web, CSS, HTML, PHP, .NET ecc... sono tutte parole che riempiono i giorni di un professionista del settore o comunque un amante del genere, ma anche di chi usa il computer come strumento per il suo lavoro e che spesso si barcamena fra nomi altisonanti dal banale significato.

Questo blog non vuole essere un punto di riferimento fra i tanti (anche perchè non ne sarei in grado), non vuole essere un qualcosa di originale a tutti i costi, ma vuole perseguire lo scopo di condividere le mie conoscienze al di fuori di preconcetti e schemi che troppo spesso limitano la nostra libertà di capire e di scegliere. Vorrei fare in modo di dare alle parole di uso comune il giusto significato, il giusto peso attraverso una giusta informazione verificata e testata, non dimenticando mai che una cosa se si è compresa veramente si è in grado di spiegarla anche in modo semplice e banale.

Bè, che dire, se mi dovessi sbagliare o se dovessi commettere errori c'è sempre il lettore che potrà correggermi ed aiutarmi no? ;)