<
> <> <> = Introduzione = '''Quickemu''' è un programma per sistemi GNU/Linux, distribuito con licenza MIT (software libero), in grado di creare macchine virtuali tramite '''[[Virtualizzazione/Qemu|Qemu]]''' in maniera estremamente semplice e rapida. È concepito per utenti che fanno un uso massivo di sistemi virtualizzati. Di seguito alcune delle principali caratteristiche: * download e avvio di macchine virtuali con pochi comandi da [[AmministrazioneSistema/Terminale|terminale]]. * ottimizzazione automatica delle macchine virtuali, senza dover configurare Qemu. * supporto a SPICE per condivisione host/guest degli appunti. * accelerazione grafica tramite VirGL. * supporto a UEFI (con o senza Secure Boot) e BIOS Legacy. * possibilità di salvare le macchine vituali nella '''Home''' o su dispositivi di archiviazione esterni. * possibilità di virtualizzare i più disparati sistemi operativi: Windows 10 e 11, le ultime versioni di macOS, tutte le principali distribuzioni GNU/Linux (Arch, Debian, Fedora, Ubuntu, Slackware, ecc.), Android x86, FreeBSD, TrueNAS, !OpenIndiana, FreeDOS, Haiku, ReactOS e tanti altri. {{{#!wiki tip Per conoscere tutte le funzionalità e le nuove implementazioni, nonché le istruzioni per i sistemi guest che necessitano di configurazioni particolari (ad esempio macOS o NixOS), consultare la [[https://github.com/quickemu-project/quickemu/wiki/|guida ufficiale]]. }}} = Installazione = Per Ubuntu e derivate sono disponibili dei PPA che permettono l'installazione semplificata di '''Quickemu'''. 0. Digitare nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{ sudo apt-add-repository ppa:flexiondotorg/quickemu }}} 0. [[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://quickemu|quickemu]]. {{{#!wiki note Sono disponibili altri metodi di installazione, fra cui quello tramite file `.deb` scaricabile dalla [[https://github.com/quickemu-project/quickemu/releases|pagina GitHub ufficiale]]. Tuttavia si consiglia di installare dai PPA se si desidera automatizzare la gestione delle dipendenze. }}} = Utilizzo = == Operazioni preliminari == * Per una panoramica generale del programma, digitare in un [[AmministrazioneSistema/Terminale|terminale]] il comando:{{{ quickget -h }}} * Per ottenere una lista dei sistemi operativi disponibili e le loro versioni digitare:{{{ quickget list }}} È possibile esportare la lista in un file digitando:{{{ quickget list > quickget_list.txt }}} oppure:{{{ quickget --list-csv > quickget_list.csv }}} * Per conoscere le versioni disponibili di un sistema operativo è possibile digitare il comando `quickget` omettendo la release. Verrà quindi riportato un messaggio di errore in cui saranno elencate le versioni disponibili, come nei seguenti esempi:{{{ quickget ubuntu ERROR! You must specify a release. - Releases: 14.04 16.04 18.04 20.04 22.04 23.10 daily-live }}} {{{ quickget macos ERROR! You must specify a release. - Releases: high-sierra mojave catalina big-sur monterey ventura }}} == Scaricamento e avvio VM == Viene descritto di seguito, in linea generale, il funzionamento del programma. 0. Per creare una macchina virtuale digitare nel [[AmministrazioneSistema/Terminale|terminale]] un comando che rispetti la seguente sintassi:{{{ quickget [sistema operativo] [versione] [edizione #se disponibile] }}} Verranno creati un file di configurazione della macchina virtuale e, con le impostazioni di default, una cartella nella '''Home''' dell'utente contenente i file relativi alla macchina virtuale stessa. 0. Prendere nota dell'output del comando precedente, necessario ad avviare la macchina virtuale. 0. Per avviare la macchina virtuale digitare un comando che contenga la seguente sintassi:{{{ quickemu --vm [file di configurazione della macchina] }}} Verrà avviata la macchina virtuale in una nuova finestra. Inoltre verranno stampate nel terminale diverse info utili, fra cui: * Host: sistema host e hostname * CPU: modello di processore * CPU VM: numero di socket, core, threads e GB di RAM utilizzata dalla VM * BOOT: se in uso EFI e secureboot * Disk: nome, path e dimensioni della VM * Boot ISO: nome e path del file ISO * Display: informazioni della parte grafica (es: SDL, virtio-vga-gl, GL (on), VirGL (on) ) * ssh: info per ssh * Process: nome e PID del processo A seconda dei casi, sarà quindi possibile avviare l'installazione del sistema oppure la sessione ''live''. == Cattura del mouse == Per utilizzare il puntatore del mouse solo all'interno della finestra della VM utilizzare la combinazione di tasti '''Ctrl+Alt+G'''.<
> Premere la stessa combinazione per uscire da questa modalità. == Modalità schermo intero == Per visualizzare la macchina virtuale in modalità ''fullscreen'' premere combinazione di tasti '''Ctrl+Alt+F'''.<
> Premere la stessa combinazione per uscire da questa modalità. == Eliminazione macchina virtuale == Per rimuovere una macchina virtuale è sufficiente [[AmministrazioneSistema/ComandiBase#rm_e_rmdir|eliminare]] la relativa cartella salvata nella '''Home''' (o in altro percorso). = Esempi di utilizzo di VM = == GNU/Linux == Di seguito un esempio di download di un sistema GNU/Linux con '''quickget''':{{{ quickget debian 10.13.0 lxde }}} L'output sarà simile al seguente:{{{ quickget debian 10.13.0 lxde Downloading Debian 10.13.0 lxde - URL: https://saimei.ftp.acc.umu.se/cdimage/archive/10.13.0-live/amd64/iso-hybrid/debian-live-10.13.0-amd64-lxde.iso ############################################################################################################################################### 100.0% Checking debian-10.13.0-lxde/debian-live-10.13.0-amd64-lxde.iso with sha512sum... Good! Making debian-10.13.0-lxde.conf - Setting debian-10.13.0-lxde.conf executable To start your Debian virtual machine run: quickemu --vm debian-10.13.0-lxde.conf }}} Per avviare la VM sarà sufficente lanciare il comando riportato alla fine dell'output, ossia:{{{ quickemu --vm debian-10.13.0-lxde.conf }}} == Windows == Per scaricare una macchina virtuale Windows è sufficiente digitare un comando simile al seguente:{{{ quickget windows 10 }}} È inoltre possibile specificare il formato regionale (quello di default è l'inglese internazionale) con un'opzione simile alla seguente:{{{ quickget windows 10 "Italian" }}} Al termine del download sarà possibile avviare la macchina con il comando:{{{ quickemu --vm windows-10.conf }}} Il sistema avrà un utente amministratore locale con le seguenti credenziali (in seguito sarà possibile aggiungerne altri, se lo si desidera): * Username: ''Quickemu'' * Password: ''quickemu'' {{{#!wiki tip L'installazione di Windows implementa automaticamente la modalità di installazione ''Unattended'', per saltare diversi passaggi (creazione di account online, richiesta dati di diagnostica, consenso ID annunci ecc.). Inoltre vengono applicate delle patch per VirtIO. }}} == macOS == Per scaricare un sistema macOS digitare un comando simile al seguente:{{{ quickget macos catalina }}} Al termine del download, digitare il comando indicato nell'output del precedente, a esempio:{{{ quickemu --vm macos-catalina.conf }}} Verrà avviata la macchina virtuale e sarà possibile avviare la procedura di installazione (consultare [[https://support.apple.com/it-it/102662|questa pagina]] se necessario). {{{#!wiki tip Per utilizzare il sistema si consiglia un computer host con almeno: CPU 4 core, 8 GB di RAM (di cui 4 per la VM) e 40 GB di spazio libero nel drive. }}} = Funzionalità avanzate = Molte configurazioni aggiuntive sono possibili semplicemente modificando con un [[Ufficio/EditorDiTesto|editor di testo]] il file di configurazione della macchina virtuale (es.: `ubuntu-22.04-desktop.conf`). == SPICE == È possibile utilizzare i driver [[https://en.wikipedia.org/wiki/Simple_Protocol_for_Independent_Computing_Environments|SPICE]] per la macchina virtuale, che permettono di gestire automaticamente fra host e guest: appunti e cartella condivisi, trasferimento di file, reindirizzamento dei dispositivi USB e risoluzione automatica dello schermo. 0. Per abilitare questa funzionalità è sufficiente aggiungere `--display spice` al comando `quickemu` come nel seguente esempio:{{{ quickemu --vm ubuntu-22.04.conf --display spice }}} 0. Una volta avviata la macchina guest, eseguire una delle seguenti azioni a seconda del tipo di sistema: * '''Ubuntu:''' [[AmministrazioneSistema/InstallareProgrammi|installare]] i pacchetti [[apt://spice-vdagent|spice-vdagent]] e [[apt://spice-webdavd|spice-webdavd]]. * '''Altri sistemi GNU/Linux:''' installare i pacchetti ''spice-vdagent'' e ''spice-webdavd'' con il gestore pacchetti della distribuzione in uso. * '''Windows:''' installare gli '''SPICE Windows guest tools''' e '''Spice WebDAV daemon''', scaricabili da [[https://www.spice-space.org/download.html|questo link]]. == CPU, RAM e Dischi == Di default, '''Quickemu''' imposterà per la VM un numero di core della CPU e un quantitativo di RAM basato sulle specifiche del computer host. È possibile forzare questo comportamento aggiungendo delle righe nel file di configurazione come nel seguente esempio:{{{ cpu_cores="4" ram="4G" disk_size="32G" }}} === Preallocazione del disco === Un'immagine con valori preallocati può essere inizialmente più grande, ma può migliorare le performance se il disco ha successivamente bisogno di maggiore spazio. I valori permessi sono '''off''' (di default), '''metadata''', '''falloc''' e '''full'''.<
> È possibile impostare questi valori aggiungendo al file di configurazione una riga come nel seguente esempio:{{{ preallocation="metadata" }}} === Floppy disk e CD/DVD-ROM === È possibile assegnare un file di immagine `.img` e/o `.iso` salvato nel sistema host, visibile come floppy o disco ottico virtuale per la macchina guest. Aggiungere una o due righe simili alle seguenti nel file di configurazione:{{{ fixed_iso="/percorso/file/immagine.iso" floppy="/percorso/file/floppy.img" }}} == Risoluzione del display == '''Qemu''' assegna sempre la finestra della VM al monitor primario. La risoluzione minima richiesta per la macchina virtuale è di default 1280 x 800. L'impostazione può essere sovrascritta nel file di configurazione, oppure assegnando nel comando per il lancio della VM le opzioni `--width` e `--height` desiderate (larghezza e altezza), come nel seguente esempio:{{{ quickemu --vm ubuntu-22.04-desktop.conf --width 1920 --height 1080 }}} == BIOS e EFI == '''Quickemu''' utilizza come modalità predefinita l'opzione di boot in modalità [[AmministrazioneSistema/Uefi|EFI]].<
> Per usare la modalità BIOS/Legacy/CSM, è sufficiente aggiungere nel file di configurazione della macchina virtuale la seguente riga:{{{ boot="legacy" }}} == TPM == '''Quickemu''' dispone di un [[https://it.wikipedia.org/wiki/Trusted_Platform_Module|modulo TPM]] emulato, abilitato automaticamente nelle VM con Windows 11.<
> Per abilitarlo con altri sistemi è sufficiente aprire con un editor di testo il file di configurazione della macchina virtuale e aggiungere la seguente riga:{{{ tpm="on" }}} == Bridge di rete == È possibile utilizzare la modalità '''Bridge''' in modo tale che venga utilizzata una scheda di rete virtuale. Quest'ultima fungerà quindi da bridge di rete. Alla VM sarà così assegnato un indirizzo IP dalla rete locale (che sostituirà quello del computer host).<
> A tal fine inserire nel file di configurazione la riga:{{{ network="br0" }}} Si può inoltre assegnare un indirizzo MAC all'interfaccia di rete della VM (Qemu richiede che il MAC address sia all'interno del range 52:54:00:AB:00:00/52:54:00:AB:FF:FF). Inserire una riga simile alla seguente:{{{ macaddr="52:54:00:AB:51:AE" }}} == Vecchie distribuzioni GNU/Linux == Per utilizzare vecchie distribuzioni GNU/Linux (del 2016 o precedenti) modificare il file di configurazione sostituendo la riga{{{ guest_os="linux"}}} con la seguente:{{{ linux_old="linux" }}} Questo abiliterà i driver '''VMware SVGA''', con un supporto migliore per i vecchi sistemi. == Creazione di un sistema guest GNU/Linux personalizzato == È possibile creare manualmente una macchina virtuale di un sistema operativo GNU/Linux. 0. Scaricare il file `.iso` della distribuzione desiderata. 0. [[AmministrazioneSistema/ComandiBase#touch|Creare]] un file di configurazione con estensione `.conf` (es.: `la-mia-distro.conf`). 0. Con un [[Ufficio/EditorDiTesto|editor di testo]] inserire le seguenti righe:{{{ guest_os="linux" disk_img="my-custom-linux/disk.qcow2" iso="percorso/del/file.iso" }}} modificando `percorso/del/file.iso` con il nome effettivo del file. 0. Avviare con '''quickemu''' la macchina virtuale:{{{ quickemu --vm la-mia-distro.conf }}} sostituendo `la-mia-distro.conf` con il nome effettivo del file. Verrà avviata la macchina virtuale e sarà possibile installare il sistema, oltre che eventualmente applicare le configurazioni descritte in precedenza. == Lanciatore di una VM == È possibile creare un'apposita icona di avvio per lanciare rapidamente una macchina virtuale creata in precedenza.<
> A tale scopo, con le istruzioni di [[AmbienteGrafico/IconeDiAvvio|questa guida]], creare un file `.desktop` personalizzato che applichi il seguente modello (come esempio un file `windows10.desktop` per Windows 10):{{{ [Desktop Entry] Name=Windows 10 Exec=/home/utente/windows-10.conf # percorso del file di configurazione Type=Application Terminal=false # aprirà solo la finestra della VM senza terminale Comment="Avvia Windows 10 in macchina virtuale con Quickemu" StartupNotify=true Icon=/home/utente/.icons/windows.png # percorso dell'icona }}} = Interfaccia grafica = '''Quickgui''' è un progetto separato, scritto con [[https://flutter.dev/|flutter]], per utilizzare '''Quickemu''' attraverso una semplice interfaccia grafica. Per Ubuntu viene distribuito tramite PPA.<
> Per installarlo seguire i seguenti passaggi: 0. Digitare nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{ sudo add-apt-repository ppa:yannick-mauray/quickgui }}} 0. [[AmministrazioneSistema/InstallareProgrammi|Installare]] il pacchetto [[apt://quickgui|quickgui]]. Al termine della procedura sarà possibile [[AmbienteGrafico/AvviareProgrammi|avviare]] il programma. {{{#!wiki note Si segnala che su Ubunu 20.04 '''Quickgui''' potrebbe non avviarsi a causa della mancanza della libreria libc.so.6 nella versione GLIBC_2.34. }}} = Ulteriori risorse = * [[https://github.com/quickemu-project/quickemu|Sito del progetto]] * [[https://github.com/quickemu-project/quickemu/wiki/|Wiki ufficiale]] (in inglese) ---- CategoryVirtualizzazione