ImageQuesto how-to ha lo scopo di guidarvi nell'installazione e configrazione della distribuzione SlackWare sul notebook bestseller Dell Inspiron 6400. Scoprirete che "la Slack" non è ostica come dicono.


Indice

        3.1 Output di lspci
        3.2 Partizioni dell' Hard DiskImage

        4.1 Considerazioni
        4.2 Installazione
            4.2.1 Creazione delle partizioni
            4.2.2 Installazione del Lilo BootLoader
            4.2.3 Preparativi per il primo avvio
                4.2.3.1 Utilizzo di una Pen Drive
                4.2.3.2 Utilizzo di un Cd-Rom
                4.2.3.3 Utilizzo, sotto Windows, di Ext2fs

        5.1 Considerazioni
        5.2 Impostazione di tastiera e mousepad
        5.3 Kde in lingua italiana
        5.4 Rimozione di Alsa

        6.1 Considerazioni ed Upgrade
        6.2 Configurazione
            6.2.1 Dual Core Processor
            6.2.2 Controller Sata HD e DVD
            6.2.3 Acpi e Suspend2
            6.2.4 Audio
            6.2.5 Touchpad
            6.2.6 Filesystem
        6.3 Riavvio del Sistema

        7.1 Ati
        7.2 Wireless ipw3945d
        7.3 Audio (Alsa)
        7.4 Touchpad Synaptics
        7.5 Pulsanti multimediali
        7.6 Suspend2

1 Introduzione

Questo "HowTo" è rivolto all'Installazione della distribuzione Slackware 10.2 sul notebook Dell Inspiron 6400. In modo particolare si concentra sulla realizzazione di una pacifica convivenza della nostra distro con le tre partizioni Dell preimpostate.
Sebbene sia stata da poco rilasciata l'ultima release di Slackware (versione 11.0) penso che il presente articolo possa essere
ancora utile soprattutto in riferimento alle sezioni di "Configurazione del Kernel" e a quelle dedicate ai "Third-Party Drivers".

Dispositivo  Status  Note 
Intel Centrino Duo (Yonah) T2500 - 2.0 Ghz Ok attivare il supporto SMP nel kernel
ATI Mobility Radeon X1400 - 256MB HyperMemory  Ok driver proprietari Ati
Scheda Ethernet Broadcom BCM4401-B0 100Base-TX Ok Modulo kernel b44
Intel Pro/Wireless 3945ABG (802.11 a/b/g wireless card) Ok http://ipw3945.sourceforge.net
Fujitsu MHV2100BH 100GB SATA Hard Drive Ok kernel SCSI/SATA Drivers
SONY DVD+-RW DW-Q58A Ok kernel SCSI/SATA Drivers
Synaptics touchpad Ok http://web.telia.com/~u89404340/touchpad/
Sound Card Sigmatel Ok Modulo kernel snd-hda-intel
European Bluetooth Module Ok  
ACPI Ok  
Ricoh Secure Digital/MMC card reader Il controller viene riconosciuto ma, con la card inserita (SD, xD)
non viene creato il relativo device.
Firewire IEEE 1394 Non Testato
Modem Conexant HDA D1110 MDC V.92 Non Testato

2 Software

  • Kernel source 2.6.17
  • Graphic card Ati linux drivers
  • ieee subsystem: ieee80211-1.2.15
  • Binary Microcode Image: ipw3945-ucode-1.13
  • Regulatory daemon: ipw3945d
  • Moduli Intel Pro/Wireless 3945
  • alsa-lib-1.0.12
  • alsa-utils-1.0.12
  • alsa-oss-1.0.12 xhkeys-2.2.1
  • synaptics-0.14.6
  • suspend2-2.2.7-for-2.6.17
  • hibernate-script-1.93

3 Hardware devices

3.1 Output di lspci

# lspci
00:00.0 Host bridge: Intel Corporation Mobile Memory Controller Hub (rev 03)
00:01.0 PCI bridge: Intel Corporation Mobile PCI Express Graphics Port (rev 03)
00:1b.0 Class 0403: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 01)
00:1c.0 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 1 (rev 01)
00:1c.3 PCI bridge: Intel Corporation 82801G (ICH7 Family) PCI Express Port 4 (rev 01)
00:1d.0 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #1 (rev 01)
00:1d.1 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #2 (rev 01)
00:1d.2 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #3 (rev 01)
00:1d.3 USB Controller: Intel Corporation 82801G (ICH7 Family) USB UHCI #4 (rev 01)
00:1d.7 USB Controller: Intel Corporation 82801G (ICH7 Family) USB2 EHCI Controller (rev 01)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e1)
00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 01)
00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) Serial ATA Storage Controllers cc=IDE (rev 01)
00:1f.3 SMBus: Intel Corporation 82801G (ICH7 Family) SMBus Controller (rev 01)
01:00.0 VGA compatible controller: ATI Technologies Inc: Unknown device 7145
03:00.0 Ethernet controller: Broadcom Corporation BCM4401-B0 100Base-TX (rev 02)
03:01.0 FireWire (IEEE 1394): Ricoh Co Ltd: Unknown device 0832
03:01.1 Class 0805: Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapter (rev 19)
03:01.2 System peripheral: Ricoh Co Ltd: Unknown device 0843 (rev 01)
03:01.3 System peripheral: Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapter (rev 0a)
03:01.4 System peripheral: Ricoh Co Ltd xD-Picture Card Controller (rev 05)
0b:00.0 Network controller: Intel Corporation: Unknown device 4222 (rev 02)

