Translation(s): English - Italiano


Eseguire programmi Windows

Premessa

Come prima cosa è bene notare che per la maggior parte delle applicazioni Windows esiste un equivalente Debian (quando non ci sono svariati equivalenti tra cui scegliere).

Perciò vale decisamente la pena di controllare tra gli equivalenti delle applicazioni Windows per cercare applicazioni esistenti che soddisfano i propri bisogni.

Soluzioni alternative

In alcuni casi, si potrebbe non riuscire a trovare un sostituto accettabile. Per eseguire la propria applicazione Windows/DOS in Debian esistono tre possibilità.

  1. Wine, che esegue programmi Windows in Linux, convertendo le API.

  2. DOSEMU, un emulatore del DOS, per programmi molto vecchi.

  3. Strumenti di virtualizzazione, come Qemu, VirtualBox (o uno strumento proprietario come VMware).

Wine

Nel caso che la propria applicazione sia stata scritta specificatamente per Windows e non per il DOS, si dovrebbe provare wine. L'acronimo sta in verità per Wine Is Not an Emulator (WINE non è un emulatore), ma è prassi comune riferirsi comunque ad esso come ad un emulatore.

Ciò che Wine fa, in sostanza, è di ingannare il programma e di far credere ad esso di essere eseguito in Windows, quando in realtà è in esecuzione altrove. Esegue ogni istruzione nel file binario del programma con la CPU, ma quando il programma chiama una risorsa che non può essere fornita direttamente dal proprio sistema, Wine intercetta la chiamata ed effettua le chiamate necessarie alle cose appropriate in Debian per portare a termine lo stesso compito.

Piuttosto spesso Wine di fatto imposterà una directory nella directory home dell'utente che sarà l'equivalente dell'unità C quando si esegue il programma Windows. Per esempio, la directory c:\program files verrà creata nella propria directory /home/mioutente/.wine/.../program files e il proprio programma conoscerà questa directory come c:program files. Perciò se ci si chiede dove va a finire il programma in questione dopo che lo si è installato dal CD, ora si saprà che andrà lì. :)

Invocare un programma in Wine, è solitamente semplice quanto eseguire "wine program.exe". Nella maggior parte dei casi, lo si può invocare usando le convenzioni Windows per i nomi, come in "wine a:\setup.exe".

Sfortunatamente non tutti i programmi funzionano sotto Wine, il che ci porta alla terza alternativa.

Installare Wine su Debian Jessie a 64 bit (6 marzo 2014)

(Con sistemi a 32 bit dovrebbe essere molto più semplice e richiede solo "apt-get install wine", poi "winecfg" e quindi "wine programma_windows.exe")

root@debian:~# uname -a

Linux debian 3.12-1-amd64 #1 SMP Debian 3.12.9-1 (2014-02-01) x86_64 GNU/Linux

root@debian:~# lsb_release -a

No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux testing (jessie)
Release: testing
Codename: jessie

(Gli ultimi due passi sono per assicurarsi di avere in esecuzione Jessie a 64 bit)

root@debian:~# dpkg --add-architecture i386

(Quest'ultimo passo può non essere necessario se, per esempio, sono già installati programmi i386 come Steam e Skype; vedere l'output del prossimo passo per verificare se l'architettura i386 è già stata aggiunta)

root@debian:~# dpkg --print-foreign-architectures

i386

root@debian:~# apt-get update

root@debian:~# apt-get install wine

root@debian:~# apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0

root@debian:~# apt-get install p11-kit:i386

normal_user@debian:~# WINEARCH=win32 winecfg

(dichiarare la variabile WINEARCH è necessario solamente la prima volta che winecfg viene eseguito)

normal_user@debian:~# wine windows_program.exe

Dosemu

Se la vostra applicazione è una di quelle applicazioni DOS molto vecchie, c'è una buona probabilità che DOS Emulator la esegua. Semplicemente installare il pacchetto dosemu.

Ci sono diverse restrizioni implicite nella installazione standard di dosemu, che sono mirate alla sicurezza e alla stabilità. Applicazioni che richiedono un accesso diretto alla tastiera, il controllo diretto del video o l'accesso alla memoria DPMI non funzionano se non si modifica il file "/etc/dosemu/conf" e probabilmente anche se non si imposta il bit setuid per "dosemu.bin" con un certo rischio per la stabilità del sistema.

Per maggiori informazioni vedere la pagina DosEmu.

Virtualizzazione

La terza alternativa è l'uso di uno strumento di virtualizzazione. Questo di fatto simula un computer che funziona all'interno del proprio computer. Il programma desiderato viene eseguito letteralmente sotto Windows che viene eseguito in un computer virtuale che è in esecuzione all'interno di Debian. In questo modo è Windows a gestire tutte le richieste del programma e c'è una probabilità molto più alta che il programma funzioni, ma girerà più lentamente che non sotto Windows direttamente. (Questo non è un problema ai giorni nostri.)

Dopo che Windows è stato completamente installato sul computer virtuale, si installa la propria applicazione favorita e tutto è pronto. :)

Per maggiori informazioni vedere la pagina Virtualizzazione di sistemi.