Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "andreas-xavier/prova8"
Differenze tra le versioni 63 e 90 (in 27 versioni)
Versione 63 del 14/01/2023 13.29.05
Dimensione: 16458
Commento:
Versione 90 del 02/10/2024 11.10.17
Dimensione: 9590
Commento:
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 1: Linea 1:
## page was renamed from LogDiSistema
## page was renamed from LogFiles
#format wiki
#LANGUAGE it
Linea 8: Linea 4:
<<Informazioni(forum="https://forum.ubuntu-it.org/viewtopic.php?p=3854842"; rilasci="22.04 20.04")>>  <<Informazioni(forum="http://forum.ubuntu-it.org/viewtopic.php?f=46&t=xxxx"; rilasci="20.04 22.04 24.04")>>
Linea 12: Linea 8:
Uno degli aspetti fondamentali dei sistemi GNU/Linux è il '''logging''', ovvero la registrazione di tutto ciò che accade nel sistema.<<BR>>
Queste informazioni hanno un valore inestimabile per utilizzare il sistema in modo cosciente. Inoltre rientrano fra le le prime risorse che è bene controllare per la risoluzione di eventuali problemi e per la ricerca delle relative soluzioni. Infatti i '''file di log''' memorizzano tutte le informazioni riguardanti lo stato del sistema e delle applicazioni, compresi eventuali errori.

Ubuntu fornisce informazioni essenziali su eventi, operazioni e altre funzionalità attraverso la registrazione di diverse tipologie file di log.<<BR>>
Tranne alcune eccezioni, tali file:
 * sono semplici file di testo in formato [[https://it.wikipedia.org/wiki/ASCII|ASCII]] standard.
 * vengono generalmente memorizzati in `/var/log`, la sottodirectory di sistema appositamente dedicata.
 * possono essere generati dal demone di sistema '''rsyslogd''' oppure creati e gestiti direttamente dalle applicazioni.

Questa guida descrive, fra le varie cose:
 * i principali log di sistema e delle applicazioni, nonché il loro contenuto.
 * con l'aiuto di esempi pratici, alcuni modi per consultare tali log e registri tramite [[AmministrazioneSistema/Terminale|riga di comando]], al fine di estrarre informazioni utili.
 * alcuni usi principali del demone di registrazione del sistema '''rsyslogd''', di '''dmesg''' e di '''journal'''.

= Esaminare i file di registro =

I file di log possono contenere un numero tale di righe che potrebbero risultare scomodi da consultare tramite il comando '''cat''' o con i principali [[Ufficio/EditorDiTesto|editor di testo]]. Quindi è possibile utilizzare alcuni [[AmministrazioneSistema/ComandiBase|comandi di base]], fra cui alcuni più specifici come '''head''' e '''tail'''.
'''!QuickEmu''' è un programma per sistemi GNU/Linux, distribuito con licenza MIT, in grado di creare macchine virtuali tramite '''[[Virtualizzazione/Qemu|Qemu]]''' in maniera 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.
 
= 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]].
Linea 31: Linea 29:
Alcuni file necessitano dei [[AmministrazioneSistema/PrivilegiDiAmministrazione/Sudo|privilegi di amministrazione]] per essere letti.
}}}

== Lettura dei log con i comandi di base ==

Per visualizzare il contenuto di un file con il comando '''less''' è sufficiente postporre il nome del file al comando, con una sintassi simile alla seguente:{{{
less /var/log/auth.log
}}}

Il file `/var/log/auth.log` verrà stampato a schermo. Per consultarlo usare i seguenti tasti:
 * '''le freccie direzionali''' per scorrere il file riga per riga;
 * '''BARRA SPAZIATRICE''' per andare avanti;
 * '''B''' per ndare indietro;
 * '''Q''' per terminare.

La ricerca all'interno dei file di log può risultare lunga e difficoltosa a causa delle loro dimensioni. Tale operazione può essere però semplificata attraverso l'uso combinato dei comandi '''less''' e '''grep''', che si occuperà di ricercare stringhe o pattern definiti dall'utente. Di seguito, come esempio, il comando per cercare il termine «`gnome-keyring`» nel file `/var/log/auth.log`:{{{
grep gnome-keyring /var/log/auth.log | less
}}}