3.2 Partizioni dell' Hard Disk

L'Hard Disk, così come fornito da Dell, è strutturato in 3 distinte Partizioni Primarie:

  • Partizione [Dell Media Direct]
  • Partizione di Sistema [WindowsXP]
  • Partizione [Dell System Restore]

La Partizione [Dell Media Direct] contiene "Dell Media Direct" accessibile tramite relativo pulsante sul notebook e "Dell Diagnostic"; è accessibile con F12 dal "Menù di Avvio" del sistema gestito dal Bios.
La Partizione di Sistema [WindowsXP] contiene il sistema operativo WindowsXP.

La Partizione [Dell System Restore] contiene il Dell System Restore che consente di ripristinare l'intero sistema alle originali impostazioni di fabbrica; accessibile tramite CTRL+F11 in fase di boot.

4 Installazione di Slackware

4.1 Considerazioni

Ipotizziamo di NON voler disinstallare WindowsXP presente sul Dell. Dovremo procedere, pertanto, ad un ridimensionamento della Partizione in cui WindowsXP è installato, utilizzando , ad esempio, Partition Magic. E' assolutamente consigliato effettuare una completa deframmentazione dell' Hard Disk prima di poter procedere all'effettivo ridimensionamento della partizione.

4.2 Installazione

Avviato il notebook con il boot da CD, l'installazione di Slackware verrà effettuata selezionando al boot: prompt il Kernel: sata.i
Questa configurazione di kernel fornisce, infatti, il supporto al nostro controller: Serial_ATA.

4.2.1 Creazione delle partizioni

Creiamo nello spazio non partizionato che abbiamo ottenuto con Partition Magic, almeno, due nuove unità logiche in partizione estesa:

  • Partizione Linux di Root
  • Partizione di Swap

Otteniamo così l'unità hda5 (prima unità logica della partizione estesa) ed hda6.
L'immagine seguente mostra la visualizzazione delle partizioni che fornisce cfdisk.

Image 

A differenza di quanto riportanto nell' immagine, in questa fase dell'installazione, le nostre partizioni sono indicate nel formato hdaX e NON sdaX. Successivamente, passando al kernel della serie 2.6 ed attivando nel Kernel i moduli libata e ata_piix, il formato identificativo del nostro Hard Disk sarà sda e non più "hda.

4.2.2 Installazione del Lilo BootLoader

Quando si sceglie "DOVE" installare il bootloader NON scegliere di installarlo sul MBR (Master Boot Record)! Ciò implicherebbe la sovrascrittura del MBR con conseguente impossibilità di lanciare:

  • WindowsXP
  • Dell Media Direct
  • Dell PC Restore (CTRL+F11)

Se dovesse "malauguratamente" :( capitare ciò' c'è, comunque, rimedio :) utilizzando i comandi (in ambiente Microsoft):

> fixboot
> fixmbr

ed utilizzando, poi, la Dell Media Direct Repair Utility (downloadabile dalla sezione Drivers del sito dell.com) per il ripristino totale del MBR personalizzato da Dell.
Scegliere, quindi di installare, il bootloader nel primo settore della partizione Linux di Root che, nel nostro caso, corrisponde ad hda5.

4.2.3 Preparativi per il primo avvio

Al termine dell'installazione riavviamo il Sistema con un nuovo boot da CD (CD1 di Slackware-Setup). Infatti, il MBR dell' Hard Disk non è stato "toccato" dall'installazione del Linux Bootloader; deve essere, quindi, "istruito" della presenza del nuovo Sistema Operativo. Nella pratica dobbiamo creare un file immagine, che chiameremo linux.bin, dei primi 512bytes della Partizione Linux di Root (ove abbiamo installato precedentemente il Lilo Bootloader) e successivamente trasferire il file "linux.bin" su Windows in C:\ Per effettuare il trasferimento di questo file da Linux a Windows abbiamo 3 soluzioni alternative:

4.2.3.1 Utilizzo di una Pen Drive

Selezioniamo, di nuovo, al boot: prompt il Kernel: sata.i e logghiamoci come root. Per accedere alla nostra installazione di Linux presente sull'hard disk dobbiamo "montare" la partizione linux di root. Procedere come segue:

# cd /mnt (ci spostiamo nella directory /mnt)
# mkdir pippo (creiamo in /mnt la directory pippo/)
# mount /dev/hdaX pippo/ (montiamo la partizione Linux di Root su pippo/. Nel nostro caso hda5)
# mount -t proc proc pippo/proc (montiamo proc su pippo/)
# chroot pippo (in questo modo siamo nella nostra Partizione Linux di Root)
# cd (ci posizioniamo nella directory root/)

proseguiamo creando il file "linux.bin" nella directory /root; in hdaX fare l'opportuna modifica (hda5):

