Old:La mia prima settimana con Debian: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
 
(18 versioni intermedie di 6 utenti non mostrate)
Riga 1: Riga 1:
''Torna all'indice: [[Linux Kernel in a Nutshell]]''
{{Old}}
 
Questa piccola guida nasce con l'idea di rendere meno traumatico l'approccio al mondo debian da parte dell'utente principiante e alle prime armi con sistemi basati su GNU/Linux. L'idea è di dare la possibilità all'utente di installare un sistema debian funzionante sul proprio computer e di apprenderne le basi. In sintesi, la trascrizione dei primi pensieri e delle prime operazioni nel nuovo sistema operativo.
__TOC__
 
Il [[LKN:_Personalizzare_un_Kernel|capitolo precedente]] ci ha insegnato i meccanismi per la riconfigurazione del kernel; in questo capitolo arriva la parte interessante, in cui si possono trovare tutte le modifiche pi� comuni che gli utenti hanno bisogno di apportare ai loro kernel, con le istruzioni specifiche per effettuarle.
 
 
== '''Dischi''' ==
 
Il kernel Linux supporta una grande variet� di differenti tipi di disco. Questa sezione mostra come configurare il kernel in modo tale che supporti la maggior parte dei modelli pi� comuni di controller di disco.
 
 
'''Dispositivi USB'''
 
Per utilizzare un dispositivo di archiviazione USB (come quelli chiamati comunemente memorie "flash" USB, oppure dischi esterni USB) il supporto USB deve prima funzionare correttamente. Fare riferimento alla ricetta nella sezione chiamata [[USB]] per sapere come fare.
 
Un dispositivo di archiviazione USB pu� essere identificato utilizzando il programma ''lsusb''. Se la sequenza di comandi che segue produce i risultati mostrati, nel sistema � presente un dispositivo di archiviazione USB:
 
<pre>
$/usr/sbin/lsusb -v | grep Storage
      bInterfaceClass        8 Mass Storage
</pre>
 
Abilitarla nel modo seguente:
 
1. Un dispositivo di archiviazione USB � in realt� undispositivo USB SCSI che comunica su un collegamento USB. Per questo motivo, deve essere abilitato il sottosistema SCSI:
 
<pre>
Device Drivers
    SCSI Device Support
        [*] SCSI Device Support
</pre>
 
2. Anche nel sistema SCSI, si deve abilitare il "SCSI disk support" affinch� il dispositivo venga montato correttamente:
 
<pre>
Device Drivers
    SCSI Device Support
        [*] SCSI disk support
</pre>
 
3. Abilitare il supporto di archiviazione USB:
 
<pre>
Device Drivers
  USB Support
  [M] USB Mass Storage support
</pre>
 
Nelle pagine che seguono verranno illustrate specifici dispostivi di archiviazione USB per i quali si rende necessaria una configurazione differente, in quanto non seguono gli standard USB e richiedono un codice speciale. Se si possiede uno di questi dispositivi, � necessario abilitare il supporto per essi.
 
 
'''Dischi IDE'''
 
I dischi IDE sono i pi� comuni dischi per PC. Il dispositivo che abilita tali dischi affinch� essi lavorino correttamente � un controller di disco IDE. Per determinare se si abbia un controller di disco IDE sul proprio sistema, usare il comando ''lspci'' nel seguente modo:
 
<pre>
$/usr/sbin/lspci | grep IDE
00:1f.1 IDE interface: Intel Corporation 82801EB/ER (ICH5/ICH5R) IDE
Controller (rev 02)
00:1f.2IDEinterface:IntelCorporation82801EB(ICH5)SATAController(rev
02)
</pre>
 
Tenete presente che il risultato del comando ''lspci'' probabilmente non sar� identico a quello mostrato sopra. Ci� che importa invece � che il comando mostri un qualunque controller IDE (il primo dispositivo nel precedente esempio). Se si riscontrano solo controller SATA, vedere la sezione successiva 'Serial ATA (SATA)'.
 
Ora seguiamo i seguenti passi:
 
1. Abilitare il supporto PCI per il kernel:
 
<pre>
Bus options (PCI, PCMCIA, EISA, MCA, ISA)
    [*] PCI Support
</pre>
 
2. Abilitare il sottosistema IDE e il supporto IDE:
 
<pre>
Device Drivers
    [*] ATA/ATAPI/MFM/RLL support
    [*]  Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support
</pre>
 
3. Nel sistema ATA, occorre abilitare lo specifico tipo di controller IDE che si possiede, al fine di farlo funzionare correttamente. Per avere un buon backup nel caso si selezioni il tipo errato, selezionare la voce controller IDE 'generico':


