Feeds:
Articoli
Commenti

Per chi usa con una certa frequenza il terminale o vuole eseguire certe operazioni da terminale con maggiore dimestichezza e più velocemente, ho buttato giù una selezione (non esaustiva) di alcune scorciatoie da tastiera che mi auguro possano risultare utili:

  • Ctrl + b muove in cursore indietro di un posto
  • Ctrl + f muove il cursore avanti di un posto
  • Alt + b muove il cursore all’inizio della parola corrente
  • Alt + f muove il cursore alla fine della parola corrente
  • Ctrl + a muove il cursore all’inizio della riga corrente
  • Ctrl + e muove il cursore alla fine della riga corrente
  • Ctrl + l pulisce lo schermo dai precedenti comandi e relativi output e ritorna il prompt corrente
  • Ctrl + c termina il comando in esecuzione. Più esattamente genera un SIGINT (signal interrupt)
  • Ctrl + z sospende o stoppa il comando in esecuzione. Più esattamente genera un SIGTSTP (terminal stop signal)
  • Ctrl + \ termina il comando in esecuzione. Più esattamente genera un SIGQUIT (quit)
  • Ctrl + d cancella il carattere su cui il cursore è posizionato
  • Ctrl + h cancella il carattere che precede il cursore
  • Alt + d cancella la parola su cui il cursore è posizionato
  • Ctrl + u cancella tutti i caratteri che precedono il cursore
  • Ctrl + k cancella il carattere su cui il cursore è posizionato e tutti quelli che lo seguono
  • Ctrl +r esegue una ricerca nella history dei comandi precedentemente utilizzati
  • Alt + t scambia l’ordine delle due parole che precedono il cursore

Vorrei usare questo blog per dare spazio ad una lodevole iniziativa. Riporto dal sito http://www.liberasw.org/:

Tranne poche eccezioni, chi compra un PC deve PRIMA comprarlo con Windows preinstallato, e POI rinunciare al suo uso e ottenere il rimborso della licenza, se vuole rimuoverlo. Non dovrebbe essere questa la procedura. Dovrebbe SEMPRE essere possibile PRIMA scegliere un computer e POI scegliere quale sistema operativo pre-installare in esso, o scegliere di non pre-installarne nessuno.
Il problema del sistema operativo può essere esteso a tutto l’ambito del software. È comune trovare preinstallati sui PC, in particolare sui notebook, Microsoft Office o parti di esso, e l’eventuale rimborso della licenza di Windows dovrebbe includere anche la licenza di Office, che di solito costa molto di più. Non sappiamo se questo avvenga, però.
Tutto questo non ha giustificazione. Non esiste solo Windows come sistema operativo per PC: esistono molte alternative, anche con licenze d’uso gratuite e/o aperte, come GNU/Linux e FreeBSD. Non esiste solo Office, ma anche ad esempio OpenOffice, anch’esso dotato di licenza d’uso gratuita e aperta. Perché vincolare, di fatto, l’utente del PC ad una scelta obbligata sul software del SUO computer, se esistono alternative?
Da questo ragionamento parte questa iniziativa, lanciata da Renzo Davoli, professore associato presso il Dipartimento di Scienze dell’Informazione dell’Università di Bologna. Egli ha formulato una proposta di liberalizzazione del software, indirizzata al ministro Bersani e mirante ad ottenere questa libertà nell’uso del software sul proprio computer. Ha anche lanciato una petizione per sostenere la proposta.

Potete (e dovreste) firmare la petizione on line al seguente indirizzo:

http://www.petitiononline.com/liberasw/petition.html

Cercando di passare da Ubuntu 7.04 a Ubuntu 7.10 sono incappato in un problema, in realtà di facile soluzione. Proprio all’inizio del processo di upgrade ottenevo un messaggio di errore simile al seguente:

Failed to fetch http://medibuntu.sos-sts.com/repo/dists/feisty/non-free/binary-i386/Packages.gz 302 Found
Failed to fetch http://medibuntu.sos-sts.com/repo/dists/feisty/free/source/Sources.gz 302 Found
Failed to fetch http://medibuntu.sos-sts.com/repo/dists/feisty/non-free/source/Sources.gz 302 Found