# dd if=/dev/hdaX of=/root/linux.bin bs=512 count=1

Inseriamo, ora, la penna-usb ed eseguiamo i segg. comandi: (la penna-usb verrà vista come device "sda")

# mount /dev/sda /mnt/hd  (montiamo la penna-usb su /mnt/hd)
# cp /root/linux.bin /mnt/hd (copiamo il file linux.bin sulla penna-usb)
# umount /dev/sda (smontiamo la penna-usb)
# exit  (usciamo dall'ambiente)
# reboot (riavviamo per entrare in WindowsXP)

4.2.3.2 Utilizzo di un Cd-Rom

Selezioniamo al boot: prompt il Kernel: test26.s e logghiamoci come root. Per accedere alla nostra installazione di Linux presente sull'hard disk dobbiamo "montare" la partizione di root. Procedere come segue:

# cd /mnt  (ci spostiamo nella directory /mnt)
# mkdir pippo (creiamo in /mnt la directory pippo/)
# mount /dev/sdaX pippo/ (montiamo la partizione Linux di Root su pippo/. Nel nostro caso hda5)

Con il kernel 2.6 il controller dell'HD viene visto come SCSI/SATA

# mount -t proc proc pippo/proc (montiamo proc su pippo/)
# chroot pippo (in questo modo siamo nella nostra Partizione Linux di Root)
# cd (ci posizioniamo nella directory root/)

proseguiamo creando il file "linux.bin" nella directory /root; in sdaX fare l'opportuna modifica (sda5):

# dd if=/dev/sdaX of=/root/linux.bin bs=512 count=1

creiamo il file immagine Img.iso in /root

# mkisofs -iso-level 1 -o /root/Img.iso /root/linux.bin

Inseriamo, ora, un CD-R vergine ed eseguiamo i segg. comandi: (verrà inizializzato un CD Multisessione in modo da non sprecare un CD da 700MB per un file di soli 512bytes...!!!)
masterizziamo con:

# cdrecord -v dev=/dev/hdc:1,0,0 -multi -data -tao - eject - driveropts=burnfree /root/Img.iso

ed infine:

#  exit (usciamo dall'ambiente)
#  reboot (riavviamo per entrare in WindowsXP)

 4.2.3.3 Utilizzo, sotto Windows, di Ext2fs