==Lunedì: partizioniamo il disco==
Dopo anni passati con il Mac, ormai ho deciso: questa settimana installerò Debian! Il problema è che, almeno per il momento, non vorrei abbandonare del tutto il mio vecchio sistema operativo... chissà se è possibile? E chissà quali complicate operazioni dovrò affrontare?
===Premessa: BIOS, MBR e File System===
L'accensione di un computer è il risultato di alcuni processi in ordine definito:
# Subito dopo l'accensione parte il '''[http://it.wikipedia.org/wiki/BIOS BIOS]''' (Basic Input-Output System): un programma che gestisce l'accesso all'hardware del computer e trova il disco di avvio.
# Dando inizio all'avvio parte il '''[http://it.wikipedia.org/wiki/Master_boot_record MBR]''' (Master Boot Record): questo programma si trova all'inizio dell'hard-disk e avvia il boot loader.
# Il '''[http://it.wikipedia.org/wiki/Boot_loader boot loader]''' è un programma che ci permetterà di avviare un sistema operativo su una determinata partizione del disco.
Non facciamoci spaventare da queste prime righe: volevo solo dare un'introduzione (del resto molto semplificata), citando boot loader e partizioni che ci serviranno per installare Debian. Tra l'altro ormai il BIOS nei nuovi PC è stato rimpiazzato dall'[http://it.wikipedia.org/wiki/Extensible_Firmware_Interface EFI], che usa un altro metodo di gestione delle partizioni (cioè il [http://it.wikipedia.org/wiki/GUID_Partition_Table GPT], ma può sempre usare il MBR se opportunamente configurato). In ogni caso, andiamo avanti e concentriamoci sui file system.
====File System====
Un [http://it.wikipedia.org/wiki/File_system file system] è un metodo d'immagazzinamento e organizzazione dei file su un dispositivo d'archiviazione, come ad esempio un hard disk: in questo caso si parlerà di file system del disco. Tra i file system del disco più conosciuti troviamo:
<pre>
<pre>
Device Drivers
FAT, FAT32  ->  DOS e Microsoft Windows
    ATA/ATAPI/MFM/RLL support
NTFS        ->  Microsoft Windows NT
        [*]    generic/default IDE chipset support
HFS+        ->  Mac OS X
</pre>
ext3, ext4  ->  GNU/Linux</pre>
Per un sistema misto dovremo ricordarci che sia da OSX che da Windows non è possibile visualizzare direttamente le partizioni ext4. Qualche "trucco" esiste comunque, anche se la soluzione più semplice è quella di creare una partizione in FAT32 (sarebbe anche meglio in [http://it.wikipedia.org/wiki/ExFAT exFAT], detta anche FAT64, ma purtroppo Linux non la supporta ancora al meglio) visibile da tutti e tre i sistemi (e quindi utilizzabile per accedere ai file da qualsiasi sistema operativo o per trasferirli da un sistema all'altro). Nel prossimo capitolo vedremo come fare.


4. Abilitare i differenti controller PCI IDE:
===Boot loader===
Il boot loader, come detto sopra, è un programma che ci permette l'avvio di un sistema operativo su una determinata partizione; nel caso di più sistemi operativi (su partizioni diverse), il boot loader ci permetterà di scegliere il sistema operativo da avviare. Nei sistemi GNU/Linux il boot loader per eccellenza è [http://it.wikipedia.org/wiki/GNU_GRUB GRUB] (GRand Unified Bootloader). Se abbiamo già installato MacOSX o Windows potremo utilizzarlo per il multi-boot (vedi [[La_mia_prima_settimana_con_Debian#Marted.C3.AC:_installiamo_Debian|martedì]]). GRUB sarà scritto nel MBR ed andrà a sovrascrivere il boot loader già presente. Una volta installato, GRUB penserà a gestire i vari sistemi operativi: all'avvio del computer potremo scegliere da un menu quale sistema operativo avviare.


===Partizioni necessarie===
Per concludere questa prima giornata vediamo ora le partizioni che necessitiamo per installare il nostro nuovo sistema operativo:
<pre>
<pre>
Device Drivers
NTFS  -> se teniamo il nostro Windows XP, 7 o 8.x, lo ritroveremo su una partizione con questo file system
    ATA/ATAPI/MFM/RLL support
HFS+  -> se teniamo il nostro MacOS X, lo ritroveremo su una partizione con questo file system
        [*]    PCI IDE chipset support
ext4  -> sarà il file system per la partizione sulla quale installeremo Debian
</pre>
FAT32  -> potremmo creare questa partizione per leggere o scambiare dei file fra i vari sistemi operativi
 
swap  -> collocata su un file system swap, si tratta di una memoria virtuale che ci servirà per Debian</pre>
Ci� porta all'apertura di un lungo sottomenu di differenti tipi di controller IDE. Selezionare il proprio in base al nome del dispositivo mostrato col comando ''lspci''
Tutte queste partizioni possono essere create con l'installer di Debian (anche volendo lasciare il vecchio sistema operativo); dunque, visto che siamo agli inizi, non andiamo a complicarci la vita e corriamo a prendere il CD d'installazione ([[Installare_Debian_da_pendrive_USB_o_SD_card|o la chiavetta USB]])!


==Martedì: installiamo Debian==
Cavoli! Non sto più nella pelle! Ieri mi sono ben documentato sulle partizioni; ho deciso così: voglio mantenere MacOSX e mi farò una bella partizione FAT32 per condividere i file fra i due sistemi operativi. Poi installerò GRUB e lo utilizzerò per scegliere il sistema operativo all'avvio. Per fortuna non dovrò fare niente di difficile: penserà a tutto l'installer di Debian! Ma dove lo trovo?
===Reperire un CD d'installazione Debian===
Tutte le informazioni riguardo Debian si trovano sul sito principale della distribuzione: http://www.debian.org/. Se abbiamo a disposizione un accesso ad internet, potremo scaricare una versione minimale del sistema ([https://www.debian.org/distrib/netinst netinst]) e installare il resto dalla rete. Altrimenti possiamo scaricare i CD (o DVD) con tutti i pacchetti a disposizione. In entrambi i casi dovremo scaricare una versione adatta all'architettura del nostro processore (ad es. "powerpc", "i386", ecc.). Oltre alla rete ci sono varie riviste che potrebbero offrire i CD d'installazione, così come negozi specializzati ai quali è possibile indirizzarsi.


'''Serial ATA (SATA)'''
===Incomincia l'installazione!===
 
Come tutte le nuove installazioni cominceremo con un bel back-up del nostro vecchio sistema con tutti i nostri dati... Ok, si parte! Inseriamo il CD nel computer e riavviamo. Quest'ultimo dovrà sopportare il boot da CD. Se non riusciamo nell'intento, un doppio-clic sul CD e ci verrà proposta l'installazione di un installer sul nostro computer: questo ci farà un "riavvia" e ci darà la possibilità di avviare l'installer all'inizio del boot.<br />
SATA � un tipo di controller di disco che rappresenta il successore del controller di disco IDE. Per determinare se si possiede sul sistema un controller di disco SATA, lanciare il seguente comando:
Per quanto riguarda poi l'installazione vera e propria ci sono centinaia di guide in rete e non commenterò dunque punto per punto, dando solo delle indicazioni per i punti più importanti:
 
====Prima schermata====
<pre>
"Press F1 for help, or ENTER to boot". Leggere gli aiuti sarebbe sempre una cosa importante... In ogni caso, se tralasciate questo punto e premete ENTER per incominciare vi ritroverete in modalità testuale. Per la comoda interfaccia grafica, dare il comando: installgui ENTER.
$/usr/sbin/lspci | grep SATA
====Partizionamento del disco====
00:1f.2IDEinterface:IntelCorporation82801EB(ICH5)SATAController(rev
v. sotto.
02)  
====Scelta dei Software====
</pre>
Assolutamente da installare è il sistema standart e l'ambiente Desktop. Se si ha un laptop si sceglie evidentemente anche questa opzione.
 
====GRUB====
Tenere presente che il risultato del comando probabilmente non sar� identico. Ci� che importa � che il comando mostri un qualunque dispositivo SATA. I dischi SATA usano una libreria kernel chiamata ''libata'' che si occupa della maggior parte delle funzionalit� di SATA. ''That library uses the SCSI layer to talk to the block layer, so several different kernel options need to be enabled in order for SATA disks to work properly.''
Assolutamente rispondere di sì; GRUB verrà installato nel MBR permettendo il multi-boot (avvio del sistema operativo a scelta).
 
{{ Warningbox | Se si re-installa Windows (o Mac) il MBR verrà sovrascritto e bisognerà re-installre GRUB. }}
1. Abilitare il supporto PCI per il kernel:
===Partizionamento del disco===
 
Dopo le prime impostazioni del sistema, arriviamo infine al partizionamento del disco. L'installer ci propone di formattare tutto il disco per installare il nuovo sistema operativo (non che sia una brutta idea, ma per incominciare...). Per mantenere il nostro vecchio sistema dovremo dunque scegliere la modalità manuale. A questo punto dobbiamo ridimensionare la partizione contenente il sistema operativo per avere dello spazio libero sul quale creare le nuove partizioni. Ciò, semplicemente seguendo le proposte dell'installer. Una volta ottenuto dello spazio libero possiamo creare le nuove partizioni. Si potrebbe fare in modo automatico dicendo all'installer di utilizzare tutto lo spazio libero per installare debian (forse la scelta migliore, ma io volevo ancora avere una partizione FAT32...). Se vogliamo invece crearci le partizioni in modo manuale dovremo prestare attenzione solo ad alcune cosette:
<pre>
* la partizione su cui installeremo la debian deve avere un file system Ext3, essere "bootabile" (vedremo una "B" nell'indice, prima era nella partizione del vecchio sistema), essere "primaria" e avere come indice di partenza "/".
Bus options (PCI, PCMCIA, EISA, MCA, ISA)
* la swap deve avere un file system swap, essere "locale" ed essere grande almeno quanto la memoria RAM.
    [*] PCI Support
* la partizione con file system FAT32 deve essere "primaria".
</pre>
'''N.B.''': un'opzione semplificata potrebbe essere quella di dire all'installer di utilizzare tutto lo spazio libero per il nuovo sistema operativo; avrete così la partizione ext3 e swap "gestita" dall'installer; poi, per creare la partizione con FAT32, potete ridimensionare la ext3 guadagnando spazio e utilizzando quest'ultimo per creare l'ultima partizione in modo manuale.
 
2. Abilitare il sottosistema SCSI:
 
<pre>
Device Drivers
    SCSI Device Support
        [*] SCSI Device Support
</pre>
 
3. Anche nel sistema SCSI, deve essere abilitata la voce "SCSI disk support" affinch� il dispositivo funzioni correttamente:
 
<pre>
Device Drivers
    SCSI Device Support
        [*] SCSI disk support
</pre>


4. Le opzioni SATA sono sotto la sezione "SCSI low-level drivers":
==Mercoledì: tastiera, risoluzione schermo e shell==
Oggi accendo finalmente il pc dopo aver installato la mia prima debian. Un po' di scritte... ecco, adesso posso loggarmi... e finalmente ecco il mio bel desktop! Peccato che la mia eccitazione già si arresta appena provo a scrivere due cosettine... i caratteri visualizzati non corrispondono ai tasti premuti... mhmm... lo sapevo che non potevo utilizzare la tastiera del mac...
===La tastiera===
Per "sintonizzare" la tastiera abbiamo due possibilità: utilizzare le preferenze di GNOME o modificare il file /etc/X11/xorg.conf
====Preferenze GNOME====
Dal menu nella barra superiore scegliere: sistema > preferenze > tastiera. Sotto "Layouts" scegliere il modello (ad es. per mac, macintosh) e la lingua predefinita. Sempre nel caso Apple, per configurare il tasto "Alt-Gr" si può andare sotto "Layout Options" > "Third level choosers" e scegliere Left win-key o Right win-key per avere il tasto "mela" di sinistra o destra come un "Alt-Gr".
====/etc/X11/xorg.conf====
In questo file troviamo la configurazione del sistema grafico. La tastiera la troviamo sotto Identifier "Generic Keyboard" o qualcosa del genere. A destra di Option "XkbModel" avremo il modello, ad esempio "macintosh", con Option "XkbLayout" avremo la lingua, ad esempio "it". Se si volesse ancora una volta abilitare un tasto "mela" con la funzione di "Alt-Gr", bisognerà aggiungere l'opzione Option "XkbOptions" "lv3:lwin_switch" per la "mela" di sinistra o "lv3:rwin_switch" per quella di destra.<br /><br />
A questo punto una domanda è però lecita: come si modifica il file /etc/X11/xorg.conf? Dalla shell... vediamo quasi subito...
===La risoluzione dello schermo===
In questo caso si può scegliere da sistema > preferenze > risoluzione monitor un valore. Se non dovrebbe esserci quello che cerchiamo bisognerà ancora una volta modificare il file /etc/X11/xorg.conf. Questa volta cercheremo la parte con Identifier "Default screen". Nelle susseguenti Subsection "Display" andremo sotto "Modes" ad inserire la risoluzione cercata.
{{ Warningbox | non è detto che inserendo una risoluzione sotto "Modes" venga correttamente accettata; questo perchè la risoluzione è dipendente anche dai drivers utilizzati. In altre parole, se dovreste avere problemi a riguardo, consultate la rete per accertare il vostro driver ed eventuali istruzioni per aggiornarlo/cambiarlo. }}
===La shell===
Giusto per chiarire i termini, la shell è la linea di comando (= terminale). In debian si chiama bash. È uno strumento molto potente e alla base di tutte le impostazioni del sistema operativo. Come citato sopra, utilizzeremo la shell per avere i diritti di superuser per poter modificare il file /etc/X11/xorg.conf. Per prima cosa controlliamo se abbiamo installato sudo (superuser do; questo comando ci permette di fare delle azioni come superuser, senza però doverci "loggare" in quanto tale):
<pre>~$ su (invio), dare la password, ~# apt-get install sudo</pre>
Se è già installato il sistema ci avviserà, altrimenti si potrà installare il programma (maggiori dettagli sull'installazione dei programmi si trovano nell'ultima giornata). Per fare il logout da superuser semplicemente scrivere "exit" ed invio. Poi dobbiamo dare al nostro utente i diritti di superuser. Per fare ciò dovremo loggarci dapprima come superuser e poi modificare il file /etc/sudoers tramite un editor di testo su shell. Per questioni di semplicità utilizzeremo "nano":
<pre>~$ su (invio), dare la password, ~# nano /etc/sudoers</pre>
A questo punto otterremo una mini interfaccia grafica; fra le righe troveremo la seguente linea:
<pre>root      ALL=(ALL) ALL ; dove sotto aggiugeremo (spostando il cursore con le frecce)
<nostronomeutente>  ALL=(ALL) ALL</pre>
Per concludere, ctrl+O per salvare ed infine ctrl+X per uscire.
Quando vorremo ora eseguire un'azione con diritti da superuser (amministratore) basterà digitare "sudo" e poi l'azione voluta.<br />
Torniamo ora alla modifica del nostro xorg.conf. Il modo più semplice è di modificarlo con gedit (gnome). Daremo il comando:
<pre>~$ sudo gedit /etc/X11/xorg.conf</pre>
Avremo così aperto il file con un editor grafico, gedit appunto, e grazie a sudo avremo i diritti di scrittura per modificarlo. Nel capitolo relativo ai permessi vedremo altri comandi base della shell ed un chiarimento sui permessi di scrittura di un file.


<pre>
==Giovedì: allacciamoci alla rete==
Device Drivers
Con il cavo dell'ethernet conficcato nella scheda ho potuto per fortuna installare sudo... ora però vorrei capire meglio come funziona la rete e come potrei configurarla. E se volessi anche un Wireless? Già non ci capisco più niente...
    SCSI Device Support
===Configurare la rete tramite il file /etc/network/interfaces===
        SCSI low-level drivers
====Rete ethernet cablata====
            [*] Serial ATA (SATA) support
Per configurare una rete esistono varie applicazioni grafiche (come network-manager), ma il consiglio è quello di configurarla con il file sopracitato (che verrà "caricato" durante l'accensione del pc); una volta capito il sistema non avrete così mai un problema. Come prima cosa, onde evitare spiacevoli interazioni con il sistema grafico, andremo a disinstallare il network-manager:
</pre>
<pre>~$ sudo apt-get remove network-manager network-manager-gnome</pre>
Avendo fatto l'installazione tramite la net-install e la rete diamo per scontato che la scheda ethernet funziona. Per vedere le schede di rete del nostro sistema diamo il comando:
<pre>~$ sudo ifconfig -a</pre>
Otterremo una lista con a sinistra i nome delle interfacce e a destra la loro configurazione (con ifconfig senza "-a" vedremo solo le schede attive). La scheda ethernet dovrebbe avere un nome tipo "eth0" (o "eth1", ...). La scheda con il nome di "lo" al momento la lasceremo perdere, non ci servirà. Per configurare ora la scheda andiamo a editare il file /etc/network/interfaces (alias lo apriamo con gedit in modalità amministratore, così da poterlo modificare; volutamente non vi scrivo come fare, ma è la stessa cosa di come abbiamo fatto con /etc/X11/xorg.conf, vero?). Otterremo qualcosa del genere:
<pre># This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).


5. In questa sezione, abilitare il particolare controller SATA che si possiede. Vedere l'output del comando ''lspci'' precedentemente menzionato per avere una lista dei tipi di controller SATA presenti sul proprio sistema. Per esempio, la maggior parte delle schede madri INTEL richiedono il driver PIIX/ICH SATA (come mostrato nel precedente esempio):
# The loopback network interface
auto lo
iface lo inet loopback


<pre>
# The primary network interface
Device Drivers
auto eth0
    SCSI Device Support
iface eth0 inet dhcp
        SCSI low-level drivers
            [*] Serial ATA (SATA) support
            [*]  Intel PIIX/ICH SATA support
</pre>
</pre>
La scheda viene "caricata" all'accensione del sistema (auto eth0) e viene utilizzata tramite dhcp (inet dhcp). Per configurare una rete con ip fisso vi lascio a guide più dettagliate, presenti ovunque e dovunque in rete (a partire da debianizzati).
====Rete Wireless====
Come prima cosa dobbiamo installare un pacchetto per la gestione del wireless:
<pre>~$ sudo apt-get install wireless-tools</pre>
Fatto questo, un requisito fondamentale è avere una scheda wireless riconosciuta dal sistema. Per verificare daremo il comando:
<pre>~$ sudo iwconfig</pre>
Come abbiamo visto con ifconfig, avremo sulla sinistra le sigle delle interfacce di rete e sulla destra le loro caratteristiche. La scheda ethernet avrà la descrizione "no wireless extensions.", così come "lo". La nostra scheda wireless non avrà dunque questa scritta, ma un elenco di parametri (tipo ESSID, Mode, ...). Il nome può variare a seconda dei drivers utilizzati (wlan0, ra0, eth1, eth2, ...).<br />
{{ Warningbox | se la scheda wireless non viene visualizzata bisogna installare dei drivers (o magari anche solo un firmware). La procedura varia molto a seconda della scheda utilizzata. Il procedimento non verrà dunque descritto. Un buon inizio è dare il comando "lspci" per visualizzare il chipset della scheda e consultare la rete (alias google, forum, ...) per il procedimento d'installazione. }}
Per vedere le reti wireless accessibili alla nostra scheda diamo il comando:
<pre>~$ sudo iwlist scan</pre>
Sceglieremo poi la rete alla quale vogliamo collegarci e annoteremo il nome ESSID e il numero di canale (Channel). A questo punto, editiamo ancora una volta il nostro file /etc/network/interfaces e aggiungeremo le seguenti righe (ammettiamo di avere la scheda wireless "wlan0":
<pre>auto wlan0                          (vogliamo "caricare" la scheda all'avvio)
iface wlan0 inet dhcp              (chiediamo un ip tramite dhcp)
wirless-essid <nomerete>            (scegliamo a che rete collegarci)
wireless-channel <numerocanale>    (scegliamo il canale)
wireless-key s: <password rete>    (diamo la password se necessario)</pre>
Questo sistema funziona con una rete aperta o con chiave WEP. Per una rete con WPA si può configurare "wpasupplicant" (divertitevi con le ricerche: google, forum, ...); il metodo forse però più semplice è quello di editare il nostro file nel modo seguente;
<pre>auto wlan0                              (vogliamo "caricare" la scheda all'avvio)
iface wlan0 inet dhcp                  (chiediamo un ip tramite dhcp)
pre-up ifconfig wlan0 up                (carichiamo "al volo" l'interfaccia)
pre-up iwconfig wlan0 essid <nomerete>  (scegliamo a che rete collegarci)
pre-up iwconfig wlan0 mode Managed      (scegliamo il modo [visibile con lo scanning])
pre-up iwconfig wlan0 channel 1        (scegliamo il canale)
pre-up iwpriv wlan0 set AuthMode=WPAPSK (scegliamo il tipo di WPA)
pre-up iwpriv wlan0 set EncrypType=TKIP (scegliamo il tipo di criptazione)
pre-up iwpriv wlan0 set WPAPSK=xxxxxxxx (diamo la password)</pre>
{{ Warningbox | la password deve venire scritta in modo criptato! }}
Per fare ciò possiamo installare in ogni caso il pacchetto "wpasupplicant" e poi criptare la nostra password con:
<pre>~$ sudo apt-get install wpasupplicant    ; dopo aver installato il pacchetto digitiamo:
~$ wpa_passphrase <nomerete> <password></pre>
L'output sarà la password criptata. Non ci resta che ricopiarla nel nostro /etc/network/interfaces. Per utilizzare ora la nostra scheda dobbiamo riavviare la rete con:
<pre>~$ sudo /etc/init.d/networking restart</pre>
Onde evitare interazioni potete disabilitare la scheda ethernet, mettendo il segno "#" davanti alle righe che la concernono (auto eth0 e iface eth0 inet dhcp). Come già detto, per la configurazione di wpasupplicant e tutte le reti più complesse, spazio ad altre guide ;-) !


==Venerdì: permessi e spostamento files/cartelle==
Con il week end alle porte sono oggi invogliato a "fare un giretto" nella mia nuova debian. Provo a spostarmi fra le cartelle, ordinare dei file... ma... alcuni file non me li lascia spostare... Non ho i diritti... Ma se il computer è il mio?! Uffa... e adesso che faccio? Vorrei magari viaggiare anche un po' con la shell, ma con tutti questi comandi assurdi, non ci si capisce niente!


== '''Masterizzare un CD-ROM''' ==
===comandi base shell===


Masterizzare un CD-ROM � davvero semplice in Linux. Se il kernel che si possiede permette la lettura di un CD-ROM, allora ne permetter� anche la masterizzazione.  
A metà settimana abbiamo imparato i primi comandi della shell (sudo e editare un testo con diritti d'amministratore); oggi vedremo dei comandi semplici per muoverci all'interno del sistema.
Ci sono due metodi per abilitare il supporto CD-ROM in Linux, uno per i lettori IDE ed uno per i lettori SCSI e SATA


<pre>~$ cd [percorso] => per spostarci fra le cartelle.</pre>
Ad es. cd /home/[nostro nome utente] ci porterà nella nostra cartella d'utente (quella che di default è "selezionata" quando apriamo una sessione di shell), cd / ci porterà nella cartella principale del sistema. Con il comando cd .. "retrocediamo" di una cartella. Non hai capito? Prova...<br />


'''Lettori CD-ROM IDE'''
Per "percorrere" le cartelle esiste un metodo molto pratico che ci farà risparmiare tempo ed errori: il tasto "TAB" (quello per fare i rientri, sulla tastiera in alto a sinistra), che completerà automaticamente le parole. Ad es. per editare il file /etc/network/interfaces "tippiamo": sudo ged [tab] /e [tab] net [tab] / in [tab].


I lettori CD-ROM IDE sono gestiti dallo stesso controller IDE del disco principale. Assicurarsi che il controller IDE sia correttamente supportato come descritto nella sezione ''Dischi IDE''. Se lo �, allora occorre selezionare solo un'altra voce nella procedura di configurazione:
<pre>~$ ls => ci mostra il contenuto della cartella attuale.</pre>Con il comando ls -a vedremo anche le cartelle o i file nascosti (preceduti da un punto), con ls -l vediamo dei dati supplementari per ogni elemento della cartella (dettagli in "permessi").


<pre>
<pre>~$ mv [file/cartella] [nuova location o nuovo nome file] => sposta o rinomina un file o una cartella.</pre>
Device Drivers
È anche possibile eseguire entrambe le operazioni dando un nuovo nome al file/cartella ed una nuova location. Attenzione ai permessi... (vedi sotto).
    [*] ATA/ATAPI/MFM/RLL support
    [*]   Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support
    [M]     Include IDE/ATAPI CDROM support
</pre>


<pre>~$ rm [file] => rimuove un file. Per rimuovere cartelle, rm -r [cartella].</pre>
Attenzione ai permessi... (vedi sotto).


'''Lettori CD-ROM SCSI e SATA'''
<pre>~$ cp [file] [location e nome file] => copia un file. Per copiare cartelle, cp -r [cartella] [location e nome cartella].</pre>
Come con mv, è possibile rinominare "al volo" (dando un nuovo nome) la copia del file. Attenzione ai permessi... (vedi sotto).<br />


I lettori CD-ROM SCSI e SATA sono gestiti dallo stesso controller del disco principale. Assicurarsi che il controller SCSI o SATA sia correttamente supportato. Per i dischi SATA, vedere la precedente sezione ''Serial ATA (SATA).'' 
Per tutti gli altri comandi troverete istruzioni su debianizzati e nella rete. Per capire la sintassi di un comando o visualizzare le opzioni possibili esistono due comandi molto comodi:
Per supportare lettori CD-ROM SCSI o SATA, il driver CD-ROM SCSI deve essere abilitato:


<pre>
<pre>~$ man [comando] => mostra il funzionamento del comando. Ad es. man cp (premere "q" per uscire).
Device Drivers
~$ [comando] --help => più o meno la stessa cosa, forse qualche dettaglio in meno.</pre>
    SCSI Device Support
        [*] SCSI CDROM support
</pre>


Una volta che � stato abilitato, il lettore CD-ROM SCSI o SATA dovrebbe funzionare correttamente.
===Permessi===


Per avere un'idea, proviamo a dare il comando ls -l nella cartella principale (sapete come "andarci", vero?). Fra tutte le cartelle prendiamo in analisi la home:


== '''Dispositivi''' ==
<pre>drwxr-xr-x  3 root root  4096 2007-12-05 17:41 home</pre>


Linux supporta un grande numero di differenti tipi di dispositivi (pi� di qualunque altro sistema operativo). Questa sezione descrive come abilitare i dispositivi pi� comuni.
Da sinistra verso destra otteniamo le segunti informazioni:


* d: sta per directory -> l'elemento è una cartella.


'''USB'''
Le prossime lettere si leggono a tre a tre, rispettivamente per proprietario, gruppo, tutti gli altri. Le lettere significano:


Linux supporta molti tipi di dispositivi USB. Per abilitare il supporto USB, bisogna innanzitutto abilitare il supporto per il controller USB, che gestisce il collegamento USB sulla macchina. Per determinare se la propria macchina possiede un controller USB, e di quale tipo �, lanciare il seguente comando:
* r: sta per read -> è possibile leggere l'elemento.
* w: sta per write -> è possibile scrivere/manipolare l'elemento.
* x: sta per executable -> è possibile far eseguire l'elemento.


<pre>
Nel nostro esempio, la home ha i seguenti attributi:
$/usr/sbin/lspci | grep USB
00:1d.0 USB Controller: Intel Corporation 82801EB/ER (ICH5/ICH5R) USB UHCI
Controller #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation 82801EB/ER (ICH5/ICH5R) USB UHCI
Controller #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation 82801EB/ER (ICH5/ICH5R) USB UHCI
Controller #3 (rev 02)
00:1d.3 USB Controller: Intel Corporation 82801EB/ER (ICH5/ICH5R) USB UHCI
Controller #4 (rev 02)
00:1d.7 USB Controller: Intel Corporation 82801EB/ER (ICH5/ICH5R) USB2 EHCI
Controller (rev 02)
</pre>


Notare che probabilmente l'output del comando non sar� identico a quello mostrato sopra. Ci� che importa � che il comando mostri un qualche controller USB.
* proprietario: può leggere, scrivere/manipolare e "eseguire" l'elemento.
* gruppo: può leggere e "eseguire" l'elemento, ma non scriverlo/manipolarlo.
* tutti: possono leggere e "eseguire" l'elemento, ma non scriverlo/manipolarlo.


1. Abilitare il supporto PCI per il kernel:
* 3: sta per il numero degli elementi inclusi. Se è una cartella è il numero dei file in essa, se è un file i valore sarà 1.


<pre>
* root: è il nome del proprietario del file o della cartella.
Bus options (PCI, PCMCIA, EISA, MCA, ISA)
* root: (il secondo nome) è il nome del gruppo al quale appartiene l'elemento.
    [*] PCI Support
* 4096: è la dimensione dell'elemento in bytes. N.B. per una cartella, non si tratta della somma di tutti gli elementi in essa, ma solo dello spazio che occupa la cartella vuota.
</pre>
* 2007-12-05 17:41: data e orario di creazione/modifica.
* home: nome dell'elemento.


2. Abilitare il supporto USB per il kernel: 
A questo punto capiamo perchè non ci era possibile modificare il file /etc/network/interfaces; questo appartiene a root (-rw-r--r-- 1 root root  719 2007-12-11 10:21 interfaces) e solo root può scriverlo. Perciò dobbiamo avere i privilegi da root (ottenuti con sudo, grazie al file /etc/sudoers) per modificarlo. La stessa cosa vale per spostare dei files dei quali non siamo il proprietario. In generale, l'unica cartella del sistema che ci appartiene (come utente) è la cartella /home/[nostro nome utente] con tutto il suo contenuto.


<pre>
====Cambiare permessi/proprietario====
Device Drivers
    USB Support
        [M] Support for Host-side USB
</pre>
 
3. Abilitare lo specifico controller host USB per la propria macchina (per maggior sicurezza abilitarli tutti se non si conosce con certezza quale si possiede):
 
<pre>
Device Drivers
    USB Support
    ---  USB Host Controller Drivers
    [M]  EHCI HCD (USB 2.0) support
    [M]  OHCI HCD support
    [M]  UHCI HCD (most Intel and VIA) support
</pre>


4. Bisogna abilitare i driver anche per gli specifici dispositivi individuali USB. Gran parte di essi si trovano nella sezione driver USB principale:
Per cambiare i permessi di un elemento abbiamo il comando chmod. Questo comando ha due sintassi possibili: una con ugo+/-rwx e l'altra con 3 numeri (4,2,1). In questa guida vi indicherò come si utilizza il sistema "numerico", per l'altro metodo, vi ricordate come si "studia" un comando? man...<br />
I numeri rappresentano i permessi:  


<pre>
* 4: sta per read -> leggere.
Device Drivers
* 2: sta per write -> scrivere/manipolare.
    USB Support
* 1: sta per executable -> eseguibile.
</pre>


Ma alcuni dispositivi, come Video USB, DVB e Audio, sono elencati nella sezione che gestisce tutti questi tipi di dispositivi. Per esempio, il driver audio USB pu� essere trovato nel menu audio:
Per dare i permessi ad un elemento non faremo nient'altro che calcolare la somma dei permessi che si vogliono attribuire e darli nell'ordine: proprietario, gruppo, altri. Per dare un esempio, per dare i permessi ad un file uguali alla cartella home (vedi sopra), daremo:


<pre>
<pre>~$ chmod 755 [file] ; per una cartella ~$ chmod -R 755 [cartella]</pre>
Device drivers
    Sound
        [*] Sound card support
            [*] Advanced Linux Sound Architecture
                USB Devices
                    [M] USB Audio/MIDI driver
</pre>


If you want to insert USB storage devices (USB flash), look now at the section called �USB Storage,� at the beginning of this chapter.  
Mi sembra inutile aggiungere che per modificare i diritti di un elemento bisogna essere il proprietario o averne i diritti (v. sudo).<br />


Per cambiare il proprietario o il gruppo di un elemento abbiamo il comando chown:


----
<pre>~$ chown [nuovo nome proprietario]:[nome nuovo gruppo] ; per una cartella chown -R [nuovo nome proprietario]:[nome nuovo gruppo]</pre>
This is an indipendent translation of the book [http://www.kroah.com/lkn/ Linux Kernel in a Nutshell] by [http://www.kroah.com/log/ Greg Kroah-Hartman]. This translation (like the original work) is available under the terms of [http://creativecommons.org/licenses/by-sa/2.5/ Creative Commons Attribution-ShareAlike 2.5].
----


[http://www.kernel.org/pub/linux/kernel/people/gregkh/lkn/lkn_pdf/ch08.pdf ''Capitolo originale'']
==Sabato: repository... ?==
[[Categoria:Kernel]]
OK, lentamente ci siamo. Il mio sistema incomincia a prendere forma e sento che sono quasi pronto ad installare i miei primi programmi. Mi domando però da dove sia possibile "prelevarli"...
===Cosa sono i repository===
I repository sono una sorta di "lista" di installatori di programmi contenuti in un archivio. Quest'ultimo può trovarsi su supporto removibile (CD, DVD, ...) oppure in rete. Questi "installatori" ci permetteranno poi di installare un programma con tutti i pacchetti (dipendenze) relativi ad esso. Ma non anticipiamo troppo i tempi.
===Dove sono i repository e come si modificano===
I repository si trovano nel file /etc/apt/sources.list. Per modificarli, basta editare il file con qualsiasi editor di testo ed aggiungere quelli che si desiderano. In questa guida non vi annoierò cercando di capire quali sono quelli da installare; fatevi un giro in rete e troverete mille proposte, a voi scegliere ciò che preferite (del resto, sarebbe uguale voler dimostrare quale distro di GNU/Linux sia la migliore...). Inoltre, per incominciare, nei repository ufficiali della debian (configurati in modo automatico durante l'installazione) troverete già tantissime applicazioni; saranno nuove esigenze che vi porteranno ad aggiungerne magari altri, magari niente.
==Domenica: aggiorniamo il sistema e installiamo i programmi==
Yuppi! Ecco il giorno che aspettavo! Finalmente installerò tutti i programmi che mi servono e la mia nuova debian sarà così pronta per il mio uso quotidiano. Allora, incominciamo ad aggiornare il sistema...
===Aggiornare il sistema===
Essendo le liste dei repository in continuo aggiornamento, per ottenere sempre le liste aggiornate digitiamo:
<pre>~$ sudo apt-get update</pre>
A questo punto possiamo aggiornare il nostro sistema (e i programmi già installati) con i seguenti comandi:
<pre>~$ sudo apt-get upgrade
oppure ~$ sudo apt-get dist-upgrade</pre>
A dire il vero l'''oppure'' non è propriamente corretto. Con il primo comando andremo ad aggiornare tutti i pacchetti presenti nel sistema SENZA installare dei nuovi pacchetti e SENZA eliminarne. Con il secondo comando andremo ad eseguire la stessa operazione, ma questa volta, se sono presenti nuovi pacchetti verranno installati e pacchetti non più presenti saranno eliminati. In tutti e due i casi, il sistema ci avviserà sempre dei cambiamenti che verranno effettuati e dovremo confermare la nostra scelta con un bel ''yes''.
===Installare programmi con apt===
Ogni programma dipende da vari pacchetti che a loro volta possono interagire con altri pacchetti ancora. Pensate ora se dovessimo installare un programma e dovessimo poi cercare "a manina" tutto ciò che occorre per farlo funzionare, senza poi inoltre avere brutte interazioni con gli altri programmi... brrrr... Per fortuna apt fa tutto ciò per noi. Possiamo utilizzarlo sia in modalità grafica che in modalità da linea di comando.
====Apt e shell====
In questa guida lo abbiamo già utilizzato più di una volta per installare i programmi che ci servivano; la sintassi è semplice:
<pre>~$ sudo apt-get install <nomepacchetto>    (per installare un programma)
~$ sudo apt-get remove <nomepacchetto>    (per disinstallare un programma)</pre>
Un piccolo trucco per visualizzare in modo rapido i vari pacchetti sta ancora una volta nel tasto "tab": oltre a completare il nome di un pacchetto presente nei repository, si può anche premere due volte ottenendo la lista di tutti i pacchetti che iniziano con le lettere digitate. Ad esempio, digitando ~$ sudo apt-get install gnome (e premere due volte tab), otteniamo la lista di tutti i pacchetti che incominciano con "gnome".
====Apt e Synaptic====
Come detto, apt si può anche utilizzare in veste grafica con il programma Synaptic package Manager, presente nel menu sistema -> amministrazione. Il programma è molto intuitivo: per ad esempio installare un pacchetto basta cercarlo nella lista e "cliccarlo" con il tasto destro, scegliendo l'opzione "installa" fra quelle possibili. Tutte le funzionalità del programma le lascio scoprire da voi...
===Installare pacchetti .deb e da sorgenti===
Le opzioni presenti nel sottotitolo sono le altre possibilità per installare un programma sulla debian. Alle prime armi è però tutto sconsigliato, in quanto di difficile gestione, fra dipendenze ed interazioni. Inoltre con apt potete installare una moltitudine di programmi fino a saturare le vostre capacità d'immaginazione. Per programmi recenti imparerete poi ad utilizzare i backports o a mixare releases diverse. Apt non finirà mai di stupirvi!
==Conclusione==
Finisce così questa guida. Essendo io stesso alle prime armi ho cercato di riassumere gli affanni più grandi che ho avuto, dando per ognuno uno spunto dal quale incominciare. Sperando di avervi dato alcune basi per "resistere" i primi giorni a fianco della debian, non vi resta ora che lanciarvi appieno nel fantastico mondo del free software ed apprendere ogni giorno qualcosina in più. La rete è piena di risorse e ogni volta che un nuovo problema compare, pensate che qualcuno da qualche parte nel mondo avrà già vissuto la stessa identica cosa... e oggigiorno, il mondo è piccolo...

Versione attuale delle 18:39, 3 nov 2019

Emblem-important.png Attenzione. Questa guida è obsoleta. Viene mantenuta sul Wiki solo per motivi di natura storica e didattica.


Questa piccola guida nasce con l'idea di rendere meno traumatico l'approccio al mondo debian da parte dell'utente principiante e alle prime armi con sistemi basati su GNU/Linux. L'idea è di dare la possibilità all'utente di installare un sistema debian funzionante sul proprio computer e di apprenderne le basi. In sintesi, la trascrizione dei primi pensieri e delle prime operazioni nel nuovo sistema operativo.

Lunedì: partizioniamo il disco

Dopo anni passati con il Mac, ormai ho deciso: questa settimana installerò Debian! Il problema è che, almeno per il momento, non vorrei abbandonare del tutto il mio vecchio sistema operativo... chissà se è possibile? E chissà quali complicate operazioni dovrò affrontare?

Premessa: BIOS, MBR e File System

L'accensione di un computer è il risultato di alcuni processi in ordine definito:

  1. Subito dopo l'accensione parte il BIOS (Basic Input-Output System): un programma che gestisce l'accesso all'hardware del computer e trova il disco di avvio.
  2. Dando inizio all'avvio parte il MBR (Master Boot Record): questo programma si trova all'inizio dell'hard-disk e avvia il boot loader.
  3. Il boot loader è un programma che ci permetterà di avviare un sistema operativo su una determinata partizione del disco.

Non facciamoci spaventare da queste prime righe: volevo solo dare un'introduzione (del resto molto semplificata), citando boot loader e partizioni che ci serviranno per installare Debian. Tra l'altro ormai il BIOS nei nuovi PC è stato rimpiazzato dall'EFI, che usa un altro metodo di gestione delle partizioni (cioè il GPT, ma può sempre usare il MBR se opportunamente configurato). In ogni caso, andiamo avanti e concentriamoci sui file system.

File System

Un file system è un metodo d'immagazzinamento e organizzazione dei file su un dispositivo d'archiviazione, come ad esempio un hard disk: in questo caso si parlerà di file system del disco. Tra i file system del disco più conosciuti troviamo:

FAT, FAT32  ->  DOS e Microsoft Windows
NTFS        ->  Microsoft Windows NT 
HFS+        ->  Mac OS X
ext3, ext4  ->  GNU/Linux

Per un sistema misto dovremo ricordarci che sia da OSX che da Windows non è possibile visualizzare direttamente le partizioni ext4. Qualche "trucco" esiste comunque, anche se la soluzione più semplice è quella di creare una partizione in FAT32 (sarebbe anche meglio in exFAT, detta anche FAT64, ma purtroppo Linux non la supporta ancora al meglio) visibile da tutti e tre i sistemi (e quindi utilizzabile per accedere ai file da qualsiasi sistema operativo o per trasferirli da un sistema all'altro). Nel prossimo capitolo vedremo come fare.

Boot loader

Il boot loader, come detto sopra, è un programma che ci permette l'avvio di un sistema operativo su una determinata partizione; nel caso di più sistemi operativi (su partizioni diverse), il boot loader ci permetterà di scegliere il sistema operativo da avviare. Nei sistemi GNU/Linux il boot loader per eccellenza è GRUB (GRand Unified Bootloader). Se abbiamo già installato MacOSX o Windows potremo utilizzarlo per il multi-boot (vedi martedì). GRUB sarà scritto nel MBR ed andrà a sovrascrivere il boot loader già presente. Una volta installato, GRUB penserà a gestire i vari sistemi operativi: all'avvio del computer potremo scegliere da un menu quale sistema operativo avviare.

Partizioni necessarie

Per concludere questa prima giornata vediamo ora le partizioni che necessitiamo per installare il nostro nuovo sistema operativo:

NTFS   -> se teniamo il nostro Windows XP, 7 o 8.x, lo ritroveremo su una partizione con questo file system
HFS+   -> se teniamo il nostro MacOS X, lo ritroveremo su una partizione con questo file system
ext4   -> sarà il file system per la partizione sulla quale installeremo Debian
FAT32  -> potremmo creare questa partizione per leggere o scambiare dei file fra i vari sistemi operativi
swap   -> collocata su un file system swap, si tratta di una memoria virtuale che ci servirà per Debian

Tutte queste partizioni possono essere create con l'installer di Debian (anche volendo lasciare il vecchio sistema operativo); dunque, visto che siamo agli inizi, non andiamo a complicarci la vita e corriamo a prendere il CD d'installazione (o la chiavetta USB)!

Martedì: installiamo Debian

Cavoli! Non sto più nella pelle! Ieri mi sono ben documentato sulle partizioni; ho deciso così: voglio mantenere MacOSX e mi farò una bella partizione FAT32 per condividere i file fra i due sistemi operativi. Poi installerò GRUB e lo utilizzerò per scegliere il sistema operativo all'avvio. Per fortuna non dovrò fare niente di difficile: penserà a tutto l'installer di Debian! Ma dove lo trovo?

Reperire un CD d'installazione Debian

Tutte le informazioni riguardo Debian si trovano sul sito principale della distribuzione: http://www.debian.org/. Se abbiamo a disposizione un accesso ad internet, potremo scaricare una versione minimale del sistema (netinst) e installare il resto dalla rete. Altrimenti possiamo scaricare i CD (o DVD) con tutti i pacchetti a disposizione. In entrambi i casi dovremo scaricare una versione adatta all'architettura del nostro processore (ad es. "powerpc", "i386", ecc.). Oltre alla rete ci sono varie riviste che potrebbero offrire i CD d'installazione, così come negozi specializzati ai quali è possibile indirizzarsi.

Incomincia l'installazione!

Come tutte le nuove installazioni cominceremo con un bel back-up del nostro vecchio sistema con tutti i nostri dati... Ok, si parte! Inseriamo il CD nel computer e riavviamo. Quest'ultimo dovrà sopportare il boot da CD. Se non riusciamo nell'intento, un doppio-clic sul CD e ci verrà proposta l'installazione di un installer sul nostro computer: questo ci farà un "riavvia" e ci darà la possibilità di avviare l'installer all'inizio del boot.
Per quanto riguarda poi l'installazione vera e propria ci sono centinaia di guide in rete e non commenterò dunque punto per punto, dando solo delle indicazioni per i punti più importanti:

Prima schermata

"Press F1 for help, or ENTER to boot". Leggere gli aiuti sarebbe sempre una cosa importante... In ogni caso, se tralasciate questo punto e premete ENTER per incominciare vi ritroverete in modalità testuale. Per la comoda interfaccia grafica, dare il comando: installgui ENTER.

Partizionamento del disco

v. sotto.

Scelta dei Software

Assolutamente da installare è il sistema standart e l'ambiente Desktop. Se si ha un laptop si sceglie evidentemente anche questa opzione.

GRUB

Assolutamente rispondere di sì; GRUB verrà installato nel MBR permettendo il multi-boot (avvio del sistema operativo a scelta).

Warning.png ATTENZIONE
Se si re-installa Windows (o Mac) il MBR verrà sovrascritto e bisognerà re-installre GRUB.


Partizionamento del disco

Dopo le prime impostazioni del sistema, arriviamo infine al partizionamento del disco. L'installer ci propone di formattare tutto il disco per installare il nuovo sistema operativo (non che sia una brutta idea, ma per incominciare...). Per mantenere il nostro vecchio sistema dovremo dunque scegliere la modalità manuale. A questo punto dobbiamo ridimensionare la partizione contenente il sistema operativo per avere dello spazio libero sul quale creare le nuove partizioni. Ciò, semplicemente seguendo le proposte dell'installer. Una volta ottenuto dello spazio libero possiamo creare le nuove partizioni. Si potrebbe fare in modo automatico dicendo all'installer di utilizzare tutto lo spazio libero per installare debian (forse la scelta migliore, ma io volevo ancora avere una partizione FAT32...). Se vogliamo invece crearci le partizioni in modo manuale dovremo prestare attenzione solo ad alcune cosette:

  • la partizione su cui installeremo la debian deve avere un file system Ext3, essere "bootabile" (vedremo una "B" nell'indice, prima era nella partizione del vecchio sistema), essere "primaria" e avere come indice di partenza "/".
  • la swap deve avere un file system swap, essere "locale" ed essere grande almeno quanto la memoria RAM.
  • la partizione con file system FAT32 deve essere "primaria".

N.B.: un'opzione semplificata potrebbe essere quella di dire all'installer di utilizzare tutto lo spazio libero per il nuovo sistema operativo; avrete così la partizione ext3 e swap "gestita" dall'installer; poi, per creare la partizione con FAT32, potete ridimensionare la ext3 guadagnando spazio e utilizzando quest'ultimo per creare l'ultima partizione in modo manuale.

Mercoledì: tastiera, risoluzione schermo e shell

Oggi accendo finalmente il pc dopo aver installato la mia prima debian. Un po' di scritte... ecco, adesso posso loggarmi... e finalmente ecco il mio bel desktop! Peccato che la mia eccitazione già si arresta appena provo a scrivere due cosettine... i caratteri visualizzati non corrispondono ai tasti premuti... mhmm... lo sapevo che non potevo utilizzare la tastiera del mac...

La tastiera

Per "sintonizzare" la tastiera abbiamo due possibilità: utilizzare le preferenze di GNOME o modificare il file /etc/X11/xorg.conf

Preferenze GNOME

Dal menu nella barra superiore scegliere: sistema > preferenze > tastiera. Sotto "Layouts" scegliere il modello (ad es. per mac, macintosh) e la lingua predefinita. Sempre nel caso Apple, per configurare il tasto "Alt-Gr" si può andare sotto "Layout Options" > "Third level choosers" e scegliere Left win-key o Right win-key per avere il tasto "mela" di sinistra o destra come un "Alt-Gr".

/etc/X11/xorg.conf

In questo file troviamo la configurazione del sistema grafico. La tastiera la troviamo sotto Identifier "Generic Keyboard" o qualcosa del genere. A destra di Option "XkbModel" avremo il modello, ad esempio "macintosh", con Option "XkbLayout" avremo la lingua, ad esempio "it". Se si volesse ancora una volta abilitare un tasto "mela" con la funzione di "Alt-Gr", bisognerà aggiungere l'opzione Option "XkbOptions" "lv3:lwin_switch" per la "mela" di sinistra o "lv3:rwin_switch" per quella di destra.

A questo punto una domanda è però lecita: come si modifica il file /etc/X11/xorg.conf? Dalla shell... vediamo quasi subito...

La risoluzione dello schermo

In questo caso si può scegliere da sistema > preferenze > risoluzione monitor un valore. Se non dovrebbe esserci quello che cerchiamo bisognerà ancora una volta modificare il file /etc/X11/xorg.conf. Questa volta cercheremo la parte con Identifier "Default screen". Nelle susseguenti Subsection "Display" andremo sotto "Modes" ad inserire la risoluzione cercata.

Warning.png ATTENZIONE
non è detto che inserendo una risoluzione sotto "Modes" venga correttamente accettata; questo perchè la risoluzione è dipendente anche dai drivers utilizzati. In altre parole, se dovreste avere problemi a riguardo, consultate la rete per accertare il vostro driver ed eventuali istruzioni per aggiornarlo/cambiarlo.


La shell

Giusto per chiarire i termini, la shell è la linea di comando (= terminale). In debian si chiama bash. È uno strumento molto potente e alla base di tutte le impostazioni del sistema operativo. Come citato sopra, utilizzeremo la shell per avere i diritti di superuser per poter modificare il file /etc/X11/xorg.conf. Per prima cosa controlliamo se abbiamo installato sudo (superuser do; questo comando ci permette di fare delle azioni come superuser, senza però doverci "loggare" in quanto tale):

~$ su (invio), dare la password, ~# apt-get install sudo

Se è già installato il sistema ci avviserà, altrimenti si potrà installare il programma (maggiori dettagli sull'installazione dei programmi si trovano nell'ultima giornata). Per fare il logout da superuser semplicemente scrivere "exit" ed invio. Poi dobbiamo dare al nostro utente i diritti di superuser. Per fare ciò dovremo loggarci dapprima come superuser e poi modificare il file /etc/sudoers tramite un editor di testo su shell. Per questioni di semplicità utilizzeremo "nano":

~$ su (invio), dare la password, ~# nano /etc/sudoers

A questo punto otterremo una mini interfaccia grafica; fra le righe troveremo la seguente linea:

root      ALL=(ALL) ALL ; dove sotto aggiugeremo (spostando il cursore con le frecce)
<nostronomeutente>  ALL=(ALL) ALL

Per concludere, ctrl+O per salvare ed infine ctrl+X per uscire. Quando vorremo ora eseguire un'azione con diritti da superuser (amministratore) basterà digitare "sudo" e poi l'azione voluta.
Torniamo ora alla modifica del nostro xorg.conf. Il modo più semplice è di modificarlo con gedit (gnome). Daremo il comando:

~$ sudo gedit /etc/X11/xorg.conf

Avremo così aperto il file con un editor grafico, gedit appunto, e grazie a sudo avremo i diritti di scrittura per modificarlo. Nel capitolo relativo ai permessi vedremo altri comandi base della shell ed un chiarimento sui permessi di scrittura di un file.

Giovedì: allacciamoci alla rete

Con il cavo dell'ethernet conficcato nella scheda ho potuto per fortuna installare sudo... ora però vorrei capire meglio come funziona la rete e come potrei configurarla. E se volessi anche un Wireless? Già non ci capisco più niente...

Configurare la rete tramite il file /etc/network/interfaces

Rete ethernet cablata

Per configurare una rete esistono varie applicazioni grafiche (come network-manager), ma il consiglio è quello di configurarla con il file sopracitato (che verrà "caricato" durante l'accensione del pc); una volta capito il sistema non avrete così mai un problema. Come prima cosa, onde evitare spiacevoli interazioni con il sistema grafico, andremo a disinstallare il network-manager:

~$ sudo apt-get remove network-manager network-manager-gnome

Avendo fatto l'installazione tramite la net-install e la rete diamo per scontato che la scheda ethernet funziona. Per vedere le schede di rete del nostro sistema diamo il comando:

~$ sudo ifconfig -a

Otterremo una lista con a sinistra i nome delle interfacce e a destra la loro configurazione (con ifconfig senza "-a" vedremo solo le schede attive). La scheda ethernet dovrebbe avere un nome tipo "eth0" (o "eth1", ...). La scheda con il nome di "lo" al momento la lasceremo perdere, non ci servirà. Per configurare ora la scheda andiamo a editare il file /etc/network/interfaces (alias lo apriamo con gedit in modalità amministratore, così da poterlo modificare; volutamente non vi scrivo come fare, ma è la stessa cosa di come abbiamo fatto con /etc/X11/xorg.conf, vero?). Otterremo qualcosa del genere:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet dhcp

La scheda viene "caricata" all'accensione del sistema (auto eth0) e viene utilizzata tramite dhcp (inet dhcp). Per configurare una rete con ip fisso vi lascio a guide più dettagliate, presenti ovunque e dovunque in rete (a partire da debianizzati).

Rete Wireless

Come prima cosa dobbiamo installare un pacchetto per la gestione del wireless:

~$ sudo apt-get install wireless-tools

Fatto questo, un requisito fondamentale è avere una scheda wireless riconosciuta dal sistema. Per verificare daremo il comando:

~$ sudo iwconfig

Come abbiamo visto con ifconfig, avremo sulla sinistra le sigle delle interfacce di rete e sulla destra le loro caratteristiche. La scheda ethernet avrà la descrizione "no wireless extensions.", così come "lo". La nostra scheda wireless non avrà dunque questa scritta, ma un elenco di parametri (tipo ESSID, Mode, ...). Il nome può variare a seconda dei drivers utilizzati (wlan0, ra0, eth1, eth2, ...).

Warning.png ATTENZIONE
se la scheda wireless non viene visualizzata bisogna installare dei drivers (o magari anche solo un firmware). La procedura varia molto a seconda della scheda utilizzata. Il procedimento non verrà dunque descritto. Un buon inizio è dare il comando "lspci" per visualizzare il chipset della scheda e consultare la rete (alias google, forum, ...) per il procedimento d'installazione.


Per vedere le reti wireless accessibili alla nostra scheda diamo il comando:

~$ sudo iwlist scan

Sceglieremo poi la rete alla quale vogliamo collegarci e annoteremo il nome ESSID e il numero di canale (Channel). A questo punto, editiamo ancora una volta il nostro file /etc/network/interfaces e aggiungeremo le seguenti righe (ammettiamo di avere la scheda wireless "wlan0":

auto wlan0                          (vogliamo "caricare" la scheda all'avvio)
iface wlan0 inet dhcp               (chiediamo un ip tramite dhcp)
wirless-essid <nomerete>            (scegliamo a che rete collegarci)
wireless-channel <numerocanale>     (scegliamo il canale)
wireless-key s: <password rete>     (diamo la password se necessario)

Questo sistema funziona con una rete aperta o con chiave WEP. Per una rete con WPA si può configurare "wpasupplicant" (divertitevi con le ricerche: google, forum, ...); il metodo forse però più semplice è quello di editare il nostro file nel modo seguente;

auto wlan0                              (vogliamo "caricare" la scheda all'avvio)
iface wlan0 inet dhcp                   (chiediamo un ip tramite dhcp)
pre-up ifconfig wlan0 up                (carichiamo "al volo" l'interfaccia)
pre-up iwconfig wlan0 essid <nomerete>  (scegliamo a che rete collegarci)
pre-up iwconfig wlan0 mode Managed      (scegliamo il modo [visibile con lo scanning])
pre-up iwconfig wlan0 channel 1         (scegliamo il canale)
pre-up iwpriv wlan0 set AuthMode=WPAPSK (scegliamo il tipo di WPA)
pre-up iwpriv wlan0 set EncrypType=TKIP (scegliamo il tipo di criptazione)
pre-up iwpriv wlan0 set WPAPSK=xxxxxxxx (diamo la password)
Warning.png ATTENZIONE
la password deve venire scritta in modo criptato!


Per fare ciò possiamo installare in ogni caso il pacchetto "wpasupplicant" e poi criptare la nostra password con:

~$ sudo apt-get install wpasupplicant     ; dopo aver installato il pacchetto digitiamo:
~$ wpa_passphrase <nomerete> <password>

L'output sarà la password criptata. Non ci resta che ricopiarla nel nostro /etc/network/interfaces. Per utilizzare ora la nostra scheda dobbiamo riavviare la rete con:

~$ sudo /etc/init.d/networking restart

Onde evitare interazioni potete disabilitare la scheda ethernet, mettendo il segno "#" davanti alle righe che la concernono (auto eth0 e iface eth0 inet dhcp). Come già detto, per la configurazione di wpasupplicant e tutte le reti più complesse, spazio ad altre guide ;-) !

Venerdì: permessi e spostamento files/cartelle

Con il week end alle porte sono oggi invogliato a "fare un giretto" nella mia nuova debian. Provo a spostarmi fra le cartelle, ordinare dei file... ma... alcuni file non me li lascia spostare... Non ho i diritti... Ma se il computer è il mio?! Uffa... e adesso che faccio? Vorrei magari viaggiare anche un po' con la shell, ma con tutti questi comandi assurdi, non ci si capisce niente!

comandi base shell

A metà settimana abbiamo imparato i primi comandi della shell (sudo e editare un testo con diritti d'amministratore); oggi vedremo dei comandi semplici per muoverci all'interno del sistema.

~$ cd [percorso] => per spostarci fra le cartelle.

Ad es. cd /home/[nostro nome utente] ci porterà nella nostra cartella d'utente (quella che di default è "selezionata" quando apriamo una sessione di shell), cd / ci porterà nella cartella principale del sistema. Con il comando cd .. "retrocediamo" di una cartella. Non hai capito? Prova...

Per "percorrere" le cartelle esiste un metodo molto pratico che ci farà risparmiare tempo ed errori: il tasto "TAB" (quello per fare i rientri, sulla tastiera in alto a sinistra), che completerà automaticamente le parole. Ad es. per editare il file /etc/network/interfaces "tippiamo": sudo ged [tab] /e [tab] net [tab] / in [tab].

~$ ls => ci mostra il contenuto della cartella attuale.

Con il comando ls -a vedremo anche le cartelle o i file nascosti (preceduti da un punto), con ls -l vediamo dei dati supplementari per ogni elemento della cartella (dettagli in "permessi").

~$ mv [file/cartella] [nuova location o nuovo nome file] => sposta o rinomina un file o una cartella.

È anche possibile eseguire entrambe le operazioni dando un nuovo nome al file/cartella ed una nuova location. Attenzione ai permessi... (vedi sotto).

~$ rm [file] => rimuove un file. Per rimuovere cartelle, rm -r [cartella].

Attenzione ai permessi... (vedi sotto).

~$ cp [file] [location e nome file] => copia un file. Per copiare cartelle, cp -r [cartella] [location e nome cartella].

Come con mv, è possibile rinominare "al volo" (dando un nuovo nome) la copia del file. Attenzione ai permessi... (vedi sotto).

Per tutti gli altri comandi troverete istruzioni su debianizzati e nella rete. Per capire la sintassi di un comando o visualizzare le opzioni possibili esistono due comandi molto comodi:

~$ man [comando] => mostra il funzionamento del comando. Ad es. man cp (premere "q" per uscire).
~$ [comando] --help => più o meno la stessa cosa, forse qualche dettaglio in meno.

Permessi

Per avere un'idea, proviamo a dare il comando ls -l nella cartella principale (sapete come "andarci", vero?). Fra tutte le cartelle prendiamo in analisi la home:

drwxr-xr-x   3 root root  4096 2007-12-05 17:41 home

Da sinistra verso destra otteniamo le segunti informazioni:

  • d: sta per directory -> l'elemento è una cartella.

Le prossime lettere si leggono a tre a tre, rispettivamente per proprietario, gruppo, tutti gli altri. Le lettere significano:

  • r: sta per read -> è possibile leggere l'elemento.
  • w: sta per write -> è possibile scrivere/manipolare l'elemento.
  • x: sta per executable -> è possibile far eseguire l'elemento.

Nel nostro esempio, la home ha i seguenti attributi:

  • proprietario: può leggere, scrivere/manipolare e "eseguire" l'elemento.
  • gruppo: può leggere e "eseguire" l'elemento, ma non scriverlo/manipolarlo.
  • tutti: possono leggere e "eseguire" l'elemento, ma non scriverlo/manipolarlo.
  • 3: sta per il numero degli elementi inclusi. Se è una cartella è il numero dei file in essa, se è un file i valore sarà 1.
  • root: è il nome del proprietario del file o della cartella.
  • root: (il secondo nome) è il nome del gruppo al quale appartiene l'elemento.
  • 4096: è la dimensione dell'elemento in bytes. N.B. per una cartella, non si tratta della somma di tutti gli elementi in essa, ma solo dello spazio che occupa la cartella vuota.
  • 2007-12-05 17:41: data e orario di creazione/modifica.
  • home: nome dell'elemento.

A questo punto capiamo perchè non ci era possibile modificare il file /etc/network/interfaces; questo appartiene a root (-rw-r--r-- 1 root root 719 2007-12-11 10:21 interfaces) e solo root può scriverlo. Perciò dobbiamo avere i privilegi da root (ottenuti con sudo, grazie al file /etc/sudoers) per modificarlo. La stessa cosa vale per spostare dei files dei quali non siamo il proprietario. In generale, l'unica cartella del sistema che ci appartiene (come utente) è la cartella /home/[nostro nome utente] con tutto il suo contenuto.

Cambiare permessi/proprietario

Per cambiare i permessi di un elemento abbiamo il comando chmod. Questo comando ha due sintassi possibili: una con ugo+/-rwx e l'altra con 3 numeri (4,2,1). In questa guida vi indicherò come si utilizza il sistema "numerico", per l'altro metodo, vi ricordate come si "studia" un comando? man...
I numeri rappresentano i permessi:

  • 4: sta per read -> leggere.
  • 2: sta per write -> scrivere/manipolare.
  • 1: sta per executable -> eseguibile.

Per dare i permessi ad un elemento non faremo nient'altro che calcolare la somma dei permessi che si vogliono attribuire e darli nell'ordine: proprietario, gruppo, altri. Per dare un esempio, per dare i permessi ad un file uguali alla cartella home (vedi sopra), daremo:

~$ chmod 755 [file] ; per una cartella ~$ chmod -R 755 [cartella]

Mi sembra inutile aggiungere che per modificare i diritti di un elemento bisogna essere il proprietario o averne i diritti (v. sudo).

Per cambiare il proprietario o il gruppo di un elemento abbiamo il comando chown:

~$ chown [nuovo nome proprietario]:[nome nuovo gruppo] ; per una cartella chown -R [nuovo nome proprietario]:[nome nuovo gruppo]

Sabato: repository... ?

OK, lentamente ci siamo. Il mio sistema incomincia a prendere forma e sento che sono quasi pronto ad installare i miei primi programmi. Mi domando però da dove sia possibile "prelevarli"...

Cosa sono i repository

I repository sono una sorta di "lista" di installatori di programmi contenuti in un archivio. Quest'ultimo può trovarsi su supporto removibile (CD, DVD, ...) oppure in rete. Questi "installatori" ci permetteranno poi di installare un programma con tutti i pacchetti (dipendenze) relativi ad esso. Ma non anticipiamo troppo i tempi.

Dove sono i repository e come si modificano

I repository si trovano nel file /etc/apt/sources.list. Per modificarli, basta editare il file con qualsiasi editor di testo ed aggiungere quelli che si desiderano. In questa guida non vi annoierò cercando di capire quali sono quelli da installare; fatevi un giro in rete e troverete mille proposte, a voi scegliere ciò che preferite (del resto, sarebbe uguale voler dimostrare quale distro di GNU/Linux sia la migliore...). Inoltre, per incominciare, nei repository ufficiali della debian (configurati in modo automatico durante l'installazione) troverete già tantissime applicazioni; saranno nuove esigenze che vi porteranno ad aggiungerne magari altri, magari niente.

Domenica: aggiorniamo il sistema e installiamo i programmi

Yuppi! Ecco il giorno che aspettavo! Finalmente installerò tutti i programmi che mi servono e la mia nuova debian sarà così pronta per il mio uso quotidiano. Allora, incominciamo ad aggiornare il sistema...

Aggiornare il sistema

Essendo le liste dei repository in continuo aggiornamento, per ottenere sempre le liste aggiornate digitiamo:

~$ sudo apt-get update

A questo punto possiamo aggiornare il nostro sistema (e i programmi già installati) con i seguenti comandi:

~$ sudo apt-get upgrade
oppure ~$ sudo apt-get dist-upgrade

A dire il vero l'oppure non è propriamente corretto. Con il primo comando andremo ad aggiornare tutti i pacchetti presenti nel sistema SENZA installare dei nuovi pacchetti e SENZA eliminarne. Con il secondo comando andremo ad eseguire la stessa operazione, ma questa volta, se sono presenti nuovi pacchetti verranno installati e pacchetti non più presenti saranno eliminati. In tutti e due i casi, il sistema ci avviserà sempre dei cambiamenti che verranno effettuati e dovremo confermare la nostra scelta con un bel yes.

Installare programmi con apt

Ogni programma dipende da vari pacchetti che a loro volta possono interagire con altri pacchetti ancora. Pensate ora se dovessimo installare un programma e dovessimo poi cercare "a manina" tutto ciò che occorre per farlo funzionare, senza poi inoltre avere brutte interazioni con gli altri programmi... brrrr... Per fortuna apt fa tutto ciò per noi. Possiamo utilizzarlo sia in modalità grafica che in modalità da linea di comando.

Apt e shell

In questa guida lo abbiamo già utilizzato più di una volta per installare i programmi che ci servivano; la sintassi è semplice:

~$ sudo apt-get install <nomepacchetto>    (per installare un programma)
~$ sudo apt-get remove <nomepacchetto>     (per disinstallare un programma)

Un piccolo trucco per visualizzare in modo rapido i vari pacchetti sta ancora una volta nel tasto "tab": oltre a completare il nome di un pacchetto presente nei repository, si può anche premere due volte ottenendo la lista di tutti i pacchetti che iniziano con le lettere digitate. Ad esempio, digitando ~$ sudo apt-get install gnome (e premere due volte tab), otteniamo la lista di tutti i pacchetti che incominciano con "gnome".

Apt e Synaptic

Come detto, apt si può anche utilizzare in veste grafica con il programma Synaptic package Manager, presente nel menu sistema -> amministrazione. Il programma è molto intuitivo: per ad esempio installare un pacchetto basta cercarlo nella lista e "cliccarlo" con il tasto destro, scegliendo l'opzione "installa" fra quelle possibili. Tutte le funzionalità del programma le lascio scoprire da voi...

Installare pacchetti .deb e da sorgenti

Le opzioni presenti nel sottotitolo sono le altre possibilità per installare un programma sulla debian. Alle prime armi è però tutto sconsigliato, in quanto di difficile gestione, fra dipendenze ed interazioni. Inoltre con apt potete installare una moltitudine di programmi fino a saturare le vostre capacità d'immaginazione. Per programmi recenti imparerete poi ad utilizzare i backports o a mixare releases diverse. Apt non finirà mai di stupirvi!

Conclusione

Finisce così questa guida. Essendo io stesso alle prime armi ho cercato di riassumere gli affanni più grandi che ho avuto, dando per ognuno uno spunto dal quale incominciare. Sperando di avervi dato alcune basi per "resistere" i primi giorni a fianco della debian, non vi resta ora che lanciarvi appieno nel fantastico mondo del free software ed apprendere ogni giorno qualcosina in più. La rete è piena di risorse e ogni volta che un nuovo problema compare, pensate che qualcuno da qualche parte nel mondo avrà già vissuto la stessa identica cosa... e oggigiorno, il mondo è piccolo...