====== Iniziare con Raspberry PI ====== ===== Installare Raspbian su SD ===== Supponendo di partire da una scheda SD vuota, il primo passo è installare Raspbian su SD. Supponiamo di voler installare Raspbian direttamente su SD, e di avere a disposizione un PC con Linux e con una lettore per card SD. In tal caso scaricate da [[https://www.raspberrypi.org/downloads/]] l'ultima immagine disponibile di raspbian. Scompattate il file zip (qualcosa del tipo $anno-$mese-$giorno-raspbian-$nome.zip) ottenendo il file immagine ($anno-$mese-$giorno-raspbian-$nome.zip.img). A questo punto scrivete l'immagine sulla scheda SD con il comando # dd bs=4M if=./$anno-$mese-$giorno-raspbian-$nome.zip.img of= # sync Consultando l'output del comando dmesg dopo avere inserito la card potete verificare il nome assegnato da linux alla card. Di solito è /dev/mmcblk0. Per quelli non molto avvezzi alla shell linux, il simbolo # indica che i comando vanno eseguiti come root, o in alternativa, che vanno preceduti dal comando sudo. Molto probabilmente la vostra scheda ha dimensioni diverse da quelle dell'immagine. Questo vuol dire che una porzione della vostra scheda è inaccessibile. Il modo più semplice di risolvere il problema sarà, al primo boot del sistema, utilizzare l'utility raspi-config e selezionare l'ozione "EXPAND-ROOTFS - Expand Root Partition to Fill SD Card". Quella appena descritta è la procedura base, con la quale nel 99% dei casi non dovreste avere problemi. Nel caso siate tanto sfortunati da rientrare nel rimanente 1%, vi consiglio il link [[http://elinux.org/RPi_Easy_SD_Card_Setup|elinux.org/RPi_Easy_SD_Card_Setup]] che descrive una serie di possibili casistiche. ===== Impostazioni iniziali ===== Al primo avvio della nostra raspberry entriamo dando username: pi password: raspberry Apriamo un terminale e da linea di comando lanciamo raspi-config $ sudo raspi-config Provvediamo prima di tutto ad espandere il filesystem a tutta la scheda SD utilizzando l'apposita voce. La seconda operazione è cambiare le le opzioni internazionali (tastiera, wifi, locale, etc). Infine sfruttando l'opzione "Advanced Options", attiviamo il protocollo i2c. In alternativa possiamo aggiungere nel file /boot/config.txt la riga dtparam=i2c_arm=on Aumentiamo inoltre la frequenza del bus i2c aggiungendo in /boot/config.txt la riga dtparam=i2c1_baudrate=400000 Nel caso in cui abbiate problemi a sentire l'audio attraverso la porta HDMI, provate ad aggiungere nel file /boot/config.txt, la riga hdmi_drive=2 ==== Accesso utenti ai GPIO ==== Per poter accedere ai GPIO senza avere i permessi di root copiamo in /etc/udev/rules.d il file [[http://ingegnerialibera.altervista.org/strumenti/raspberry/99-gpio-users.rules|99-gpio-users.rules]]. ===== Gestire i pacchetti ===== Raspbian utilizza apt-get per gestire i pacchetti. Vediamo un elenco delle operazioni più usuali nel mantenimento della nostra raspberry con i relativi comandi: * installazione pacchetto locale $ sudo dpkg -i * installazione pacchetto da repository $ sudo apt-get install * rimozione pacchetto $ sudo apt-get remove oppure $ sudo dpkg -r * rimozione pacchetto con file di configurazione $ sudo apt-get purge * rimozione dipendenza non più necessarie $ sudo apt-get autoremove * aggiornamento dell'elenco dei pacchetti $ sudo apt-get update * aggiornamento dei pacchetti installati $ sudo apt-get upgrade * aggiornamento dei pacchetti installati (aggiorna la distro; più invasivo e radicale del precedente) $ sudo apt-get dist-upgrade * rimozione dei pacchetti scaricati non aggiornati $ sudo apt-get autoclean * rimozione di tutti pacchetti scaricati $ sudo apt-get clean === Stampa informazioni su pacchetti disponibili nei repository === $ apt-cache show