Installato il programma (http://ext2fsd.sourceforge.net/ ), apriamo tramite "cmd" la shell di Windows e ci spostiamo nella cartella in cui abbiamo effettuato l'installazione:

> cd \Programmi\Ext2fsd

digitiamo, quindi:

> mount 0 4 j:
  • 4: tale valore è relativo al fatto che la Partizione Root di Linux è identificata da hda5 (sda5)
  • j: Lettera identificativa della Partizione Root di Linux che comparirà in Risorse del Computer ed a cui possiamo accedere in lettura e scrittura.

Nota: Per smontare j: procedere come segue:

  • tramite il prompt dei comandi (shell di Windows) ci posizioniamo nella directory di Ext2fsd.
  • digitiamo:
> mount /umount j:

In WindowsXP copiare il file "linux.bin" su C:\ con attributi Nascosto e Sola Lettura. Modifichiamo il file C:\boot.ini aggiungendo la segg.riga:

c:\linux.bin="Slackware"

Tra le virgolette possiamo scrivere l'etichetta che più ci aggrada...In questo caso "Slackware"! Riavviamo e noteremo che al boot successivo avremo la possibilità di lanciare Slackware-Linux!

5 Primo avvio di Slackware

5.1 Considerazioni

Stiamo utilizzando Slackware su Kernel 2.4.31 configurazione "sata.i".

  • il Sistema non ha il supporto al Dual Core. Dall'Output di /proc/cpuinfo notiamo la presenza di 1 solo core!
  • il driver video caricato è il driver generico "vesa"; la massima risoluzione raggiungibile sarà 1024x768
  • DMA non attivato per l'unità disco rigido e per l'unità DVD
  • Audio funzionante anche se il driver (modulo Kernel snd_hda_intel) produce fastidiosi scricchiolii...
  • Touchpad semi - funzionante
  • ACPI non presente
  • Scheda di rete Ethernet funzionante tramite il modulo Kernel b44.
  • mancata rilevazione del mouse usb eventualmente connesso al PC.

5.2 Impostazione di tastiera e mousepad

Procediamo a settare il layout italiano della tastiera e ad effettuare delle modifiche di configurazione relative al mouse: In /etc/X11/xorg.conf Aggiungere, nella Section "InputDevice" dove troviamo la definizione Identifier "Keyboard1", le segg. 2 righe:

Option "XkbModel" "pc105"
Option "XkbLayout" "it"

Aggiungere, nella Section "InputDevice" dove troviamo la definizione Identifier "Mouse1", la seguente riga:

Option "ZAxisMapping" "4 5"

Sostituire, nella Section "InputDevice" dove troviamo la definizione Identifier "Mouse1", la seg. riga:

Option "Protocol" "PS/2" con Option "Protocol" "IMPS/2"

5.3 Kde in lingua italiana

In questa fase, qualora non fosse presente, possiamo installare il package relativo alla lingua italiana di KDE. Per controllarne la presenza digitiamo:

# ls -l /var/log/packages/kde-i18n-it-3.4.2-noarch-1

Il package kde-i18n-it-3.4.2-noarch-1.tgz è sul CD2 in /mnt/cdrom/slackware/kdei/
Per l'installazione procediamo con:

# installpkg /mnt/cdrom/slackware/kdei/kde-i18n-it-3.4.2-noarch-1.tgz

5.4 Rimozione di Alsa

Occorrerà, poi, rimuovere gli alsa-driver, lib e utils relativi al kernel 2.4.31, in previsione dell' upgrade del sistema a kernel superiore, con:

# removepkg alsa-driver
# removepkg alsa-oss
# removepkg alsa-lib
# removepkg alsa-utils

6 Kernel

6.1 Considerazioni ed Upgrade

Possiamo upgradare il sistema al Kernel 2.6.13 (fornito con i CD di Slackware) con la necessità, però, di riconfigurarlo e ricompilarlo per attivare il supporto al dual core e il supporto al controller SATA. E' preferibile però upgradare ad una versione superiore (2.6.17) in quanto:

  • viene fornito un miglior funzionamento del risparmio energetico ACPI con il notebook.
  • viene fornita la possibilità di mettere il notebook in sospensione (ibernazione) patchando il Kernel. (suspend2 - http://www.suspend2.net/ )
  • viene fornita una versione aggiornata di drivers ALSA, senza la necessità di dover ricorrere alla loro compilazione esterna.

Specifico, al riguardo, che i drivers ALSA forniti con il kernel 2.6.13 sono sufficienti per il riconoscimento della nostra scheda audio (modulo Kernel: snd_hda_intel) ma la riproduzione audio risulta disturbata. Per far questo procediamo alla ricompilazione del Kernel dai sorgenti. Scaricare il file linux-2.6.17.tar.bz2 da http://www.kernel.org/pub/linux/kernel/v2.6/ Posizioniamoci nella cartella in cui abbiamo downloadato il file e spostiamolo in /usr/src con: 

# mv linux-2.6.17.tar.bz2 /usr/src posizioniamoci in /usr/src
# cd /usr/src

decomprimiamo il file con:

# tar jxvf linux-2.6.17.tar.bz2

creiamo il link simbolico alla directory appena creata:

# ln -s linux-2.6.17 linux

Scarichiamo il file suspend2-2.2.7-for-2.6.17.tar.bz2 da http://www.suspend2.net/ Il file suspend2-2.2.7-for-2.6.17.tar.bz2 contiene le patch da applicare ai sorgenti del kernel 2.6.17 per poter attivare la sospensione (ibernazione) Posizionaci nella cartella in cui abbiamo downloadato il file e decomprimiamolo con:

# tar jxvf suspend2-2.2.7-for-2.6.17.tar.bz2

Posizioniamoci in /usr/src/linux e applichiamo le patch di suspend2:

#  cd /usr/src/linux
# /path/alla/directory/suspend2/apply

per /path/alla/directory/suspend2/ si intende il percorso relativo alla cartella contenente le patch suspend2, creata dalla decompressione del file suspend2-2.2.7-for-2.6.17.tar.bz2. apply è lo script da eseguire. Se l'esecuzione dello script avrà successo apparirà la scritta: All happy!

6.2 Configurazione

Descrizione dei punti fondamentali di configurazione del Kernel 2.6.17 (allego il mio config )

6.2.1 Dual Core Processor

In Processor type e features attiviamo:

[*] Symmetric multi-processing support
    Processor family (Pentium M) --->
(2) Maximum number of CPU (2-255)
[*] SMT (Hyperthreading) scheduler support

In Device Drivers attiviamo:

Character devices --->
    [*] Enhanced Real Time Clock Support

6.2.2 Controller Sata HD e DVD

Device Drivers --->
    SCSI Device Support --->
        <*> SCSI generic support
Device Drivers --->
    SCSI Device Support --->
        SCSI Low Level Drivers --->
            <*> Serial ATA (SATA) Support
            <*> Intel PIIX/ICH SATA Support

Nota:
Preciso che, nel mio caso, trattasi di SONY DVD+-RW DW-Q58A; ciò implica che, forse, avendo un diverso DVD-Drive potreste non aver bisogno delle specifiche inserite in questa nota. L'accesso al DVD-Drive per la riproduzione e l'utilizzo di cd-audio con programmi quali mplayer, cdparanoia,.. verrà effettuato attraverso il file character device /dev/sg1. Il CD-Audio sarà visto da cdparanoia come /dev/sg1. Per far sì che anche l'utente [User], e non solo root, possa accedere al character device, occorrerà che il singolo Utente [User] appartenga al gruppo "cdrom" e occorrerà impostare /dev/sg1 come segue:

chgrp cdrom /dev/sg1  (cambiamo il gruppo a /dev/sg1 in "cdrom") 
chmode 660 /dev/sg1  (impostiamo i permessi di lettura e scrittura, sul file, per root e per il gruppo "cdrom") 

6.2.3 Acpi e Suspend2

In Power management options (ACPI, APM) attivare come built-in le voci:

Power management options (ACPI, APM) --->
    [*] Suspend2  --->
        ---   Image Storage (you need at least one writer)
        [*]     File Writer
        [*]     Swap Writer

E' inoltre necessario attivare, come built-in, la voce LZF compression algorithm situata in Cryptographic options.

Cryptographic options  --->
<*> Cryptographic API
<*> LZF compression algorithm

LZF è l' algoritmo di compressione usato da suspend2 per mettere in ibernazione il sistema.

Ecco la sezione ACPI (Advanced Configuration and Power Interface) Support

#
# ACPI (Advanced Configuration and Power Interface) Support
#
CONFIG_ACPI=y
# CONFIG_ACPI_SLEEP is not set
CONFIG_ACPI_AC=m
CONFIG_ACPI_BATTERY=m
CONFIG_ACPI_BUTTON=m
CONFIG_ACPI_VIDEO=m
CONFIG_ACPI_HOTKEY=m
CONFIG_ACPI_FAN=m
CONFIG_ACPI_PROCESSOR=m
CONFIG_ACPI_HOTPLUG_CPU=y
CONFIG_ACPI_THERMAL=m
# CONFIG_ACPI_ASUS is not set
# CONFIG_ACPI_IBM is not set
# CONFIG_ACPI_TOSHIBA is not set
CONFIG_ACPI_BLACKLIST_YEAR=0
# CONFIG_ACPI_DEBUG is not set
CONFIG_ACPI_EC=y
CONFIG_ACPI_POWER=y
CONFIG_ACPI_SYSTEM=y
CONFIG_X86_PM_TIMER=y
CONFIG_ACPI_CONTAINER=m
<pre>
...la sezione relativa a "CPU Frequency scaling"
<pre>
#
# CPU Frequency scaling
#
CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_TABLE=m
# CONFIG_CPU_FREQ_DEBUG is not set
CONFIG_CPU_FREQ_STAT=m
CONFIG_CPU_FREQ_STAT_DETAILS=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y
CONFIG_CPU_FREQ_GOV_PERFORMANCE=m
CONFIG_CPU_FREQ_GOV_POWERSAVE=m
CONFIG_CPU_FREQ_GOV_USERSPACE=y
CONFIG_CPU_FREQ_GOV_ONDEMAND=m
CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
...e la sezione relativa a "CPU Frequency processor drivers"
<pre>
#
# CPUFreq processor drivers
#
CONFIG_X86_ACPI_CPUFREQ=m
# CONFIG_X86_POWERNOW_K6 is not set
# CONFIG_X86_POWERNOW_K7 is not set
# CONFIG_X86_POWERNOW_K8 is not set
# CONFIG_X86_GX_SUSPMOD is not set
CONFIG_X86_SPEEDSTEP_CENTRINO=m
CONFIG_X86_SPEEDSTEP_CENTRINO_ACPI=y
CONFIG_X86_SPEEDSTEP_CENTRINO_TABLE=y
CONFIG_X86_SPEEDSTEP_ICH=m
# CONFIG_X86_SPEEDSTEP_SMI is not set
# CONFIG_X86_P4_CLOCKMOD is not set
# CONFIG_X86_CPUFREQ_NFORCE2 is not set
# CONFIG_X86_LONGRUN is not set

Non attivare "APM (Advanced Power Management) BIOS Support"

6.2.4 Audio

Faremo uso degli Alsa Drivers forniti con il kernel 2.6.17. Compileremo successivamente e a parte le librerie ed i binari relativi ad ALSA. Ecco la sezione ALSA:

#
# Sound
#
CONFIG_SOUND=m
#
# Advanced Linux Sound Architecture
#
CONFIG_SND=m
CONFIG_SND_TIMER=m
CONFIG_SND_PCM=m
CONFIG_SND_HWDEP=m
CONFIG_SND_RAWMIDI=m
CONFIG_SND_SEQUENCER=m
CONFIG_SND_SEQ_DUMMY=m
CONFIG_SND_OSSEMUL=y
# CONFIG_SND_MIXER_OSS is not set
CONFIG_SND_PCM_OSS=m
CONFIG_SND_PCM_OSS_PLUGINS=y
CONFIG_SND_SEQUENCER_OSS=y
CONFIG_SND_RTCTIMER=m
CONFIG_SND_SEQ_RTCTIMER_DEFAULT=y
# CONFIG_SND_DYNAMIC_MINORS is not set
CONFIG_SND_SUPPORT_OLD_API=y
CONFIG_SND_VERBOSE_PROCFS=y
# CONFIG_SND_VERBOSE_PRINTK is not set
# CONFIG_SND_DEBUG is not set

In PCI Device attivare come Modulo "Intel HD Audio": è il driver del nostro chip audio! Inoltre, non attivare il deprecato Open Sound System.

6.2.5 Touchpad

Il driver Synaptics per il touchpad richiede che siano presenti nel Kernel (come built-in o Moduli) 2 elementi:

Device Drivers --->
    Input device support --->
        <*> Event interface
---
        [*] Mouse --->
            <*>   PS/2 mouse

6.2.6 Filesystem

In FileSystem assicurarsi che siano attivate come built-in le 2 voci:

File Systems --->
    <*> Ext3 journalling file system support
    [*] JBD (ext3) debugging support

6.3 Riavvio del Sistema

Con la Configurazione del Kernel 2.6.17 il disco fisso viene trattato come unità SCSI/SATA. Pertanto la solita identificazione del tipo hdaX verrà sostituita in sdaX (il lettore DVD da hdc diventerà /dev/sr0). Al momento, non è possibile sovrascrivere correttamente il settore di boot della Partizione Linux di Root lanciando il comando "lilo -v" in quanto il nostro Hard Disk è ancora identificato come hdaX.

Dobbiamo, quindi, effettuare un nuovo reboot. Procediamo con:

# reboot

ed eseguiamo il nuovo boot caricando il CD1 dell'Installazione di Slackware. Selezioniamo al boot: prompt il Kernel: test26.s e logghiamoci come root. Per accedere alla nostra installazione di Linux presente sull'hard disk dobbiamo "montare" la partizione di root. Procedere come segue:

# cd /mnt (ci spostiamo nella directory /mnt)
# mkdir pippo  (creiamo in /mnt la directory pippo/)
# mount /dev/sdaX pippo/ (montiamo la partizione Linux di Root su pippo/. Nel nostro caso hda5)

Con il kernel 2.6 il controller dell'HD viene visto come SCSI/SATA

# mount -t proc proc pippo/proc (montiamo proc su pippo/)
# chroot pippo (in questo modo siamo nella nostra Partizione Linux di Root)
# cd (ci posizioniamo nella directory root/)

Nota: La creazione dell'initrd non va eseguita nel caso in cui abbiamo compilato il Kernel con la configurazione sopra esposta. E questo per due considerazioni:
   1. i moduli necessari al precaricamento del sistema operativo (ata_piix, libata, jbd, ext3) sono stati configurati come built-in.
   2. suspend2 ha dei problemi nel resume quando si avvia il sistema con l'ausilio di initrd.

In /etc/lilo.conf, oltre ad apportare le modifiche inerenti la compilazione del Kernel, dobbiamo modificare tutte le occorrenze hdaX in sdaX. Nel nostro esempio avremo:

  • hda5 in sda5 -> Partizione Linux di Root
  • hda2 in sda2 -> Partizione Windows)

E' bene fare MOLTA ATTENZIONE alla riga:

boot = /dev/hda5

e sostituire, anche in questo caso, hda5 in sda5 e NON in sda (senza numero identificativo!). Infatti, come detto sopra, scrivendo semplicemente "sda" sovrascriveremo il MBR Originale di Dell con l'installazione del bootloader.
In /etc/lilo.conf troveremo anche la seg. sezione:

# Windows bootable partition config begins
other = /dev/sda2
label = Windows
table = /dev/sda
# Windows bootable partition config ends

Possiamo, tranquillamente, eliminare queste righe per due motivi:

   1. WindowsXP viene avviato dal MBR del disco rigido
   2. Si dice sia preferibile avviare Windows XP dal MBR e, comunque, non dal settore di boot di una Partizione diversa da quella in cui è installato.

Nota: Per poter utilizzare suspend2 dovremo aggiungere la seguente riga

append="resume2=swap:/dev/sda6"

Pertanto, la seguente sezione....:

# Linux bootable partition config begins
image = /boot/vmlinuz
root = /dev/sda5
label = Linux-2.6.17
read-only
# Linux bootable partition config ends

...diventerà:

# Linux bootable partition config begins
image = /boot/vmlinuz
append="resume2=swap:/dev/sda6"
root = /dev/sda5
label = Linux-2.6.17
read-only
# Linux bootable partition config ends

dove per sda6 si intende la nostra Partizione di Swap. In /etc/fstab dobbiamo modificare tutte le occorrenze hdaX in sdaX. Il cdrom sarà identificato da sr0. Pertanto sostituiremo /dev/cdrom con /dev/sr0. controlliamo che le modifiche apportate siano corrette con:

# lilo -v -t

osserviamo l'output e notiamo se ci sono degli errori. Se è tutto ok procediamo con:

# lilo -v (installiamo il bootloader)

Anche in questo caso dovremo ricreare il nostro file immagine linux.bin e trasferirlo su Windows. Al riguardo, seguire i passi già esposti in Preparativi per il primo avvio Procediamo quindi con:

# exit
# reboot

Rebootiamo per lanciare WindowsXP e sostituire il file "linux.bin" in C:\

7 Drivers

7.1 Ati

Scaricare da http://www.ati.com gli ultimi driver ati per Linux. Per procedere all'installazione eseguire 

sh ati-driver-installer-8.26.18-x86.run

Con l'installazione verrà creato il modulo fglrx.ko per il kernel corrente, i drivers e il software di configurazione. Inoltre verrà creata la directory /lib/modules/fglrx in cui sarà possibile ricompilare, di volta in volta, un nuovo modulo (fglrx.ko) per altre versioni di Kernel eventualmente installate e SENZA dover eseguire una nuova e completa procedura di installazione (i drivers e il software per la configurazione sono già, infatti, presenti sulla nostra macchina). Dopo l'installazione effettuare le modifiche automatiche al file /etc/X11/xorg.conf digitando (da root):

# /usr/X11R6/bin/aticonfig --initial

Per attivare, a livello utente, l'accellerazione grafica dei drivers ATI aggiungere la seg. sezione al file /etc/X11/xorg.conf

Section "DRI"
Mode 0666
EndSection

In fstab, montare il /dev/shm come tmpfs. Aggiungere pertanto al file /etc/fstab la segg. riga:

tmpfs /dev/shm tmpfs defaults 0 0

Con i driver ATI funziona anche la modalità di Risparmio Energetico (diminuzione del voltaggio) della Scheda Video. Digitando:

# /usr/X11R6/bin/aticonfig --lsp

si ottiene la lista delle modalità cui può essere assoggettata la scheda video. Digitando:

/usr/X11R6/bin/aticonfig --set-powerstate 1

si setterà la scheda sulla prima voce comparsa dall'elenco fornito da /usr/X11R6/bin/aticonfig --lsp

7.2 Wireless ipw3945d

Scaricare i segg. files da http://ipw3945.sourceforge.net:

   1. ieee80211-1.1.14.tgz
   2. ipw3945-ucode-1.13.tgz (MicroCode)
   3. ipw3945d-1.7.22.tgz (Regulatory Daemon)
   4. ipw3945-1.1.0.tgz

1) Posizionarsi in ieee80211-1.1.14/ e procedere con:

