Difference between revisions of "VMware (Italiano)"

From ArchWiki
Jump to: navigation, search
m (changed category)
m (fix i18n box)
Line 1: Line 1:
 
[[Category:Virtualization (Italiano)]]
 
[[Category:Virtualization (Italiano)]]
{{i18n|Installing VMware}}
+
{{i18n|VMware}}
  
 
{{Article summary start|Sommario}}
 
{{Article summary start|Sommario}}

Revision as of 10:51, 26 September 2011

This template has only maintenance purposes. For linking to local translations please use interlanguage links, see Help:i18n#Interlanguage links.


Local languages: Català – Dansk – English – Español – Esperanto – Hrvatski – Indonesia – Italiano – Lietuviškai – Magyar – Nederlands – Norsk Bokmål – Polski – Português – Slovenský – Česky – Ελληνικά – Български – Русский – Српски – Українська – עברית – العربية – ไทย – 日本語 – 正體中文 – 简体中文 – 한국어


External languages (all articles in these languages should be moved to the external wiki): Deutsch – Français – Română – Suomi – Svenska – Tiếng Việt – Türkçe – فارسی

Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary wiki Template:Article summary wiki Template:Article summary end

Questo articolo tratta l'installazione di VMware in Arch, si potrebbe essere invece interessati a Installare Arch Linux in VMware.

Installazione

VMware Server

1. Installare vmware-server da AUR.

2. Installare vmware-server-console. Altrimenti, su Arch64, può essere installata la versione bin32.

3. Scaricare l'immagine dal sito VMWare.

4. Copiare l'immagine nella cartella di compilazione.

5. Completare l'operazione di compilazione.

VMware Workstation/Player

Nota: VMware Workstation/Player non potrà essere gestito con pacman se i file non saranno installati con esso.
Suggerimento: Per un kernel 2.6.39 è possibile usare questo script automatizzato. Sarà necessario eseguire ugualmente i passaggi 3, 4, 5, (6), 10 e 11.

Per installare VMware Workstation o Vmware Player su un host usando un bundle:

1. Scaricare VMware Workstation o VMware Player (si può provare anche una versione di test (Beta/RC)).

2. Creare a fake System V init style directory for VMware e iniziare l'installazione (il flag Template:Codeline usa il terminale invece dell'interfaccia grafica, ed è necessario Template:Codeline per selezionare the Template:Codeline runlevels directory):

# mkdir -p /etc/rc.d/vmware.d/{rc{0..6},init}.d
# chmod +x VMware-<edition>-<version>.<release>.<architecture>.bundle
# ./VMware-<edition>-<version>.<release>.<architecture>.bundle --console --custom

3. Leggere e accettare la EULA per continuare.

4. Accettare le impostazioni di base finché non viene richiesto Template:Codeline – Definirlo in:

/etc/rc.d/vmware.d/

5. Impostare gli script dei Template:Codeline in:

/etc/rc.d

6. (Opzionale) Immettere il percorso della cartella per il Debugger Virtuale Integrato per Eclipse se questo è installato.

Configurazione

Patch per VMware

Suggerimento: C'è un pacchetto chiamato Template:Package AUR in AUR che ha lo scopo di tentare l'automatizzazione del processo di patch.

kernel 3.1rc

In aggiunta alla patch del kernel 3.0 si può applicare solo questa.

kernel 3.0

C'è un insieme di patch che gestisce correttamente il kernel 3.0 qui. Sono reperibili anche come patch per VMware in AUR.

Il modulo VMware di build non gestisce correttamente la stringa della versione del nuovo modulo che ha solo due parti (3.x) invece di tre (2.6.xx). Può essere di aiuto anche questa discussione.

La soluzione più facile per questo punto è di eseguire la patch di due binari:

# sed 's/\x83\xe8\x03\x83\xf8\x01\x0f\x96\xc0/\x83\xe8\x02\x83\xf8\x01\x0f\x96\xc0/' -i /usr/lib/vmware/lib/libvmware-modconfig-console.so/libvmware-modconfig-console.so
# sed 's/\x83\xe8\x03\x83\xf8\x01\x0f\x96\xc0/\x83\xe8\x02\x83\xf8\x01\x0f\x96\xc0/' -i /usr/lib/vmware/lib/libvmware-modconfig.so/libvmware-modconfig.so

