View previous topic :: View next topic |
Author |
Message |
mouser Veteran


Joined: 10 Aug 2004 Posts: 1419 Location: Milano
|
Posted: Fri Feb 09, 2007 3:09 pm Post subject: [HOWTO] Gentoo su Compaq Presario C540EA |
|
|
Buongiorno a tutti
Finalmente ho avuto il nuovo portatile aziendale e, come di consueto, la sera stessa ho provveduto all'inizio dell'installazione di Gentoo per avere un sistema operativo serio!!!
Tanto per iniziare questa è la macchina: Compaq Presario C540EA
Dalle specifiche vediamo subito che è un processore dual-core a 1,60 GHz con 1GB di RAM. 80GB di Disco S-ATA e un masterizzatore DVD Super Multi con supporto Double Layer; la scheda video è una Intel Mobile 945GM da 128mb di Ram.
Nulla di eclatante, quindi, ma comunque un'ottima macchina per l'esecuzione della nostra amata gentoo
Premetto che, essendo il sistema che uso per lavoro ho mantenuto comunque l'installazione di Vista. Non mi dilungherò assolutamente su questo, premetto solo che dopo la procedura guidata occorre ridimensionare la partizione occupata dal sistema ms... si può fare direttamente a caldo comunque.
Installazione
Per l'installazione ho seguito la normale guida x86 32bit, apportando comunque qualche accorgimento per via dell'hardware.
Procediamo quindi con i normali passaggi della guida (ricordando che il disco viene visto come /dev/sda e che è già presente una partizione (posta alla fine del disco di 5GB) contenente i dati per il ripristino di sistema (dannato Vista )
Dopo la configurazione della rete, di cui non espongo niente poichè le configurazioni sono differenti (accenno solo che la scheda wireless funziona solo con ndiswrapper), dovremo partizionare il disco.
Non avendo problemi ho creato 2 partizioni (che nello schema di fdisk/cfdisk saranno centrali) una per la swap ed una per il sistema; terminata la creazione la situazione è più o meno questa
Code: | # fdisk -l /dev/sda
...
/dev/sda1 * 1 3142 25234545+ 7 HPFS/NTFS
/dev/sda2 9123 9729 4875727+ 7 HPFS/NTFS
/dev/sda3 3142 3266 996030 82 Linux swap / Solaris
/dev/sda4 3266 9122 47041858 83 Linux |
Quindi una slice da 1024MB per la swap ed una del rimanente dello spazio (circa 45GB) per il sistema, rispettivamente /dev/sda3 e /dev/sda4
Creiamo i filesystem (personalmente utilizzo ext3) e procediamo
Il successivo passaggio in rilievo è la scelta delle opzioni di compilazioni; apriamo quindi /etc/make.conf ed impostiamo
ed, contando la presenza di due processori
Mi è stato consigliato di essere un pò più cattivo, ma preferisco impostazioni abbastanza conservative
Ho mantenuto -O2 sempre per il motivo di cui sopra.
Procediamo con la guida...
Arrivati alla compilazione del kernel, ho fatto varie prove per far funzionare questo o quello... vi copio il link con il mio .config in modo che avete la possibilità di usare direttamente questo; quindi dopo aver emerso il kernel (nel mio caso il 2.6.19-gentoo-r5) lanciate:
Code: | # cd /usr/src/linux
# wget http://mouser.altervista.org/presarioc540ea/config-2.6.19-gentoo-r5
# mv config-2.6.19-gentoo-r5 .config
# make oldconfig |
prima di procedere con il "make menuconfig" per personalizzare la vostra scelta.
Appunto 1: Tutte le impostazioni successive danno per scontato che il kernel sia quello generato dal .config che avete scaricato quindi, se cambiate/togliete qualcosa non assicuro che tutti i passaggi successivi riescano senza problemi
Appunto 2: Per scelta, più che altro, tendo ad avere kernel monolitici. Se preferite, modularizzate quello che volete e ricordatevi di aggiungere i moduli a /etc/modules.autoload.d/kernel-2.6 per l'avvio automatico.
Il passaggio degno di nota successivo è la configurazione dell'fstab.
Vi pasto il mio così potrete prendere spunto
Code: | /dev/sda4 / ext3 noatime 0 1
/dev/sda3 none swap sw 0 0
proc /proc proc defaults 0 0
shm /dev/shm tmpfs nodev,nosuid,noexec 0 0
/dev/hda /mnt/cdrom auto noauto,user 0 0 |
ed infine, per quanto riguarda l'installazione, c'è grub. Anche qui ecco il mio grub.conf
Code: | default 0
timeout 10
splashimage=(hd0,3)/boot/grub/splash.xpm.gz
title = Gentoo GNU/Linux 2.6.19-r5
root (hd0,3)
kernel /boot/kernel-2.6.19-gentoo-r5 root=/dev/sda4
title = Windows Vista Basic
rootnoverify (hd0,0)
makeactive
chainloader +1 |
Riavviate ed eccovi nel vostro sistema.
Server X
Per primissima cosa occorre sapere che lo schermo di questo computer funziona ad una risoluzione di 1280x800 che, purtroppo non è direttamente supportata dal bios della scheda video. Per ovviare a questo problema, semplicemente, installiamo questo programma; faccio notare che è maskerato, quindi sarà necessario istruire portage per la sua installazione
Code: | # echo "sys-apps/915resolution ~x86" >> /etc/portage/package.keywords
# emerge -v 915resolution |
ed andiamo ad editare il file di configurazione inserendo solo due righe (la seconda dovrebbe esserci di default)
Code: | # cat /etc/conf.d/915resolution
replace=( "3c 1280 800" )
log="/var/log/915resolution" |
Terminato questo aggiungiamo 915resolution al runlevel di default e riavviamo
Code: | # rc-update add 915resolution default
# shutdown -r now |
Questo ci assicura che ad ogni boot il bios della scheda video verrà fixato per supportare la risoluzione 1280x800
Prima di emergere il server X, ecco cosa fare per avere direttamente il DirectRendering funzionante (personalmente utilizzo beryl ad una velocità ottima!!!!)
In make.conf andiamo ad inserire i seguenti valori:
Code: | INPUT_DEVICES="keyboard mouse"
VIDEO_CARDS="i810 vesa" |
[edit]
Per evitare alcuni problemi con il dual monitor e lo Xinerama, vi consiglio di installare la versione 1.7.4 di xf86-video-i810 (il driver della scheda video). Andiamo quindi a mascherare le versioni successive dello stesso driver:
Code: | # echo ">=x11-drivers/xf86-video-i810-2.1.0" >> /etc/portage/package.mask |
[/edit]
emergiamo xorg-server e quello che vogliamo dopodichè andiamo a modificare il xorg.conf. Ecco qui il mio
Code: | # cat /etc/X11/xorg.conf
Section "Module"
SubSection "extmod"
EndSubSection
Load "freetype"
Load "glx"
Load "dri"
EndSection
Section "Files"
FontPath "/usr/share/fonts/misc/"
FontPath "/usr/share/fonts/Type1/"
FontPath "/usr/share/fonts/100dpi/"
FontPath "/usr/share/fonts/75dpi/"
EndSection
Section "ServerFlags"
EndSection
Section "InputDevice"
Identifier "Keyboard1"
Driver "kbd"
Option "AutoRepeat" "500 30"
Option "XkbRules" "xorg"
Option "XkbModel" "pc105"
Option "XkbLayout" "it"
EndSection
Section "InputDevice"
Identifier "Mouse1"
Driver "mouse"
Option "Device" "/dev/psaux"
Option "ZAxisMapping" "4 5 6 7"
EndSection
Section "Monitor"
Identifier "My Monitor"
HorizSync 28-64
VertRefresh 43-60
EndSection
Section "Device"
Identifier "Standard VGA"
VendorName "Unknown"
BoardName "Unknown"
Driver "vga"
EndSection
Section "Device"
Identifier "** Intel i810 (generic) [i810]"
Driver "i810"
Option "XAANoOffscreenPixmaps" "true"
Option "DRI" "true"
EndSection
Section "Screen"
Identifier "Screen 1"
Device "** Intel i810 (generic) [i810]"
Monitor "My Monitor"
DefaultDepth 24
Subsection "Display"
Depth 24
Modes "1280x800"
ViewPort 0 0
EndSubsection
EndSection
Section "ServerLayout"
Identifier "Simple Layout"
Screen "Screen 1"
InputDevice "Mouse1" "CorePointer"
InputDevice "Keyboard1" "CoreKeyboard"
Option "AIGLX" "true"
EndSection
Section "Extensions"
Option "Composite" "Enable"
EndSection
Section "DRI"
Group 0
Mode 0666
EndSection |
Terminato questo passaggio avviamo il nostro server X e guardiamo i risultati di
Code: | # glxinfo | grep irect
Direct Rendering: Yes
# glxgears |
[edit]
Visto che personalmente li ritengo molto utili, e che a volte cercare e provare queste cose è abbastanza tedioso, ecco a voi anche due xorg.conf per differenti possibilità di utilizzo della scheda video:
- Usare uno schermo esterno (nel mio caso un CRT a 1280x1024)
Code: | Section "Module"
SubSection "extmod"
EndSubSection
Load "freetype"
Load "glx"
Load "dri"
Load "vbe"
EndSection
Section "Files"
FontPath "/usr/share/fonts/misc/"
FontPath "/usr/share/fonts/Type1/"
FontPath "/usr/share/fonts/100dpi/"
FontPath "/usr/share/fonts/75dpi/"
EndSection
Section "ServerFlags"
EndSection
Section "InputDevice"
Identifier "Keyboard1"
Driver "kbd"
Option "AutoRepeat" "500 30"
Option "XkbRules" "xorg"
Option "XkbModel" "pc105"
Option "XkbLayout" "it"
EndSection
Section "InputDevice"
Identifier "Mouse1"
Driver "mouse"
Option "Device" "/dev/psaux"
Option "ZAxisMapping" "4 5 6 7"
EndSection
Section "Monitor"
Identifier "Monitor0"
Option "DPMS"
EndSection
Section "Monitor"
Identifier "Monitor1"
Option "DPMS"
EndSection
Section "Device"
Identifier "Device0"
Driver "i810"
BusID "PCI:0:2:0"
Option "MonitorLayout" "LFP,CRT"
EndSection
Section "Device"
Identifier "Device1"
Driver "i810"
BusID "PCI:0:2:1"
Option "MonitorLayout" "CRT,LFP"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
Subsection "Display"
Depth 24
Modes "1280x800"
EndSubsection
EndSection
Section "Screen"
Identifier "Screen1"
Device "Device1"
Monitor "Monitor1"
DefaultDepth 24
Subsection "Display"
Depth 24
Modes "1280x1024"
EndSubsection
EndSection
Section "ServerLayout"
Identifier "Layout"
Screen 0 "Screen0" LeftOf "Screen1"
Screen 1 "Screen1"
InputDevice "Mouse1" "CorePointer"
InputDevice "Keyboard1" "CoreKeyboard"
Option "AIGLX" "true"
EndSection
Section "DRI"
Mode 0666
EndSection
Section "Extensions"
Option "Composite" "Enable"
EndSection |
- Utilizzare dual-monitor con Xinerama (montior laptop 1280x800, monitor esterno CRT 1280x1024)
Code: | Section "Files"
FontPath "/usr/share/fonts/X11/Type1"
FontPath "/usr/share/fonts/X11/100dpi"
FontPath "/usr/share/fonts/X11/75dpi"
FontPath "/usr/share/fonts/X11/misc"
EndSection
Section "Module"
Load "i2c"
Load "bitmap"
Load "ddc"
Load "dri"
Load "extmod"
Load "freetype"
Load "glx"
Load "int10"
Load "type1"
Load "vbe"
EndSection
Section "InputDevice"
Identifier "Generic Keyboard"
Driver "kbd"
Option "CoreKeyboard"
Option "XkbRules" "xorg"
Option "XkbModel" "pc105"
Option "XkbLayout" "it"
EndSection
Section "InputDevice"
Identifier "Configured Mouse"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/input/mice"
Option "Protocol" "ImPS/2"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "true"
EndSection
Section "Device"
Identifier "Intel 945GM Express (Default)"
Driver "i810"
BusID "PCI:0:2:0"
EndSection
Section "Device"
Identifier "Intel 945GM Express (Clone)"
Driver "i810"
BusID "PCI:0:2:0"
Option "MonitorLayout" "CRT,LFP"
Option "Clone" "true"
EndSection
Section "Device"
Identifier "Intel 945GM Express (Separate: LFP)"
Driver "i810"
BusID "PCI:0:2:0"
Option "MonitorLayout" "CRT,LFP"
Screen 0
EndSection
Section "Device"
Identifier "Intel 945GM Express (Separate: CRT)"
Driver "i810"
BusID "PCI:0:2:0"
Screen 1
EndSection
Section "Monitor"
Identifier "Generic Monitor"
Option "DPMS"
EndSection
Section "Monitor"
Identifier "External Monitor"
Option "DPMS"
EndSection
Section "Screen"
Identifier "Default Screen"
Device "Intel 945GM Express (Default)"
Monitor "Generic Monitor"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1280x800"
EndSubSection
EndSection
Section "Screen"
Identifier "Default Screen (Clone)"
Device "Intel 945GM Express (Clone)"
Monitor "Generic Monitor"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1280x800"
EndSubSection
EndSection
Section "Screen"
Identifier "External Screen (Clone)"
Device "Intel 945GM Express (Clone)"
Monitor "External Monitor"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1280x1024" "1280x800" "1024x768"
EndSubSection
EndSection
Section "Screen"
Identifier "LFP Screen (Separate)"
Device "Intel 945GM Express (Separate: LFP)"
Monitor "Generic Monitor"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1280x800"
EndSubSection
EndSection
Section "Screen"
Identifier "CRT Screen (Separate)"
Device "Intel 945GM Express (Separate: CRT)"
Monitor "External Monitor"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1280x1024" "1280x800" "1024x768"
EndSubSection
EndSection
Section "ServerLayout"
Identifier "Default Layout"
Screen "Default Screen"
InputDevice "Generic Keyboard"
InputDevice "Configured Mouse"
EndSection
Section "ServerLayout"
Identifier "Dual-Head (Clone)"
Screen "Default Screen (Clone)"
Screen "External Screen (Clone)"
InputDevice "Generic Keyboard"
InputDevice "Configured Mouse"
EndSection
Section "ServerLayout"
Identifier "Dual-Head (Separate)"
Screen 0 "LFP Screen (Separate)" 0 0
Screen 1 "CRT Screen (Separate)" RightOf "LFP Screen (Separate)"
InputDevice "Generic Keyboard"
InputDevice "Configured Mouse"
EndSection
Section "ServerFlags"
Option "DefaultServerLayout" "Dual-Head (Separate)"
Option "Xinerama" "true"
EndSection |
E vuallà
[/edit]
Wireless
Per quanto riguarda il wireless, purtroppo, la scheda di rete funziona solo con ndiswrapper... Fortunatamente, però, tutto è regolare anche se una configurazione particolare del wpa_supplicant mi ha dato non pochi problemi; le mie configurazioni per la rete wireless sono
Per prima cosa installiamo il famigerato ndiswrapper
Code: | #emerge -av ndiswrapper |
e, scarichiamo, scompattiamo e carichiamo il driver per la scheda wireless
Code: | # mkdir /usr/lib/windriver
# cd /usr/lib/windriver
# wget http://mouser.altervista.org/presarioc540ea/wifi-driver.tar.gz
# tar zxvf wifi-driver.tar.gz && rm wifi-driver.tar.gz
# ndiswrapper -i /usr/lib/windriver/bcmwl5.inf |
Se tutto è andato come dovrebbe, ndiswrapper ci darà le seguenti informazioni
Code: | # ndiswrapper -l
bcmwl5 : driver installed
device (14E4:4311) present |
Aggiungiamo infine il driver ndiswrapper alla lista dei driver caricati al boot
Code: | # echo "ndiswrapper" >> /etc/modules.autoload.d/kernel-2.6 |
Personalmente utilizzo la WPA in una rete wireless con dhcp... Credo sia una situazione abbastanza diffusa; ecco i passaggi su come ottenerla.
Installiamo il wpa_supplicant
Code: | #emerge -av wpa_supplicant |
installato, andiamo a creare il file /etc/wpa_supplicant/wpa_supplicant.conf ed inseriamo i valori:
Code: | ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=0
ap_scan=1
network={
ssid="<vostro SSID>"
key_mgmt=WPA-PSK
psk="<vostra PASSWORD>"
} |
Successivamente editiamo il file /etc/conf.d/net per la gestione e l'avvio del device wireless direttamente al boot (se l'ap si vede, ovviamente
Code: | # cat /etc/conf.d/net
modules=( "wpa_supplicant" )
wpa_supplicant_wlan0="-Dwext -iwlan0 -c/etc/wpa_supplicant/wpa_supplicant.conf"
wpa_timeout_wlan0=6
config_wlan0=( "dhcp" )
dhcpcd_wlan0="-t 5" |
ed aggiungiamo questo device al processo di boot
Code: | # ln -s /etc/conf.d/net.lo /etc/conf.d/net.wlan0
# rc-update add net.wlan0 default |
Audio
Altri problemi li ho avuti con la scheda audio..... diciamo che non è proprio il meglio del meglio
Innanzitutto se avete dato un'occhiata la kernel che vi ho passato (lo avete guardato, vero??? ) avrete notato che non ho inserito il supporto ne ad ALSA ne ad OSS. Questo perchè la scheda audio, pur funzionando con il driver del kernel, ha il fastidioso problema che, una volta attaccate le cuffie..... il suono inizia ad uscire sia dalle cuffie che dalle casse del picci (rendendo, di fatto, impossibile ascoltare musica durante un'intervento da un cliente, per esempio)
Questo si risolve usando gli alsa-driver; editiamo quindi il file make.conf inserendo la variabile
Code: | ALSA_CARDS="hda-intel" |
ed emergiamo il software
[edit] Finalmente sono riuscito a far spegnere la lucina del mute della scheda audio. Il segreto era nel driver di alsa-driver che non la gestiva proprio. Mettendo gli alsa-driver in ~ si riesce a gestire la lucetta
quindi, prima di eseguire l'emerge, lanciamo
Code: | # echo "media-sound/alsa-driver ~x86" >> /etc/portage/package.keywords
# echo "media-sound/alsa-headers ~x86" >> /etc/portage/package.keywords
# echo "media-sound/alsa-utils ~x86" >> /etc/portage/package.keywords |
[/edit]
Code: | # emerge -av alsa-driver |
Una volta finito l'emerge, teniamo conto di dover passare un'opzione al caricamento del modulo; quindi
Code: | # echo "options snd-hda-intel position_fix=1" >> /etc/modprobe.conf |
ed aggiungiamo il modulo al caricamento durante il boot
Code: | # echo "snd-hda-intel" >> /etc/modules.autoload.d/kernel-2.6 |
e siamo a posto anche con questa
Pulsanti
Come avrete notato, questo computer presenta i pulsanti per gestire il volume; esattamente Vol- Vol+ e Mute.
Per quando riguarda invece la gestione io ho risolto in questo modo:
Code: | # emerge -av xbindkeys xosd |
Una volta fatto questo ho creato questo semplice script
Code: | #!/bin/bash
#
# Increase/Decrease/Mute/Unmute volume and write on screen
#
# (c)oded by Matteo <mouser> Cappadonna
FONT="-adobe-helvetica-bold-*-*-*-34-*-*-*-*-*-*-*"
COLOR="darkred"
ALIGN="center"
POS="top"
OFFSET="60"
DELAY="2"
BARMODE="percentage"
case $1 in
'+') amixer set Master 5%+ &> /dev/null
PERCENT="`amixer get Master | tail -1 | cut -d'[' -f2 | cut -d']' -f1 | sed s/'%'//`"
pkill osd_cat
osd_cat --font=$FONT --color=$COLOR --align=$ALIGN --pos=$POS --offset=$OFFSET --delay=$DELAY --barmode=$BARMODE --percentage=$PERCENT -T "Volume: $PERCENT%"
;;
'-') amixer set Master 5%- &> /dev/null
PERCENT="`amixer get Master | tail -1 | cut -d'[' -f2 | cut -d']' -f1 | sed s/'%'//`"
pkill osd_cat
osd_cat --font=$FONT --color=$COLOR --align=$ALIGN --pos=$POS --offset=$OFFSET --delay=$DELAY --barmode=$BARMODE --percentage=$PERCENT -T "Volume: $PERCENT%"
;;
*) amixer set Master toggle &> /dev/null
TMPFILE="tempfile"
STATE="`amixer get Master | tail -1 | cut -d'[' -f3 | cut -d']' -f1`"
if [ "$STATE" = "on" ]; then
echo "Volume ON" > $TMPFILE
else
echo "Volume OFF" > $TMPFILE
fi
pkill osd_cat
osd_cat --font=$FONT --color=$COLOR --align=$ALIGN --pos=$POS --offset=$OFFSET --delay=$DELAY $TMPFILE
rm $TMPFILE
;;
esac |
Copiatelo in /usr/bin/volume-osd e dategli l'esecuzione
Code: | # chmod 755 /usr/bin/volume-osd |
Ed inserite le seguenti voci nel file ~/.xbindkeys nella home del vostro utente
Code: | $ pwd
/home/mouser
$ cat .xbindkeys
"/usr/bin/volume-osd -"
m:0x0 + c:174
"/usr/bin/volume-osd +"
m:0x0 + c:176
"/usr/bin/volume-osd"
m:0x0 + c:160 |
In questo modo avrete la gestione dei pulsanti.
Conclusioni
In generale questo portatile mi sta dando delle grandissime soddisfazioni; compila a velocità stratosferica (per lo meno rispetto ai miei standard) e, a parte qualche piccolo gradino risolto lurkando sul forum italiano/internazionale, mi sta dando delle grandissime soddisfazioni in fatto di configurabilità; devo dire che mai ho posseduto un notebook che si lasciasse configurare così facilmente.
Una nota media sullo schermo che risulta luminoso e con un'ottimo contrasto, ma che genera un pò troppi riflessi, soprattutto se non lo si guarda stando esattamente di fronte.
da fare
- Configurazione modem
- Configurazione uscita vga/svideo
- Testare ingresso microfono (non mi è capitato ma dicono in giro che non funzioni)
ps: Cercando in giro ho notato che guide specifiche per questo portatile non sembrano esistere..... fooorte sono il primo
Ciriciao (e non dite che il buon mouser non vi aiuta )
mouser 
Last edited by mouser on Tue Nov 20, 2007 9:17 am; edited 1 time in total |
|
Back to top |
|
 |
mouser Veteran


Joined: 10 Aug 2004 Posts: 1419 Location: Milano
|
Posted: Wed Apr 04, 2007 3:18 pm Post subject: |
|
|
Editata la sezione Audio
Ciriciao
mouser  |
|
Back to top |
|
 |
mouser Veteran


Joined: 10 Aug 2004 Posts: 1419 Location: Milano
|
Posted: Tue Nov 20, 2007 9:18 am Post subject: |
|
|
Aggiunti due xorg.conf IMHO utili.
Ciriciao
mouser  |
|
Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|