Basi di shell per usare la Fonera

13 commenti

Già da qualche giorno stavo pensando a chi desidera smanettare con la Fonera ma non è abituato alla shell, vuoi perché usa Windows, vuoi perché non gli/le piace.

La Fonera

In questa micro-guida spiegherò l’uso dei comandi di base da utilizzare nella Fonera, validi comunque in qualsiasi altra macchina *nix.

cd
Cambia la cartella di lavoro.

cd /etc/config

Adesso siamo nella cartella /etc/config

pwd
Visualizza la cartella corrente, e non ha bisogno di altre opzioni.

cp
Copia un file/cartella in un’altra cartella.

cp script.sh /la/mia/cartella

In questo modo si copia il file script.sh presente nella cartella corrente in /la/mia/cartella.

mv
Sposta un file/cartella in un’altra cartella. La sintassi è la stessa di cp, e serve anche a rinominare un file.

mv file.sh nuovonome.sh

rm
Cancella un file.

rm file-che-non-serve

Da questo momento, file-che-non-serve ci ha lasciato :D
Se utilizzato con le opzioni -rf permette di eliminare una cartella e tutto il suo contenuto. Usalo con attenzione!

rm -rf miacartella

mkdir
Crea una cartella

mkdir nuovacartella

Se utilizzato con l’opzione -p, è possibile creare cartelle nidificate in un colpo solo:

mkdir -p cartella/cartella_interna/cartella_piu_interna

In questo modo verrà creata la cartella “cartella”, con “cartella_interna” al suo interno, la quale a sua volta conterrà “cartella_piu_interna”.

vi
Modifica un file

vi file_da_modificare

Con questo comando potremo editare file_da_modificare. Vi è un editor di testo, e non è particolarmente amichevole per i neofiti. Innanzitutto, una volta aperto il file, è possibile solo scorrerlo, per modificare qualcosa è necessario premere il tasto I e fare i cambiamenti voluti, quindi premere Esc per uscire dalla modalità modifica. Mi raccomando, per cancellare usate sempre Backspace, non Canc! Per salvare e uscire bisogna digitare (senza virgolette) “:wq”, per salvare e basta “:w”, per uscire senza salvare “:q!”.

LucaLux giustamente suggerisce anche “dd” (senza virgolette), che va inserito in modalità non-editing e cancella la riga corrente, e che per “commentare”, cioè disabilitare una riga di codice è sufficiente mettere un # al suo inizio.

wget
Scarica un file da Internet.

wget http://lublog.tuttoeniente.net/file-interessante.txt

In questo modo ci ritroveremo file-interessante nella cartella corrente. Per scaricarlo altrove (o con un altro nome) è sufficiente usare l’opzione -O

wget -O /tmp/file-scaricato http://lublog.tuttoeniente.net/file-interessante.txt

Così scaricheremo il file in /tmp/file-scaricato, prelevandolo dall’indirizzo indicato.

tar
Ci permette di gestire i file compressi. Per semplicità, parlerò solo dei file tar.gz (cioè compressi con Gzip).
Per estrarre un file si usa questo comando:

tar xzf file-da-decomprimere.tar.gz

Ora file-da-decomprimere.tar.gz è stato decompresso nella cartella corrente.
È anche possibile comprimere sia singoli file:

tar czf archivio-da-creare.tar.gz file-da-inserire

che intere cartelle con il loro conentuto

tar czf archivio-da-creare.tar.gz /cartella/da/inserire

uptime
Visualizza il tempo per il quale la macchina (la Fonera nel nostro caso) è stata “up”, cioè accesa.

Questa piccola panoramica si conclude qui, chi volesse suggerire qualche altro comando da recensire lasci pure un commento.

13 commenti a “Basi di shell per usare la Fonera”

  1. #1 LucaLux dice:

    Grazie delle informazioni. Io “a tentativi” ho sperimentato iwconfig, iwlist (dopo averlo visto in “Cercare le reti a portata”) e ifconfig.

    Mi sono lanciato in una modifica a /etc/firewall.user che a me sembrava banale, ma penso di essere l’unico ad averne avuto la necessità. Mi avevano dato una soluzione anche sul forum ufficiale di freewlan, ma non sono riuscito a inserirla, o meglio sono rimasto “chiuso fuori” dalla Fonera sia via webinterface che in SSH…solito reset forzato, ricaricato il firmware originale da Fon e reinserito il freewlan (fortuna che almeno mi ero salvato la configurazione).
    Il mio problema era che, dato che non ho sempre in uso il pc portatile (leggi il wifi) e comunque “smanetto” con la Fonera, per accedervi via ethernet l’unico sistema è impostare 169.254.255.2 sul pc e 169.254.255.1 come indirizzo della webinterface. Il problema consiste nel fatto che così resto fuori dalla mia LAN cablata (del tipo 192.168.0.x impostate con DHCP dal router) e non posso navigare sul web (così come non funzionano tutti i programmi che si basano su internet: posta elettronica e…facile immaginare). Mi ero fatto 2 bat per abilitare e reimpostare i 2 “stati” della scheda di rete, ma era comunque una seccatura.
    L’unica soluzione “sperimentale” che ho trovato è stata questa (che per ora funziona anche se mi sa tanto di aver solo avuto fortuna).

    Nel file /etc/firewall.user ad un certo punto c’è “$webif” e poche righe sotto questa

    iptables -I input_rule -s 169.254.0.0/16 -p tcp –dport 80 -j ACCEPT

    io ho aggiunto come riga successiva

    iptables -I input_rule -s 192.168.0.2/3 -p tcp –dport 80 -j ACCEPT

    così, immagino, accetta anche le connessioni da indirizzi 192.168.0.2-? (forse da 2 a 2+3?)
    Comunque adesso dal pc 192.168.0.5 accedo senza problemi all’interfaccia della Fonera su 192.168.0.4.
    Continua a funzionare anche col vecchio sistema e in SSH (con putty) posso accedere SOLO col vecchio sistema, ma la Diagnostica sopperisce abbastanza bene.
    Magari a qualcuno può essere utile, dato che io non ho trovato altre soluzioni…