La soluzione piuttosto semplice consiste nel deselezionare i repository

http://medibuntu.sos-sts.com/repo/

dalla lista delle fonti. Dal menù System:

System -> Administration -> Software Sources

Selezionare la Third-Party Software e deselezionare le due fonti come nello screenshot di seguito.

sources

e cliccare su “close”. Spero questo possa aiutare qualcuno.

Cerco d’immaginarmi un utente alle prime armi che compra un computer, magari cercando consiglio da qualche amico più o meno esperto in materia e cercando di destreggiarsi tra la velocità del processore, i giga dell’hard disk e i mega della RAM. Poi accende il nuovo acquisto e compare una schemata colorata e magari una musichetta. Con l’uso e un po’ di pazienza arriva a capirci un pochettino di più e ad utilizzalo con soddisfazione (utilizzo che in alcuni casi non va molto al di là dello scrivere un documento di testo o navigare in internet). Poi magari succede qualche piccolo inghippo e chiama qualcuno che ne sa un pochettino di più e che si spera possa risolvere i problemi dall’alto della sua sapienza.
Mi è capitato a volte di ritrovarmi a ricoprire questi panni dell’amico esperto chiamato a sistemare le cose. In queste situazioni ero solito partire con una domanda a mio avviso abbastanza basilare: “Quale sistema operativo usi?”. Non intendevo tanto sapere se si stesse parlando di Mac, Linux o Windows ma, dando per scontato la cosa, con quale versione di Windows si avesse a che fare. Dai silenzi perplessi che a volte facevano seguito alla domanda mi sono fatto un idea tutta mia: per molti (ma non per tutti) in computer rimane una sorta di scatola misteriosa che si accende e ti permette di fare alcune cose. In alcuni casi estremi non esiste neanche la consapevolezza di una distinzione tra l’hardware e il sistema operativo che ci gira sopra. È come se il computer fosse una cosa sola un po’ come una televisione. Non sono e non vogliono essere considerazione venate di saccenteria: nessuno nasce imparato e tutti siamo passati per questa strada. Il punto è un altro: come lo spieghereste che cos’è Linux a una persona che si trovi ad un livello di alfabetizzazione informatica così rudimentale? Le miglior risposta che ho trovato in rete è un video reperibile al seguente indirizzo:

http://www.biasco.ch/videoblog/vbp4/index.html

Veramente ben fatto. Disporre di un video, simile in stile e intenzioni, a proposito dell’installazione di una distribuzione maggiore sarebbe la manna dal cielo.

Mentre il mio Firefox è in grado tranquillamente di riprodurre animazioni Flash, Opera sembra non volerne sapere chiedendomi tutte le volte di installare il mancante plug-in. Il problema è che il plug-in Acrobat in questione sembra esser studiato per Firefox assumendo che su ogni distribuzione Linux giri questo browser e ignorando l’esistenza di alternative (Opera compreso). La seguente procedura ha risolto il problema. Si parte con un download di Flash Player 9 da qui. Non utilizzando una derivata Red Hat o Suse, ho scaricato il file in fornmato tar.gz. Una volta scompattato, trovate dentro uno script chiamato flashplayer-installer. Apritelo con un normale editor di testo (gedit per esempio) e sostituite tutte le occorrenze della parola ‘mozilla’ con ‘opera’. La sostituzione va fatta in maniera case sensitive. Vale a dire: la differenza tra minuscole e maiuscole fa differenza. Chiudete, salvate ed eseguite lo script:

./flashplayer-installer

e ora doverste essere capaci di apprezzare animazioni o filmati in flash anche con Opera.
Questo ovviamente non è l’unico metodo ma mi ha sorpreso per la sua immediatezza.

XDVDShrink è un programma scritto in BASH and Perl-Gtk2 per convertire dvd in formato DVD9 (dvd a doppio strato -dual-layer dalla capacità di 8.5G) in più comuni ed economici DVD5 (dvd a strato singolo – single-layer dalla capacità di 4.7G): in sostanza si propone di assolvere gli stessi compiti affidati al quasi omonimo DVDShrink in ambiente Windows. XDVDShrink funziona sia da terminale a riga di comando che tramite una semplice e spartana interfaccia grafica. Per installarlo, prima di tutto, bisogna scaricare il programma da qua. Ci sono diversi packages, scegliete