== Esaminare i log con i comandi head e tail ==

I comandi '''head''' e '''tail''' permettono di consultare rispettivamente l'inizio o la fine di un registro.<<BR>>
Come impostazione di predefinita mostrano le prime dieci righe o le ultime dieci di un qualsiasi file di testo.

Ad esempio, per consultare gli eventi meno recenti registrati nel log di autorizzazione, digitare nel [[AmministrazioneSistema/Terminale|terminale]] il comando:{{{
head /var/log/auth.log
}}}
Viceversa, per consultare i più recenti il comando sarà:{{{
tail /var/log/auth.log
}}}

Tuttavia è anche possibile consultare un numero diverso di righe aggiungendo l'opzione '''-n''' ai comandi precedenti. Ad esempio per consultare le prime venticinque righe del file `kern.log` digitare:{{{
head -n 25 /var/log/kern.log
}}}
Per consultare invece le ultime venticinque righe dello stesso file digitare:{{{
tail -n 25 /var/log/kern.log
}}}

== Esaminare log in tempo reale ==

Aggiungendo l'opzione '''-f''' al comando '''tail''' è possibile consultare un registro in tempo reale. Per esempio se si desidera monitorare un server '''apache''', visualizzando i nuovi client che man mano vi effettuano l'accesso, digitare nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{
tail -f /var/log/apache2/access.log
}}}

= Registri di sistema =

Questa sezione della guida si occupa dei cosiddetti log di sistema, ovvero dei file di registro nei quali vengono memorizzati tutti gli eventi che riguardano il funzionamento del sistema, quindi non necessariamente con le altre applicazioni.

Esempi di questo tipo sono quelli relativi ai meccanismi di autorizzazione, ai sevizi di sistema, ai messaggi e ai log di sistema veri e propri, detti anche '''syslog'''.

<<Anchor(autorizzazione)>>
== Log di autorizzazione ==

Tale log traccia l'uso dei sistemi di autorizzazione, cioè tutti i quei meccanismi di Ubuntu che permettono di autorizzare gli utenti attraverso l'inserimento della propria password: il sistema '''[[https://it.wikipedia.org/wiki/Pluggable_authentication_modules|PAM]]''', il comando '''[[AmministrazioneSistema/PrivilegiDiAmministrazione|sudo]]''', l'accesso remoto da shell via '''[[InternetRete/DesktopRemoto/OpenSsh|ssh]]''' ecc.

 * '''Posizione''': `/var/log/auth.log`

 * '''Esempio''': {{{
grep ssh /var/log/auth.log | less
}}}

== Log di debug ==

Il log di debug fornisce i dettagli dei messaggi di debug provenienti dal sistema e dalle applicazioni che si appoggiano al demone '''rsyslogd''' a livello di «DEBUG». Questi messaggi sono utili per il [[https://it.wikipedia.org/wiki/Debugging|debug]] di applicazioni, driver e servizi.

 * '''Posizione''': `/var/log/debug`

 * '''Esempio''': {{{
grep ACPI /var/log/debug | less
}}}

== Log del kernel ==

Il registro di attività del kernel fornisce informazioni dettagliate sullo stato del kernel di Ubuntu. Questi messaggi possono risultare utili, ad esempio, per la risoluzione dei problemi durante l'installazione di un nuovo kernel.

 * '''Posizione''': `/var/log/kern.log`

 * '''Esempio''': {{{
grep CPU /var/log/kern.log | less
}}}

<<Anchor(kernelring)>>
== Kernel ring buffer ==

Il ''kernel ring buffer'' non è un vero e proprio file di log. È piuttosto da considerarsi una struttura di dati che registra costantemente le operazioni del kernel, e che quindi può essere interrogata in caso di necessità (ad esempio per informazioni sui messaggi di avvio del kernel stesso).<<BR>>
Per consultarlo è sufficiente usare il comando '''dmesg'''. Infatti per visualizzare tutti i messaggi inviati dal kernel durante la fase di avvio digitare il seguente comando in un [[AmministrazioneSistema/Terminale|terminale]]:{{{
dmesg | less
}}}

Come per altri comandi, è possibile usarlo insieme al comando '''grep''', allo scopo di ricercare informazioni più specifiche:{{{
dmesg | grep pnp | less
È possibile scaricare il file `.deb` dalla [[https://github.com/quickemu-project/quickemu/releases|pagina ufficiale]]. Tuttavia si consiglia di installare dai PPA per automatizzare la gestione delle dipendenze.
}}}

= Utilizzo =

== Operazioni preliminari ==

 * Per ottenere una lista dei sistemi operativi disponibili e le loro versioni digitare:{{{
quickget list
}}}
##vedere se disponibili opzioni per ridurre ricerca

 * 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 il 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, thread(s) 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 parte grafica (es: SDL, virtio-vga-gl, GL (on), VirGL (on) )
 * ssh: info per ssh
 * Process: nome e PID del processo

== Eliminazione macchina virtuale ==

Per eliminare una macchina virtuale è sufficiente eliminare la relativa cartella.

= Esempi di utilizzo di VM =

== GNU/Linux ==

{{{
quickget linuxmint 21.2 cinnamon
}}}

== Windows ==

{{{
quickget windows 11
}}}

{{{
quickemu --vm windows-11.conf
Linea 125: Linea 100:
All'avvio del sistema, per impostazione predefinita, lo script `/etc/init.d/bootmisc.sh` lancia il comando '''dmesg''' e ne memorizza i risultati all'interno di `/var/log/dmesg`. Tale file può essere consultato come un qualsiasi altro file di registro.
}}}

##Rivedere o correggere da qui

== Log dei messaggi ==

Questo log contiene i messaggi di informazioni delle applicazioni e degli strumenti di sistema. Questo registro è utile per esaminare messaggi di output provenienti dalle applicazioni e dagli strumenti di sistema che sfruttano il servizio '''rsyslogd''' a livello di «INFO».

 * '''Posizione''': `/var/log/messages`

 * '''Esempio''': {{{
grep gconfd /var/log/messages | less
}}}

##/var/log/messages potrebbe essere assente

== Registro di sistema ==

Il registro di sistema contiene la stragrande maggioranze delle delle informazioni relative alla configurazione del proprio sistema Ubuntu. È localizzato in `/var/log/syslog` e contiene tutte le altre informazioni non gestite dagli altri registri.

Può essere utile consultare questo file di registro quando le informazioni desiderate non sono presenti negli altri log citati in precedenza.

== systemd (Journal) ==

Il gestore di servizi '''[[AmministrazioneSistema/Systemd|systemd]]''' ha un proprio strumento di log chiamato '''journal'''. È uno strumento più recente di '''Syslog''', di cui può essere considerato complementare.

In Ubuntu i log di '''journal''' sono conservati nella directory `/var/log/journal`. Può essere configurato tramite il file `/etc/systemd/journald.conf`.

Per visualizzare il log di systemd digitare nel [[AmministrazioneSistema/Terminale|terminale]]:{{{
journalctl
}}}

Può essere utilizzato con numerose opzioni. Per maggiori informazioni digitare il comando:{{{
man journalctl
}}}

= Registri delle applicazioni =

Oltre ai tantissimi log specifici del sistema, è possibile accedere anche ai diversi altri log usati da determinate applicazioni.

Elencando il contenuto della sottodirectory `/var/log` è possibile notare dei file contenenti i nomi di alcune applicazioni installate (`/var/log/apache2` come log del server '''Apache''', `/var/log/samba` per il server '''Samba''', `/var/log/wmware-installer` per '''VMware''' ecc.). Questa sezione riporta alcuni esempi specifici dei registri di applicazioni (in particolare quelle usate in ambito server) e le informazioni in essi contenute.

== Registro di Apache ==

I file di registro di '''apache''' vengono memorizzati nella cartella `/var/log/apache2`. All'interno di questa directory sono presenti due differenti file di log: `/var/log/apache2/access.log` contenente le informazioni riguardanti le richieste di accesso al server, `/var/log/apache2/error.log` contenente i messaggi d'errore.

 * '''Posizione''': `/var/log/apache2/`

 * '''Esempi''': {{{
grep "82.211.81.166" /var/log/apache2/access.log | less
grep "Mac OS X" /var/log/apache2/access.log | less
grep "shutting down" /var/log/apache2/error.log | less
}}}

== Registro del sistema di stampa CUPS ==

Anche '''CUPS''' ('''Common Unix Printing System''') registra la propria attività all'interno di un file di log. Nel caso si debba risolvere qualche problema legato al servizio di stampa di Ubuntu, tale registro potrebbe rivelarsi un buon punto di partenza.

 * '''Posizione''': `/var/log/cups/error_log`

 * '''Esempio''': {{{
grep reload /var/log/cups/error_log | less
}}}

== Log di Rootkit Hunter ==

Il comando '''rkhunter''' effettua dei controlli nel sistema per verificare la presenza di ''backdoor'', ''sniffer'', ''rootkit'' e altre applicazioni indesiderate.

 * '''Posizione''': `/var/log/rkhunter.log`

 * '''Esempio''': {{{
grep WARNING /var/log/rkhunter.log | less
}}}

== Registro di Samba ==

Il server '''Samba''' è solitamente usato per la condivisione di file fra sistemi compatibili. '''Samba''' conserva tre tipi di log differenti nella sottodirectory `/var/log/samba`:

 * `log.nmbd`: annota tutti i messaggi relativi al NETBIOS Samba sopra la funzionalità dell'IP;
 * `log.smbd`: annota tutti i messaggi relativi alle funzionalità del SMB/CIFS Samba;
 * `log.[IP_ADDRESS]`: annota i messaggi relativi alle richieste per i servizi dall'indirizzo IP presente nel nome del file, per esempio `log.192.168.1.1`.

 * '''Posizione''': `/var/log/samba`

 * '''Esempio''': {{{
grep "master browser" /var/log/samba/log.nmbd | less
less /var/log/samba/log.nmbd
grep started /var/log/samba/log.smbd | less
less /var/log/samba/log.192.168.99.99
}}}

== Registro di X ==

Il server grafico '''X''' memorizza le proprie attività all'interno del file `/var/log/Xorg.0.log`.

 * '''Posizione''': `/var/log/Xorg.0.log`

 * '''Esempio''': {{{
grep freetype /var/log/Xorg.0.log | less
}}}

= Log non umanamente intellegibili =

Tra i vari file presenti in `/var/log` ve ne sono alcuni destinati ad essere letti da particolari applicazioni, non necessariamente da esseri umani. Quelli che seguono sono degli esempi di questi particolari tipi di registro.

== Registro degli accessi falliti ==

È possibile visualizzare il log degli accessi falliti al sistema tramite il comando '''faillog'''.

 * '''Posizione''': `/var/log/faillog`

 * '''Esempio''': {{{
faillog
}}}

== Registro degli ultimi accessi ==

È possibile esaminare il registro degli ultimi accessi effettuati tramite il comando '''lastlog'''.

 * '''Posizione''': `/var/log/lastlog`

 * '''Esempio''': {{{
lastlog | less
}}}

== Registro degli accessi ==

È possibile esaminare il registro in questione in modo da conoscere gli utenti attualmente loggati nel sistema attraverso il comando '''who'''.

 * '''Posizione''': {{{/var/log/wtmp}}}

 * '''Esempio''': {{{
who
}}}

##correggere da qui

= System Logging Daemon =

'''rsyslogd''' è un servizio di sistema che ha il compito di gestire, ricevere, reindirizzare (in locale o attraverso la rete) e memorizzare i messaggi di log proveniente dagli altri sottosistemi (servizi, applicazioni ecc.).<<BR>>
In Ubuntu ha da tempo sostituito '''syslogd''', un servizio equivalente precedentemente utilizzato nei sistemi unix-like, con cui è in gran parte retrocompatibile (ad esempio possono essere facilmente esportate le regole di '''syslogd''' in '''rsyslogd''').

== Configurazione ==

Il file `/etc/rsyslog.conf` contiene la configurazione del servizio '''rsyslogd'''. Per informazioni sul contenuto digitare nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{
man /etc/rsyslog.conf
}}}

== Inviare messaggi al registro di sistema ==

Una delle funzionalità del comando '''logger''' permette di inserire messaggi in uno dei log di sistema in modo arbitrario. Questo è uno strumento molto potente che è possibile usare quando è necessario inserire delle informazioni all'interno del log del sistema, oppure all'interno di script amministrativi.

Il seguente esempio mostra un ipotetico utente `mario` che inserisce un messaggio in `/var/log/syslog` dopo una modifica effettuata ad un file di configurazione del sistema:{{{
logger Ho modificato il file /etc/fstab
}}}

Nel file `/var/log/syslog` comparirà una riga simile alla seguente:{{{
Jan 12 23:17:02 localhost mario: Ho modificato il file /etc/fstab
}}}

{{{#!wiki tip
È possibile usare il comando '''logger''' all'interno di [[Programmazione/Script|script]], i cui risultati saranno visibili sia come output nel terminale sia all'interno del file `/var/log/syslog`.
}}}

== Rotazione dei log ==

##completare guida su logrotate e inserire link

A intervalli di tempo predefiniti, i file di log vengono prima ''ruotati'', ovvero automaticamente rinominati e sostituiti da nuovi file, dunque compressi con '''gzip''', allo scopo di ridurre lo spazio necessario alla loro memorizzazione, mantenendoli però sempre disponibili per controlli futuri.

Il comando '''logrotate''' si occupa della rotazione dei file di log. Di norma, '''logrotate''', il cui file di configurazione risiede in {{{/etc/logrotate.conf}}}, viene lanciato a intervalli periodici dal servizio [[AmministrazioneSistema/Cron|cron]].

<<Anchor(risorse)>>
L'installazione di Windows implementa automaticamente la modalità di installazione ''Unattended'', per saltare diversi passaggi (creazione di account online, richiesta dati di diagnostica, invio dati Microsoft ecc.). Inoltre vengono applicate delle patch per VirtIO, ecc.).
}}}

== macOS ==

{{{
quickget macos catalina
}}}

{{{
quickemu --vm macos-catalina.conf
}}}

= Funzionalità avanzate =

== 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 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 avviato il sistema guest, a seconda del tipo di sistema eseguire una delle seguenti azioni:
  * '''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''' scaricabili da [[https://www.spice-space.org/download.html|questo link]].

== CPU, RAM & Disks ==

By default, Quickemu will calculate the number of CPUs cores and RAM to allocate to a VM based on the specifications of your host computer. You can override this default behaviour and tune the VM configuration to your liking.

Add additional lines to your virtual machine configuration:

    cpu_cores="4" - Specify the number of CPU cores allocated to the VM
    ram="4G" - Specify the amount of RAM to allocate to the VM
    disk_size="16G" - Specify the size of the virtual disk allocated to the VM

=== Disk preallocation ===

Preallocation mode (allowed values: off (default), metadata, falloc, full). An image with preallocated metadata is initially larger but can improve performance when the image needs to grow.

Specify what disk preallocation should be used, if any, when creating the system disk image by adding a line like this to your VM configuration.

preallocation="metadata"

=== CD-ROM disks ===

If you want to expose an ISO image from the host to guest add the following line to the VM configuration:

fixed_iso="/path/to/image.iso"

=== Floppy disks ===

If you're like Alan Pope you'll probably want to mount a floppy disk image in the guest. To do so add the following line to the VM configuration:

floppy="/path/to/floppy.img"

== Display resolutions ==

qemu will always default to the primary monitor to display the VM's window. The default resolution that quickemu will request for virtual machines is 1280 x 800. This can be overridden by setting width and height in the VM configuration files or passing --width and --height as command line arguments, for example:

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]].<<BR>>
Per usare la modalità BIOS/Legacy/CSM, è sufficiente aprire con un [[Ufficio/EditorDiTesto|editor di testo]] il file di configurazione della macchina virtuale e aggiungere la seguente riga:{{{
boot="legacy"
}}}

== TPM ==

'''Quickemu''' dispone di un modulo [[https://it.wikipedia.org/wiki/Trusted_Platform_Module|TPM]] emulato, abilitato automaticamente nelle VM con Windows 11.<<BR>>
Per abilitarlo con altri sistemi è sufficiente aprire con un [[Ufficio/EditorDiTesto|editor di testo]] il file di configurazione della macchina virtuale e aggiungere la seguente riga:{{{
tpm="on"
}}}

== Bridged networking ==

To connect your virtual machine to a preconfigured network bridge, add an additional line to your virtual machine configuration:

network="br0"

If you want to have a persistent MAC address for your bridged network interface in the guest VM you can add macaddr to the virtual machine configuration. QEMU requires that the MAC address is in the range: 52:54:00:AB:00:00 - 52:54:00:AB:FF:FF

So you can specify a MAC address with something like this in the VM configuration:

macaddr="52:54:00:AB:51:AE"


= 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 digitare i seguenti comandi:{{{
sudo add-apt-repository ppa:yannick-mauray/quickgui
sudo apt update
sudo apt install quickgui
}}}

Al termine della procedura sarà possibile [[AmbienteGrafico/AvviareProgrammi|avviare]] il programma.
Linea 301: Linea 204:
 * [[https://help.ubuntu.com/community/LinuxLogFiles|Documento originale del wiki internazionale]] (non aggiornato)
 * [[https://wiki.ubuntu.com/FoundationsTeam/Specs/Rsyslogd|Rsyslogd sul wiki internazionale]]
 * [[https://wiki.debian.org/Rsyslog|Rsyslog]] (Wiki Debian internazionale)
 * [[https://guide.debianizzati.org/index.php/Old:Configurare_un_server_Syslog_su_Debian|Server Syslog su Debian]]
 * [[https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/system_administrators_guide/ch-viewing_and_managing_log_files|Viewing and Managing Log Files]] (Documentazione Red Hat)
 * [[https://www.linuxfoundation.org/blog/blog/classic-sysadmin-viewing-linux-logs-from-the-command-line|Viewing Linux Logs from the Command Line]]
 * [[https://manpages.ubuntu.com/manpages/bionic/man1/journalctl.1.html|journalctl]] (pagina man)
 * [[https://github.com/quickemu-project/quickemu|Sito del progetto]]
 * [[https://github.com/quickemu-project/quickemu/wiki/|Wiki ufficiale]] (in inglese)
Linea 310: Linea 208:
##CategoryAmministrazione ##CategoryVirtualizzazione 


Attenzione! Questa è una Pagina di prova. Le informazioni riportate potrebbero essere incomplete, errate e potenzialmente pericolose. Per contribuire alla realizzazione di questa pagina consultare la discussione di riferimento.

Guida verificata con Ubuntu: 20.04 22.04 24.04

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

QuickEmu è un programma per sistemi GNU/Linux, distribuito con licenza MIT, in grado di creare macchine virtuali tramite Qemu in maniera 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 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.

Installazione

Per Ubuntu e derivate sono disponibili dei PPA che permettono l'installazione semplificata di QuickEmu.

  1. Digitare nel terminale il seguente comando:

    sudo apt-add-repository ppa:flexiondotorg/quickemu
  2. Installare il pacchetto quickemu.

È possibile scaricare il file .deb dalla pagina ufficiale. Tuttavia si consiglia di installare dai PPA per automatizzare la gestione delle dipendenze.

Utilizzo

Operazioni preliminari

  • Per ottenere una lista dei sistemi operativi disponibili e le loro versioni digitare:

    quickget list 

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

  1. Per creare una macchina virtuale digitare nel 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.

  2. Prendere nota dell'output del comando precedente, necessario ad avviare la macchina virtuale.
  3. Per avviare la macchina virtuale digitare il 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, thread(s) 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 parte grafica (es: SDL, virtio-vga-gl, GL (on), VirGL (on) )
  • ssh: info per ssh
  • Process: nome e PID del processo

Eliminazione macchina virtuale

Per eliminare una macchina virtuale è sufficiente eliminare la relativa cartella.

Esempi di utilizzo di VM

GNU/Linux

quickget linuxmint 21.2 cinnamon

Windows

quickget windows 11

quickemu --vm windows-11.conf

L'installazione di Windows implementa automaticamente la modalità di installazione Unattended, per saltare diversi passaggi (creazione di account online, richiesta dati di diagnostica, invio dati Microsoft ecc.). Inoltre vengono applicate delle patch per VirtIO, ecc.).

macOS

quickget macos catalina

quickemu --vm macos-catalina.conf

Funzionalità avanzate

SPICE

È possibile utilizzare i driver SPICE per la macchina virtuale, che permettono di gestire automaticamente fra host e guest appunti condivisi, trasferimento di file, reindirizzamento dei dispositivi USB e risoluzione automatica dello schermo.

  1. Per abilitare questa funzionalità è sufficiente aggiungere --display spice al comando quickemu come nel seguente esempio:

    quickemu --vm ubuntu-22.04.conf --display spice
  2. Una volta avviato il sistema guest, a seconda del tipo di sistema eseguire una delle seguenti azioni:
    • Ubuntu: installare i pacchetti spice-vdagent e 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 scaricabili da questo link.

CPU, RAM & Disks

By default, Quickemu will calculate the number of CPUs cores and RAM to allocate to a VM based on the specifications of your host computer. You can override this default behaviour and tune the VM configuration to your liking.

Add additional lines to your virtual machine configuration:

  • cpu_cores="4" - Specify the number of CPU cores allocated to the VM ram="4G" - Specify the amount of RAM to allocate to the VM disk_size="16G" - Specify the size of the virtual disk allocated to the VM

Disk preallocation

Preallocation mode (allowed values: off (default), metadata, falloc, full). An image with preallocated metadata is initially larger but can improve performance when the image needs to grow.

Specify what disk preallocation should be used, if any, when creating the system disk image by adding a line like this to your VM configuration.

preallocation="metadata"

CD-ROM disks

If you want to expose an ISO image from the host to guest add the following line to the VM configuration:

fixed_iso="/path/to/image.iso"

Floppy disks

If you're like Alan Pope you'll probably want to mount a floppy disk image in the guest. To do so add the following line to the VM configuration:

floppy="/path/to/floppy.img"

Display resolutions

qemu will always default to the primary monitor to display the VM's window. The default resolution that quickemu will request for virtual machines is 1280 x 800. This can be overridden by setting width and height in the VM configuration files or passing --width and --height as command line arguments, for example:

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à EFI.
Per usare la modalità BIOS/Legacy/CSM, è sufficiente aprire con un editor di testo il file di configurazione della macchina virtuale e aggiungere la seguente riga:

boot="legacy"

TPM

Quickemu dispone di un 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"

Bridged networking

To connect your virtual machine to a preconfigured network bridge, add an additional line to your virtual machine configuration:

network="br0"

If you want to have a persistent MAC address for your bridged network interface in the guest VM you can add macaddr to the virtual machine configuration. QEMU requires that the MAC address is in the range: 52:54:00:AB:00:00 - 52:54:00:AB:FF:FF

So you can specify a MAC address with something like this in the VM configuration:

macaddr="52:54:00:AB:51:AE"

Interfaccia grafica

Quickgui è un progetto separato scritto con flutter per utilizzare QuickEmu attraverso una semplice interfaccia grafica. Per Ubuntu viene distribuito tramite PPA.

Per installarlo digitare i seguenti comandi:

sudo add-apt-repository ppa:yannick-mauray/quickgui
sudo apt update
sudo apt install quickgui

Al termine della procedura sarà possibile avviare il programma.

Ulteriori risorse


CategoryHomepage