# tar zxvf ieee80211-1.1.14.tgz

entrare nella directory dei sorgenti e procedere con: (se verranno trovati moduli ieee802 compilati con il kernel, ne verrà richiesta la rimozione. Rispondere: yes)

# make
# make install

controlliamo ciò che è stato installato con

# find /lib/modules/`uname -r` -name "ieee802*"

otterremo l'output, che indica la creazione in /lib/modules/`uname -r` di due nuove Directories: net/ e include/

2) Posizionarsi in MicroCode/ e procedere con:

tar zxvf ipw3945-ucode-1.13.tgz

entrare nella directory appena creata e copiare il file ipw3945.ucode in /lib/firmware con

# cp ipw3945.ucode /lib/firmware/

3) Posizionarsi in RegulatoryDaemon/ e procedere con:

# tar zxvf ipw3945d-1.7.22.tgz

entrare nella directory appena creata e copiare il file ipw3945d in /sbin/ con

# cp x86/ipw3945d /sbin/

4) Posizionarsi in ipw3945/ e procedere con

# tar zxvf ipw3945-1.1.0.tgz

entrare nella directory dei sorgenti e procedere con

#  make

quindi copiare il modulo ipw3945.ko in /lib/modules/`uname -r` con:

# cp ipw3945.ko /lib/modules/`uname -r`/

