https://wiki.archlinux.org/api.php?action=feedcontributions&user=Luca+VR&feedformat=atomArchWiki - User contributions [en]2024-03-29T09:53:05ZUser contributionsMediaWiki 1.41.0https://wiki.archlinux.org/index.php?title=VirtualBox_(Italiano)&diff=305639VirtualBox (Italiano)2014-03-19T18:15:43Z<p>Luca VR: /* Troubleshhoting */ Typo</p>
<hr />
<div>[[Category:Emulators (Italiano)]]<br />
[[Category:Virtualization (Italiano)]]<br />
[[cs:VirtualBox]]<br />
[[de:VirtualBox]]<br />
[[el:VirtualBox]]<br />
[[en:VirtualBox]]<br />
[[es:VirtualBox]]<br />
[[fr:VirtualBox]]<br />
[[hu:VirtualBox]]<br />
[[ja:VirtualBox]]<br />
[[pt:VirtualBox]]<br />
[[ru:VirtualBox]]<br />
[[zh-CN:VirtualBox]]<br />
{{out_of_date | Questa pagina è in fase di revisione e potrebbe non essere aggiornata. Seguite per ora le istruzioni della versione inglese. | Talk:ArchWiki Translation Team (Italiano)#Pagine Marcate come "out of date" e "Traslateme"}}<br />
<br />
Questo articolo descrive l'esecuzione di [[Wikipedia:VirtualBox|VirtualBox]] in Arch, si potrebbe essere interessati anche a [[Arch Linux VirtualBox Guest|Arch Linux come Guest di VirtualBox]].<br />
<br />
[http://www.virtualbox.org VirtualBox] è un emulatore di macchine virtuali simile a [[VMware]], ne possiede la maggior parte delle caratteristiche e in più ne aggiunge di nuove. E' costantemente in sviluppo e vengono aggiunte continuamente nuove funzionalità. Ad esempio la versione 2.2 ha introdotto il supporto all'accelerazione grafica 3D OpenGL sia per le macchine guest Linux che Solaris. Dispone di un'ottima GUI (QT o SDL) e di strumenti a linea di comando per la gestione delle macchine virtuali. Sono consentite anche operazioni senza un'uscita video (headless).<br />
<br />
==Installazione==<br />
;{{Pkg|virtualbox}}<br />
:Questa è la versione con licensa GPL di VirtualBox che può essere trovata nel repository community.<br />
<br />
Installare il pacchetto base:<br />
# pacman -S virtualbox<br />
<br />
Per usufruire dell'interfaccia grafica installare anche il pacchetto {{Pkg|qt4}}:<br />
# pacman -S qt4<br />
<br />
===Installare le estensioni per VirtualBox===<br />
<br />
VirtualBox necessita di un extension pack (VirtualBox Oracle VM VirtualBox Extension Pack) per offrire supporto a RDP, USB2.0, avvio PXE per schede video Intel, ecc. Esso è disponibile al seguente indirizzo: [http://www.virtualbox.org/wiki/Downloads Virtualbox Downloads]. L'extension pack è disponibile con licenza PUEL gratuita per uso personale.<br />
Per installare l'extension pack scaricato avviare VirtualBox, cliccare su preferenze e sul lato sinistro selezionare estensioni. Sul lato destro cliccare sull'icona aggiungi estensione ed aprire la cartella che contiene il pacchetto scaricato.<br />
<br />
<br />
In alternativa è possibile installare l'Extension Pack dalla linea di comando usando VBoxManage.<br />
<br />
<br />
VBoxManage extpack install <tarball> |<br />
<br />
uninstall [--force] <name> |<br />
<br />
cleanup<br />
<br />
Oppure è possibile usare {{AUR|virtualbox-ext-oracle}} da AUR.<br />
<br />
==Avviare VirtualBox==<br />
A questo punto aggiungere gli utenti a cui si vuol consentire l'esecuzione di VirtualBox al gruppo ''vboxusers'':<br />
# gpasswd -a USERNAME vboxusers<br />
<br />
Compilare i moduli richiesti:<br />
# vboxbuild<br />
<br />
Infine editare {{ic|/etc/[[rc.conf_(Italiano)|rc.conf]]}} ed aggiungere ''vboxdrv'' nell'array MODULES per caricare il driver di VirtualBox all'avvio del sistema: <br />
MODULES=(... ''vboxdrv'')<br />
<br />
Per caricare i moduli manualmente:<br />
# modprobe vboxdrv<br />
<br />
Per avviare VirtualBox:<br />
$ virtualbox<br />
<br />
===Risolvere l'impossibilità di eseguire rc.d setup vboxdrv===<br />
In alcuni casi dopo un'installazione di VirtualBox pulita non è possibile compilare i moduli ed appariranno dei messaggi di errore del tipo:<br />
<br />
{{bc|<nowiki><br />
# rc.d setup vboxdrv<br />
:: Unloading VirtualBox kernel modules [DONE]<br />
:: Recompiling VirtualBox kernel modules [BUSY]<br />
Look at /var/log/vbox-install.log to find out what went wrong<br />
Look at /var/log/vbox-install.log to find out what went wrong<br />
Look at /var/log/vbox-install.log to find out what went wrong<br />
[DONE]<br />
:: Reloading VirtualBox kernel modules}</nowiki>}}<br />
<br />
con il file di log menzionato che conterrà:<br />
{{bc|1=Makefile:169: *** Error: unable to find the sources of your current Linux kernel. Specify KERN_DIR=<directory> and run Make again. Stop.<br />
cp: cannot stat `/tmp/vboxdrv-Module.symvers': No such file or directory<br />
Makefile:94: *** Error: unable to find the sources of your current Linux kernel. Specify KERN_DIR=<directory> and run Make again. Stop.<br />
cp: cannot stat `/tmp/vboxdrv-Module.symvers': No such file or directory<br />
Makefile:90: *** Error: unable to find the sources of your current Linux kernel. Specify KERN_DIR=<directory> and run Make again. Stop.}}<br />
<br />
Una soluzione è installare gli header del proprio kernel:<br />
<br />
pacman -S linux-headers<br />
oppure, se si ha una versione lts del kernel :<br />
pacman -S linux-lts-headers<br />
<br />
Successivamente potrebbe essere utile riavviare il sistema (ma potrebbe non essere necessario) e seguire i passi precedenti. La macchina virtuale a questo punto dovrebbe avviarsi.<br />
<br />
==Configurazione==<br />
===Rete===<br />
La macchina guest può essere connessa in rete tramite vari metodi; tra questi troviamo reti [[#NAT]] e [[#Bridged]]. L'uso della rete [[#NAT]] è il metodo più semplice e quello predefinito per le nuove macchine virtuali.<br />
<br />
Per usare le modalità host-only e internal network è necessario caricare il modulo del kernel vboxnetadp. Il [http://www.virtualbox.org/manual/UserManual.html manuale di VirtualBox] copre le varie opzioni disponibili per questi due tipi di reti. Queste non verranno trattate dato che per come sono fatte sono in gran parte indipendenti dall'OS.<br />
<br />
====NAT====<br />
Da VirtualBox:<br />
* accedere al menu ''Impostazioni'' della VM;<br />
* dalla lista sulla sinistra cliccare su ''Rete''; infine,<br />
* nel menu a discesa ''Connessa a'' selezionare ''NAT''.<br />
<br />
Il server DHCP incluso in VirtualBox permette al sistema guest di essere configurato tramite DHCP. L'indirizzo IP NAT della prima scheda di rete è 10.0.2.0, quello della seconda scheda 10.0.3.0 e così via.<br />
<br />
====Bridged====<br />
La rete Bridged può essere impostata in vari modi, tra questi esiste una impostazione nativa che richiede una configurazione minima al prezzo di un minore controllo. Dalle ultime versioni VirtualBox può effettuare connessioni Bridged tra una macchina guest e un'interfaccia host wireless senza l'aiuto di utility di terze parti.<br />
<br />
Prima di continuare caricare i moduli necessari:<br />
# modprobe vboxnetflt<br />
<br />
Da VirtualBox:<br />
* accedere al menu ''Impostazioni'' della VM;<br />
* cliccare su ''Rete'' dal menu sulla sinistra;<br />
* selezionare ''Scheda con bridge'' nel menu a discesa ''Connessa a''; infine,<br />
* nella lista a discesa ''Nome'' selezionare il nome dell'interfaccia host connessa alla rete di cui si vuole faccia parte l'OS guest.<br />
<br />
Avviare la macchina virtuale e configurare la rete normalmente; ad es. DHCP o IP statico.<br />
<br />
===Guest Additions===<br />
Le Guest Additions permettono di condividere le cartelle, migliorare il supporto all'accelerazione grafica e abilitare gli appunti (clipboard) bidirezionali tra macchina guest e host. Un'altra caratteristica è l'integrazione del mouse che evita di doverlo rilasciare ogni volta che lo si usa nell' OS guest.<br />
<br />
====Arch Linux Guests====<br />
<br />
Fare riferimento a [[Arch Linux VirtualBox Guest]].<br />
<br />
====Windows Guests====<br />
Dopo aver installato Windows (XP, ecc.) sulla macchina virtuale selezionare ''Devices &rarr; Install Guest Additions...''<br />
<br />
Questo monterà l'immagine iso e Windows lancerà l'installer delle Guest Addition automaticamente. A questo punto seguire le istruzioni fino a completare l'installazione.<br />
Se si hanno le Guest Additions installate per una macchina virtuale e si vuole installarle per un'altra non è necessario scaricare di nuovo il file .iso. Selezionare "Periferiche &rarr; Dispositivi CD/DVD &rarr; Selezionare CD/DVD virtuale" e navigare in ~/.VirtualBox dove è situata l'immagine.<br />
<br />
===Tastiera e mouse tra host e guest===<br />
*Per catturare il mouse e la tastiera cliccare con il mouse all'interno della finestra della macchina virtuale.<br />
*Per disattivare la cattura premere il tasto {{ic|Ctrl}} destro.<br />
<br />
Per avere l'integrazione del mouse automatica tra host e guest installare le [[#Guest Additions]] sulla macchina guest.<br />
<br />
Quando si genera il file {{ic|xorg.conf}} nella macchina guest tramite il comando {{Ic|X -configure}} la sezione InputDevice dovrebbe contenere il driver {{Ic|mouse}}. Dopo aver installato le Guest Additions sostituire {{Ic|mouse}} con {{Ic|vboxmouse}} quindi riavviare X o direttamente la macchina guest.<br />
<br />
Atrimenti inserire manualmente le seguenti righe nel file {{ic|xorg.conf}} della macchina guest:<br />
{{bc|<br />
Section "InputDevice"<br />
Identifier "Mouse0"<br />
Driver "vboxmouse"<br />
Option "Protocol" "auto"<br />
Option "Device" "/dev/input/mice"<br />
Option "ZAxisMapping" "4 5 6 7"<br />
EndSection<br />
<br />
Section "ServerLayout"<br />
Identifier "X.org Configured"<br />
Screen 0 "Screen0" 0 0<br />
InputDevice "Mouse0" "CorePointer"<br />
InputDevice "Keyboard0" "CoreKeyboard"<br />
EndSection<br />
}}<br />
<br />
===Usare la risoluzione massima del sistema host nel sistema guest===<br />
Impostare la risoluzione del sistema guest nello script di {{ic|/boot/grub/menu.lst}}, aggiungendo il codice vga corretto alla riga del kernel.<br />
Per una risoluzione di 1280x1024 ad es. sarà<br />
# kernel /vmlinuz-linux root=/dev/disk/by-uuid/7bdc5dee-8fb0-4260-bc43-60ac6e4e4a54 ro vga=795<br />
<br />
Aggiungere la risoluzione nel file {{ic|/etc/X11/xorg.conf}}, ad es.<br />
{{bc|<br />
Section "Screen"<br />
...<br />
SubSection "Display"<br />
Viewport 0 0<br />
Depth 24<br />
Modes "1280x1024" "1024x768"<br />
EndSubSection<br />
...<br />
EndSection<br />
}}<br />
Se si incontrano problemi con la risoluzione e il sistema torna indietro alla risoluzione successiva più bassa nella riga 'Modes' omettere semplicemente quest'ultima.<br />
Esempio<br />
Modes "1280x1024"<br />
<br />
===Condividere le cartelle tra host e guest===<br />
Nelle impostazioni della macchina virtuale andare nel tab Cartelle condivise e aggiungere qui le cartelle che si vogliono condividere.<br />
<br />
*NOTA: è necessario installare le Guest Additions prima di poter usare le cartelle condivise.<br />
In un host Linux ''Dispositivi &rarr; Installa Guest Additions''<br />
Si (quando viene chiesto di scaricare l'immagine del CD)<br />
Mount (quando viene chiesto di registrarsi e ed effettuare il mount)<br />
<br />
In un host Linux creare una o più cartelle per condividere i file e impostare queste cartelle come condivise attraverso il menu di VirtualBox.<br />
<br />
In una guest Windows a partire da VirtualBox 1.5.0 le cartelle condivise sono esplorabili e visibili da Esplora risorse. Aprire Esplora risorse e cercare le cartelle condivise in ''Risorse di rete &rarr; Tutta la rete &rarr; VirtualBox Shared Folders''<br />
<br />
Lanciare Esplora risorse (digitare explorer da esegui) per sfogliare le Risorse di rete -> espandere l'albero tramite il segno (+): Tutta la rete &rarr; Virtualbox Shared Folder &rarr; '''Vboxsvr''' &rarr; qui è possibile trovare tutte le cartelle condivise e impostare dei collegamenti per essi nella macchina guest. In alternativa è possibile usare "Aggiungi risorsa di rete'' e cercare "Vboxsvr".<br />
<br />
In alternativa nel Prompt dei comandi di Windows digitare:<br />
net use x: \\VBOXSVR\sharename<br />
Sostituire {{Ic|x:}} con la lettera del drive che si vuole utilizzare per la condivisione e sharename con il nome specificato in VBoxManage.<br />
<br />
In una macchina guest Windows per velocizzare il caricamento e il salvataggio dei file (ad es. per Microsoft Office) nelle cartelle condivise editare il file ''c:\windows\system32\drivers\etc\hosts'' come segue:<br />
127.0.0.1 localhost vboxsvr<br />
<br />
In una guest Linux digitare il seguente comando:<br />
# mount -t vboxsf [-o OPTIONS] sharename mountpoint<br />
{{Nota | sharename è opzionale o è lo stesso scelto nelle impostazioni di VirtualBox, mountpoint è il punto di mount della cartella condivisa}}<br />
:Il montaggio automatico delle cartelle condivise nella linux-guest è possibile editando il file /etc/fstab. E' possibile anche specificare uid=# e gid=# (dove # va sostituito con dal valore numerico di uid e gid) per montare le cartelle condivise senza bisogno dei permessi di root.<br />
(può essere utile per montare parti della ~/home del sistema host per l'uso nel sistema guest Linux. Per fare questo aggiungere una riga nel seguente formato nel file /etc/fstab della macchina guest:<br />
<br />
sharename mountpoint vboxsf uid=#,gid=# 0 0<br />
<br />
Sostituire {{Ic|sharename}} con il nome assegnato alla cartella condivisa in VBoxManage, e mountpoint con il percorso in cui si vuole montare la cartella condivisa (es. /mnt/share). Valgono le regole tipiche di mount, quindi se la cartella non esiste va prima creata. Se è stato detto a VirtualBox di montare automaticamente le cartelle condivise questo passo non è necessario e le cartelle dovrebbero trovarsi da qualche parte dentro la directory /media.<br />
<br />
Oltre alle opzioni standard fornite dal comando mount sono disponibili anche:<br />
iocharset=CHARSET<br />
per impostare il set di caratteri usati per le operazioni di I/O (di default utf8) e<br />
convertcp=CHARSET<br />
per specificare il set di caratteri usato nel nome della cartella condivisa (di default utf8).<br />
<br />
===Far funzionare l'audio nella macchina guest===<br />
Nelle impostazioni della macchina recarsi nel tab audio e selezionare il driver adatto al proprio sistema audio (ALSA, OSS o PulseAudio).<br />
<br />
===Impostare la RAM e la memoria video nella macchina guest===<br />
E' possibile cambiare le impostazioni di default andando in ''Impostazioni &rarr; Generale''.<br />
<br />
===Impostare il CD-ROM nella macchina guest===<br />
E' possibile cambiare le impostazioni di default andando in ''Impostazioni &rarr; Archiviazione''.<br />
<br />
Spuntare mount CD/DVD drive e selezionare una delle opzioni successive.<br />
<br />
===Abilitare l'accelerazione D3D nelle macchine guest Windows===<br />
Le ultime versioni di VirtualBox offrono il supporto all'accelerazione OpenGL all'interno della macchina guest. Essa può essere abilitata spuntando la relativa opzione situata appena sotto l'impostazione della memoria video nel menu Impostazioni della macchina e installando le Guest Addition. Tuttavia la maggior parte dei giochi Windows usa le Direct3D (parte delle DirectX) e non le OpenGL e quindi non si trae vantaggio da questa funzionalità. Comunque è possibile ottenere l'accelerazione Direct3D prendendo in prestito le librerie d3d da Wine, in modo da poter tradurre le chiamate alle d3d in OpenGL che beneficiano dell'accelerazione hardware.<br />
<br />
Dopo aver ablitato l'accelerazione OpenGL come descritto sopra andare all'indirizzo http://www.nongnu.org/wined3d/ dalla macchina Windows e scaricare "Latest version (Installer):". Riavviare la macchina guest in modalità provvisoria (premere F8 prima che appaia la schermata di Windows ma dopo che sia scomparsa la schermata VirtualBox) e installare wined3d, accettando le impostazioni di default durante l'installazione (volendo si può selezionare il supporto alle DirectX10, non modificare nient'altro). Riavviare in modalità normale e sarà disponibile l'accelerazione Direct3D.<br />
<br />
{{Nota | Questo hack potrebbe non funzionare con alcuni giochi, in base ai controlli hardware che effettua e alle parti delle D3D che utilizza.}}<br />
{{Nota | Questo hack è stato testato solo su windows XP e Windows 7 RC guests AFAIK e non funziona su macchine guest Windows 7. Se hai effettuato dei test con altre versioni di Windows per favore aggiungi i tuoi risultati qui.}}<br />
<br />
==Configurazione di un OS virtualizzato==<br />
VirtualBox necessita di essere configurato per virtualizzare un altro sistema operativo.<br />
<br />
===Test di un CD/DVD live===<br />
Cliccare su 'Nuova' per creare un nuovo ambiente virtuale. Assegnargli un nome e impostare il tipo di sistema operativo e la versione. Selezionare la dimensione della memoria (nota: la maggior parte dei sistemi operativi richiede almeno 512MB per funzionare al meglio). Creare un nuovo disco fisso virtuale (un disco fisso virtuale è un file che conterrà il filesystem e i file del sistema operativo).<br />
<br />
Quando il disco fisso è stato creato cliccare su 'Impostazioni', quindi CD/DVD-ROM e spuntare 'Monta periferica CD/DVD'. Infine selezionare l'immagine ISO.<br />
<br />
==Manutenzione==<br />
<br />
===Ricompilare il modulo vboxdrv===<br />
Ogni volta che la versione del kernel cambia (a causa di un aggiornamento, una ricompilazione, ecc.) il modulo vboxdrv deve essere ricompilato.<br />
<br />
Assicurarsi che ''linux-headers'' sia già installato ed eseguire il seguente comando:<br />
# rc.d setup vboxdrv<br />
<br />
Questo compilerà il modulo del kernel di VirtualBox per il ''kernel in esecuzione''; se si è appena aggiornato il kernel riavviare il sistema prima di ricompilare il modulo di VirtualBox.<br />
<br />
Dopo aver ricompilato il modulo non dimenticare di ricaricarlo:<br />
# modprobe vboxdrv<br />
<br />
''vboxdrv'' e vboxnetflt'' dovrebbe trovarsi nella sezione MODULES=() del file /etc/rc.conf<br />
<br />
Se si sta compilando un vecchio pacchetto virtualbox_bin compilato da AUR eseguire:<br />
# vbox_build_module<br />
<br />
Se è necessario ricompilare le Guest Additions in un'installazione guest di Arch Linux usare il seguente comando:<br />
# rc.d setup rc.vboxadd<br />
<br />
===Compattare un hard disk virtuale===<br />
==== Linux Guests ====<br />
Avviare la VM Linux ed eliminare tutto il superfluo (pacchetti non voluti, file temporanei, ecc.). Successivamente pulire lo spazio libero usando dd o meglio dclfdd:<br />
<br />
$ dcfldd if=/dev/zero of=fillfile bs=4M<br />
<br />
Quando il fillfile raggiunge il limite dell'hdd virtuale la maggior parte dello sapzio utente (blocchi non riservati) viene riempito. In alternativa eseguire il comando come root per ottenerlo tutto. Un esempio di messaggio che si potrebbe ottenere è: "8192 blocks (8192Mb) written.dcfldd:: No space left on device."<br />
<br />
Arrivati a questo punto è necessario rimuovere il fillfile e spegnere la VM:<br />
<br />
$ rm -f fillfile && sudo shutdown -hF now<br />
<br />
{{Nota | L'opzione F forza una verifica del disco al riavvio, che è consigliato dopo un'operazione di compattazione.}}<br />
<br />
A questo punto compattare il disco:<br />
<br />
$ VBoxManage modifyhd /path/to/your.vdi --compact<br />
<br />
==== Windows Guests ====<br />
<br />
Vedere [http://my.opera.com/locksley90/blog/2008/06/01/how-to-compact-a-virtualbox-virtual-disk-image-vdi How to compact a VirtualBox virtual disk image (VDI)]<br />
<br />
===Aumentare le dimensioni di un hard disk virtuale in un ambiente guest Windows===<br />
ATTENZIONE: TESTATO SOLO SU MACCHINE GUEST XP<br />
<br />
Se lo spazio libero sul disco rigido virtuale creato inizia ad essere poco è possibile è possibile seguire i seguenti passi:<br />
<br />
Creare un nuovo vdi in ~/.VirtualBox/HardDisks digitando nel terminale:<br />
# cd ~/.VirtualBox/HardDisks<br />
# VBoxManage createhd -filename new.vdi --size 10000 --remember<br />
<br />
Dove size è in mb, in questo esempio 10000MB ~= 10GB e new.vdi è il nome del disco rigido appena creato.<br />
<br />
In seguito il vecchio vdi deve essere clonato nel nuovo vdi, questo processo necessita di un po' di tempo:<br />
# VBoxManage clonehd old.vdi new.vdi --existing<br />
<br />
Scollegare il vecchio disco rigido e collegare il nuovo, sostituire VMName con il nome della propria VM:<br />
# VBoxManage modifyvm VMName --hda none<br />
# VBoxManage modifyvm VMName --hda new.vdi<br />
<br />
Avviare la VM, eseguire Partition Wizard 5 per ridimensionare la partizione al volo e riavviare.<br />
<br />
Rimuovere il vecchio vdi da VirtualBox ed eliminare il file:<br />
# VBoxManage closemedium disk old.vdi<br />
# rm old.vdi<br />
<br />
===Windows XP e telefoni Nokia===<br />
Per far funzionare i telefoni Nokia tramite la modalità PC Suite in Windows XP VirtualBox necessita di due semplici passi:<br />
<br />
'''1.''' Aggiungere una regola ad udev tramite {{ic|/etc/udev/rules.d/40-permissions.rules}}:<br />
LABEL="usb_serial_start"<br />
ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", \<br />
GROUP="usbfs", MODE="0660", GROUP="dialout"<br />
LABEL="usb_serial_end"<br />
<br />
'''2.''' Creare il gruppo usbfs e aggiungere il proprio utente ad esso:<br />
$ sudo groupadd usbfs<br />
$ sudo usermod -a -G usbfs $USER<br />
<br />
Dopo il logout connettere un telefono Nokia in modalità PC Suite ed avviare XP per testare la nuova regola.<br />
<br />
==Migrare da un'altra VM==<br />
Il programma {{ic|qemu-img}} può essere usato per convertire immagini da un formato ad un altro, o per comprimere o criptare un'immagine.<br />
# pacman -S qemu<br />
<br />
===Convertire immagini QEMU===<br />
Per convertire immagini QEMU per poterle usare in VirtualBox per prima cosa convertirle in formato ''raw'', successivamente usare l'utilità di conversione di VirtualBox per convertire e comprimere l'immagine nel formato nativo.<br />
$ qemu-img convert -O raw test.qcow2 test.raw<br />
$ VBoxManage modifyvdi /full/path/to/test.vdi compact<br />
oppure<br />
$ qemu-img convert -O raw test.qcow2 test.raw<br />
(of course you must have installed qemu package for that)<br />
$ VBoxManage convertfromraw /full/path/to/test.raw /full/path/to/test.vdi<br />
$ VBoxManage modifyvdi /full/path/to/test.vdi compact<br />
<br />
===Convertire da immagini VMware===<br />
Eseguire<br />
$ VBoxManage clonehd source.vmdk target.vdi --format VDI<br />
<br />
Questo comando potrebbe non essere più necessario con le versioni più recenti di VirtualBox (da confermare)<br />
<br />
==Tips & Tricks==<br />
<br />
===Rendere possibile l'individuazione di Web-Cam e altre periferiche USB===<br />
Assicurarsi che si stia filtrando qualunque periferica tranne mouse e tastiere così che esse non partano all'avvio. In questo modo Windows individuerà le periferiche all'avvio.<br />
<br />
===Inviare CTRL+ALT+F1 alla macchina guest===<br />
Se il SO guest è una distro Linux e si vorrebbe aprire una nuova tty o uscire da X digitando {{ic|Ctrl}}+{{ic|Alt}}+{{ic|F1}}, si può inviare facilmente questo comando all'OS guest semplicemente premendo il 'tasto Host' (di solito {{ic|Ctrl}} nel lato destro della tastiera) + {{ic|F1}} o {{ic|F2}}, ecc.<br />
<br />
===Avviare la VM all'avvio del sistema in un server senza uscita video (headless)===<br />
Aggiungere la seguente linea in /etc/rc.local<br />
exec /bin/su -c 'VBoxManage startvm --type headless <''UUID|NAME''>' ''PREFERED_USER'' >/dev/null 2>&1<br />
dove <UUID|NAME> è l'identificativo della macchina guest e PREFERRED_USER è il profilo utente che contiene la VM e i file .vdi.<br />
<br />
Dato che exec sostituisce il processo attualmente avviato non sarà possibile far partire una seconda VM o eseguire qualunque altro programma dopo di esso. Se questo è un problema provare le righe seguenti:<br />
su -c 'VBoxHeadless -s <UUID|NAME> &' -s /bin/sh PREFERED_USER >/dev/null 2>&1<br />
E' consigliabile usare per su e VBoxHeadless un percorso completo. Aggiungere ulteriori righe come quella di sopra per avviare più VM. I comandi successivi presenti nel file rc.local saranno eseguiti.<br />
<br />
Per determinare le VM disponibili per un utente digitare:<br />
su -c 'VBoxManage list vms' PREFERED_USER<br />
<br />
Per salvare lo stato di una VM avviata:<br />
su -c 'VBoxManage controlvm <UUID|NAME> savestate' PREFERED_USER<br />
Un buon punto dove posizionare questa riga potrebbe essere rc.local.shutdown.<br />
<br />
===Demone gestione guest===<br />
Di seguito è elencato un [[daemon_(Italiano) | demone]] per automatizzare la gestione delle VM. Le macchine guest verranno avviate al boot e il loro stato verrà salvato in chiusura. All'avvio del daemon se esso non funziona si otterrà il messaggio "./vbox_service: line 31: out[${m[1]}]: bad array subscript".<br />
<br />
Il file di configurazione:<br />
{{hc|/etc/conf.d/vbox_service|2=<nowiki><br />
# Guests to manage:<br />
#VB_GUESTS=('OpenBSD' 'Slackware' 'Windows XP')<br />
#<br />
# Disable a guest by prepending a bang:<br />
#VB_GUESTS=('OpenBSD' 'Slackware' !'Windows XP')<br />
#<br />
# Default value matches none:<br />
VB_GUESTS=()<br />
<br />
# User to run Virtual Box as:<br />
VB_USER='vbox'<br />
</nowiki>}}<br />
<br />
Lo script:<br />
{{hc|/etc/rc.d/vbox_service|2=<nowiki><br />
#!/bin/bash<br />
<br />
. /etc/rc.conf<br />
. /etc/rc.d/functions<br />
<br />
unset VB_GUESTS<br />
unset VB_USER<br />
[[ -r /etc/conf.d/vbox_service ]] && . /etc/conf.d/vbox_service<br />
[[ ${VB_GUESTS[@]} ]] || VB_GUESTS=()<br />
[[ ${VB_USER[@]} ]] || VB_USER='vbox'<br />
<br />
match() {<br />
[[ $REPLY =~ $1 ]] && m=("${BASH_REMATCH[@]}")<br />
}<br />
<br />
vm_raw() {<br />
local argv=''<br />
printf -v argv ' %q ' "$@"<br />
su -c "/usr/bin/VBoxManage $argv" -s /bin/sh "$VB_USER"<br />
}<br />
<br />
vm_ls() {<br />
local -A out=''<br />
local -i ret=1<br />
<br />
local m=()<br />
while read -r; do<br />
match '^"(.+)" \{(.+)\}$'<br />
out[${m[1]}]=${m[2]}<br />
done < <(vm_raw list vms)<br />
<br />
local i=''<br />
for i in "${VB_GUESTS[@]##!*}"; do<br />
if [[ ${out[$i]} ]]; then<br />
printf ' %q ' "${out[$i]}"<br />
ret=0<br />
fi<br />
done<br />
<br />
return $ret<br />
}<br />
<br />
vm_envinit() {<br />
local m=()<br />
while read -r; do<br />
match '^(.+)="?([^"]+)'<br />
env[$1:${m[1]}]=${m[2]}<br />
done < <(vm_raw showvminfo --machinereadable "$1")<br />
}<br />
<br />
start() {<br />
if [[ ${env[$1:VMState]} != 'running' ]]; then<br />
vm_raw startvm --type headless "$1"<br />
fi<br />
}<br />
<br />
stop() {<br />
if [[ ${env[$1:VMState]} == 'running' ]]; then<br />
vm_raw controlvm "$1" savestate<br />
fi<br />
}<br />
<br />
restart() {<br />
stop "$1"<br />
sleep 3<br />
start "$1"<br />
}<br />
<br />
usage() {<br />
printf '%s\n' "usage: $0 <start|stop|restart> [name|uuid]..." >&2<br />
}<br />
<br />
if [[ ! $1 =~ ^(start|stop|restart)$ ]]; then<br />
usage<br />
exit 2<br />
fi<br />
cmd=$1<br />
shift<br />
(($#)) || eval set -- "$(vm_ls)"<br />
<br />
stat_busy "${cmd^}ing VMs:"<br />
trap 'stat_die' ERR<br />
set -Ee<br />
<br />
declare -A env=''<br />
<br />
for i; do<br />
[[ $i ]]<br />
vm_envinit "$i"<br />
stat_append "${env[$i:name]}, "<br />
$cmd "${env[$i:UUID]}" &>/dev/null<br />
done<br />
<br />
stat_done<br />
</nowiki>}}<br />
<br />
===Accedere a un server su una VM dall'host===<br />
Per accedere ad Apache su una VM SOLO dalla macchina host, eseguire semplicemente i seguenti comandi sull'host:<br />
$ VBoxManage setextradata GuestName "VBoxInternal/Devices/pcnet/0/LUN#0/Config/Apache/HostPort" 8888<br />
$ VBoxManage setextradata GuestName "VBoxInternal/Devices/pcnet/0/LUN#0/Config/Apache/GuestPort" 80<br />
$ VBoxManage setextradata GuestName "VBoxInternal/Devices/pcnet/0/LUN#0/Config/Apache/Protocol" TCP<br />
Dove 8888 è la porta su cui è in ascolto l'host e 80 è la porta della VM a cui Apache invia i segnali. Lo stesso procedimento vale per configurare SSH, ecc. cambiando "Apache" con il servizio desiderato e usando differenti porte.<br />
<br />
Nota: "pcnet" si riferisce alla scheda di rete della VM. Se nella propria VM si sta usando una scheda Intel sostituire "pcnet" con "e1000"<br />
<br />
*da [http://mydebian.blogdns.org/?p=111 ]<br />
<br />
===DAEMON Tools===<br />
Anche se VirtualBox può montare senza problemi le immagini ISO alcuni formati immagine non possono essere convertiti in formato ISO. Ad esempio ccd2iso ignora i file .ccd e .sub, il che può portare ad immagini ISO danneggiate. cdemu, fuseiso e MagicISO si comportano allo stesso modo. In questi casi non c'è altra scelta che usare i Daemon Tools all'interno di VirtualBox.<br />
<br />
Le recenti versioni di Daemon Tools rifiutano di installarsi per cui usare la seguente versione: [http://www.disc-tools.com/download/daemon347+hashcalc]<br />
<br />
===Usare VirtualBox su una memoria USB===<br />
Quando si usa VirtualBox su una memoria USB, ad esempio per avviare una macchina installata con un'immagine ISO è necessario creare manualmente i VDMK dai file esistenti. Tuttavia una volta che i nuovi VMDK sono stati creati e ci si sposta su un'altra macchina possono verificarsi dei problemi lanciando la macchina virtuale. Per sbarazzarsi di questo problema è possibile usare il seguente script per avviare VirtualBox. Questo script ripulisce i vecchi file VMDK e ne crea dei nuovi per voi:<br />
{{bc|<nowiki><br />
#!/bin/bash<br />
<br />
# Erase old VMDK entries<br />
rm ~/.VirtualBox/*.vmdk<br />
<br />
# Clean up VBox-Registry<br />
sed -i '/sd/d' ~/.VirtualBox/VirtualBox.xml<br />
<br />
# Remove old harddisks from existing machines<br />
find ~/.VirtualBox/Machines -name \*.xml | while read file; do<br />
line=`grep -e "type\=\"HardDisk\"" -n $file | cut -d ':' -f 1`<br />
if [ -n "$line" ]; then<br />
sed -i ${line}d $file<br />
sed -i ${line}d $file<br />
sed -i ${line}d $file<br />
fi<br />
sed -i "/rg/d" $file<br />
done<br />
<br />
# Delete prev-files created by VirtualBox<br />
find ~/.VirtualBox/Machines -name \*-prev -exec rm '{}' \;<br />
<br />
# Recreate VMDKs<br />
ls -l /dev/disk/by-uuid | cut -d ' ' -f 9,11 | while read ln; do<br />
if [ -n "$ln" ]; then<br />
uuid=`echo "$ln" | cut -d ' ' -f 1`<br />
device=`echo "$ln" | cut -d ' ' -f 2 | cut -d '/' -f 3 | cut -b 1-3`<br />
<br />
# determine whether drive is mounted already<br />
checkstr1=`mount | grep $uuid`<br />
checkstr2=`mount | grep $device`<br />
checkstr3=`ls ~/.VirtualBox/*.vmdk | grep $device`<br />
if [[ -z "$checkstr1" && -z "$checkstr2" && -z "$checkstr3" ]]; then<br />
VBoxManage internalcommands createrawvmdk -filename ~/.VirtualBox/$device.vmdk -rawdisk /dev/$device -register<br />
fi<br />
fi<br />
done<br />
<br />
# Start VirtualBox<br />
VirtualBox<br />
</nowiki>}}<br />
Notare che il proprio utente deve essere aggiunto al gruppo "disk" per creare i VMDK di unità esistenti.<br />
<br />
===phpVirtualBox===<br />
Un'implementazione AJAX open source dell'interfaccia utente di VirtualBox scritta in PHP. Come ogni moderna interfaccia web consente di accedere e controllare VirtualBox da remoto. Gran parte del suo codice è basato sul progetto (inattivo) vboxweb. Consente all'amministratore in remoto, graficamente, di amministrare la macchina virtuale senza il bisogno di loggarsi all'interno del proprio server headless di VirtualBox.<br />
<br />
E' richiesta la versione PUEL di VirtualBox.<br />
<br />
Una guida di installazione è disponibile qui:<br />
http://code.google.com/p/phpvirtualbox/wiki/Installation<br />
<br />
Gli utenti di Arch Linux dovrebbero decommentare le seguenti 2 estensioni in ''/etc/php/php.ini''<br />
extension=json.so<br />
extension=soap.so<br />
<br />
==Troubleshooting==<br />
===OpenBSD===<br />
Alcuni utenti con macchine datate potrebbero avere problemi nell'esecuzione di VM OpenBSD che si manifesterebbero con molti segmentation fault e totale instabilità. Avviare VirtualBox con l'argomento -norawr0 potrebbe risolvere il problema:<br />
$ VBoxSDL -norawr0 -vm NameOfYourOpenBSDVM<br />
<br />
Vedere anche [[PhpVirtualBox]]<br />
<br />
==Link Esterni==<br />
* [http://www.virtualbox.org/manual/UserManual.html VirtualBox User Manual]</div>Luca VRhttps://wiki.archlinux.org/index.php?title=GNOME_(Italiano)&diff=286218GNOME (Italiano)2013-12-04T14:05:23Z<p>Luca VR: /* Le estensioni non funzionano dopo aver aggioranto Gnome */ Errore di battitura</p>
<hr />
<div>{{out_of_date|Questa pagina è in fase di revisione e potrebbe non essere aggiornata. Seguite per ora le istruzioni della versione inglese.|Talk:ArchWiki Translation Team (Italiano)#Pagine Marcate come "out of date" e "Traslateme"}} <br />
[[Category:Desktop environments (Italiano)]]<br />
[[cs:GNOME]]<br />
[[de:GNOME]]<br />
[[en:GNOME]]<br />
[[es:GNOME]]<br />
[[fr:GNOME]]<br />
[[nl:GNOME]]<br />
[[pl:GNOME]]<br />
[[pt:GNOME]]<br />
[[ru:GNOME]]<br />
[[sr:GNOME]]<br />
[[th:GNOME]]<br />
[[tr:Gnome_Masaüstü_Ortamı]]<br />
[[uk:GNOME]]<br />
[[zh-CN:GNOME]]<br />
[[zh-TW:GNOME]]<br />
{{Article summary start}}<br />
{{Article summary text|GNOME 3 fornisce un desktop moderno, riscritto da zero, utilizzando il toolkit GTK3+.}}<br />
{{Article summary heading|Overview}}<br />
{{Article summary text|{{Graphical user interface overview_(Italiano)}}}}<br />
{{Article summary end}}<br />
<br />
Il progetto GNOME è ripartito dalle fondamenta ed ha creato un desktop completamente nuovo chiamato GNOME 3. Esso ha:<br />
* Tema grafico e font moderni<br />
* Un'interfaccia che fornisce accesso a tutte le finestre ed applicazioni <br />
* Un sistema di notifiche ed un discreto pannello superiore<br />
* Un migliorato file manager Nautilus<br />
* Servizi di messaggistica integrati nel desktop<br />
* Un nuovo sistema di impostazioni delle applicazioni<br />
* Una funzione di ricerca delle attività<br />
* Modalità simili alla funzione Aero Snap di Windows <br />
<br />
[ulteriori dettagli sul sito [http://www.gnome3.org/ GNOME3]]<br />
<br />
== Introduzione ==<br />
<br />
Gnome 3 fornisce '''due''' interfacce, '''gnome-shell''' (il nuovo layout standard) e modalità '''fallback'''. Gnome-session rileverà automaticamente se la macchina in uso è in grado di usare gnome-shell, altrimenti avvierà la modalità fallback.<br />
<br />
La modalità '''fallback''' ha un aspetto molto simile al vecchio Gnome2 (utilizza un porting in gtk3 di gnome panel + metacity, anzichè gnome-shell e mutter).<br />
<br />
Se si utilizza la modalità fallback, è ancora possibile modificare il window manager predefinito con quello che si preferisce.<br />
<br />
== Installazione ==<br />
<br />
GNOME 3 è in [extra]. È possibile installarlo con il seguente comando:<br />
<br />
{{bc|# pacman -Syu <br />
<nowiki>#</nowiki> pacman -S gnome}}<br />
<br />
Per installare applicazioni supplementari<br />
<br />
{{bc|# pacman -S gnome-extra}}<br />
<br />
===Demoni e moduli richiesti da GNOME===<br />
<br />
Il Desktop GNOME richiede un demone per operare in maniera corretta, '''DBUS'''. <br />
<br />
Per avviare il demone DBUS:<br />
{{bc|# rc.d start dbus}}<br />
<br />
Oppure aggiungere questo demone all'array '''DAEMONS''' di {{ic|/etc/[[rc.conf]]}}, in modo che venga automaticamente eseguito all'avvio:<br />
<br />
{{hc|/etc/rc.conf|2=<br />
......<br />
DAEMONS=(syslog-ng '''dbus''' network crond)<br />
......<br />
}}<br />
'''GVFS''' consente ad altre applicazioni, incluso il file manager di GNOME Nautilus, di utilizzare filesystem virtuali (ad es. filesystem montati su FTP o SMB). Ciò è possibile grazie all'utilizzo di '''FUSE''': un modulo del kernel che fornisce un layer in userspace per i filesystem virtuali. <br />
<br />
Per caricare il modulo del kernel FUSE:<br />
{{bc|# modprobe fuse}}<br />
<br />
Oppure aggiungere il modulo all'array '''MODULES''' in {{ic|/etc/rc.conf}} in modo che venga caricato automaticamente all'avvio. Ad es.<br />
<br />
{{hc|/etc/rc.conf|2=<br />
.....<br />
MODULES=('''fuse''')<br />
.....<br />
}}<br />
{{Nota|FUSE è un modulo del kernel, non un demone.}}<br />
<br />
===Eseguire GNOME===<br />
<br />
Per una migliore integrazione col desktop, è consigliato l'uso di '''GDM'''.<br />
{{bc|# pacman -S gdm}}<br />
<br />
Consultare la pagina [[Display Manager (Italiano)|Display Manager]] per capire come eseguirlo correttamente.<br />
<br />
Se si preferisce eseguirlo da console, aggiungere la seguente righe a {{ic|~/.xinitrc}}, accertandosi che sia l'ultima del file e che sia l'unica ad iniziare con ''exec''(Consultare la pagina [[xinitrc (Italiano)| xinitrc]]):<br />
{{hc|`/.xinitrc|<br />
.....<br />
exec gnome-session<br />
.....<br />
}}<br />
<br />
In questo modo GNOME verrà eseguito all'inserimento di questo comando:<br />
{{bc|$ startx}}<br />
<br />
== Utilizzare gnome-shell ==<br />
<br />
Per maggiori informazioni consultare https://live.gnome.org/GnomeShell/CheatSheet<br />
<br />
=== Riavviare la shell ===<br />
<br />
Dopo aver apportato delle modifiche all'aspetto di Gnome tramite tweaks, potrebbe essere richiesto di riavviare la Gnome shell. Invece di effettuare il log out per riaprire la nuova sessione, è più semplice e veloce eseguire i seguenti comandi da tastiera:<br />
<br />
Riavviate la shell premendo {{ic|Alt}} + {{ic|F2}} poi {{ic|r}} ed infine {{ic|Enter}}<br />
<br />
=== Crashes della Shell ===<br />
<br />
Alcune modifiche e/o ripetuti riavvii della shell possono causare dei crash. In questi casi sarete informati riguardo l'errore e poi sarete forzati ad effettuare il log out.<br />
Alcuni cambiamenti della shell, come il passaggio da '''''GNOME Shell''''' a '''''fallback mode''''' non possono essere realizzati tramite tastiera, ma si deve effettuare il log out e poi di nuovo il log in perché abbiano effetto.<br />
<br />
Anche se lo dice il buon senso, vale la pena ripetere che i documenti di valore dovrebbero essere salvati (o addirittura è consigliato chiudere l'intera applicazione con cui si sta lavorando), prima di tentare un riavvio della shell. Non è strettamente necessario; i documenti e le finestre aperte normalmente rimangono intatte dopo il riavvio della shell.<br />
<br />
== Personalizzazione grafica di Gnome ==<br />
<br />
=== Aspetti generali ===<br />
<br />
Al momento non esiste uno strumento onnicomprensivo per configurare Gnome 3. Il nuovo strumento System Settings è un grande miglioramento rispetto ai pannelli di controllo precedenti, ma dovrete operare manualmente su alcune configurazioni per avere un miglior controllo sull'aspetto grafico di Gnome.<br />
<br />
Gli attuali strumenti di configurazione vi saranno familiari: alcuni di questi funzionano ancora, molti altri no. Alcune impostazioni non sono facilmente raggiungibili per essere modificate. Sicuramente molte impostazioni saranno disponibili successivamente tramite l'utilizzo di nuovi strumenti (tools), che saranno realizzati con il passare del tempo durante lo sviluppo di Gnome 3, grazie ad una comunità sempre più ampia.<br />
<br />
==== Gsettings ====<br />
<br />
Un nuovo strumento da linea di comando memorizza i dati in formato binario, a differenza dei precedenti strumenti che utilizzavano file XML. Il tutorial [http://blog.fpmurphy.com/2011/03/customizing-the-gnome-3-shell.html Customizing the GNOME Shell] mette in evidenza le potenzialità di Gsettings.<br />
<br />
==== Gnome-tweak-tool ====<br />
<br />
{{bc|# pacman -S gnome-tweak-tool}}<br />
<br />
Questo strumento consente di personalizzare font, temi, tasti di massimizzazione e minimizzazione ed altre utili impostazioni, come le azioni da intraprendere alla chiusura del coperchio di un notebook. Una buona fonte di informazioni riguardo la personalizzazione è reperibile a questo indirizzo [http://blog.fpmurphy.com/2011/03/customizing-the-gnome-3-shell.html]<br />
<br />
A causa di un [https://bugzilla.gnome.org/show_bug.cgi?id=647132 bug] la versione 3.0.3 funziona solo se gnome-shell è installato.<br />
<br />
==== Temi GTK3 tramite settings.ini ====<br />
<br />
Come '''{{ic|~/.gtkrc-2.0}}''' per GTK2+, è possibile settare un tema GTK3 tramite '''{{ic|${XDG_CONFIG_HOME}/gtk-3.0/settings.ini}}'''.<br />
<br />
La variabile {{Ic|$XDG_CONFIG_HOME}} normalmente assume il valore '''~/.config'''<br />
<br />
''Adwaita,'' il tema di default in GNOME 3, fa parte di uno dei '''gnome-themes-standard''' (temi standard di gnome). Altri temi per GTK3 possono essere trovati sul sito [http://browse.deviantart.com/customization/skins/linuxutil/desktopenv/gnome/gtk3/ Deviantart web site.] <br />
<br />
Ad esempio si può inserire:<br />
<br />
[Settings]<br />
gtk-theme-name = Adwaita<br />
gtk-fallback-icon-theme = gnome<br />
# La prossima opzione è applicabile solo se il tema selezionato la supporta<br />
gtk-application-prefer-dark-theme = true<br />
# Imposta i nomi dei font e la dimensione<br />
gtk-font-name = Sans 10<br />
<br />
È necessario [[#Riavviare la shell|riavviare la shell di Gnome]] per far si che le nuove impostazioni siano applicate. Molte altre opzioni di GTK possono essere consultate sul sito [http://developer.gnome.org/gtk3/3.0/GtkSettings.html#GtkSettings.properties GNOME developer documentation.]<br />
<br />
==== Tema delle icone ====<br />
<br />
{{Nota | Utilizzando gnome-tweak-tool v. 3.0.3 e superiori, potete installare il vostro tema delle icone preferito all'interno della cartella '''{{ic|~/.icons}}'''.}}<br />
<br />
GNOME 3 è compatibile con i temi delle icone di GNOME 2, quindi non siete obbligati ad usare il tema delle icone di default. Per installare un nuovo set di icone, copiate il tema che desiderate nella cartella dei temi delle icone '''{{ic|~/.icons}}'''. Per esempio in questo modo:<br />
<br />
{{bc| $ cp -R /home/user/Desktop/my_icon_theme ~/.icons}}<br />
<br />
Il nuovo tema ''my_icon_theme'' ora sarà selezionabile utilizzando '''gnome-tweak-tool''' sotto la voce '''''interface''''' (''interfaccia'').<br />
<br />
In alternativa, potete selezionare il vostro nuovo tema senza aver bisogno di utilizzare gnome-tweak-tool. Per fare questo, aggiungete il vostro tema delle icone GTK al file '''{{ic|${XDG_CONFIG_HOME}/gtk-3.0/settings.ini}}'''.<br />
<br />
{{hc|${XDG_CONFIG_HOME}/gtk-3.0/settings.ini|<nowiki>... linee precedenti ...<br />
<br />
gtk-icon-theme-name = my_new_icon_theme</nowiki>}}<br />
<br />
=== Nautilus ===<br />
<br />
==== Rimuovere le cartelle dalla places sidebar ====<br />
<br />
La visualizzazion delle cartele è specificata in {{ic|~/.config/user-dirs.dirs}} e può essere modificata con un qualsiasi editor di testo. Eseguendo il comando {{Ic|xdg-user-dirs-update}} aggiorneremo lo stato della sidebar con le nuove impostazioni, per questo è consigliato settare il permesso del file su sola lettura (read-only).<br />
<br />
==== Visualizzare il percorso file come testo ====<br />
<br />
La toolbar standard di Nautilus visualizza una barra con un'interfaccia basata su dei bottoni per la navigazione nel percorso dei file. <br />
<br />
Per entrare in una specifica posizione del percorso file utilizzando la ''tastiera'', dovete visualizzare il campo per inserire il testo con la vostra locazione da raggiungere premendo i tasti {{ic|Ctrl}} + {{ic|L}}.<br />
<br />
Per rendere permanente la visualizzazione del campo percorso come testo, utilizzate gsettings come di seguito.<br />
<br />
{{bc|$ gsettings set org.gnome.nautilus.preferences always-use-location-entry true}}<br />
<br />
{{Note| una volta effettuato questo cambiamento non sarà più possibile visualizzare la barra con i bottoni (pulsanti) che vi è di base. Solo quando è settata a '''false''' potete utilizzare entrambi i modi per la visualizzazione del percorso.}}<br />
<br />
=== Pannello GNOME ===<br />
<br />
==== Visualizzare la data nella barra superiore ====<br />
<br />
Di default Gnome visualizza solo il giorno della settimana e l'ora sulla barra in alto. Questo può essere modificato con il seguente comando. Gli effetti si vedranno immediatamente.<br />
<br />
{{bc|# gsettings set org.gnome.shell.clock show-date true}}<br />
<br />
==== Nascondere icone della barra superiore ====<br />
<br />
Quando effettuate l'installazione di Gnome, potrebbero essere visualizzate sul pannello delle icone che non volete utilizzare. Per rimuovere queste icone, dovete modificare l'apposito script del pannello.<br />
<br />
Per esempio, per rimuovere l' '''icona di accesso universale''', rimuovete 'a11y' dalla linea AREA_ORDER e commentate 'a11y' alla linea AREA_SHELL_IMPLEMENTATION.<br />
<br />
{{hc|/usr/share/gnome-shell/js/ui/panel.js|<nowiki><br />
const STANDARD_STATUS_AREA_ORDER = ['a11y', 'keyboard', 'volume', 'network', 'bluetooth', 'battery', 'userMenu'];<br />
const STANDARD_STATUS_AREA_SHELL_IMPLEMENTATION = {<br />
'a11y': imports.ui.status.accessibility.ATIndicator<br />
'volume': imports.ui.status.volume.Indicator,<br />
'battery': imports.ui.status.power.Indicator,<br />
'keyboard': imports.ui.status.keyboard.XKBIndicator,<br />
'userMenu': imports.ui.userMenu.UserMenuButton<br />
};<br />
</nowiki>}}<br />
<br />
Il file deve diventare come il seguente:<br />
<br />
{{hc|/usr/share/gnome-shell/js/ui/panel.js|<nowiki><br />
const STANDARD_STATUS_AREA_ORDER = ['keyboard', 'volume', 'network', 'bluetooth' 'battery', 'userMenu'];<br />
const STANDARD_STATUS_AREA_SHELL_IMPLEMENTATION = {<br />
//'a11y': imports.ui.status.accessibility.ATIndicator<br />
'volume': imports.ui.status.volume.Indicator,<br />
'battery': imports.ui.status.power.Indicator,<br />
'keyboard': imports.ui.status.keyboard.XKBIndicator,<br />
'userMenu': imports.ui.userMenu.UserMenuButton<br />
};<br />
</nowiki>}}<br />
<br />
Salvate le vostre modifiche e [[#Riavviare la shell |riavviate la shell di GNOME]] per vedere i vostri cambiamenti.<br />
<br />
==== Disabilitare la "Sospensione" nello status menu ====<br />
<br />
Un modo veloce per farlo è cambiare la linea 153 di '''{{ic|/usr/share/gnome-shell/js/ui/statusMenu.js}}'''. Questo cambiamento ha effetto al prossimo avvio della Gnome shell.<br />
<br />
{{hc|/usr/share/gnome-shell/js/ui/statusMenu.js|2=<nowiki><br />
// this._haveSuspend = this._upClient.get_can_suspend(); // Commentate questa linea.<br />
this._haveSuspend = false; // Scrivete questa linea.<br />
</nowiki>}}<br />
<br />
Comunque gli effetti non saranno visibili fino all'aggiornamento di Gnome. Un modo non definitivo per raggiungere questa soluzione è quello di installare [[#GNOME shell extensions|alternative status menu]].<br />
<br />
{{bc|# pacman -S gnome-shell-extension-alternative-status-menu}}<br />
<br />
==== Eliminare tempo di attesa durante il logging out ====<br />
<br />
La seguente modifica rimuove il dialogo di conferma ed i sessanta secondi di attesa per il logging out.<br />
<br />
Il messaggio normalmente appare quanto si effettua il logout dallo status menu. Questa modifica incide anche sul dialogo che riguarda il '''''Power Off'''''. Non è una modifica a livello di sistema; ha effetto solo sull'utente che utilizza questo comando. Gli effetti si possono notare subito dopo l'esecuzione del seguente comando.<br />
<br />
{{bc|$ gsettings set org.gnome.SessionManager logout-prompt 'false'}}<br />
<br />
==== Visualizzare il system monitor ====<br />
<br />
Installare l'estensione [https://aur.archlinux.org/packages.php?ID=49250 gnome-shell-system-monitor-applet-git] disponibile su AUR.<br />
<br />
==== Visualizza informazioni sul tempo ====<br />
<br />
Installare {{AUR|gnome-shell-extension-weather-git}} da [[AUR]].<br />
<br />
=== Activity view ===<br />
<br />
==== Rimuovere le voci dall'Applications view ====<br />
<br />
Come altri ambienti desktop, GNOME utilizza i .desktop files per popolare la sua vista delle applicazioni (Applications view). Questi file di testo si trovano in '''{{ic|/usr/share/applications}}'''. Non è possibile modificare questi file visualizzandoli normalmente in Nautilus, perché quest'ultimo non tratta le sue icone come file di testo. Usate quindi un terminale per visualizzare o editare le voci nel file .desktop.<br />
<br />
# ls /usr/share/applications<br />
# nano /usr/share/applications/foo.desktop<br />
<br />
Per le modifiche a livello di sistema, editate i files in '''{{ic|/usr/share/applications}}'''. Per una modifica locale, create una copia del file ''foo.desktop'' nella vostra cartella home.<br />
<br />
$ cp /usr/share/applications/foo.desktop ~/.local/share/applications/<br />
<br />
Modificate il file .desktop per soddisfare i vostri bisogni. '''Nota:''' rimuovere un file .desktop non coporta la disinstallazione dell'applicazione rimossa, ma rimuove solamente la sua integrazione con il desktop: MIME types, scorciatoie e così via.<br />
<br />
Il seguente comando aggiunge una linea di codice al file .desktop e nasconde l'icona associata all'Applications view:<br />
<br />
$ echo "NoDisplay=true" >> foo.desktop<br />
<br />
==== Ridurre la dimensione delle icone delle applicazioni ====<br />
<br />
Una scelta imbarazzante dei progettisti GNOME è stata quella di utilizzare icone di grandi dimensioni per la visualizzazione delle applicazioni. Questa visione è controproducente quando si lavora con piccoli schermi che contengono molte applicazioni con icone di grandi dimensioni. C'è un modo per ridurre la grandezza di queste icone ed è quello di modificare il tema della Gnome-Shell.<br />
<br />
Modificate i vostri file direttamente (ricordatevi di effettuare prima un backup) o copiate i file del tema in una cartella locale e modificateli. Per il tema principale dovete modificare il file :'''{{ic|/usr/share/gnome-shell/theme/gnome-shell.css}}'''<br />
<br />
Per il tema utente modificate :'''{{ic|/usr/share/themes/<UserTheme>/gnome-shell/gnome-shell.css}}'''<br />
<br />
Apportate cambiamenti a ''gnome-shell.css'' sostituendo i seguenti valori. Successivamente [[#Riavviare la shell| riavviate la Gnome-Shell.]]<br />
<br />
{{hc|gnome-shell.css|<nowiki><br />
.icon-grid {<br />
spacing: 18px;<br />
-shell-grid-item-size: 82px;<br />
}<br />
<br />
.icon-grid .overview-icon {<br />
icon-size: 48px;<br />
}<br />
</nowiki>}}<br />
<br />
Un clone del tema base della Gnome-Shell con icone più piccole è disponibile [https://aur.archlinux.org/packages.php?ID=51586 su AUR].<br />
<br />
==== Disabilitare Activity View all'angolo dello schermo ====<br />
<br />
Per disabilitare l'Activity View automatica quando si raggiunge con il mouse l'angolo in alto a sinistra dello schermo, modificate '''{{ic|/usr/share/gnome-shell/js/ui/layout.js}}''' (che corrisponde a ''panel.js'' in Gnome 3.0.x) :<br />
<br />
{{hc|layout.js|<nowiki><br />
this._corner = new Clutter.Rectangle({ name: 'hot-corner',<br />
width: 1,<br />
height: 1,<br />
opacity: 0,<br />
reactive: true });icon-size: 48px;<br />
}<br />
</nowiki>}}<br />
<br />
Dovete settare ''reactive'' a ''false''. Successivamente dovete [[#Riavviare la shell| riavviate la Gnome-Shell.]]<br />
<br />
=== Titlebar ===<br />
<br />
==== Ridurre l'altezza della barra del titolo ====<br />
<br />
{{bc|<nowiki># sed -i '/title_vertical_pad/s|value="[0-9]\{1,2\}"|value="0"|g' /usr/share/themes/Adwaita/metacity-1/metacity-theme-3.xml</nowiki><br />
}}<br />
<br />
[[#Riavviare la shell|Riavviare la shell di Gnome.]] Il comando precedente cambia il padding verticale da 14 a 0, per dare alle finestre un'spetto più sottile.<br />
<br />
Per ripristinare i valori originali:<br />
<br />
{{bc|$ sudo pacman -S gnome-themes-standard}}<br />
<br />
==== Riordinare i pulsanti della titlebar ====<br />
<br />
Al momento l'unica possibilità per cambiare questa impostazione è attraverso '''gconf-editor.'''<br />
<br />
Per esempio, spostiamo il pulsante di chiusura e della minimizzazione sul lato sinistro della titlebar.<br />
<br />
Aprite '''gconf-editor''' e localizzate la chiave che riguarda '''''desktop.gnome.shell.windows.button_layout'''''. Cambiate il suo valore in '''{{Ic|close,minimize:}}''' (I due punti rappresentano lo spazio designato tra la parte sinistra e la destra della titlebar). Utilizzate qualsiasi pulsante nell'ordine che preferite. Non potete utilizzare un pulsante più di una volta. Tenete anche in mente che alcuni bottoni potrebbero essere deprecati. [[#Riavviare la shell|Riavviate la shell di Gnome]] per vedere i cambiamenti apportati.<br />
<br />
==== Nascondere la titlebar con le finestre fullscreen (maximized) ====<br />
<br />
{{bc|<nowiki> # sed -i -r 's|(<frame_geometry name="max")|\1 has_title="false"|' /usr/share/themes/Adwaita/metacity-1/metacity-theme-3.xml</nowiki><br />
}}<br />
<br />
[[#Riavviare la shell|Riavviare la shell di Gnome.]] Dopo questa modifica, potreste trovare difficoltoso demassimizzare la finestra, visto che non c'è nessuna titlebar da afferrare.<br />
<br />
Per uscire da questa situazione potete utilizzare una delle seguenti combinazioni di tasti : {{ic|Alt}} + {{ic|F5}}, {{ic|Alt}} + {{ic|F10}} , {{ic|Alt}} + {{ic|Space}}<br />
<br />
Per prevenire la sovrascrittura del file '''{{ic|metacity-theme-3.xml}}''' ogni volta che viene aggiornato il pacchetto "gnome-themes-standard", aggiungete questo nome a '''{{ic|/etc/pacman.conf}}''' con il parametro {{Ic|NoUpgrade}}.<br />
<br />
{{hc|/etc/pacman.conf|2=<nowiki>... linee precedenti ...<br />
<br />
# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup<br />
# IgnorePkg =<br />
# IgnoreGroup =<br />
<br />
NoUpgrade = usr/share/themes/Adwaita/metacity-1/metacity-theme-3.xml #Non aggiungere il primo slash<br />
<br />
... altre linee ...</nowiki>}}<br />
<br />
Per ripristinare i valori originali di Adwaita:<br />
<br />
{{bc|# pacman -S gnome-themes-standard}}<br />
<br />
=== Schermata di avvio (GDM) ===<br />
<br />
Per modificare le caratteristiche della schermata di avvio di Gnome, si possono eseguire le seguenti linee. Il comando aprirà una sessione bash con le credenziali di 'gdm'.<br />
<br />
{{Nota|Per l'esposizione, l'utente 'gdm' nel prompt sarà visualizzato come $. Nella realtà, sarà visualizzato con qualcosa come -bash-4.2$}}<br />
<br />
{{bc|# su - gdm -s /bin/bash<br>$ dbus-launch}}<br />
<br />
Questo comando stamperà a video le variabili DBUS_SESSION_BUS_ADDRESS e DBUS_SESSION_BUS_PID. È ora necessario esportarle<br />
<br />
{{bc|$ export DBUS_SESSION_BUS_ADDRESS<nowiki>=</nowiki>unix:abstract<nowiki>=</nowiki>/tmp/dbus-Jb433gMQHS,guid<nowiki>=</nowiki>fc14d4bf3d000e38276a5a2200000d38<br />
$ export DBUS_SESSION_BUS_PID<nowiki>=</nowiki>4283}}<br />
<br />
Oppure utilizzate il seguente comando :<br />
<br />
{{bc|<nowiki>$ `dbus-launch | sed "s/^/export /"`</nowiki>}}<br />
<br />
Verificare che dconf-service sia già in esecuzione, altrimenti avviatelo in questo modo:<br />
<br />
{{bc|$ /usr/lib/dconf/dconf-service &}}<br />
<br />
==== Immagine di sfondo ====<br />
<br />
Una volta esportate le variabili di aimbiente nella sessione come spiegato sopra, si possono dare comandi per recuperare o impostare gli elementi utilizzati da GDM.<br />
<br />
Il modo più semplice per cambiare impostazioni è lanciare il Configuration Editor con il seguente comando :<br />
<br />
{{bc|$ dconf-editor}}<br />
<br />
La posizione di ogni impostazione è la stessa nello stile di configurazione della linea di comando mostrato qui sotto:<br />
<br />
quello che segue rispecchia l'approccio da linea di comando per recuperare o impostare il nome del file utilizzato per il wallpaper.<br />
<br />
{{bc|<nowiki>$ GSETTINGS_BACKEND=dconf gsettings get org.gnome.desktop.background picture-uri<br />
$ GSETTINGS_BACKEND=dconf gsettings set org.gnome.desktop.background picture-uri "file:///usr/share/backgrounds/gnome/SundownDunes.jpg"<br />
<br />
$ GSETTINGS_BACKEND=dconf gsettings set org.gnome.desktop.background picture-options 'zoom'<br />
## Possibili valori: centered, none, scaled, spanned, stretched, wallpaper, zoom</nowiki>}}<br />
<br />
{{Nota| Si deve specificare un file che l'utente 'gdm' è in grado di leggere. GDM non può leggere i file nella vostra home directory. }}<br />
<br />
Un'alternativa grafica per cambiare il tema (gtk3, icone e cursore), lo sfondo ed altre impostazioni minori è [https://aur.archlinux.org/packages.php?ID=50232 gdm3setup] disponibile in AUR.<br />
<br />
==== Font più grandi al login ====<br />
<br />
Questo tweak aumenta i font di login di un fattore scalare. E' lo stesso modo applicato dall' ''Accessibility Manager'' presente sul desktop.<br />
<br />
Dovete prima esportare le variabili della sessione GDM per effettuare questa modifica.<br />
<br />
{{bc|<nowiki>$ GSETTINGS_BACKEND=dconf gsettings set org.gnome.desktop.interface text-scaling-factor '1.25'</nowiki>}}<br />
<br />
==== Disabilitare audio all'avvio ====<br />
<br />
Questo tweak permette di non udire il suono di feedback che si sente alla schermata di avvio quando si aggiusta l'audio tramite tastiera. Dovete prima esportare le variabili per la sessione GDM.<br />
<br />
{{bc|<nowiki>$ GSETTINGS_BACKEND=dconf gsettings set org.gnome.desktop.sound event-sounds false</nowiki>}}<br />
<br />
Se quanto detto sopra non funziona per voi o non siete in grado di esportare le variabili della sessione GDM, c'è sempre la soluzione più semplice per risolvere il problema: disattivare o abbassare il suono, mentre si è nella schermata di login GDM, utilizzando i tasti multimediali (se sono a disposizione sulla tastiera).<br />
<br />
==== Rendere il pulsante power interattivo ====<br />
<br />
L'installazione di default setta il pulsante di accensione per sospendere il systema. Spegnerlo o visualizzare una finestra di dialogo sarebbe una scelta migliore. Per settare questa impostazione dovete esportare le variabili di ambiente di GDM.<br />
<br />
{{bc|<nowiki> $ GSETTINGS_BACKEND=dconf gsettings set org.gnome.settings-daemon.plugins.power button-power 'interactive'<br />
$ GSETTINGS_BACKEND=dconf gsettings set org.gnome.settings-daemon.plugins.power button-hibernate 'interactive'<br />
$ gsettings list-recursively org.gnome.settings-daemon.plugins.power</nowiki>}}<br />
<br />
==== Layout tastiera GDM ====<br />
<br />
GDM non conosce le impostazioni riguardo la vostra tastiera in Gnome3. Per cambiare le impostazioni della tastiera utilizzata da GDM, modificate il vostro layout utilizzando i file di configurazione di Xorg. Fate riferimento a questa sezione per la modifica : [[Beginners'_Guide#Non-US_keyboard|Beginner's Guide.]]<br />
<br />
=== Altre tips ===<br />
<br />
Guardate [[GNOME Tips]].<br />
<br />
== Impostazioni varie ==<br />
<br />
==== Lancio automatico dei programmi al login ====<br />
<br />
È possibile specificare quali programmi avviare automaticamente dopo il login utilizzando lo strumento '''gnome-session-properties''', che fa parte del pacchetto '''gnome-session'''. <br />
<br />
{{bc|$ gnome-session-properties}}<br />
<br />
{{Nota| Potete avviarlo premendo {{ic|Alt}} + {{ic|F2}}, poi digitate {{Ic|gnome-session-properties}} ed infine premete {{ic|Invio}}. }}<br />
<br />
==== Attivare il numlock dopo il login automaticamente ====<br />
<br />
Installate numlockx dal repository '''[community]'''. Poi aggiungete ai programmi di avvio il comando numlockx.<br />
<br />
{{bc|<nowiki># pacman -S numlockx<br />
$ gnome-session-properties</nowiki>}}<br />
<br />
I comandi seguenti aprono l'applet '''Startup Applications Preferences'''. Cliccate su '''''Add''''' (aggiungi) e aggiungete le righe seguenti:<br />
<br />
{| border="0"<br />
| Name: || ''Numlockx''<br />
|-<br />
| Command: || ''/usr/bin/numlockx on''<br />
|-<br />
| Comment: || ''Turns on numlock.''<br />
|}<br />
<br />
Questo non è un tweak a livello di sistema, quindi dovete ripetere questi passaggi per ogni utente che utilizza il sistema operativo.<br />
<br />
==== Spostare le dialog windows ====<br />
<br />
La configurazione di default per i dialoghi non permette di muoverli, questo può causare problemi in alcuni casi. Per cambiare questa impostazione dovete utilizzare '''gconf-editor''' e cambiare la seguente opzione :<br />
<br />
{{<nowiki>/desktop/gnome/shell/windows/attach_modal_dialogs</nowiki>}}<br />
<br />
Una volta finito dovete [[#Riavviare la shell|riavviare la GNOME shell]] per notare i cambiamenti.<br />
<br />
==== Abilitare le estensioni della shell ====<br />
<br />
La Gnome Shell può essere personalizzata con delle estensioni scritte da altri utenti. Queste aggiungono funzionalità come una dock aggiuntiva o un tema differente.<br />
<br />
molte estensioni sono collezionate e ospitate da [https://extensions.gnome.org/ gnome.org]. Possono essere visualizzate tramite browser e installate semplicemente attivandole da quest'ultimo.<br />
<br />
Altri dettagli sulle estensioni disponibili possono essere trovati sul sito [http://www.webupd8.org/2011/04/gnome-shell-extensions-additional.html WEBUPD8]. Gli articoli più recenti possono essere consultati utilizzando il seguente [http://www.webupd8.org/search/label/gnome%20shell%20extensions?max-results=20 WEBUPD8 search link.]<br />
<br />
I [[Official Repositories| repositories ufficiali]] hanno dozzine di estensioni che possono essere installate individualmente (è preferibile installare la snapshot dell'ultima versione dell'estensione desiderata) [https://www.archlinux.org/packages/?sort=&q=gnome-shell-extension&maintainer=&last_update=&flagged=&limit=50 List here.]<br />
<br />
La lista delle estensioni disponibili in pacman è disponibile digitando il comando:<br />
<br />
{{bc| <nowiki>$ pacman -Ss gnome-shell-extension</nowiki>}}<br />
<br />
Altri links utili : [http://www.webupd8.org/search/label/gnome%20shell%20extensions?max-results=20 WEBUPD8 search link] - [http://www.webupd8.org/2011/04/gnome-shell-extensions-additional.html WEBUPD8]<br />
<br />
Ecco alcune estensioni utili reperibili in [[AUR]]:<br />
<br />
{| border="1"<br />
| {{AUR|gnome-shell-extension-presentation-mode-git}} || Aggiunge l'opzione di disabilitare lo screensaver dal menu della batteria (battery icon).<br />
|-<br />
| {{AUR|gnome-shell-extension-weather-git}} || Visualizza notifiche meteo.<br />
|-<br />
| {{AUR|gnome-shell-extension-alternative-status-menu-git}} || Aggiunge le opzioni "Iberna" e "Spegni" allo status menu.<br />
|-<br />
| {{AUR|gnome-shell-extension-theme-selector}} || Seleziona un tema nella panoramica di Activities. Per installare un tema personalizzato con GNOME Tweak Tool, dovete installare l'estensione {{Pkg|gnome-shell-extension-user-theme}} dal repository ufficiale [[Official Repositories|official repositories]].<br />
|-<br />
|{{AUR|gnome-shell-frippery}} || Un'estensione non ufficiale che implementa le caratteristiche di GNOME 2 in GNOME3.<br />
|}<br />
<br />
[[#Riavviare la shell|Riavviate la GNOME Shell]] dopo aver installato un'estensione. Guardate [[#Quando le estensioni disturbano GNOME|"Quando le estensioni disturbano GNOME"]] per informazioni quando avete un problema.<br />
<br />
=== Impostare il terminale predefinito da console ===<br />
<br />
{{Ic|gsettings}}, che rimpiazza {{Ic|gconftool-2}} in Gnome 3, è usato ad esempio per impostare manualmente il terminale predefinito. Questa impostazione viene presa in considerazione dal comando ''nautilus-open-terminal''.<br />
<br />
I comandi per eseguire [[rxvt-unicode|urxvt]] come daemon:<br />
<br />
{{bc|$ gsettings set org.gnome.desktop.default-applications.terminal exec urxvtc<br />
$ gsettings set org.gnome.desktop.default-applications.terminal exec-arg "'-e'"}}<br />
<br />
{{Nota|Per ''nautilus-open-terminal'', si potrebbe rendere necessario l'uso di una flag (es. {{Ic|-e}}) ad indicare che a seguire è presente un comando: ''nautilus-open-terminal'' passa un comando {{Ic|cd}} in modo da spostarsi nella directory corretta.}}<br />
<br />
===Emulazione del tasto centrale===<br />
Di default, Gnome3 disabilita l'emulazione del tasto centrale del mouse indipendentemente dal valore impostato per la variabile di Xorg ('''Emulate3Buttons'''). Per abilitarlo utilizzare il seguente comando:<br />
<br />
{{bc|gsettings set org.gnome.settings-daemon.peripherals.mouse middle-button-enabled true}}<br />
<br />
=== Xmonad ===<br />
<br />
Effettuando l'aggiornamento a GNOME3, si riscontrerà sicuramente il non funzionamento della sessione [[Xmonad]]. Si può utilizzarla di nuovo eseguendo GNOME in [[#Abilitare la modalità fallback|modalità fallback]] (vedere sotto) e creando i due seguenti file:<br />
<br />
{{hc|/usr/share/gnome-session/sessions/xmonad.session|2=<br />
[GNOME Session]<br />
Name=Xmonad session<br />
RequiredComponents=gnome-panel;gnome-settings-daemon;<br />
RequiredProviders=windowmanager;notifications;<br />
DefaultProvider-windowmanager=xmonad<br />
DefaultProvider-notifications=notification-daemon<br />
}}<br />
<br />
{{hc|/usr/share/xsessions/xmonad-gnome-session.desktop|2=<br />
[Desktop Entry]<br />
Name=Xmonad GNOME<br />
Comment=Tiling window manager<br />
TryExec=/usr/bin/gnome-session<br />
Exec=gnome-session --session=xmonad<br />
Type=XSession<br />
}}<br />
Al successivo log-in si avrà la possibilità di selezionare Xmonad GNOME come sessione.<br />
<br />
=== wmii ===<br />
<br />
[[wmii]] è un manager per la piastrellatura (affiancamento) delle finestreis .<br />
<br />
Potete utilizzare wmii con gnome [[#Abilitare la modalità fallback|abilitando forzatamente il fallback mode]] e creando i seguenti tre file:<br />
<br />
{{hc|/usr/share/applications/wmii.desktop|<nowiki><br />
[Desktop Entry]<br />
Version=1.0<br />
Type=Application<br />
Name=wmii<br />
TryExec=wmii<br />
Exec=wmii</nowiki>}}<br />
<br />
{{hc|/usr/share/xsessions/gnome-wmii.desktop|<nowiki><br />
[Desktop Entry]<br />
Name=GNOME-wmii<br />
Comment=GNOME with wmii as window manager<br />
TryExec=gnome-session<br />
Exec=gnome-session --session=wmii<br />
Type=Application</nowiki>}}<br />
<br />
{{hc|/usr/share/gnome-session/sessions/wmii.session|<nowiki><br />
[GNOME Session]<br />
Name=wmii<br />
RequiredComponents=gnome-panel;gnome-settings-daemon;<br />
RequiredProviders=windowmanager;notifications;<br />
DefaultProvider-windowmanager=wmii<br />
DefaultProvider-notifications=notification-daemon</nowiki>}}<br />
<br />
Al prossimo login dovreste avere abilitata la possibilità di sceglere ''Gnome-wmii'' come sessione.<br />
<br />
Le informazioni originali sono state prese da [http://makandra.com/notes/1367-running-the-awesome-window-manager-within-gnome running-the-awesome-window-manager-within-gnome], dove potete trovare altre info.<br />
<br />
Potete anche trovare notizie e tutorial riguardo:<br />
<br />
- creare un '''per session''' (wmii, gnome, gnome-wmii, etc) dconf database (utile se volete utilizzare lo gnome regolare)<br />
<br />
- Rimuovere il pulsante dal Gnome panel (con la task list)<br />
<br />
- Muovere il pannello superiore (con i menus) in fondo<br />
<br />
- Deselezionare l'opzione di espandere<br />
<br />
- Impostarla su autohide<br />
<br />
== Abilitare funzioni nascoste ==<br />
<br />
Gnome 3 nasconde molte funzioni utili, che possono essere personalizzate tramite '''dconf-editor''', o '''gconf-editor''' per quelle per cui non è stata ancora effettuata la migrazione.<br />
<br />
=== Modificare gli Hotkeys ===<br />
<br />
In {{Ic|dconf-editor}}, abilitare {{Ic|org.gnome.desktop.interface can-change-accels}}.<br />
<br />
Un esempio per modificare l'hotkey di cancellazione:<br />
Lanciare Nautilus, selezionare un file qualsiasi, cliccare su {{Ic|Modifica}} nella barra dei menu, e posizionare il mouse sull'elemento {{Ic|Sposta nel cestino}}.<br />
Col puntatore fermo sull'elemento, premere il tasto {{ic|Canc}}, per cancellare l'acceleratore predefinito. Premere ora il tasto che si vuole assegnare alla funzione. Ad esempio, premendo di nuovo il tasto {{ic|Canc}}, l'acceleratore da tastiera dovrebbe ora cambiare da {{ic|Ctrl}}+{{ic|Canc}} a {{ic|Canc}}. <br />
<br />
Assicurarsi di aver selezionato un file, altrimenti {{Ic|Sposta nel cestino}} risulterà grigio e non cliccabile.<br />
È ora possibile disabilitare nuovamente {{Ic|can-change-accels}}, per evitare modifiche involontarie di altri acceleratori da tastiera.<br />
<br />
=== Shutdown via status menu ===<br />
<br />
Attualmente i designers di Gnome hanno nascosto l'opzione di Spegnimento del computer nello status menù. Per spegnere il vostro sistema dallo status menù, cliccate sul menù tenendo premuto il tasto {{ic|Alt}}. Noterete in questo modo che '''Suspend''' cambierà in '''Power Off''', che premendolo farà visualizzare un dialogo per spegnere o riavviare la macchina.<br />
<br />
Se avete disabilitato la Sospensione dal menù nel [[#Disabilitare la "Sospensione" nello status menu |seguente modo]] non avete bisogno di effettuare questa operazione.<br />
<br />
Un'alternativa è quella di installare l'estensione ''Alternative Status Menu''. Guardate la sezione [[#Abilitare le estensioni della shell | che riguarda le estensioni]] per installare il menù che non nasconde il pulsante '''Power Off'''.<br />
<br />
== Integrare la messaggistica (Empathy) ==<br />
<br />
Empathy, l'engine integrato per i messaggi e per tutte le impostazioni di sistema basato su account di messaggistica non verrà visualizzato a meno che '''telepathy''' ed il suo gruppo di o almeno un suo backends ('''telepathy-gabble''', oppure '''telepathy-haze''', per esempio) sia installato.<br />
<br />
Questi pacchetti non sono inclusi di default nell'installazione di Gnome in Arch, ma potete installare '''telepathy''' ed i suoi '''backend''' così :<br />
<br />
{{bc|<nowiki># pacman -S telepathy</nowiki>}}<br />
<br />
Senza '''telepathy''', '''Empathy''' non aprirà l'account management dialog e si potrebbe bloccare in questo stato. Se questo accade, anche dopo essere usciti in modo pulito da Empathy, l'applicazione '''/usr/bin/empathy-accounts''' può rimanere '''running''' e sarà necessario killarla prima di aprire un altro account.<br />
<br />
Potete vedere una descrizione dei componenti di telepathy su [http://telepathy.freedesktop.org/wiki/Components Freedesktop.org Telepathy Wiki.]<br />
<br />
== Abilitare la modalità fallback==<br />
<br />
La sessione di fallback viene avviata automaticamente quando la '''gnome-shell''' non è presente oppure quando l'hardware non supporta l'accelerazione grafica, per esempio a causa di una macchina virtuale oppure su un vecchio computer.<br />
<br />
Se volete utilizzare la modalità fallback mentre avete già installato '''gnome-shell''', effettuate i seguenti cambiamenti:<br />
<br />
Aprite '''gnome-control-center.''' Cliccate sull'icona ''System Info'' e poi su Graphics. Cambiate ''Forced Fallback Mode'' in {{Ic|ON.}}<br />
<br />
In alternativa potete scegliere il tipo di sessione dal terminale con il comando ''gsettings'':<br />
<br />
{{bc|<nowiki>$ gsettings set org.gnome.desktop.session session-name 'gnome-fallback'</nowiki>}}<br />
<br />
Dovete effettuare il logout dopo i cambiamenti, così da vederli applicati al vostro prossimo login.<br />
<br />
Per disabilitare la modalità forced-fallback (che lancia una normale Gnome Shell), usate il valore 'gnome' al posto di 'gnome-fallback'<br />
<br />
== Risoluzione dei problemi ==<br />
<br />
=== Tempo di login in GNOME molto lungo ===<br />
<br />
Controllate se avete abilitato ''PulseAudio Network'' nelle impostazioni in '''paprefs'''.<br />
Quando le impostazioni di una network audio sono abilitate, GNOME si blocca per qualche minuto dopo il login.<br />
<br />
Una soluzione è quella di creare un nuovo utente ed entrare con quell'account. Un'altra soluzione è quella di muovere la vostre cartelle '''~/.gconf''', '''~/.gconfd''' e '''~/.conf/dconf''' in una sorta di contenitore. Riloggatevi e controllate che il ritardo non avvenga più.<br />
<br />
Se il tempo di attesa diventa eccessivo, cercare di determinare le cause utilizzando trial-and-error.<br />
<br />
=== Quando le estensioni disturbano GNOME ===<br />
<br />
Quando si abilita una estensione della shell, Gnome potrebbe crashare. Per prima cosa dovete rimuovere le estensioni ''user-theme'' e''auto-move-windows'' dalla loro directory di installazione.<br />
<br />
La directory di installazione potrebbe essere una delle seguenti:'''{{ic|~/.local/share/gnome‑shell/extensions,}}''' '''{{ic|/usr/share/gnome‑shell/extensions,}}''' oppure '''{{ic|/usr/local/share/gnome‑shell/extensions}}'''. Rimuovendo queste due estensioni l'errore dovrebbe sparire, altrimenti cercate di isolare il problema con trial‑and‑error.<br />
<br />
La rimozione o l'aggiunta di una estensione nell cartella sopra citate rimuove o aggiunge l'estensione corrispondente al vostro sistema. Dettagli su Gnome Shell estensioni sono disponibili su [https://live.gnome.org/GnomeShell/Extensions GNOME web site.]<br />
<br />
=== Le estensioni non funzionano dopo aver aggiornato Gnome ===<br />
<br />
Localizzate la cartella dove le vostre estensioni sono installate. Dovrebbe essere una delle seguenti : '''{{ic|~/.local/share/gnome-shell/extensions}}''' oppure '''{{ic|/usr/share/gnome-shell/extensions}}'''.<br />
<br />
Editate ogni occorrenza di '''{{ic|metadata.json}}''' che appare in ogni estensione nella sotto directory. <br />
<br />
{| border="0"<br />
| Inserite: || '''{{Ic|"shell-version": ["3.0"]}}'''<br />
|-<br />
| Al posto di (per esempio): || '''{{Ic|"shell-version": ["3.0.1"]}}'''<br />
|-<br />
| Potete anche scrivere: || '''{{Ic|"shell-version": ["3.0.0", "3.0.1", "3.0.2"]}}'''<br />
|}<br />
<br />
<br />
'''"3.0"''' è la migliore soluzione. Questa indica che l'estensione lavora con qualsiasi versione della shell Gnome come segue '''''3.0.x'''''.<br />
<br />
=== Schermo non bloccato dopo sospensione/ibernazione ===<br />
<br />
Il blocco dello schermo funziona solo se la procedura di sospensione/ibernazione viene eseguita tramite il menù di stato di Gnome. Se si sospende o iberna tramite tasto d'accensione o altro, la funzionalità di blocca schermo non viene attivata. <br />
<br />
Ciò avviene a causa di configurazione sbagliata in dconf. Per risolvere questo inconveniente è sufficiente modificare tramite dconf-editor il valore della chiave {{Ic|lock-use screensaver}} impostandolo a {{Ic|false}} (togliendo la spunta). Al resume lo schermo verrà ora bloccato indipendentemente dal metodo utilizzato per la messa in sospensione/ibernazione.<br />
Per ulteriori informazioni consultare il bugreport [https://bugzilla.redhat.com/show_bug.cgi?id=698135#c8 Screen gets no more locked after suspend#Comment 8]<br />
<br />
Il comando per eseguirlo da terminale è :<br />
<br />
{{bc|<nowiki># gsettings set org.gnome.power-manager lock-use-screensaver 'false'</nowiki>}}<br />
<br />
=== Le applicazioni GTK2+ vanno in segmentation fault ===<br />
<br />
Solitamente succede quando si è installato '''oxygen-gtk'''. Questo tema va in qualche modo in conflitto con le impostazioni di GNOME3 e/o di GTK3, e quando viene impostato come tema GTK2+, le applicazioni GTK2+ vanno in segfault mostrando errori simili a questi:<br />
<br />
{{bc|(firefox-bin:14345): GLib-GObject-WARNING **: invalid (NULL) pointer instance<br />
(firefox-bin:14345): GLib-GObject-CRITICAL **: g_signal_connect_data: assertion `G_TYPE_CHECK_INSTANCE (instance)' failed<br />
(firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_screen_get_default_colormap: assertion `GDK_IS_SCREEN (screen)' failed<br />
(firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_colormap_get_visual: assertion `GDK_IS_COLORMAP (colormap)' failed<br />
(firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_screen_get_default_colormap: assertion `GDK_IS_SCREEN (screen)' failed<br />
(firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_screen_get_root_window: assertion `GDK_IS_SCREEN (screen)' failed<br />
(firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_screen_get_root_window: assertion `GDK_IS_SCREEN (screen)' failed<br />
(firefox-bin:14345): Gdk-CRITICAL **: IA__gdk_window_new: assertion `GDK_IS_WINDOW (parent)' failed<br />
Segmentation fault<br />
}}<br />
<br />
Attualmente l'unico workaround consiste nell''''eliminare''' completamente dal sistema '''oxygen-gtk''' ed impostare un altro tema per le applicazioni.<br />
<br />
=== Artefatti con driver Catalyst su Gnome-Shell ===<br />
<br />
Al momento, non è consigliabile utilizzare i driver Catalyst se si sceglie di eseguire Gnome-Shell. Il driver ATI opensource, xf86-video-ati, sembra invece funzionare adeguatamente col compositing di Gnome3<br />
<br />
=== xf86-video-ati driver: sfarfallio ===<br />
<br />
Se volete utilizzare questo driver, il vostro desktop potrebbe avere un effetto di sfarfallio (intermittenza) quando si posizione il mouse nell'angolo in basso a destra ed anche quando avviate gdm.<br />
<br />
Scrivete le seguenti linee in '''{{ic|/etc/X11/xorg.conf.d/20-radeon.conf}}''' e controllate che non lo faccia più successivamente:<br />
<br />
Section "Device"<br />
Identifier "Radeon"<br />
Driver "radeon"<br />
Option "EnablePageFlip" "off"<br />
EndSection<br />
<br />
=== Le nuove finestre si aprono dietro altre finestre quando uso schermi multipli ===<br />
<br />
Questo può essere un possibile bug della gnome shell e causa l'apertura delle nuove finestre dietro alle altre già a perte. Deselezionate "workspaces_only_on_primary" in ''desktop/gnome/shell/windows'' usando ''gconf-editor'' per risolvere questo problema.<br />
<br />
=== Monitor multipli e Dock extensions ===<br />
<br />
Se si hanno monitor multipli configurati tramite Nvidia Twinview, l'estensione Dock potrebbe risultare incastrata in mezzo ad essi. È possibile modificare il codice sorgente di questa estensione per spostare la dock in qualsiasi posizione a nostro piacimento.<br />
Modificare {{ic|/usr/share/gnome-shell/extensions/dock@gnome-shell-extensions.gnome.org/extension.js}} e trovare nel sorgente questa riga:<br />
<br />
{{hc|/usr/share/gnome-shell/extensions/dock@gnome-shell-extensions.gnome.org/extension.js|<br />
..........<br />
this.actor.set_position(primary.width-this._item_size-this._spacing-2, (primary.height-height)/2);<br />
..........<br />
}}<br />
Il primo parametro è la posizione rispetto all'asse X della dock sul monitor, è possibile fare varie prove con diverse coordinate X,Y fino ad ottenere l'effetto desiderato.<br />
<br />
Per esempio :<br />
<br />
{{hc|/usr/share/gnome-shell/extensions/dock@gnome-shell-extensions.gnome.org/extension.js|<br />
..........<br />
this.actor.set_position(primary.width-this._item_size-this._spacing-15, (primary.height-height)/2);<br />
....<br />
}}<br />
<br />
=== Nessuna notifica sonora con Empathy ed altri programmi ===<br />
Se si utilizza [[OSS]], è necessario installare {{Ic|libcanberra-oss}} [https://aur.archlinux.org/packages.php?ID=31163 da AUR].<br />
<br />
=== Editere hotkeys via can-change-accels non funziona ===<br />
<br />
E' possibile cambiare manualmente le chiavi tramite un'applicazione chiamata accel map file. Dove si trova dipende dall'applicazione: per esempio in Thunar si trova in {{ic|~/.config/Thunar/accels.scm}}, mentre in Nautilus la troviamo in {{ic|~/.gnome2/accels/nautilus}}. Il file dovrebbe contenere una lista delle possibili hotkey, con ogni linea immutata commentata con un header ";" che deve essere rimosso per attuare i cambiamenti (farlo diventare attivo).<br />
<br />
=== Pannelli ed applet non rispondono al click destro ===<br />
Controllare la configurazione con un editor: /apps/metacity/general/mouse_button_modifier. Questi modificatori(<Alt>, <Super>, etc) sono utilizzati, oltre che per le normali finestre, anche per i pannelli e le applet.<br />
<br />
=== Mostra Desktop: la scorciatoia da tastiera non funziona ===<br />
<br />
Gli sviluppatori GNOME hanno considerato l'associazione tasti corrispondente alla stregua di un [https://bugzilla.gnome.org/show_bug.cgi?id=643609 bug], visto che la funzione di minimizzazione è considerata deprecata. Per utilizzare di nuovo la funzione Mostra Desktop, assegnare la combinazione {{ic|ALT}} + {{ic|CTRL}} + {{ic|D}} al comando "Hide all normal windows" facendo così:<br />
<br />
Aprire {{Ic|System Settings}} (Clickare sul proprio nome → system settings) → {{Ic|Keyboard}} → {{Ic|Shortcuts}} → {{Ic|Windows}} → {{Ic|Hide all normal windows}}<br />
<br />
=== Nautilus non si avvia ===<br />
<br />
# Premere {{ic|ALT}}+{{ic|F2}}<br />
# Inserire {{Ic|gnome-tweak-tool}}<br />
# Selezionare il ''File Manager'' tab.<br />
# Localizzate l'opzione ''Have file manager handle the desktop'' ed assicuratevi che sia settata su '''off'''.<br />
<br />
=== Impossibile applicare la configurazione memorizzata per i monitor ===<br />
<br />
Se avete questo messaggio provate a disabilitare il plugin xrandr di gnome-settings-daemon:<br />
<br />
{{bc|$ dconf write /org/gnome/settings-daemon/plugins/xrandr/active false}}<br />
<br />
=== Pulsante di blocco non riesce a riattivare touchpad ===<br />
<br />
Alcuni portatili hanno un pulsante di blocco del touchpad che disabilita il touchpad in modo che gli utenti possono digitare senza preoccuparsi di toccare il touchpad. Sembra che al momento Gnome possa bloccare il touchpad ma non sbloccarlo. In questo caso seguite le seguenti operazioni :<br />
# Aprite un terminale. Potete farlo premendo {{ic|ALT}}+{{ic|F2}} , poi digitando {{Ic|gnome-terminal}} ed infine premere {{ic|ENTER}}<br />
# Scrivete il seguente comando :<br />
<br />
{{bc|<nowiki>$ xinput set-prop "SynPS/2 Synaptics TouchPad" "Device Enabled" 1</nowiki>}}<br />
<br />
=== Ctrl + V incolla il percorso invece dei files in Nautilus ===<br />
<br />
Se siete affetti da questo problema, editate {{ic|~/.gnome2/accels/nautilus}} dove troverete le seguenti linee per Ctrl+V :<br />
{{hc|~/.gnome2/accels/nautilus|<nowiki><br />
(gtk_accel_path "<Actions>/DirViewActions/Paste" "<Control>v")<br />
...<br />
(gtk_accel_path "<Actions>/ClipboardActions/Paste" "<Control>v")<br />
</nowiki>}}<br />
<br />
Il problema sembra scaturire dalla seconda stringa, cancellate quella linea (la seconda) ed il problema sarà temporalmente risolto. Dovete ripetere questa fix dopo ogni update di Gnome. <br />
<br />
Un'alternativa è quella di assegnare una differente combinazione di tasti a questa a zione.<br />
<br />
=== Impossibile collegarsi ad una rete wi-fi protetta ===<br />
<br />
Potete vedere la lista delle connesioni network, ma scegliendo una rete protetta il programma va in errore e non riesce a mostrare la finestra di dialogo per l'ingresso della chiave. Potreste aver bisogno di installare network-manager-applet. Guardate anche [[NetworkManager#GNOME|GNOME NetworkManager setup]].<br />
<br />
=== "Ogni comando è stato definito 33" ===<br />
<br />
Quando si preme {{ic|Stamp}} per fare lo screenshot dello schermo e avete questo messaggio di ritorno : "Any command has been defined 33", installate metacity:<br />
<br />
{{bc|# pacman -S metacity}}<br />
<br />
=== GDM e Gnome usano il cursore di X11 ===<br />
<br />
Per correggere questo problema, avrete bisogno di eseguire i seguenti comandi come root in un terminale:<br />
<br />
{{bc|<nowiki>$ mkdir /usr/share/icons/default<br />
$ cd /usr/share/icons/default<br />
$ echo "[Icon Theme]" >> index.theme<br />
$ echo "Inherits=Adwaita" >> index.theme</nowiki>}}<br />
<br />
Alternativamente potete installare {{AUR|gnome-cursors-fix}} da [[AUR]].<br />
<br />
== Links esterni ==<br />
* [http://www.gnome.org/ Sito ufficiale di Gnome]<br />
* Temi, icone e sfondi:<br />
** [http://art.gnome.org/ Gnome Art]<br />
** [http://www.gnome-look.org/ Gnome Look]<br />
* Programmi GTK/GNOME:<br />
** [http://www.gnomefiles.org/ Gnome Files]<br />
** [http://www.gnome.org/projects/ Gnome Project Listing]</div>Luca VRhttps://wiki.archlinux.org/index.php?title=Advanced_Linux_Sound_Architecture_(Italiano)&diff=281064Advanced Linux Sound Architecture (Italiano)2013-11-03T09:47:10Z<p>Luca VR: Typo (Unkown -> Unknown)</p>
<hr />
<div>[[Category:Audio/Video (Italiano)]]<br />
[[cs:Advanced Linux Sound Architecture]]<br />
[[de:Alsa]]<br />
[[en:Advanced Linux Sound Architecture]]<br />
[[es:Advanced Linux Sound Architecture]]<br />
[[fa:ALSA]]<br />
[[fr:Alsa]]<br />
[[he:Advanced Linux Sound Architecture]]<br />
[[nl:Advanced Linux Sound Architecture]]<br />
[[pt:Advanced Linux Sound Architecture]]<br />
[[ru:Advanced Linux Sound Architecture]]<br />
[[sk:Advanced Linux Sound Architecture]]<br />
[[th:Advanced Linux Sound Architecture]]<br />
[[tr:Gelişmiş_ses_mimarisi_(ALSA)]]<br />
[[zh-CN:Advanced Linux Sound Architecture]]<br />
L' [[Wikipedia:Advanced Linux Sound Architecture|Architettura Avanzata per il Suono su Linux]] (conosciuta con l'acronimo di '''ALSA''') è un componente del kernel che rimpiazza l'originale Open Sound System (OSSv3) utilizzato per fornire driver di periferica per le schede audio. Oltre ai driver audio, '''ALSA''' mette a disposizione anche una libreria in spazio-utente per sviluppatori di applicazioni che vogliano utilizzare le funzioni dei driver tramite un'API piuttosto che con un'interazione diretta con i driver del kernel.<br />
<br />
{{Nota| Per una eventuale alternativa consultare la pagina [[OSS]].}}<br />
<br />
{{Article summary start}}<br />
{{Article summary text|Utilizzo, configurazione risoluzione dei problemi di ALSA}}<br />
{{Article summary heading|Related}}<br />
{{Article summary wiki|Sound system}}<br />
{{Article summary wiki|Disable PC Speaker Beep}}<br />
{{Article summary end}}<br />
<br />
==Installazione==<br />
<br />
ALSA è incluso nel kernel di default di Arch come insieme di moduli, perciò non è necessario installarlo esplicitamente.<br />
<br />
[[udev (Italiano)|Udev]] interrogherà automaticamente l'hardware al boot, caricando il modulo del kernel corretto per l'hardware rilevato. Perciò, la scheda audio dovrebbe essere subito funzionante, ma di default la configurazione prevederà che tutti i canali siano impostati su muto.<br />
<br />
Gli utenti con un login locale (su terminale virtuale o tramite display manager) hanno la facoltà di riprodurre l'audio e modificare i canali del mixer. Per consentire queste operazioni a chi ha un login remoto, l'utente deve essere [[Utenti e Gruppi#Gestione dei gruppi|inserito]] nel gruppo {{ic|audio}}. L'aggiunta dell'utente al gruppo {{ic|audio}} consente anche l'accesso diretto ai dispositivi, e ciò potrebbe portare alcune applicazioni ad impadronirsi in maniera esclusive di alcune uscite (rendendo impossibile il mixaggio software), impedire il passaggio rapido ad un altro utente, ed il sistema multiseat. Per questi motivi l'aggiunto di un utente al gruppo {{ic|audio}} '''non''' è raccomandata, a meno di necessità specifiche. [https://wiki.ubuntu.com/Audio/TheAudioGroup].<br />
<br />
===Utility===<br />
<br />
Installare dai [[Official Repositories (Italiano)|repository ufficiali]] il pacchetto {{pkg|alsa-utils}}, contenente lo strumento {{ic|alsamixer}}, che consente la configurazione delle periferiche audio tramite console o terminale. Installare anche il pacchetto {{pkg|alsa-plugins}} se si necessità del [[#Ricampionamento in alta qualità|ricampionamento in alta qualità]], dell'[[#Upmixing/Downmixing|upmixing/downmixing]] e di altre funzionalità avanzate. <br />
Se si vuole che le applicazioni basate su OSS funzionino tramite dmix (mixaggio software) installare anche il pacchetto {{pkg|alsa-oss}}. Caricare i [[Kernel modules (Italiano)|moduli del kernel]] {{ic|snd_seq_oss}}, {{ic|snd_pcm_oss}} e {{ic|snd_mixer_oss}} per abilitare i componenti di emulazione di OSS.<br />
<br />
==Togliere il muto ai canali==<br />
<br />
La versione attuale di ALSA, viene installata con tutti i canali impostati su '''muto di default'''. Sarà necessario togliere il "muto" manualmente. Il metodo più semplice per fare ciò è utilizzare l'interfaccia utente in ncurses {{Ic|alsamixer}}.<br />
<br />
{{ic|$ alsamixer}}<br />
<br />
Alternativamente, è possibile utilizzare {{ic|amixer}} da riga di comando:<br />
<br />
{{ic|$ amixer sset Master unmute}}<br />
<br />
In {{ic|alsamixer}}, l'etichetta {{ic|MM}} sotto un canale indica che quest'ultimo è impostato su muto, mentre {{ic|00}} indica che è attivo.<br />
<br />
Togliere il muto dai canali {{ic|Master}} e {{ic|PCM}} posizionandovi sopra di essi tramite i tasti {{ic|←}} e {{ic|→}} e premendo il tasto {{ic|M}}. Usare il tasto {{ic|↑}} per incrementare il volume ed ottenere un {{ic|db gain}} pari a 0. Il valore di gain si trova in alto a sinistra dopo il campo {{ic|Item:}}. Valori di gain superiori produrranno suoni distorti.<br />
<br />
Per ottenere un vero suono surround 5.1 o 7.1, è necessario togliere il muto anche ad altri canali come Front, Surround, Center, LFE (subwoofer) e Side (questi sono i nomi dei canali per il modulo intel HDA, possono variare in base all'hardware). Si tenga presente che ciò non abilita direttamente l'upmixing delle sorgenti stereo (come la maggior parte della musica). Per ottenere quell'effetto è necessario consultare il paragrafo [[#Upmixing/Downmixing|upmixing/downmixing]].<br />
<br />
Per abilitare il microfono, portarsi sulla tab Capture tramite {{ic|F4}} ed abilitare il canale premendo {{ic|Spazio}}<br />
<br />
Uscire da alsamixer premendo {{ic|Esc}}.<br />
<br />
{{Nota|Alcune schede necessitano del canale digitale disattivato per produrre suono sull'uscita analogica. Per la SoundBlaster Audigy LS è necessario impostare su muto il canale IEC958.<br />
<br />
Alcuni sistemi (come il Thinkpad T61), richiedono che anche il canale Speaker sia attivato e regolato.}}<br />
<br />
Alcuni sistemi, (come il Dell E6400) potrebbero anche richiedere che ai canali {{ic|Front}} ed {ic|Headphone}} venga tolto il muto e che vengano regolati.<br />
<br />
Si può ora verificare che il suono funzioni:<br />
<br />
{{ic|$ speaker-test -c 2}}<br />
<br />
Modificare il valore di {{ic|-c}} in base al proprio sistema, ad esempio utilizzare {{ic|-c 8}} per un 7.1.<br />
<br />
{{ic|$ speaker-test -c 8}}<br />
<br />
Se non dovesse funzionare, passare al paragrafo [[#Configurazione]] e quindi a [[#Risoluzione dei problemi]].<br />
<br />
Il pacchetto {{Pkg|alsa-utils}} include {{ic|alsa-restore.service}} e {{ic|alsa-store.service}} che sono preconfigurati per essere eseguiti rispettivamente all'avvio ed allo spegnimento.<br />
<br />
==Configurazione==<br />
<br />
<br />
=== Nessun suono in VirtualBox ===<br />
<br />
Se si riscontrassero problemi audio in VirtualBox, il seguente comando potrebbe essere d'aiuto.<br />
{{hc|$ alsactl init|2=<nowiki><br />
<br />
Found hardware: "ICH" "SigmaTel STAC9700,83,84" "AC97a:83847600" "0x8086" "0x0000"<br />
Hardware is initialized using a generic method<br />
</nowiki>}}<br />
<br />
Potrebbe essere necessario attivare l'uscita ALSA anche nel proprio software audio.<br />
<br />
===Impostare la scheda audio predefinita===<br />
<br />
Se l'ordine delle schede audio del sistema cambia ad ogni avvio, è possibile renderlo immutabile specificandolo all'interno di un file col suffisso {{ic|.conf}} all'interno di {{ic|/etc/modprobe.d}} ({{ic|/etc/modprobe.d/alsa-base.conf}} è quello solitamente usato).<br />
<br />
Ad esempio, se si desidera che la scheda audio mia sia la #0<br />
<br />
{{hc|/etc/modprobe.d/alsa-base.conf|2=<nowiki><br />
options snd slots=snd_mia,snd_hda_intel<br />
options snd_mia index=0<br />
options snd_hda_intel index=1<br />
</nowiki>}}<br />
<br />
Utilizzare {{ic|<nowiki>$ lsmod | grep snd</nowiki>}} per ottenere la lista dei dispositivi. Questa configurazione presuppone che sul sistema siano presenti una scheda audio mia che utilizza {{ic|snd_mia}} ed un'altra (ad esempio integrata sulla scheda madre) che utilizza {{ic|snd_hda_intel}}.<br />
<br />
Si può anche istruire ALSA ad utilizzare un indice di {{ic|-2}} per non far utilizzare mai una determinata scheda come primaria. Distribuzioni come Ubuntu e Mint utilizzano questo sistema per evitare che schede audio USB ed altri dispositivi "particolari" ottengano l'indice {{ic|0}}<br />
<br />
{{hc|/etc/modprobe.d/alsa-base.conf|2=<br />
options bt87x index=-2<br />
options cx88_alsa index=-2<br />
options saa7134-alsa index=-2<br />
options snd-atiixp-modem index=-2<br />
options snd-intel8x0m index=-2<br />
options snd-via82xx-modem index=-2<br />
options snd-usb-audio index=-2<br />
options snd-usb-caiaq index=-2<br />
options snd-usb-ua101 index=-2<br />
options snd-usb-us122l index=-2<br />
options snd-usb-usx2y index=-2<br />
options snd-pcsp index=-2<br />
options snd-usb-audio index=-2<br />
}}<br />
<br />
Questa modifica richiede il riavvio del sistema.<br />
<br />
==== Selezionare il PCM di default tramite variabili d'ambiente ====<br />
<br />
Nel proprio file di configurazione, preferibilmente quello globale, aggiungere<br />
pcm.!default {<br />
type plug<br />
slave.pcm {<br />
@func getenv<br />
vars [ ALSAPCM ]<br />
default "hw:Audigy2"<br />
}<br />
}<br />
<br />
È necessario sostituire la riga default col nome della propria scheda (nell'esempio è {{ic|Audigy2}}). Si può ottenere il nome necessario tramite {{ic|aplay -l}} oppure si possono utilizzare PCM come '''surround51'''. Se però è necessario utilizzare il microfono, è una buona idea selezionare full-duplex PCM come default.<br />
Ora sarà possibile avviare programmi selezionando la scheda audio desiderata semplicemente cambiando il valore della variabile {{ic|ALSAPCM}}. Si rivela utile per tutti quei programmi che non consentono di selezionare la scheda audio da utilizzare, per gli altri assicurarsi di aver mantenuto la scheda di default.<br />
Ad esempio, consideriamo il caso in cui si sia creato un downmix PCM dal nome '''mix51to20''', sarà possibile utilizzarlo con {{ic|mplayer}} attraverso questo comando<br />
<br />
{{ic|ALSAPCM&#61;mix51to20 mplayer example_6_channel.wav}}<br />
<br />
==== Metodo alternativo ====<br />
<br />
{{Out of date| Queste istruzioni potrebbero non essere più valide}}<br />
<br />
Bisogna innanzitutto rilevare gli id della scheda e del dispositivo che si vogliono impostare come predefiniti eseguendo {{Ic|aplay -l}}.<br />
<br />
{{hc|$ aplay -l|<br />
**** List of PLAYBACK Hardware Devices ****<br />
card 0: Intel [HDA Intel], device 0: CONEXANT Analog [CONEXANT Analog]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0<br />
card 0: Intel [HDA Intel], device 1: Conexant Digital [Conexant Digital]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0<br />
card 1: JamLab [JamLab], device 0: USB Audio [USB Audio]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0<br />
card 2: Audio [Altec Lansing XT1 - USB Audio], device 0: USB Audio [USB Audio]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0<br />
}}<br />
<br />
Ad esempio, l'ultima voce in questa lista si riferisce alla scheda con id 2, ed al dispositivo con id 0. Per impostarli come predefinit1, si può sia utilizzare il file di sistema {{ic|/etc/asound.conf}}, sia quello con influenza limitata sul singolo utente {{ic|~/.asoundrc}}. Potrebbe essere necessario creare il file se quest0ultimo non dovesse esistere.. Dopodichè inserirvi le seguenti opzioni con i corrispondenti id relativi alla scheda ed al dispositivo:<br />
<br />
{{bc|<br />
defaults.pcm.card 2<br />
defaults.pcm.device 0<br />
defaults.ctl.card 2<br />
}}<br />
<br />
L'opzione {{ic|pcm}} specifica quale scheda e dispositivo verranno utilizzati per la riproduzione dell'audio, mentre l'opzione {{ic|ctl}} indica quali saranno controllati da utility come alsamixer.<br />
Le opzioni dovrebbere essere effettive nel momento in cui un'applicazione relativa ad esse (mplayer, alsamixer, etc...) viene riavviata.<br />
<br />
===Assicurarsi che i moduli audio siano caricati===<br />
<br />
Verificare che udev abbia rilevato automaticamente l'audio,con il comando:<br />
<br />
{{hc|$ lsmod<nowiki>|grep '^snd'|</nowiki> column -t |<br />
snd_hda_codec_hdmi 22378 4<br />
snd_hda_codec_realtek 294191 1<br />
snd_hda_intel 21738 1<br />
snd_hda_codec 73739 3 snd_hda_codec_hdmi,snd_hda_codec_realtek,snd_hda_intel<br />
snd_hwdep 6134 1 snd_hda_codec<br />
snd_pcm 71032 3 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec<br />
snd_timer 18992 1 snd_pcm<br />
snd 55132 9 snd_hda_codec_hdmi,snd_hda_codec_realtek,snd_hda_intel,snd_hda_codec,snd_hwdep,snd_pcm,snd_timer<br />
snd_page_alloc 7017 2 snd_hda_intel,snd_pcm<br />
}}<br />
<br />
Se l'output è simile, i driver audio sono stati autorilevati con successo. Si può anche controllare la directory {{ic|/dev/snd}} per visualizzare i giusti file del dispositivo:<br />
<br />
{{Nota|A partire da udev><nowiki>=</nowiki>171, i moduli per l'emulazione OSS ({{Ic|snd_seq_oss, snd_pcm_oss, snd_mixer_oss}}) non sono più caricati automaticamente di default: [[kernel modules (Italiano)#Caricamento|Impostarne il caricamento]] se si desidera che vengano caricati automaticamente ad ogni avvio.}}<br />
<br />
Si potrebbe anche controllare la directory {{ic|/dev/snd/}} per conoscere i nomi di dispositivo corretti:<br />
{{hc|$ ls -l /dev/snd/|<br />
total 0<br />
crw-rw---- 1 root audio 116, 0 Apr 8 14:17 controlC0<br />
crw-rw---- 1 root audio 116, 32 Apr 8 14:17 controlC1<br />
crw-rw---- 1 root audio 116, 24 Apr 8 14:17 pcmC0D0c<br />
crw-rw---- 1 root audio 116, 16 Apr 8 14:17 pcmC0D0p<br />
crw-rw---- 1 root audio 116, 25 Apr 8 14:17 pcmC0D1c<br />
crw-rw---- 1 root audio 116, 56 Apr 8 14:17 pcmC1D0c<br />
crw-rw---- 1 root audio 116, 48 Apr 8 14:17 pcmC1D0p<br />
crw-rw---- 1 root audio 116, 1 Apr 8 14:17 seq<br />
crw-rw---- 1 root audio 116, 33 Apr 8 14:17 timer<br />
}}<br />
'''In caso di richiesta di aiuto su IRC o sui forum, per favore postare l'output dei comandi precedenti.'''<br />
<br />
Se sono presenti i dispositivi {{Ic|controlC0}} e {{Ic|pcmC0D0p}} o simili, allora i moduli audio sono stati rilevati e caricati correttamente.<br />
<br />
Altrimenti, i moduli audio non sono stati rilevati correttamente. Per risolvere, provare a caricare i moduli manualmente:<br />
<br />
* Individuare il modulo della scheda audio: [http://www.alsa-project.org/main/index.php/Matrix:Main ALSA Soundcard Matrix]. Il modulo sarà preceduto dal suffisso 'snd-' (ad esempio: 'snd-via82xx').<br />
* [[Kernel modules (Italiano)#Caricamento|Caricare i moduli]]:<br />
* Controllare i file del dispositivo in {{ic|/dev/snd}} (vedi sopra) e/o provare se {{Ic|alsamixer}} o {{Ic|amixer}} hanno un corretto output.<br />
* Configurare {{Ic|snd-NOME-DEL-MODULO}} e {{Ic|snd-pcm-oss}} in modo che [[Kernel modules (Italiano)#Caricamento|vengano caricati all'avvio]].<br />
<br />
===Ottenere un output SPDIF===<br />
<br />
(da gralves dai forum di Gentoo)<br />
* Nel Controllo Volume di GNOME, sotto il tab delle opzioni, cambiare IEC958 in PCM. Questa opzione può essere abilitata nelle preferenze.<br />
* Se non è installato il Controllo Volume di GNOME,<br />
** Editare {{ic|/var/lib/alsa/asound.state}}. In questo file alsasound salva le regolazioni del mixer.<br />
** Trovare la riga che riporta: {{Ic|IEC958 Playback Switch}}. Vicino ad essa c'è una riga nella quale è indicato {{Ic|value:false}}. Cambiarla in {{Ic|value:true}}.<br />
** Adesso trovare questa riga: {{Ic|IEC958 Playback AC97-SPSA}}. Cambiare il suo valore in {{Ic|0}}.<br />
** Riavviare alsa.<br />
<br />
Un metodo alternativo per abilitare un output SPDIF automaticamente al login (testato su una SoundBlaster Audigy) è il seguente:<br />
* aggiungere le seguenti righe in {{ic|/etc/rc.local}}:<br />
<br />
{{hc|/etc/rc.local|<br />
# Use COAX-digital output<br />
amixer set 'IEC958 Optical' 100 unmute<br />
amixer set 'Audigy Analog/Digital Output Jack' on<br />
}}<br />
Si può visualizzare il nome dell'uscita digitale della scheda con:<br />
<br />
{{bc|$ amixer scontrols}}<br />
<br />
===Equalizzatore System-Wide===<br />
====Utilizzando AlsaEqual (fornisce l’interfaccia grafica)====<br />
<br />
Installare {{AUR|alsaequal}} da [[AUR]].<br />
<br />
{{Note | Se si utilizza un sistema x86_64 e 32bit-flashplugin, il suono in flash non funzionerà. Si dovrà quindi o disabilitare alsaequal o compilarlo per 32bit.}}<br />
<br />
Dopo aver installato il pacchetto, inserire nel file di configurazione ALSA ({{ic|~/.asoundrc}} o {{ic|/etc/asound.conf}}) quanto segue:<br />
<br />
{{hc|~/.asoundrc|ctl.equal {<br />
type equal;<br />
}<br />
<br />
pcm.plugequal {<br />
type equal;<br />
# Modify the line below if you don't<br />
# want to use sound card 0.<br />
#slave.pcm "plughw:0,0";<br />
#by default we want to play from more sources at time:<br />
slave.pcm "plug:dmix";<br />
}<br />
<br />
#pcm.equal {<br />
# Or if you want the equalizer to be your<br />
# default soundcard uncomment the following<br />
# line and comment the above line.<br />
pcm.!default {<br />
type plug;<br />
slave.pcm plugequal;<br />
}<br />
}} <br />
<br />
Ora si è pronti per modificare l’equalizzatore tramite il comando:<br />
{{bc|$ alsamixer -D equal}}<br />
<br />
Si noti che il file di configurazione, diverso per ogni utente (se non diversamente specificato), viene salvato in {{ic|$HOME/.alsaequal.bin}}.<br />
Perciò se si vuole utilizzare AlsaEqual con [[mpd]] o con un altro software, con un utente diverso, è possibile configurarlo con il comando:<br />
{{bc|# su mpd -c 'alsamixer -D equal}}<br />
Oppure, è possibile creare un link simbolico a {{ic|.alsaequal.bin}} nella home di quell’utente.<br />
<br />
===== Gestire gli stati di AlsaEqual =====<br />
<br />
Installare [http://xyne.archlinux.ca/projects/alsaequal-mgr/ alsaequal-mgr] da [http://xyne.archlinux.ca/repos/ Xyne's repos] o da [https://aur.archlinux.org/packages.php?ID=62420 AUR].<br />
<br />
Configurare l'equalizzatore come al solito tramite<br />
<br />
{{ic|$ alsamixer -D equal}}<br />
<br />
Quando si è soddisfatti del risultato, si può dare un nome alla configurazione ("foo" in questo esempio) e salvarlo:<br />
<br />
{{ic|alsaequal-mgr save foo}}<br />
<br />
<br />
Lo stato "foo" può essere richiamato in seguito tramite<br />
<br />
{{ic|$ alsaequal-mgr load foo}}<br />
<br />
È quindi possibile creare stati differenziati per giochi, film, generi musicali, applicazioni VoIP, etc. e caricarli quando necessario.<br />
<br />
Consultare [http://xyne.archlinux.ca/projects/alsaequal-mgr/ project page] ed i messaggi di aiuto per ulteriori informazioni.<br />
<br />
====Utilizzando mbeq====<br />
<br />
{{Nota|Questo metodo richiede l'utilizzo del plugin ladspa che può comportare un consumo un po' più alto della CPU quando si esegue un suono. Inoltre, questo metodo è pensato per l'utilizzo di un suono stereofonico (ad esempio, ottimizzato per un ascolto tramite cuffie) }}<br />
<br />
Installare {{Pkg|alsa-plugins}}, {{Pkg|ladspa}} e {{Pkg|swh-plugins}} <br />
<br />
* sarà necessario avere uno dei file tra {{ic|~/.asoundrc}} e {{ic|/etc/asound.conf}}, dunque, se non è ancora stato fatto, creare uno dei due<br />
<br />
{{bc|touch ~/.asoundrc}}<br />
<br />
ed inserirvi le seguenti righe:<br />
<br />
{{hc|/etc/asound.conf|2=<nowiki>pcm.eq {<br />
type ladspa<br />
<br />
# The output from the EQ can either go direct to a hardware device<br />
# (if you have a hardware mixer, e.g. SBLive/Audigy) or it can go<br />
# to the software mixer shown here.<br />
#slave.pcm "plughw:0,0"<br />
slave.pcm "plug:dmix"<br />
<br />
# Sometimes you may need to specify the path to the plugins,<br />
# especially if you have just installed them. Once you have logged<br />
# out/restarted this should not be necessary, but if you get errors<br />
# about being unable to find plugins, try uncommenting this.<br />
#path "/usr/lib/ladspa"<br />
<br />
plugins [<br />
{<br />
label mbeq<br />
id 1197<br />
input {<br />
#this setting is here by example, edit to your own taste<br />
#bands: 50hz, 100hz, 156hz, 220hz, 311hz, 440hz, 622hz, 880hz, 1250hz, 1750hz, 25000hz,<br />
#50000hz, 10000hz, 20000hz<br />
controls [ -5 -5 -5 -5 -5 -10 -20 -15 -10 -10 -10 -10 -10 -3 -2 ]<br />
}<br />
}<br />
]<br />
}<br />
<br />
# Redirect the default device to go via the EQ - you may want to do<br />
# this last, once you're sure everything is working. Otherwise all<br />
# your audio programs will break/crash if something has gone wrong.<br />
<br />
pcm.!default {<br />
type plug<br />
slave.pcm "eq"<br />
}<br />
<br />
# Redirect the OSS emulation through the EQ too (when programs are running through "aoss")<br />
<br />
pcm.dsp0 {<br />
type plug<br />
slave.pcm "eq"<br />
}<br />
</nowiki>}}<br />
<br />
* ora tutto dovrebbe essere sistemato<br />
<br />
== Ricampionamento in alta qualità ==<br />
<br />
Quando viene abilitato il mixaggio software, ALSA è costretto a ricampionare tutto alla stessa frequenza (di default a 48000, se supportata). Dmix utilizza un algoritmo di ricampionamento poco efficace, che produce una notevole perdita di qualità.<br />
<br />
Installare {{Pkg|alsa-plugins}} e {{Pkg|libsamplerate}}<br />
<br />
Modificare il tasso di conversione di default a libsamplerate<br />
<br />
{{hc|/etc/asoundrc|defaults.pcm.rate_converter "samplerate_best"}}<br />
<br />
'''samplerate_best''' offre la miglior qualità audio, ma necessità di cpu almeno decenti, in quanto il ricampionamento in tempo reale richiede un numero notevole di cicli di cpu. Sono disponibili anche altri algoritmi ('''samplerate''', etc.) ma non forniscono tangibili miglioramenti rispetto al ricampionatore di default.<br />
<br />
==Upmixing/Downmixing==<br />
===Upmixing===<br />
<br />
Per fare in modo che una sorgente audio stereo saturi tutte le uscite di un sistema che ne ha più di 2, come 5.1 o 7.1, è necessario effettuare un upmixing. In passato questa procedura risultava complessa e suscettibile di errori, ma al giorno d'oggi esistono dei plugin che se ne occupano. In questo esempio si utilizzerà il plugin {{ic|upmix}}, incluso in {{Pkg|alsa-plugins}}.<br />
<br />
Dopodichè aggiungere il seguente codice al file di configurazione di ALSA a propria scelta ({{ic|/etc/asound.conf}} oppure {{ic|~/.asoundrc}}):<br />
<br />
{{hc|~/.asoundrc|pcm.upmix71 {<br />
type upmix<br />
slave.pcm "surround71"<br />
delay 15<br />
channels 8<br />
}<br />
}}<br />
<br />
È intuitivo come adeguare questo esempio da 7.1 ad altro sistema.<br />
<br />
Questo metodo aggiunge un nuovo pcm che è possibile utilizzare per l'upmixing. Se si vuole che tutte le sorgenti audio vengano redirette verso questo pcm, aggiungerlo come default successivamente al codice appena scritto, in questo modo<br />
<br />
{{hc|~/.asoundrc|<br />
....<br />
pcm.!default "plug:upmix71"<br />
....<br />
}}<br />
<br />
Il plugin consente automaticamente alle sorgenti di essere riprodotte attraverso di esso, quindi impostarlo come predefinito è una scelta sicura. Se ciò non dovesse funzionare, si può provare a impostare dmix affinchè effettui l'upmixing del canale PCM in questo modo<br />
{{hc|~/.asoundrc|<br />
pcm.dmix6 {<br />
type asym<br />
playback.pcm {<br />
type dmix<br />
ipc_key 567829<br />
slave {<br />
pcm "hw:0,0"<br />
channels 6<br />
}<br />
}<br />
}<br />
}}<br />
ed usare "dmix6" al posto di "surround71". Se si dovessero riscontrare problemi di suono che salta o risulta distorto, provare ad incrementare la dimensione del buffer (ad esempio a 32768) oppure utilizzare un [[#Ricampionamento in alta qualità|ricampionatore di alta qualità]].<br />
<br />
===Downmixing===<br />
Se si vuole effettuare il downmixing, ad esempio per ascoltare su un'uscita stereo il sonoro di un video in 5.1, è necessario utilizzare il plugin {{ic|vdownmix}} contenuto in {{Pkg|alsa-plugins}}.<br />
<br />
Nel file di configurazione aggiungere quanto segue<br />
<br />
{{hc|~/.asoundrc|pcm.!surround51 {<br />
type vdownmix<br />
slave.pcm "default"<br />
}<br />
pcm.!surround40 {<br />
type vdownmix<br />
slave.pcm "default"<br />
}<br />
}}<br />
<br />
==Mixaggio==<br />
===Mixaggio software (dmix)===<br />
<br />
Sistema di mixaggio software di ALSA<br />
<br />
{{Nota|: Per versioni di ALSA uguali o superiori alla 1.0.9rc2 non vi è necessità di configurare dmix per le uscite audio analogiche. Dmix è abilitato di default se viene rilevata una scheda audio che non supporta il mixaggio via hardware.}}<br />
<br />
Se comunque non dovesse funzionare automaticamente è sufficiente creare il (o modificare l'esistente) file {{ic|~/.asoundrc}} con questo contenuto: <br />
<br />
{{hc|~/.asoundrc|<br />
pcm.dsp {<br />
type plug<br />
slave.pcm "dmix"<br />
}<br />
}}<br />
<br />
Questo dovrebbe abilitare il mixaggio software ed abilitare più applicazioni all'accesso alla periferica contemporaneamente.<br />
Per le uscite audio digitali come S/PDIF, il pacchetto ALSA tuttora non abilita dmix di default. Perciò la configurazione appena mostrata si rivela in questo caso necessaria per l'utilizzo del mixaggio software su uscite S/PDIF.<br />
Consultare [[#Risoluzione dei problemi]] per soluzioni a problemi comuni.<br />
<br />
===Mixaggio Hardware===<br />
<br />
==== Supporto ====<br />
<br />
Se sul sistema è presente un chipset audio che supporta il mixaggio hardware, non è richiesta alcuna configurazione. Quasi tutti i chip integrati nelle schede madri non supportano il mixaggio hardware, e obbligano ad effettuare un mixaggio via software (vedere paragrafo precedente). Molte schede audio supportano il mixaggio hardware, e quelle meglio supportate su Linux sono le seguenti:<br />
<br />
* Creative SoundBlaster Live! (5.1 model)<br />
* Creative SoundBlaster Audigy (some models)<br />
* Creative SoundBlaster Audidy 2 (ZS models)<br />
* Creative SoundBlaster Audigy 4 (Pro models)<br />
<br />
{{Nota|<br />
* Le versioni economiche delle suddette schede, (Audigy SE, Audigy 2 NX, SoundBlaster Live! 24bit and SoundBlaster Live! 7.1) '''non''' supportano il mixaggio hardware, in quanto utilizzano chip differenti.<br />
* Il chip integrato VIA8237 che supporta il mixaggio hardware di 4 flussi. In realtà ridotti a 3 su alcune schede madri (il quarto non emette suono). Anche se funzionante, la qualità del suono non è comparabile a quella delle altre soluzioni.}}<br />
<br />
<br />
==== Fix ====<br />
Si si utilizza Arch64 e la scheda Intel Corporation 82801I (ICH9 Family) HD Audio Controller (rev 02), bisogna impostare alcuni parametri per ottenere suono da Enemy Territory:<br />
{{bc|$ echo "et.x86 0 0 direct" > /proc/asound/card0/pcm0p/oss<br />
$ echo "et.x86 0 0 disable" > /proc/asound/card0/pcm0c/oss}}<br />
<br />
==Risoluzione dei problemi==<br />
<br />
===Suono che salta utilizzando Dynamic Frequency Scaling===<br />
Alcune combinazioni di determinati driver ALSA e chipset, possono causare dei "salti" nel suono da tutte le sorgenti se utilizzati in combinazione con un governor dinamico della frequenza della cpu come {{Ic|ondemand}} o {{Ic|conservative}}. Attualmente, l'unica soluzione è di passare al governor {{Ic|performance}}. <br />
Fare riferimento alla pagina [[CPU Frequency Scaling (Italiano)]] per ulteriori informazioni.<br />
<br />
===Problemi con la disponibilità del mixaggio software per più di un utente per volta===<br />
Può capitare di rilevare che solo un utente per volta può utilizzare dmix. Questa situazione può andar bene per la maggior parte degli utenti, ma coloro i quali utilizzano [[mpd]] come utente differente, ciò diviene un problema. Quando mpd è in esecuzione un utente non può eseguire suoni tramite dmix. Nonostante sia sufficiente eseguire mpd tramite l'account utente di login, è stata trovata anche un'altra soluzione. L'aggiunta della riga {{Ic|ipc_key_add_uid 0}} al blocco {{Ic|pcm.dmixer}} disabilita questa limitazione. Quello seguente è un estratto del codice di {{ic|/etc/asound.conf}}, il resto è identico a quello mostrato in precedenza.<br />
{{hc|/etc/asound.conf|<br />
...<br />
pcm.dmixer {<br />
type dmix<br />
ipc_key 1024<br />
ipc_key_add_uid 0 <br />
ipc_perm 0660<br />
slave {<br />
...<br />
}}<br />
<br />
=== Problemi di riproduzione simultanea ===<br />
Se si hanno problemmi a riprodurre più tracce contemporaneamente, e se è installto [[PulseAudio]] (ad esempio utilizzando [[GNOME]]), la sua configurazione di default verrà utilizzata automaticamente. Alcuni utenti potrebbero non voler utilizzare [[PulseAudio]] trovandosi bene con le proprie configurazioni di ALSA. Un metodo per risolvere il problema, è modificare il file {{ic|/etc/asound.conf}} e commentare le righe seguenti:<br />
{{bc|# Use PulseAudio by default<br />
#pcm.!default {<br />
# type pulse<br />
# fallback "sysdefault"<br />
# hint {<br />
# show on<br />
# description "Default ALSA Output (currently PulseAudio Sound Server)"<br />
# }<br />
#}<br />
}}<br />
Commentare anche queste potrebbe rivelarsi necessario:<br />
{{bc|#ctl.!default {<br />
# type pulse<br />
# fallback "sysdefault"<br />
#}<br />
}}<br />
Questa può rivelarsi una soluzione più semplice rispetto alla totale disinstallazione di [[PulseAudio]].<br />
Qui di seguito viene mostrato un esempio di un {{ic|/etc/asound.conf}} correttamente funzionante.<br />
{{bc|cm.dmixer {<br />
type dmix<br />
ipc_key 1024<br />
ipc_key_add_uid 0<br />
ipc_perm 0660<br />
}<br />
pcm.dsp {<br />
type plug<br />
slave.pcm "dmix"<br />
}<br />
}}<br />
{{Nota| Questo {{ic|/etc/asound.conf}} è stato creato ed utilizzato con successo per una configurazione globale di [[Music Player Daemon (Italiano)|MPD]]. Consultare [[#Problemi con la disponibilità del mixaggio software per più di un utente per volta|questa sezione]]}}<br />
<br />
===Mancanza di suono casuale===<br />
<br />
Si può testare velocemente il comparto audio eseguendo {{ic|speaker-test}}. Se non viene emesso alcun suono, il messaggio d'errore dovrebbe essere qualcosa di simile a:<br />
<br />
{{bc|ALSA lib pcm_dmix.c:1022:(snd_pcm_dmix_open) unable to open slave<br />
Playback open error: -16<br />
Device or resource busy}}<br />
<br />
Se non si ottiene alcun suono all'avvio del sistema, può darsi che sul proprio sistema siano presenti più schede audio, e che il loro ordine cambi ad ogni avvio. Se fosse questo il caso, seguire [[#Impostare la scheda audio predefinita questo paragrafo]]<br />
<br />
Se si utilizza mpd ed il consiglio precedente non dovesse funzionare provare [[http://mpd.wikia.com/wiki/Configuration#ALSA_MPD_software_volume_control questa soluzione]<br />
<br />
==== Timidity ====<br />
[[Timidity]] potrebbe essere la causa della mancanza di suono. Provare ad eseguire:<br />
<br />
{{ic|systemctl status timidity}}<br />
<br />
Se l'avvio del demone dovesse risultare fallito, provare ad eseguire {{ic|# killall -9 timidity}}. Se questo dovesse risolvere il problema, sarà necessario disabilitare l'avvio automatico del demone.<br />
<br />
===Problemi specifici di alcuni programmi===<br />
<br />
Per alcuni programmi che continuano ad utilizzare i loro propri settaggi audio, come XMMS ed Mplayer, potrebbe rendersi necessaria l'impostazione dei loro specifici parametri.<br />
Per Mplayer, aprire{{ic|~/.mplayer/config}} (o {{ic|/etc/mplayer/mplayer.conf}} per un'impostazione globale) ed aggiungere la seguente linea <br />
{{ic|1=ao=alsa}}<br />
<br />
Per XMMS/Beep Media Player, portarsi nella scheda delle preferenze ed assicurarsi che sia selezionato come sistema audio ALSA e non OSS. Per fare ciò in XMMS<br />
<br />
* Aprire XMMS<br />
** Opzioni -> Preferenze.<br />
** Scegliere il plugin di uscita ALSA.<br />
<br />
Per applicazioni che non forniscono compatibilità con ALSA è possibile utilizzare il pacchetto alsa-oss. Per utilizzare aoss, eseguire il programma anteponendogli {{ic|aoss}}, ad esempio:<br />
{{ic|aoss realplay}}<br />
<br />
{{ic|<nowiki>pcm.!default{ ... }</nowiki>}}<br />
sembra non funzionare più, al suo posto si può utilizzare <br />
{{ic|pcm.default pcm.dmixer}}<br />
<br />
===Impostazione modelli===<br />
<br />
Anche se Alsa rileva la scheda audio attraverso il BIOS a volte può non essere in grado di riconoscerne [http://www.kernel.org/doc/Documentation/sound/alsa/HD-Audio-Models.txt il modello]. Il chip della scheda audio può essere trovato in {{ic|alsamixer}} (ad esempio ALC662) e il modello può essere impostato in {{ic|/etc/modprobe.d/modprobe.conf}} o {{ic|/etc/modprobe.d/sound.conf}}. Ad esempio:<br />
<br />
options snd-hda-intel model=MODEL<br />
<br />
Ci sono anche altri modelli da impostare. Nella maggior parte dei casi Alsa lo farà in automatico. Se si vogliono vedere nel dettaglio le impostazioni della propria scheda audio si veda [http://bugtrack.alsa-project.org/main/index.php/Matrix:Main Alsa Soundcard List], si individui il proprio modello, si clicchi su “''Details''” e si osservi la sezione "''Setting up modprobe...''". Inserire i valori trovati in {{ic|/etc/modprobe.d/modprobe.conf}}. Ad esempio, per una scheda AC97 Intel:<br />
<br />
{{bc|# ALSA portion<br />
alias char-major-116 snd<br />
alias snd-card-0 snd-intel8x0<br />
# module options should go here<br />
<br />
# OSS/Free portion<br />
alias char-major-14 soundcore<br />
alias sound-slot-0 snd-card-0<br />
<br />
# card #1<br />
alias sound-service-0-0 snd-mixer-oss<br />
alias sound-service-0-1 snd-seq-oss<br />
alias sound-service-0-3 snd-pcm-oss<br />
alias sound-service-0-8 snd-seq-oss<br />
alias sound-service-0-12 snd-pcm-oss}}<br />
<br />
===Audio in conflitto con altoparlante interno del PC===<br />
<br />
Se si è sicuri che tutto è attivo, che i propri driver sono installati correttamente, e che il volume è giusto, ma non si sente ancora nessun suono, allora si proceda all’aggiunta delle seguenti linee di codice in {{ic|/etc/modprobe.d/modprobe.conf}}:<br />
<br />
options snd-NAME-OF-MODULE ac97_quirk=0<br />
<br />
Funziona con {{ic|via82xx}}<br />
<br />
options snd-NAME-OF-MODULE ac97_quirk=1<br />
<br />
Funziona con {{ic|snd_intel8x0}}<br />
<br />
===Nessun Input dal Microfono===<br />
Assicurarsi, in alsamixer, che tutti i livelli del volume, nella sezione Registrazione, siano attivi e che la modalità CAPTURE del microfono sia abilitata (in alsamixer, selezionarla e premere spazio). Potrebbe anche essere necessario attivare e aumentare il volume di Line-in (Linea in ingresso) nella sezione Playblack (Riproduzione).<br />
<br />
Per testare il microfono, eseguire questi comandi:<br />
arecord -d 5 test-mic.wav<br />
aplay test-mic.wav<br />
<br />
Si consiglia di leggere la pagina ''man'' di ''arecord''. Comunque, nel caso in cui non si sentisse alcun suono, il microfono potrebbe essere guasto oppure collegato nell’ingresso sbagliato.<br />
<br />
Alcuni portatili Dell richiedono che il suffisso "-dmic" sia aggiunto al nome del modello all'interno di {{ic|/etc/modprobe.d/modprobe.conf}}:<br />
{{ic|options snd-hda-intel model<nowiki>=</nowiki>dell-m6-dmic}}<br />
<br />
Alcuni programmi tentano di utilizzare OSS come software di input principale. Se sono stati abilitati in precedenza i [[kernel modules (Italiano)|moduli del kernel]] {{ic|snd_pcm_oss}}, {{ic|snd_mixer_oss}} o {{ic|snd_seq_oss}} (di default non sono caricati automaticamente), provare a scaricarli.<br />
<br />
===Impostazione predefinita Microfono/Dispositivo di acquisizione===<br />
Alcune applicazioni (Pidgin, Adobe Flash) non forniscono una opzione per modificare il dispositivo di acquisizione. Ciò può costituire un problema se il microfono è su un dispositivo diverso (ad esempio una webcam USB o proprio un microfono) dalla scheda audio. Per cambiare solo il dispositivo di acquisizione, lasciando quello di riproduzione di default, si può modificare il file {{ic| ~/.asoundrc}} inserendo quanto segue:<br />
<br />
pcm.usb<br />
{<br />
type hw<br />
card U0x46d0x81d<br />
}<br />
<br />
pcm.!default<br />
{<br />
type asym<br />
playback.pcm<br />
{<br />
type plug<br />
slave.pcm "dmix"<br />
}<br />
capture.pcm <br />
{<br />
type plug<br />
slave.pcm "usb"<br />
}<br />
}<br />
<br />
Sostituire "U0x46d0x81d" con il nome della scheda del dispositivo di acquisizione in ALSA. È possibile utilizzare il comando {{Ic | arecord -L}} per visualizzare l’elenco di tutti i dispositivi di acquisizione rilevati da ALSA.<br />
<br />
===Il microfono interno non funziona===<br />
<br />
Assicurarsi, in alsamixer, che tutti i livelli del volume, nella sezione Registrazione, siano attivi. Per ottenere una nuova impostazione volume, chiamata Capture, che registrerà il microfono interno, occorre aggiungere un’opzione al file {{ic| /etc/sound.conf}} e ricaricare il modulo snd-*. Ad esempio, per snd-hda-intel, aggiungere:<br />
<br />
options snd-hda-intel enable_msi=1<br />
<br />
Quindi, con i comandi riportati di seguito, ricaricare il modulo, attivare la nuova impostazione volume (Capture) e riprovare.<br />
<br />
rmmod snd-hda-intel<br />
modprobe snd-hda-intel<br />
<br />
===Nessun suono con scheda integrata Intel===<br />
<br />
Ci potrebbe essere un conflitto tra due moduli caricati, chiamati {{Ic|snd_intel8x0}} e {{Ic|snd_intel8x0m}}. In questo caso, mettere in blacklist {{Ic|snd_intel8x0m}}:<br />
{{hc|/etc/modprobe.d/modprobe.conf|blacklist snd_intel8x0m}}<br />
''Disabilitare'' i canali "External Amplifier" in {{Ic|alsamixer}} o in {{Ic|amixer}} potrebbe essere d'aiuto. Consultare anche [http://alsa.opensrc.org/index.php/Intel8x0#Dell_Inspiron_8600_.28and_probably_others.29 il wiki ALSA].<br />
<br />
Anche togliere il muto al canale Mix del mixer potrebbe risolvere il problema.<br />
<br />
===Nessun suono dalle cuffie con scheda audio integrata Intel===<br />
Su di un portatile con '''Intel Corporation 82801 I (ICH9 Family) HD Audio Controller''' potrebbe essere necessario aggiungere questa riga a {{ic| modprobe}} o al {{ic| sound.conf}}:<br />
<br />
options snd-hda-intel model=$model<br />
<br />
Dove $model è uno dei modelli che seguono (non in ordine di merito ma di probabilità di funzionamento):<br />
<br />
* dell-vostro<br />
* olpc-xo-1_5<br />
* dell-m6<br />
<br />
{{Nota| Potrebbe essere necessario inserire queste "opzioni" dopo eventuali "alias"}}<br />
<br />
Si possono visualizzare tutti i modelli disponibili nella documentazione del kernel. Ad esempio [http://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/tree/Documentation/sound/alsa/HD-Audio-Models.txt qui], ma accertarsi che si tratti della documentazione della versione del kernel in uso.<br />
<br />
Un elenco di tutti i modelli è anche disponibile a [http://www.mjmwired.net/kernel/Documentation/sound/alsa/HD-Audio-Models.txt questo indirizzo]. Per conoscere il nome del proprio chip eseguire il seguente comando<br />
{{ic|$ grep Codec /proc/asound/card*/codec*}}<br />
<br />
{{Nota| Alcuni chip potrebbero essere stati rinominati, e non avere quindi un riscontro diretto con i nomi all'interno del file}}<br />
<br />
Se seguendo questo metodo si dovessero riscontrare malfunzionamenti o anomalie, si prega di segnalare ad ALSA eventuali bug.<br />
<br />
Inoltre, in caso di problemi con segnali acustici (pcspkr):<br />
<br />
options snd-hda-intel model=$model enable=1 index=0<br />
<br />
=== Nessun suono quando è installata la scheda video con S/PDIF===<br />
<br />
Individuare i moduli disponibili ed il loro ordine:<br />
{{hc|$ cat /proc/asound/modules|<br />
0 snd_hda_intel<br />
1 snd_ca0106<br />
}}<br />
<br />
Disattivare il codec audio della scheda video in {{ic|/etc/modprobe.d/modprobe.conf}}:<br />
# /etc/modprobe.d/modprobe.conf<br />
#<br />
install snd_hda_intel /bin/false<br />
<br />
Se entrambi i dispositivi utilizzano lo stesso modulo, dovrebbe essere possibile disattivare uno dei due tramite il BIOS.<br />
<br />
===La qualità dell'audio è bassa===<br />
<br />
Se si riscontra una bassa qualità dell'audio, provare ad impostare il volume di PCM (in alsamixer) ad un livello di gain 0.<br />
<br />
Se è stato caricato il driver snd-usb-audio, potresti provare ad abilitare {{ic|softvol}} all'interno del file {{ic|/etc/asound.conf}}. Configurazione d'esempio per il primo dispositivo audio:<br />
{{bc|<br />
pcm.!default {<br />
type plug<br />
slave.pcm "softvol"<br />
}<br />
pcm.dmixer {<br />
type dmix<br />
ipc_key 1024<br />
slave {<br />
pcm "hw:0"<br />
period_time 0<br />
period_size 4096<br />
buffer_size 131072<br />
rate 50000<br />
}<br />
bindings {<br />
0 0<br />
1 1<br />
}<br />
}<br />
pcm.dsnooper {<br />
type dsnoop<br />
ipc_key 1024<br />
slave {<br />
pcm "hw:0"<br />
channels 2<br />
period_time 0<br />
period_size 4096<br />
buffer_size 131072<br />
rate 50000<br />
}<br />
bindings {<br />
0 0<br />
1 1<br />
}<br />
}<br />
pcm.softvol {<br />
type softvol<br />
slave { pcm "dmixer" }<br />
control {<br />
name "Master"<br />
card 0<br />
}<br />
}<br />
ctl.!default {<br />
type hw<br />
card 0<br />
}<br />
ctl.softvol {<br />
type hw<br />
card 0<br />
}<br />
ctl.dmixer {<br />
type hw<br />
card 0<br />
}<br />
}}<br />
<br />
===Rumori/Suoni all’avvio ed allo stop della riproduzione===<br />
<br />
Alcuni moduli (ad es. snd-ac97-codec e snd-hda-intel) posso spegnere la scheda audio quando questa non è utilizzata. Lo spegnimento può generare un suono. A volte ciò può avvenire anche quando si agisce sulla barra del volume, o quando si aprono o chiudono finestre (KDE4). Per evitare che ciò avvenga si può eseguire {{ic|modinfo snd-MY-MODULE}}, e cercare un’opzione che regoli o disattivi questa funzione.<br />
<br />
Ad esempio: per disabilitare il risparmio energetico utilizzando snd_hda_intel aggiungere in {{ic| /etc/modprobe.d/modprobe.conf}} {{bc|1=options snd-hda-intel power_save=0}} o {{bc|1=options snd-hda-intel power_save=0 power_save_controller=N}}<br />
<br />
È anche possibile provare prima al volo le configurazioni dando, ad esempio, {{ic|1=modprobe snd_hda_intel power_save=0}} <br />
<br />
<br />
<br />
Potrebbe anche rivelarsi necessario togliere il muto dal canale alsa 'Line'. Qualsiasi valore, purchè non 0 o troppo alto, andrà bene.<br />
<br />
Ad esempio: su una scheda integrata VIA VT1708S (che utilizza il modulo snd-hda-intel) questi disturbi erano presenti anche dopo aver impostato il parametro 'power_save' a 0. Im postandolo ad 1 e togliendo il muto al canale 'Line', il problema è stato risolto.<br />
<br />
Fonte: http://www.kernel.org/doc/Documentation/sound/alsa/powersave.txt<br />
<br />
Se si utilizza un portatile, pm-utils riporterà il valore di {{ic|power_save}} a 1 quando si passa all'alimentazione da batteria, anche se è stato disabilitato il risparmio energetico in {{ic|/etc/modprobe.d}}. Evitare questo comportamento di pm-utils disabilitando lo script che lo determina (consultare [https://wiki.archlinux.org/index.php/Pm-utils#Disabling_a_hook Disabling a hook] per ulteriori informazioni):<br />
<br />
{{ic| # touch /etc/pm/power.d/intel-audio-powersave}}<br />
<br />
===L'uscita S/PDIF non funziona===<br />
<br />
Se l'uscita digitale ottica/coassiale della scheda madre/scheda audio non funziona o ha smesso di funzionare, e in alsamixer i relativi canali sono già attivi, provare ad eseguire: <br />
iecset audio on<br />
<br />
da utente root.<br />
<br />
È inoltre possibile inserire questo comando in {{ic| rc.local}} in quanto a volte può smettere di funzionare dopo un riavvio.<br />
<br />
===L'uscita HDMI non funziona===<br />
La procedura esposta di seguito consente di testare il funzionamento dell'uscita audio HDMI. Prima di procede, accertarsi di aver abilitato e levato il muto all'output corrispondente tramite {{ic|alsamixer}}.<br />
<br />
{{Note|Se si utilizza una scheda video ATI ed un kernel linux &gt;&#61;3.0, un modulo del kernel necessario risulterà disabilitato. Consultare [[ATI#HDMI_Audio]].}}<br />
<br />
Collegare il pc al monitor tramite cavo HDMI ed abilitare il display con un tool come {{ic|xrandr}} o {{ic|arandr}}. Ad esempio <br />
<br />
{{bc|$ xrandr # list outputs<br />
$ xrandr --output DVI-D_1 --mode 1024x768 --right-of PANEL # enable output}}<br />
<br />
Interrogare i dispositivi di riproduzione:<br />
<br />
{{hc|$ aplay -l|<br />
**** List of PLAYBACK Hardware Devices ****<br />
card 0: NVidia [HDA NVidia], device 0: ALC1200 Analog [ALC1200 Analog]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0<br />
card 0: NVidia [HDA NVidia], device 1: ALC1200 Digital [ALC1200 Digital]<br />
Subdevices: 1/1<br />
Subdevice #0: subdevice #0<br />
card 0: NVidia [HDA NVidia], device 3: NVIDIA HDMI [NVIDIA HDMI]<br />
Subdevices: 0/1<br />
Subdevice #0: subdevice #0<br />
}}<br />
Ora che abbiamo le informazioni per la periferica HDMI, si può fare una prova. Nell'esempio che segue, 0 è il numero della scheda e 3 è il numero del dispositivo.<br />
<br />
{{bc|$ aplay -D plughw:0,3 /usr/share/sounds/alsa/Front_Center.wav}}<br />
<br />
Se aplay non restituisce alcun errore, ma ancora non si sente alcun suono, "riavviare" il ricevitore, il monitor o la tv. Poichè l'interfaccia HDMI esegue un rigido controllo sulla connessione, potrebbe aver recepito che prima non c'era alcun flusso audio, ed ha quindi disabilitato la decodifica audio.<br />
<br />
Se la verifica ha esito positivo, modificare/creare {{ic|~/.asoundrc}} per impostare HDMI come dispositivo audio predefinito e riavviare; ora l'audio dovrebbe funzionare.<br />
<br />
{{hc|~/.asoundrc|<br />
pcm.!default {<br />
type hw<br />
card 0<br />
device 3<br />
}<br />
}}<br />
<br />
Se la configurazione precedente non dovesse funzionare, provare con:<br />
<br />
{{hc|~/.asoundrc|<br />
defaults.pcm.card 0<br />
defaults.pcm.device 3<br />
defaults.ctl.card 0<br />
}}<br />
<br />
===HP TX2500===<br />
<br />
Aggiungere queste due righe in {{ic|/etc/modprobe.d/modprobe.conf}}:<br />
options snd-cmipci mpu_port=0x330 fm_port=0x388<br />
options snd-hda-intel index=0 model=toshiba position_fix=1<br />
<br />
options snd-hda-intel model=hp (works for tx2000cto)<br />
<br />
===Salto di suono durante la riproduzione MP3===<br />
<br />
Se si hanno salti di suono durante la riproduzione di file MP3 e se al computer sono collegati di più di 2 altoparlanti (o più di due), eseguire {{Ic | alsamixer}} e disabilitare i canali degli altoparlanti che '''NON''' si posseggono (ad esempio, disabilitare il canale dell’altoparlante centrale se non si dispone di un altoparlante centrale).<br />
<br />
===Cuffia USB e schede audio esterne USB===<br />
<br />
Se si utilizza una cuffia USB con ALSA, si può provare ad usare {{AUR|asoundconf}} (attualmente disponibile solo da [[AUR]]) per impostare l'auricolare come uscita audio principale. Prima di proseguire, assicurarsi di avere abilitato il modulo usb audio ({{ic|modprobe snd-usb-audio}}).<br />
#modprobe snd-usb-audio<br />
<br />
Se si vuole, si può aggiungere quanto segue al file {{ic|/etc/rc.conf}}<br />
<br />
# asoundconf is-active<br />
# asoundconf list<br />
# asoundconf set-default-card <chosen soundcard><br />
<br />
==== Suono gracchiante su dispositivi USB ====<br />
<br />
Se si riscontra audio gracchiante su dispositivi USB, si può provare ad impostare il modulo snd-usb-audio per minime latenze.<br />
Aggiungere questo codice a {{ic|/etc/modprobe.d/modprobe.conf}} :<br />
options snd-usb-audio nrpacks=1<br />
Fonte: http://alsa.opensrc.org/Usb-audio#Tuning_USB_devices_for_minimal_latencies<br />
<br />
==== Inserimento a caldo di una scheda audio USB ====<br />
<br />
Per fare in modo che una scheda audio USB diventi al suo inserimento automaticamente la scheda principale, si può utilizzare la seguente regola di udev (ad esempio aggiungendo queste righe al file {{ic|/etc/udev/rules.d/00-local.rules}}):<br />
<br />
{{bc|1=KERNEL=="pcmC[D0-9cp]*", ACTION=="add", PROGRAM="/bin/sh -c 'K=%k; K=$${K#pcmC}; K=$${K%%D*}; echo defaults.ctl.card $$K > /etc/asound.conf; echo defaults.pcm.card $$K >>/etc/asound.conf'"<br />
KERNEL=="pcmC[D0-9cp]*", ACTION=="remove", PROGRAM="/bin/sh -c 'echo defaults.ctl.card 0 > /etc/asound.conf; echo defaults.pcm.card 0 >>/etc/asound.conf'"}}<br />
<br />
===Errore 'Unknown hardware' dopo aggiornamento Kernel===<br />
<br />
I seguenti messaggi possono essere visualizzati durante l'avvio di ALSA, dopo l'aggiornamento del kernel:<br />
Unknown hardware "foo" "bar" ...<br />
Hardware is initialized using a guess method<br />
/usr/bin/alsactl: set_control:nnnn:failed to obtain info for control #mm (No such file or directory)<br />
<br />
oppure<br />
Found hardware: "HDA-Intel" "VIA VT1705" "HDA:11064397,18490397,00100000" "0x1849" "0x0397"<br />
Hardware is initialized using a generic method<br />
/usr/bin/alsactl: set_control:1328: failed to obtain info for control #1 (No such file or directory)<br />
/usr/bin/alsactl: set_control:1328: failed to obtain info for control #2 (No such file or directory)<br />
/usr/bin/alsactl: set_control:1328: failed to obtain info for control #25 (No such file or directory)<br />
/usr/bin/alsactl: set_control:1328: failed to obtain info for control #26 (No such file or directory)<br />
<br />
E’ sufficiente memorizzare nuovamente le impostazioni del mixer di ALSA (da root):<br />
# alsactl -f /var/lib/alsa/asound.state store<br />
<br />
Potrebbe essere necessario configurare nuovamente ALSA tramite {{ic|alsamixer}}<br />
<br />
===HDA Analyzer===<br />
<br />
Se la mappatura dei pin (spinotti) audio non corrisponde ma ALSA funzione regolarmente, si può provare HDA Analyzer – un’interfaccia grafica (GUI) in pyGTK2 per il controllo dell’audio HD, disponibile nel [http://www.alsa-project.org/main/index.php/HDA_Analyzer wiki di ALSA].<br />
Provare anche ad utilizzare la sezione Widget Control per gestire i PIN, impostando IN per il microfono e OUT per le cuffie. Potrebbe essere una buona idea fare riferimento ai valori di default (Config Defaults).<br />
<br />
{{Note|<br />
NOTA: Lo script è incompatibile con python3 (che è attualmente fornito con ArchLinux) ma si può comunque provare ad utilizzarlo. La soluzione è: aprire “run.py”, trovare tutte le ricorrenze "python" (2 ricorrenze - una nella prima riga, e la seconda nell'ultima riga) e sostituirle con "python2".<br />
<br />
NOTA 2: Lo script richiede i privilegi di root, ma non funziona attraverso su/sudo. Eseguirlo quindi tramite {{ic|kdesu}} o {{ic|gksu}}.}}<br />
<br />
===ALSA con SDL===<br />
Se non si riesce ad ottenere alcun suono tramite SDL, ma ALSA non può essere selezionato nella configurazione dell'applicazione, provare ad impostare la variabile d'ambiente SDL_AUDIODRIVER su "alsa"<br />
{{bc|export SDL_AUDIODRIVER<nowiki>=</nowiki>alsa}}<br />
<br />
=== Workaround in caso di volume basso ===<br />
<br />
Se ci si dovesse ritrovare con un audio molto basso nonostante la massimizzazione del volume delle casse/cuffie, si può fare un tentativo col plugin softvol. Aggiungere il seguente codice al file {{ic|/etc/asound.conf}}.<br />
<br />
{{bc|<nowiki><br />
pcm.!default {<br />
type plug<br />
slave.pcm "softvol"<br />
}<br />
<br />
pcm.softvol {<br />
type softvol<br />
slave {<br />
pcm "dmix"<br />
}<br />
control {<br />
name "Pre-Amp"<br />
card 0<br />
}<br />
min_dB -5.0<br />
max_dB 20.0<br />
resolution 6<br />
}<br />
</nowiki>}}<br />
<br />
{{Note|Potrebbe essere necessario riavviare l'intero sistema, in quanto il semplice riavvio del demone alsa potrebbe non caricare la nuova configurazione. Se ciò non dovesse avvenire anche dopo un riavvio del sistema, provare a modificare {{ic|plug}} in {{ic|hw}} nel codice precedente.}}<br />
<br />
Una volta che le modifiche saranno state caricate, si noterà una nuova sezione {{ic|Pre-Amp}} in alsamixer. È possibile regolare i volumi da lì.<br />
{{Note| L'impostazione di valori eccessivamente alti in {{ic|Pre-Amp}} potrebbe causare una distorsione del suono, accertarsi quindi di regolarli con cura.}}<br />
=== "Schiocco" al resume dopo una sospensione ===<br />
<br />
Potrebbe capitare di udire un suono simile ad uno schiocco quando si effettua il resume di un sistema dalla sospensione. Questò può essere evitato modificando il file {{ic|/etc/pm/sleep.d/90alsa}} e rimuovendo la riga {{ic|aplay -d 1 /dev/zero}}<br />
==Configurazioni d'esempio==<br />
Consultare [[Advanced Linux Sound Architecture/Example Configurations (Italiano)]]<br />
<br />
== Link esterni ==<br />
Altre informazioni possono essere trovate ai seguenti link:<br />
<br />
* [http://www.mjmwired.net/kernel/Documentation/sound/alsa/ALSA-Configuration.txt Advanced ALSA module configuration]<br />
* [http://alsa.opensrc.org/Main_Page Unofficial ALSA Wiki]<br />
* [https://bbs.archlinux.org/viewtopic.php?id=36815 HOWTO: Compile driver from svn]</div>Luca VR