dvdshrink-2.6.1-10mdk.tar.gz

Terminato il download copiate il file sotto la directory /opt (o un’altra directory di vostra scelta) e scompattate il file. Da terminale:

tar -zxvf dvdshrink-2.6.1-10mdk.tar.gz

o semplicemente facendo doppio click sul file e estraendo il contenuto tramite Archive Manager. In entrambi i casi vi dovreste trovare con una cartella dal nome dvdshrink. Prima di procedere occorre installare tutte le dipendenze richieste dal programma.
Attraverso Synaptic (System -> Administration -> Synaptic Manager) cercate per nome i seguenti pacchetti e, se non già presenti sul vostro sistema, provvedete all’installazione:

  • Transcode
  • SubtitleRipper
  • Dvdauthor
  • libgtk2-perl

Se preferite a Synaptic la via da terminale:


sudo apt-get install transcode
sudo apt-get install subtitleripper
sudo apt-get install dvdauthor
sudo apt-get install libgtk2-perl

Adesso spostatevi all’interno della directory dvdshrink

cd /opt/dvdshrink

dove dovreste trovare lo script install.sh ed eseguirlo:

sudo ./install.sh

Terminata l’installazione potete avviare l’interfaccia grafica di XDVDShrink dando da terminale il comando:

xdvdshrink.pl

ovviamente potete sempre semplificarvi la vita aggiungendo il programma alla barra delle applicazioni attraverso la creazione di un apposito launcher. Per usare XDVDShrink da terminale, con riga di comando e senza interfaccia grafica, date il comando:

dvdshrink

La pocedura d’installazione è stata testata su Ubuntu 7.04 Feisty Fawn ma a parte la sezione sulle dipendenze, si dovrebbe adattare a qualsiasi distribuzione Linux.

tomcat

Tomcat è un servlet container o in parole semplici è un server su cui è possibile far girare Servlet e JSP che sono alcune delle tecnologie Java (J2EE) più utilizzate nella programmazione web. Alcune cose utili da sapere prima di procedere con l’installazione:

  • Tomcat è free, open source ed è scritto in Java per cui è anche multipiattaforma
  • Essendo scritto in Java dovete avere Java installato. Vedere qui per come fare
  • tecnologie come EJB, JMS, ecc. richiedono per l’appunto un EJB container: vale a dire non potete far girare EJB su Tomcat.
  • Tomcat può anche servire normali pagine statiche HTML ma a questo scopo e per usi professionali si tende ad utilizzare Apache. In ambito aziendale Tomcat trova spesso il suo impiego “dietro” un server Apache che si occupa di servire i contenuti statici e demanda a Tomcat il compito di servire pagine dinamiche.

Su Ubuntu Tomcat è disponibile nei repository ufficiali nella versione 5.5 ed è facilmente inspallabile attraverso Synaptic (System -> Administration -> Synaptic Manager) o se preferite da terminale:

sudo apt-get install tomcat5

Tuttavia la versione nel repository non è la più aggiornata. Sul sito è disponibile la versione 6 che al di là degli ovvi bug fixing supporta una versione più aggiornata della specifiche Servlet e JSP di Sun.

Brevemente:

  • Tomcat 6.0.x supporta le specifice Servlet 2.5 e le specifiche JSP 2.1
  • Tomcat 5.5.x supporta le specifice Servlet 2.4 e le specifiche JSP 2.0
  • Tomcat 4.1.x supporta le specifice Servlet 2.3 e le specifiche JSP 1.2
  • Tomcat 3.3.x supporta le specifice Servlet 2.2 e le specifiche JSP 1.1

Ne consegue che se volete installare la versione più aggiornata o una datata, dovrete installare Tomcat a mano (il che è veramente semplice)