fissare, poi, le dipendenze con:

# depmod -a

A questo punto la scheda wireless è installata ma non ancora attiva. Per attivarla digitiamo da root:

# modprobe ipw3945
# /sbin/ipw3945

7.3 Audio (Alsa)

Compilando il Kernel con la configurazione sopra esposta dobbiamo scaricare le librerie e le utility alsa, nonchè la alsa-oss compatibility library. Scarichiamo da http://www.alsa-project.org i segg. files:

  • alsa-lib-1.0.12
  • alsa-utils-1.0.12
  • alsa-oss-1.0.12

Decomprimiamo i files con tar jxvf [nomefile] Posizioniamoci nella directory degli alsa-lib e digitiamo:

# ./configure
# make
# make install

Controlliamo che i segg. percorsi siano presenti nel file /etc/ld.so.conf, altrimenti aggiungiamoli:

  • /usr/lib
  • /usr/lib/alsa-lib/smixer

Aggiorniamo, digitando:

# /sbin/ldconfig

Posizioniamoci nella directory degli alsa-utils e digitiamo:

# ./configure
# make
# make install

Le alsa-utils verranno installate in /usr/bin Digitiamo, quindi:

# alsamixer
# alsactl store

per settare i volumi dei canali della scheda audio. Nota: prestare attenzione al fatto che, di default, l'uscita audio master è mutata!

