Difference between revisions of "VMware (Italiano)"

From ArchWiki
Jump to: navigation, search
m (fix i18n box)
(Pagina parzialmente riallineata)
Line 29: Line 29:
  
 
{{Nota| VMware Workstation/Player non potrà essere gestito con pacman se i file non saranno installati con esso.}}
 
{{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 [http://kaslit.com/downloads/vmwareinstallshell.sh 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:
 
Per installare VMware Workstation o Vmware Player su un host usando un bundle:
  
'''1.''' Scaricare [http://downloads.vmware.com/d/info/desktop_downloads/vmware_workstation/7_0 VMware Workstation] o [http://downloads.vmware.com/d/info/desktop_downloads/vmware_player/3_0 VMware Player] (si può provare anche [http://communities.vmware.com/community/beta/ws una versione di test (Beta/RC)]).
+
'''1.''' Scaricare [http://downloads.vmware.com/d/info/desktop_downloads/vmware_workstation/8_0 VMware Workstation] o [http://downloads.vmware.com/d/info/desktop_downloads/vmware_player/3_0 VMware Player] (si può provare anche [http://communities.vmware.com/community/beta/ws una versione di test (Beta/RC)]).
  
'''2.''' Creare a fake System V init style directory for VMware e iniziare l'installazione (il flag {{Codeline|--console}}  usa il  terminale invece dell'interfaccia grafica, ed è necessario {{Codeline|--custom}} per selezionare the {{Codeline|System service}} runlevels directory):
+
'''2.''' Avviare l'installazione (il flag {{Codeline|--console}}  usa il  terminale invece dell'interfaccia grafica):
# mkdir -p /etc/rc.d/vmware.d/{rc{0..6},init}.d
+
 
  # chmod +x VMware-<edition>-<version>.<release>.<architecture>.bundle
 
  # chmod +x VMware-<edition>-<version>.<release>.<architecture>.bundle
  # ./VMware-<edition>-<version>.<release>.<architecture>.bundle --console --custom
+
  # ./VMware-<edition>-<version>.<release>.<architecture>.bundle --console
  
'''3.''' Leggere e accettare la EULA per continuare.
+
'''3.''' Leggere & accettare la EULA per continuare.
  
'''4.''' Accettare le impostazioni di base finché non viene richiesto {{Codeline|System service runlevel}} – Definirlo in:
+
'''4.''' Impostare gli script dei {{Codeline|servizi di sistema}} in:
/etc/rc.d/vmware.d/
+
 
+
'''5.''' Impostare gli script dei {{Codeline|servizi di sistema}} in:
+
 
  /etc/rc.d
 
  /etc/rc.d
  
'''6.''' (Opzionale) Immettere il percorso della cartella per il Debugger Virtuale Integrato per Eclipse se questo è installato.
+
'''5.''' (Opzionale) Immettere il percorso della cartella per il Debugger Virtuale Integrato per Eclipse se questo è installato.
 +
 
 +
'''6.''' Ignorare l'errore riguardo "rc*.d style init script". Nell'installer grafico compare un pop-up
  
 
==Configurazione==
 
==Configurazione==
  
 
===Patch per VMware===
 
===Patch per VMware===
 +
{{Nota|VMware Workstation 8 richiede solo le patch per i kernel 3.1rc }}
 
{{Suggerimento|C'è un pacchetto chiamato {{Package AUR|vmware-patch}} in [[AUR]] che ha lo scopo di tentare l'automatizzazione del processo di patch.}}
 
{{Suggerimento|C'è un pacchetto chiamato {{Package AUR|vmware-patch}} in [[AUR]] che ha lo scopo di tentare l'automatizzazione del processo di patch.}}
  
 
====kernel 3.1rc====
 
====kernel 3.1rc====
In aggiunta alla patch del kernel 3.0 si può applicare solo [http://weltall.heliohost.org/wordpress/2011/08/10/vmware-workstation-7-1-4-fix-for-linux-3-1/ questa].
+
Con VMware Workstation 8 è possibile usare [http://88.191.137.189/vmware3.1rc.sh questo] script:
 +
$ cd /tmp
 +
$ wget http://88.191.137.189/vmware3.1rc.sh
 +
$ chmod +x vmware3.1rc.sh
 +
# ./vmware3.1rc.sh
 +
 
 +
Con versioni più vecchie di VMware bisogna usare invece [http://weltall.heliohost.org/wordpress/2011/08/10/vmware-workstation-7-1-4-fix-for-linux-3-1/ questo].
  
 
====kernel 3.0====
 
====kernel 3.0====
C'è un insieme di patch che gestisce correttamente il kernel 3.0 [http://weltall.heliohost.org/wordpress/2011/05/14/running-vmware-workstation-player-on-linux-2-6-39-updated/ qui]. Sono reperibili anche come [http://aur.archlinux.org/packages.php?ID=45952 patch per VMware] in AUR.
+
C'è un insieme di patch che gestisce correttamente il kernel 3.0 [http://weltall.heliohost.org/wordpress/2011/05/14/running-vmware-workstation-player-on-linux-2-6-39-updated/ qui]:
 +
$ cd /tmp
 +
$ wget http://weltall.heliohost.org/wordpress/wp-content/uploads/2011/05/vmware2.6.39patchv3.tar.bz2
 +
$ tar -xvjf vmware2.6.39patchv3.tar.bz2
 +
# ./patch-modules_2.6.39.sh
  
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 [https://bbs.archlinux.org/viewtopic.php?id=123695 questa] discussione.
+
In più, 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 [https://bbs.archlinux.org/viewtopic.php?id=123695 questa] discussione.
  
 
La soluzione più facile per questo punto è di eseguire la patch di due binari:
 
La soluzione più facile per questo punto è di eseguire la patch di due binari:
Line 75: Line 84:
  
 
====kernel 2.6.37 e .38====
 
====kernel 2.6.37 e .38====
  cd /tmp
+
  $ cd /tmp
 
  $ wget http://www.russo79.com/vmware7.1.3-patch-kernel-2.6.37.sh
 
  $ 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
 
  $ chmod +x vmware7.1.3-patch-kernel-2.6.37.sh
Line 94: Line 103:
 
===Moduli di VMware===
 
===Moduli di VMware===
  
'''7.''' A questo punto potresti voler installare i moduli. Prima di tutto bisogna di cambiare sia la  {{Codeline|lsmod binary path}} in {{Filename|/etc/rc.d/vmware}} da {{Filename|/sbin/lsmod}} fino a {{Filename|/bin/lsmod}}:
+
'''8.''' A questo punto potresti voler installare i moduli. Prima di tutto bisogna di cambiare sia la  {{Codeline|lsmod binary path}} in {{Filename|/etc/rc.d/vmware}} da {{Filename|/sbin/lsmod}} fino a {{Filename|/bin/lsmod}}:
  
 
  # sed -i "s|/sbin/lsmod|/bin/lsmod|g" /etc/rc.d/vmware
 
  # sed -i "s|/sbin/lsmod|/bin/lsmod|g" /etc/rc.d/vmware
Line 101: Line 110:
 
  # ln -s /bin/lsmod /sbin/lsmod
 
  # 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:
+
'''9.''' 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
 
  # vmware-modconfig --console --install-all
  
'''9.''' (Opzionale) Aggiungere '''vmware''' Alla serie di  DEMONI in {{Filename|/etc/[[rc.conf]]}} in modo che il server parta automaticamente all'avvio.
+
'''10.''' (Opzionale) Aggiungere '''vmware''' Alla serie di  DEMONI in {{Filename|/etc/[[rc.conf]]}} in modo che il server parta automaticamente all'avvio.
  
'''10.''' Installare ed eseguire [[HAL]]:
+
'''11.''' Installare ed eseguire [[HAL]] '''<u><-- HAL viene ancora usato?</u>''':
 
  # pacman -S hal
 
  # pacman -S hal
 
  # rc.d start hal
 
  # rc.d start hal
  
'''11.''' Ora aprire VMware Workstation ({{Codeline|vmware}} nel terminale) o VMware Player ({{Codeline|vmplayer}} nel terminale) per configurarli e usarli!
+
'''12.''' Ora aprire VMware Workstation ({{Codeline|vmware}} nel terminale) o VMware Player ({{Codeline|vmplayer}} nel terminale) per configurarli e usarli!
  
 
{{Nota|Quando viene aggiornato il kernel bisogna ricompilare i moduli di vmware con:
 
{{Nota|Quando viene aggiornato il kernel bisogna ricompilare i moduli di vmware con:

Revision as of 12:25, 29 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.


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. Avviare l'installazione (il flag Template:Codeline usa il terminale invece dell'interfaccia grafica):

# chmod +x VMware-<edition>-<version>.<release>.<architecture>.bundle
# ./VMware-<edition>-<version>.<release>.<architecture>.bundle --console

3. Leggere & accettare la EULA per continuare.

4. Impostare gli script dei Template:Codeline in:

/etc/rc.d

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

6. Ignorare l'errore riguardo "rc*.d style init script". Nell'installer grafico compare un pop-up

Configurazione

Patch per VMware

Nota: VMware Workstation 8 richiede solo le patch per i kernel 3.1rc
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

Con VMware Workstation 8 è possibile usare questo script:

$ cd /tmp
$ wget http://88.191.137.189/vmware3.1rc.sh
$ chmod +x vmware3.1rc.sh
# ./vmware3.1rc.sh

Con versioni più vecchie di VMware bisogna usare invece questo.

kernel 3.0

C'è un insieme di patch che gestisce correttamente il kernel 3.0 qui:

$ cd /tmp
$ wget http://weltall.heliohost.org/wordpress/wp-content/uploads/2011/05/vmware2.6.39patchv3.tar.bz2
$ tar -xvjf vmware2.6.39patchv3.tar.bz2
# ./patch-modules_2.6.39.sh

In più, 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

8. 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

9. 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

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

11. Installare ed eseguire HAL <-- HAL viene ancora usato?:

# pacman -S hal
# rc.d start hal

12. 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.