Se siamo in possesso di una board Raspberry Pi, dobbiamo conoscere i comandi più utili per sfruttarne l’intero potenziale!

Questi comandi sono per la distribuzione Raspbian, Debian Linux adattato per Raspberry Pi, motivo per cui molti comandi potrebbero risultare familiari. Per comando si intende un’istruzione eseguibile da terminale. Molti comandi necessiterebbero di una spiegazione approfondita, ma noi ci limitiamo ad elencarli e a spiegarne la funzione principale, abbinata chiaramente ad un utilizzo sul RPi.

Comandi base

touch file.txt: semplicemente crea un file nella cartella corrente, se già esiste invece provvederà a modificarne la data di modifica.
rm file.txt: Elimina il file passato come parametro, presente nella cartella corrente, salvo venga specificato il percorso.
mkdir cartella: Crea una nuova cartella nella posizione corrente.
rmdir cartella: Cancella la cartella.
df -h: Informazioni sui dischi montati. Spazio residuo in percentuale etc.
ls -l: Informazioni sui file della directory corrente, con permessi e proprietari.
ls -al: Info sui file, anche nascosti.
sudo -s: Otteniamo i privilegi di root.
cp file /percorso/file: Copia un file o una cartella in un determinato percorso.
top: Mostra i processi in esecuzione e le rispettive risorse in uso.
watch -n 3 -d : Esegue comando ad un certo intervallo di tempo, espresso in secondi (3 in questo esempio), aggiornando l’output su console.
chown user:group file: Cambia il proprietario del file o della directory specificata.
cat file: Legge e stampa il file su console.
nano file: Permette di modificare un file testuale, codice o quant’altro e salvare il file, tutto da console.
shutdown -h now: Spegne subito il sistema.
fdisk -l: Informazioni sulle partizioni e i dischi.
uptime: Da quanto tempo è acceso il sistema.
nano .bashrc: Permette di aggiungere comandi alias, ad esempio: alias install='sudo apt-get install'. E’ un file presente nella home directory. Bisogna riavviare il sistema per rendere le modifiche permanenti.
ls /dev/sd*: Elenca tutti i dispositivi connessi tramite USB.
cat /var/log/daemon.log: Contiene tutti i log dei demoni in esecuzione sul sistema. E’ utile per fare troubleshooting. Perchè ogni errore di un processo demone viene segnalato in questo file.

Comandi specifici per le app

sudo service transmission-daemon start: Avviamo il client BitTorrent Transmission.
sudo service transmission-daemon stop: Stoppiamo il client BitTorrent Transmission.
transmission-remote --auth user:password -l: Lista tutti i torrent in Transmission.
transmission-remote --auth user:password -t all --start: Avvia tutti i torrent in Transmission (come parametro equivalente si può inserire -s).
transmission-remote --auth user:password -t all --stop: Stoppa tutti i torrent in Transmission (come parametro equivalente si può inserire -S).
transmission-remote --auth user:password -t id_torrent -i: da informazioni sul torrent con id: id_torrent.
transmission-remote --auth user:password -si: Da informazioni sulla configurazione di Transmission.
cat /var/lib/transmission-daemon/info/stats.json: Statistiche globali sui dati scaricati e i torrent aggiunti.
nano /etc/transmission-daemon/settings.json: Modifica le impostazioni di Transmission, prima di fare modifiche è necessario stoppare Transmission. Con il comando visto sopra.
nano /etc/fstab: Apra il file che contiene la tabella dei file system con la possibilità di scegliere dove montare i dischi all’avvio del sistema. (Sempre meglio specificare invece del percorso (/dev/sda1) l’UUID univoco del disco, per scoprirlo basta usare il comando blkid.
netstat -lt: Ci mostra quali porte sono attualmente aperte sul sistema.
netstat -lnptu: Ci mostra quali porte sono aperte sul sistema, lo stato e i processi a cui appartengono.
sudo iwlist wlan0 scan: Effettua una scansione delle reti wifi raggiungibili dall’interfaccia wlan0.
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf: File di configurazione per le reti wireless. Per aggiungerne una nuova basta seguire questa guida.
omxplayer -o hdmi nome_file.avi: Avvia il file multimediale sul raspberry Pi, il parametro hdmi nel comando specifica che l’audio dev’essere trasmesso tramite HDMI (il video è automaticamente mandato in stream sull’HDMI). Schiacciando poi “p” si mette in pausa la riproduzione e così via.
ifdown wlan0: Chiude l’interfaccia di rete specificata.
ifup wlan0: Attiva l’interfaccia di rete specificata. (assieme al comando sopra, riavvia sostanzialmente la scheda di rete).
nano .bashrc: permette di aggiungere degli alias per dei comandi, nel caso del RPi è utile inserire un alias del genere per conoscere rapidamente la temperatura della CPU: temperature='/opt/vc/bin/vcgencmd measure_temp'. Bisogna riavviare il sistema per rendere le modifiche permanenti.

history: Elenco degli ultimi comandi lanciati sulla console.
tail file.txt: Mostra le ultime 10 righe del file.
tail -f file.txt: Legge continuamente nuovi dati dalla fine del file e li mostra in stream sulla console.
ps -A | grep -i [nomeProcesso]: Utile per verificare se un processo è in esecuzione e ottenere il suo PID
netstat -plant | grep :[porta]: Utile per sapere se una porta è aperta e quali processi la stanno usando
service --status-all: Elenca tutti i servizi sul sistema.
service [nome] status: Mostra lo status e gli eventuali log di quel servizio.
service [nome] start/restart/stop: Avvia, riavvia o stoppa il servizio specificato.

Questa lista è in costante evoluzione, se avete qualche comando che ritene utile, suggerite pure tramite commento sotto.