7.4 Touchpad Synaptics

Scaricare il file synaptics-0.14.6.tar.bz2 da http://web.telia.com/~u89404340/touchpad/index.html#Download Decomprimere il file "synaptics-0.14.6.tar.bz2", spostarsi nella directory dei sorgenti e procedere all'installazione:

# tar jxvf synaptics-0.14.6.tar.bz2
# make
# make install

con make install verrà copiato il file "synaptics_drv.o" in "/usr/X11R6/lib/modules/input/" Effettuare le segg. modifiche al file /etc/X11/xorg.conf: Copiare ed incollare le segg. righe come nuova Section "InputDevice" e prima di "Monitor Section"

Section "InputDevice"
Identifier "Synaptics Mouse"
Driver "synaptics"
Option "Device" "/dev/psaux"
Option "Protocol" "auto-dev"
Option "LeftEdge" "1700"
Option "RightEdge" "5300"
Option "TopEdge" "1700"
Option "BottomEdge" "4200"
Option "FingerLow" "25"
Option "FingerHigh" "30"
Option "MaxTapTime" "180"
Option "MaxTapMove" "220"
Option "VertScrollDelta" "100"
Option "MinSpeed" "0.09"
Option "MaxSpeed" "0.18"
Option "AccelFactor" "0.0015"
Option "SHMConfig" "on"
# Option "Repeater" "/dev/ps2mouse"
EndSection