kernel 2.6.39

$ mkdir /tmp/vmware && cd /tmp/vmware
# for t in /usr/lib/vmware/modules/source/*.tar; do tar xf $t; mv $t{,.original}; done
# wget -qO- http://kaslit.com/downloads/vmware2.6.39fixed.patch | patch -Np1
# for d in *-only; do tar cf /usr/lib/vmware/modules/source/${d/%-only/}.tar $d; done

Un membro della comunità di Fedora qui ha fatto l'upload della cartella Template:Filename in una tarball compressa.

kernel 2.6.37 e .38

cd /tmp
$ wget http://www.russo79.com/vmware7.1.3-patch-kernel-2.6.37.sh
$ chmod +x vmware7.1.3-patch-kernel-2.6.37.sh
# ./vmware7.1.3-patch-kernel-2.6.37.sh

kernel 2.6.36

$ cd /tmp
$ wget http://files.archlinux.org.il/vmmon_fix_2.6.36.sh
$ chmod +x vmmon_fix_2.6.36.sh
# ./vmmon_fix_2.6.36.sh

kernel 2.6.35

$ cd /tmp
$ wget http://www.sputnick-area.net/scripts/vmware7.1.1-patch-kernel-2.6.35.bash
$ chmod +x vmware7.1.1-patch-kernel-2.6.35.bash
# ./vmware7.1.1-patch-kernel-2.6.35.bash

Moduli di VMware

7. A questo punto potresti voler installare i moduli. Prima di tutto bisogna di cambiare sia la Template:Codeline in Template:Filename da Template:Filename fino a Template:Filename:

# sed -i "s|/sbin/lsmod|/bin/lsmod|g" /etc/rc.d/vmware

o creare un link simbolico con:

# ln -s /bin/lsmod /sbin/lsmod

8. Ora si possono installare i moduli. È possibile fare questo o lanciando VMware e lasciandoglieli installare con l'interfaccia grafica o eseguendo:

# vmware-modconfig --console --install-all

9. (Opzionale) Aggiungere vmware Alla serie di DEMONI in Template:Filename in modo che il server parta automaticamente all'avvio.

10. Installare ed eseguire HAL:

# pacman -S hal
# rc.d start hal

11. Ora aprire VMware Workstation (Template:Codeline nel terminale) o VMware Player (Template:Codeline nel terminale) per configurarli e usarli!

Nota: Quando viene aggiornato il kernel bisogna ricompilare i moduli di vmware con:
  1. vmware-modconfig --console --install-all
Il fallimento di questa operazione potrebbe risolversi in un crash di sistema quando si aprono le macchine virtuali.

Tips & Tricks

Estrazione del BIOS di VMware

Per estrarre il BIOS di VMware BIOS, che può essere manipolato e usato in seguito con le proprie macchine virtuali:

$ objcopy /usr/lib/vmware/bin/vmware-vmx -O binary -j bios440 --set-section-flags bios440=a bios440.rom.Z
$ perl -e 'use Compress::Zlib; my $v; read STDIN, $v, '$(stat -c%s "./bios440.rom.Z")'; $v = uncompress($v); print $v;' < bios440.rom.Z > bios440.rom

Per usare il BIOS modificato spostarlo in Template:Filename e aggiungere al file Template:Codeline

bios440.filename = "bios440.rom"

Risoluzione dei problemi

Could not open /dev/vmmon: No such file or directory

L'errore completo è:

Could not open /dev/vmmon: No such file or directory.
Please make sure that the kernel module `vmmon' is loaded.

Questo significa che almeno il servizio di VMware vmmon non è partito. Può essere fatto partire eseguendo (come root):

# rc.d start vmware

Kernel headers for version 3.x-xxxx were not found. If you installed them[...]

Installarli con:

# pacman -S linux-headers

La stampa non funziona

Se non è possibile stampare dal sistema operativo ospite ci potrebbero essere problemi con il filtro ThinPrint CUPS (thnucups), che viene usato da VMware. Prima di tutto assicurarsi che il proprio Template:Filename contenga qualcosa del genere:

E [22/Nov/2010:14:10:11 -0800] Unable to execute /usr/lib/cups/filter/thnucups: insecure file permissions (0104755)

In questo caso si potrebbe provare:

# chmod u-sw /usr/lib/cups/filter/thnucups
# rc.d restart cupsd

L'installer non parte

Se si torna subito al prompt quando si apre il file Template:Filename, allore probabilmente è installata una versione vecchia del Template:Codeline e sarebbe opportuno rimuoverla (si può prendere spunto anche dalla sezione Disinstallazione di questo articolo):

# rm -r /etc/vmware-installer

implicit declaration of function ‘iommu_unmap_range’

Se compare il seguente errore mentre vengono compilati i moduli:

...
/tmp/vmware-root/modules/vmmon-only/linux/iommu.c:403:7: erreur: implicit declaration of function ‘iommu_unmap_range’
make[2]: *** [/tmp/vmware-root/modules/vmmon-only/linux/iommu.o] Erreur 1
make[1]: *** [_module_/tmp/vmware-root/modules/vmmon-only] Erreur 2
make[1]: quittant le répertoire « /usr/src/linux-2.6.35-ARCH »
make: *** [vmmon.ko] Erreur 2

Questo errore è dovuto a un cambiamento nelle API del kernel, a un cambio di nome che rimuove il suffisso '_range' dalle funzioni iommu. Si può fare la patch manualmente dei sorgenti rimuovendo il suffisso '_range' con una veloce espressione sed:

$ cd /tmp
$ tar xvf /usr/lib/vmware/modules/source/vmmon.tar
$ sed 's/_range//' -i vmmon-only/linux/iommu.c
# tar cvf /usr/lib/vmware/modules/source/vmmon.tar vmmon-only

Notare che all'aggiornamento del kernel bisognerà ricompilare i moduli vmware con:

# vmware-modconfig --console --install-all

Altrimenti tutto il sistema potrebbe andare in crash quando si prova a far partire le macchine virtuali.

implicit declaration of function ‘kernel_locked’

Se stai ricevendo questo errore significa che usi probabilmente un kernel < 2.6.36 e occorrono alcune attenzioni ulteriori. Attenzione che VMware paga raramente.

Qui ci sono una patch, insieme a molti altri errori di compilazione.

‘struct sock’ has no member named ‘sk_sleep’

Questo errore spesso capita quando si compila il modulo vsock, l'errore appare più o meno così:

make[1]: Entering directory `/usr/src/linux-headers-2.6.35-7-generic-pae'
  CC [M]  /tmp/vmware-root/modules/vsock-only/linux/af_vsock.o
/tmp/vmware-root/modules/vsock-only/linux/af_vsock.c:312: warning: initialization from incompatible pointer type
/tmp/vmware-root/modules/vsock-only/linux/af_vsock.c:359: warning: initialization from incompatible pointer type
/tmp/vmware-root/modules/vsock-only/linux/af_vsock.c: In function ‘VSockVmciStreamConnect’:
/tmp/vmware-root/modules/vsock-only/linux/af_vsock.c:3224: error: ‘struct sock’ has no member named ‘sk_sleep’
/tmp/vmware-root/modules/vsock-only/linux/af_vsock.c:3247: error: ‘struct sock’ has no member named ‘sk_sleep’
...

Per sistemarlo ricorriamo ad un approccio simile a quello mensionato sopra:

cd /tmp
# tar xvf /usr/lib/vmware/modules/source/vsock.tar
# sed 's/\([a-z_]*\)->compat_sk_sleep/compat_sk_sleep(\1)/g' -i vsock-only/linux/af_vsock.c
# tar cvf /usr/lib/vmware/modules/source/vsock.tar vsock-only

Poi bisogna dare:

# vmware-modconfig --console --install-all

Disinstallazione

Controllare il nome del prodotto:

# vmware-installer -l

e disinstallare:

# vmware-installer -u <vmware-product>

Le parti inserite manualmente in Template:Filename devono essere cancellate manualmente. Non dimenticarsi di rimuovere vmware dalla serie di DEMONI in Template:Filename.