La seguente procedura è testata su Tomcat 6.0.14 e Ubuntu 7.04 con java settato come in uno dei miei precedenti post ma sarei veramente sorpreso se non si adattasse alle altre principali distribuzioni Linux e alle altre versioni di Tomcat. Iniziamo con lo scaricare Tomcat da qua per la versione 6 oppure scegliete un’altra versione da qua. Selezionate il file tar.gz sotto “Core” sotto “Binary Distributions” a fate il download.
Scaricato il file spostatelo sotto /opt o in un’altra directory di vostra scelta e scompattatelo. Vi ritroverete con una directory dal probabile nome di apache-tomcat-6.0.14 e potete anche rimuovere il file .tar.gz. Di fatto l’installazione è terminata. Per usare il server appena installato vi potrebbero far comodo le seguenti basilari informazioni.

  • Avvio e shutdown del server: potete avviare e stoppare tomcat attraverso due script che trovate nella directory bin. Da terminale eseguite:

    /opt/apache-tomcat-6.0.14/bin/startup.sh (per avviare il server)

    /opt/apache-tomcat-6.0.14/bin/shutdown.sh (per stoppare il server)

    Ora dipende dai vostri gusti ma se volete semplificarvi la vita ed evitare ogni volta di digitare tutta la stringa potete aggiungere al $PATH anche la directory di Tomcat (vedi env_vars nel post su Java) o creare un link e metterlo in una delle directory già nel $PATH (per vederlo: echo $PATH) o creare un launcher sulla barra delle applicazioni, ecc.

  • Log del server: per qualsiasi problema il primo posto dove guardare è il log del sistema che si troverà in questo esempio in:

    /opt/apache-tomcat-6.0.14/logs/catalina.out

    Se è molto lungo potete utilizzare da terminale:

    tail -500 /opt/apache-tomcat-6.0.14/logs/catalina.out

    che stamperà a video solo le ultime 500 righe del file.

  • Configurazione: non dovreste avere bisogno di cambiare niente dei settaggi di default, almeno per una configurazione standard. In ogni caso il comportamento del server è regolato attraverso una serie di file presenti sotto la cartella /opt/apache-tomcat-6.0.14/conf e principalmente il file server.xml dove tra le altre cose è definita la porta di default su cui il server si pone in ascolto (8080) e altre opzioni avanzate (cluster, connectors, ecc.)
  • Amministrazione se il server è stato avviato senza intoppi (ed è stato installato in locale come si suppone in questo esempio) potete inserire in un browser in seguente indirizzo:

    http://127.0.0.1:8080/

    e vi apparirà la schermata di amministrazione del server. Le finzioni sotto administration richiedono il login quindi prima dovete creare uno user. Aprite il file/opt/apache-tomcat-6.0.14/conf/tomcat-users.xml e aggiungete le seguenti due righe:


    <role rolename="manager"/>
    <user username="manager" password="password" roles="manager"/>

    in modo che il file finale assomigli a qualcosa di questo tipo:


    <?xml version='1.0' encoding='utf-8'?>
    <tomcat-users>
    .
    .
    <role rolename="manager"/>
    <user username="manager" password="password" roles="manager"/>
    </tomcat-users>

    Riavviate il server e ora dovreste essere capaci di accedere a “Tomcat Manager” con le credenziali appena create. Da questa sezione di amministrazione potrete poi controllare le java web applications attive sul sistema, deployarle, aggiungerne di nuove attraverso l’upload di un file .war e tante altre belle cose ancora.

  • Monitoraggio: per monitorare il server potete sempre usare i seguenti due comandi da terminale:

    ps -ef | grep tomcat

    per controllare se Tomcat è tra i processi attivi sul vostro pc oppure:

    sudo nmap -sS 127.0.0.1

    per controllare le porte aperte sul vostro computer e il particolare quella su cui Tomcat è in ascolto. Tenete presente che nmap potrebbe non essere installato sul vostro sistema.
    Questi basilari comandi vi aiutano anche in un primo troubleshooting. Se per esempio il server non parte e controllando catalina log vedete qualcosa del tipo:


    LifecycleException: service.getName(): "Catalina"; Protocol handler start failed: java.net.BindException: Address already in use:8080

    vuol dire che la porta 8080 è già occupata da un altro processo, forse una precedente istanza di tomcat che non è stata propriamente stoppata (ve lo potrebbe dire ps -ef) oppure c’è un qualche altro programma in ascolto su quella porta (ve lo potrebbe dire nmap).