Nella Section "ServerLayout" sostiture le segg. righe:

InputDevice "Mouse1" "CorePointer"
InputDevice "Keyboard1" "CoreKeyboard"

con queste:

InputDevice "Mouse1" "CorePointer"
InputDevice "Synaptics Mouse" "AlwaysCore"
InputDevice "Keyboard1" "CoreKeyboard"

Nella Section "Module" aggiungere la riga seguente:

Load "synaptics"

Se si è proceduto, nella fase di compilazione del Kernel, ad includere come moduli "evdev" e "psmouse" assicurarsi che entrambi i moduli vengano caricati PRIMA dell'avvio di X....altrimenti il touchpad NON funzionerà.

7.5 Pulsanti multimediali

Scaricare xhkeys-2.2.1.tar.gz da http://wmalms.tripod.com/xhkeys-2.2.1.tar.gz Scompattare il file xhkeys-2.2.1.tar.gz (tar zxvf xhkeys-2.2.1.tar.gz). Questo file contiene i sorgenti del programma "xhkeys". Spostarci nella directory dei sorgenti appena creata e Procedere con:

# ./configure --prefix=/usr
# make
# make install

creare, nella directory "Home Utente" (es: /home/Pippo), il file (nascosto) XHkeys. Il file .XHkeys contiene la configurazione di xhkeys. Ecco un esempio, relativo al Player Amarok, del file .XHkeys (potete copiare e incollare):

xhkeys.codeline7: 164;0;A*;Amarok - stop;amarok -s
xhkeys.plugin1: xhkeys_cdaudio;cda;devname="/dev/cdrom";devgrab=n
xhkeys.codeline2: 174;0;A*;Master Volume Down;amixer sset Master 1-
xhkeys.plugin2: xhkeys_mixer;vol;devname="/dev/mixer"channel=-1;devgrab=n
xhkeys.codeline1: 160;0;A*;Master Volume Muted;amixer -c 0 set Master togglemute
xhkeys.codeline6: 153;0;A*;Amarok - next;amarok -f
xhkeys.codeline3: 176;0;A*;Master Volume Up;amixer sset Master 1+ unmute
xhkeys.codeline5: 144;0;A*;Amarok - previous;amarok -r
xhkeys.codeline4: 162;0;A*;Amarok - pause;amarok --pause

lanciare il servizio digitando, da shell:

# xhkeys

7.6 Suspend2

In fase di boot del Sistema con Kernel 2.6.17 configurato e compilato con il supporto a Suspend2 e con l'opzione di boot resume2=swap:/dev/sda6 definita, in /etc/lilo.conf, dalla riga append="resume2=swap:/dev/sda6", noteremo la presenza dei seguenti messaggi del kernel: Suspend2 Core. Suspend2 Compression Driver loading. Suspend2 Encryption Driver loading. Suspend2 Swap Writer loading. Suspend2 FileWriter loading. Magic number: 2:471:434 Suspend2 2.2.7: Swapwriter: Signature found. Suspend2 2.2.7: Resuming enabled. Se non facciamo in tempo a controllare la presenza di queste righe possiamo, a sistema avviato, usare il comando:

# dmesg | grep Suspend2

Avremo bisogno, per porre il notebook in ibernazione, di uno script downloadabile da http://www.suspend2.net/downloads/all/hibernate-script-1.93.tar.gz Poniamoci nella directory in cui abbiamo downloadato il file e procediamo alla sua decompressione con:

# tar zxvf hibernate-script-1.93.tar.gz

Spostiamoci nella nuova directory appena creata e procediamo all'installazione. Da root digiteremo:

# ./install.sh

Di default l'installazione creerà segg. files:

  • /usr/local/sbin/hibernate <--- script eseguibile
  • /etc/hibernate/
  • /etc/hibernate/hibernate.conf <--- file di configurazione
  • /usr/local/share/hibernate/scriptlets.d/ <--- contiene "scriptlets" (o plugins)
  • /etc/hibernate/scriptlets.d/ <--- contiene extra scriptlets
  • /usr/local/man/man8/hibernate.8
  • /usr/local/man/man5/hibernate.conf.5

Per porre il notebbok in ibernazione dovremo digitare (da root):

# hibernate

Nota: Con "hibernate --help" otterremo un help alle principali opzioni dello script. Molto utili le opzioni:

  • "-n" che NON porrà il sistema in ibernazione ma effettuerà solo un test.
  • "-v 3" che setterà un elevato livello di verbosità dei messaggi di output.

8 Conclusioni

Spero di aggiornare quanto prima questo articolo con i dettagli relativi alla gestione del bluetooth.
Ciao!
Autore: Fabio Veneri (zapotech2000 at yahoo dot it)

Google News
Le notizie e le recensioni di Notebook Italia sono anche su Google News. Seguici cliccando sulla stellina

Commenti