Posts tagged ‘linux’

Tip: ricerca all’interno di pagine “man”

Piccolo tip per la ricerca di testo all’interno di pagine di manuale (le famose pagine di manuale richiamabili con “man“, che vengono purtroppo snobbate dai newbie impazienti con il conseguente proliferare di richieste di aiuto facilmente risolvibili).

Consideriamolo un tip per newbie.

E’ sufficiente premere “/” e scrivere (apparirà a fondo pagina) il testo da ricercare, seguito da invio.

Per passare al match successivo si preme “n” e per passare al precedente “N” (shift-n).

Esattamente come in vim.

Alice Gate 2 Plus Wi-Fi trasformato in Router gprs/3g

Tra i miliardi di aggeggi che tengo da parte (brutto vizio) avevo anche un router Alice Gate 2 Plus Wi-Fi (nell’ambiente è noto anche come AGA).

Un bel giorno mi è venuta l’idea di trasformarlo in router 3G: considerato che quel router dispone una porta usb host avevo progettato di installarci openwrt, collegarci una chiavetta usb 3g e condividere la connessione bellamente in wifi.

Il primo ostacolo è stato proprio openwrt. Ho flashato un’immagine generica per l’architettura dell’AGA (bcm63xx), ma non sono riuscito a farlo partire (complice anche il fatto che non mi sono costruito l’interfaccia seriale e quindi non avevo possibilità di vedere i messaggi di boot del kernel).

A quel punto ho deciso di intraprendere una seconda strada.
Grazie a dei volenterosi del forum http://www.ilpuntotecnicoeadsl.com sono disponibili dei firmware modificati per l’AGA. La cosa interessante è che oltre alle immagini da flashare ci sono anche i sorgenti.

Ho scaricato i sorgenti di roleo e con un po’ di pazienza ho cercato di capire come funzionasse il tutto.

Grazie ad alcune dritte sul suddetto forum ho preparato un custom firmware con al suo interno quanto mi bastava per effettuare la connessione internet con la chiavetta e condividerla.

Ora mi trovo al punto in cui il sistema funziona e mi piacerebbe condividere quello che ho fatto con la comunità.
Peccato che mi manchi il tempo (e un po’ la voglia) di rifinire il lavoro, visto che attualmente è poco più di un proof-of-concept, ritagliato su misura per la mia chiavetta (huawei e220) e il mio operatore (tim-vodafone).

uprecords: chi ce l’ha più lungo?

Non ci si può fregiare del titolo di Pinguino Cantinaro (o, più brevemente di Linaro) se non si ha un serverino in casa.

Il serverino è spesso frutto di saccheggio di vecchi pc dismessi dagli amici o dai parenti. Un piccolo Frankenstein al quale, grazie a Tux, ci vantiamo orgogliosamente di aver dato vita.

Chi ha la fortuna di disporre di una soffitta o di una mansarda infila la sua creatura in qualche suo angolo sperduto; i meno fortunati lo nascondono nell’armadio.

Ma in entrambi i casi, l’obiettivo è sempre quello: uptime. Il serverino deve restare accesso sempre.
Scorribande di processi devono essere libere di pascolare ininterrottamente: apache, mysql, vsftpd, ssh, samba, cups, mldonkey, amule, rtorrent.

Non è quindi un caso il riempirsi di orgoglio non appena l’uptime del proprio sistema segna un nuovo record.
Oggi voglio segnalarvi uptimed, il demone che non può mancare sul vostro serverino.

Il suo scopo è semplice: monitorizza l’uptime del sistema e crea delle statistiche (con tanto di classifica degli uptimes).

I dati raccolti sono richiamabili da terminale lanciando:

uprecords

Ottenendo un output del genere:
esempio di output di uprecords

Il bug della luminosità su Eeepc

Utilizzando un eeepc 1015pd ho riscontrato un bug (in linux) nella gestione della retroilluminazione del display lcd.

Accade in certi casi che la luminosità massima del display sia più bassa di quanto dovrebbe essere.

Ad esempio, se si abbassa la luminosità al minimo e si riavvia il sistema, non sarà possibile riportare la luminosità al suo livello massimo.

La regolazione dei vari livelli di luminosità funziona, ma tutti i livelli sono traslati verso luminosità più basse del normale.

E’ possibile aggirare questo bug (in attesa di un probabile fix nel kernel) usando il comando:

setpci -s 00:02.0 f4.b=ff

Per rendere definitivo il fix, occorre eseguirlo ad ogni boot (inserendolo ad esempio in /etc/rc.local).

Serie TV in ordine con tvnamer

Si sa che le serie tv sono molto geek chic.
E si sa anche che le migliori e più recenti serie vanno in onda per prime negli States.
Il geek medio usa quindi abbeverarsi dal torrente e si trova con una sfilza di file avi, rinominati più o meno ad arte.

tvnamer è un semplice programma da linea di comando utilissimo per rinominare in modo consistente i file degli episodi delle serie tv.

Si appoggia al database di theTVDB.com e grazie a delle potenti espressioni regolari, riconosce serie, episodio e titolo a partire dal nome del file avi. Infine, rinomina il file secondo uno schema predefinito.

tvnamer si trova in AUR o su google per i non arcieri.

Tunnel con SSH

SSH non è soltanto un protocollo per stabilire sessioni remote sicure.

Esiste una tecnica, chiamata ssh tunneling che può rivelarsi molto utile.

A cosa serve

Immaginiamo questo scenario: ci sono due macchine (lan1 e lan2) all’interno di una rete locale, magari proprio la lan di casa vostra.

lan1 è dotato di server ssh ed è raggiungibile dall’esterno (supponiamo quindi che il router della rete locale abbia già definite le regole per il port forwarding).

lan2 al contrario non è raggiungibile dall’esterno  (e probabilmente non ha nemmeno un server ssh attivo). Su di esso però è in esecuzione un servizio aperto alla rete locale (ad esempio un web server).

La sfida che ci si propone di risolvere è:  data la macchina client situata al di fuori della rete lan, come ci si può connettere al servizio offerto da lan2?

Ssh tunneling

Grazie ad ssh è possibile stabilire una connessione tra client e lan1, e veicolare all’interno di questa connessione (ecco il motivo del nome “tunnel”) un qualsiasi traffico TCP.

Per stabilire il tunnel si utilizza su client1 un comando del genere:

ssh <ip pubblico lan> -L <porta locale>:<ip privato lan2>:<porta lan2>

Una volta autenticati su lan1, tutte le connessioni che si faranno da client1 verso localhost:<porta locale> verranno instradate tramite ssh a lan1 e infine alla porta su lan2.

lan1 diventa quindi il nostro ponte (o meglio, tunnel) verso lan2.

Fintanto che la sessione ssh rimarrà attiva si potrà usufruire del tunnel.

E’ bene notare un piacevole effetto collaterale dovuto all’uso di ssh: i dati, fino a lan1, viaggiano in modo sicuro grazie agli algoritmi di cifratura di ssh.