Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "rafbor/Prova1"
Differenze tra le versioni 6 e 7
Versione 6 del 21/03/2025 14.30.11
Dimensione: 11508
Autore: rafbor
Commento:
Versione 7 del 04/04/2025 07.45.42
Dimensione: 5227
Autore: rafbor
Commento:
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 1: Linea 1:
## page was renamed from Grub2
Linea 3: Linea 2:
#language it
<<BR>>
<<Indice(depth=1)>>
<<Informazioni(forum="http://forum.ubuntu-it.org/viewtopic.php?t=82907"; rilasci="24.04 22.04 20.04 18.04")>>
#LANGUAGE it
Linea 8: Linea 4:
= Introduzione =

'''GRUB''' è il [[http://it.wikipedia.org/wiki/Boot_loader|boot loader]] predefinito su Ubuntu. Gestisce e rende possibile l'avvio del sistema operativo. Nel caso sul disco siano presenti più sistemi (''multiboot''), permette di scegliere quale sistema operativo avviare attraverso l'apposito '''menù'''.

= Panoramica =

Se Ubuntu è installato in dual boot con altri sistemi, a ogni avvio apparirà per qualche secondo il tipico menù di '''GRUB'''.

{{{#!wiki important
Se in Ubuntu 22.04, a causa del bug <<Bug(ubuntu 1955109)>>, non venissero mostrate le voci di menù relative agli altri sistemi operativi, consultare la [[/Errori#Problema_Os-Prober_con_Ubuntu_22.04|seguente pagina]].
{{{#!html
<hr class="portale" />
<h1 class="titoloPortale">Programmazione</h1>
Linea 20: Linea 9:
Solitamente, quando Ubuntu è l'unico sistema presente nel computer, all'avvio '''GRUB''' viene nascosto. Per mostrare '''GRUB''', in modo da accedere al suo menu, occorre:
 * '''sistemi con UEFI''': premere il tasto '''Esc''' subito dopo l'accensione del computer;
 * '''sistemi BIOS''': premere il tasto '''Shift''' (Maiusc) subito dopo l'accensione del computer.
<<Include(NuoviStrumentiWiki/ForumProgrammazione)>>
<<Indice>>
<<BR>>
Linea 24: Linea 13:
=== Se GRUB non compare === = Ambienti di sviluppo =
Linea 26: Linea 15:
L'altro modo è modificare il file di configurazione di '''GRUB''' in modalità amministratore con l'editore [[Ufficio/EditorDiTesto/Nano|nano]]{{{
sudo nano /etc/default/grub
}}}
 0. cercare la direttiva `GRUB_TIMEOUT_STYLE` e cambiare il suo valore a `GRUB_TIMEOUT_STYLE=menu`
 0. cercare la direttiva `GRUB_TIMEOUT` e cambiare il suo valore a `GRUB_TIMEOUT=5`
 0. salvare le modifiche tramite la combinazione di tasti '''Ctlr+O''' e chiudere il file con '''Ctrl+X'''
 0. da [[AmministrazioneSistema/Terminale|terminale]], aggiornare la sessione di '''GRUB''' dando il comando{{{
sudo update-grub
}}}
In questo modo il menu di '''GRUB''' viene visualizzato per 5 secondi all'avvio.
 * [[/AndroidSdk|Android Sdk]]: installare e configurare '''Android SDK''' su Ubuntu.
 * [[/Aptana|Aptana]]: guida all'installazione di '''Aptana'''.
 * [[/BlazorWebAssembly|Blazor WebAssembly|]]: framework per creare applicazioni web basate su .NET e C#.
 * [[/Cms|CMS]]: guida ai principali Content Management System ('''Joomla''', '''Droopal''', ecc..).
 * [[/Eclipse|Eclipse]]: un ambiente di sviluppo in grado di supportare molti linguaggi di programmazione.
 * [[/Gambas|Gambas]]: come installare e sviluppare facilmente applicazioni in Basic.
 * [[/Lazarus|Lazarus]]: IDE/RAD multipiattaforma basato su !FreePascal in stile Delphi.
 * [[/Mapnik|Mapnik]]: realizzazione di mappe vettoriali.
 * [[/Matlab|Matlab]]: linguaggio Matlab.
 * [[/RenPy|Ren'Py]]: software per la creazione di avventure grafiche in '''Python'''.
 * [[/RootCern|ROOTCern]]: come configurare e installare le librerie '''ROOT''' del '''CERN'''.
 * [[/RubyOnRails|Ruby on Rails]]: come installare e configurare '''Ruby on Rails'''.
 * [[Server/Xampp|XAMPP]]: come configurare un ambiente '''LAMP''' (Linux Apache MySQL PHP).
 * [[/Zope|Zope]]: guida all'installazione di '''Zope3'''.
Linea 37: Linea 30:
<<Anchor(menu_grub)>>
<<Anchor(installazione-sistema)>>
== Menù GRUB ==
= Ambienti di produzione =
Linea 41: Linea 32:
Dal menù è possibile scegliere quale sistema avviare spostandosi con le frecce direzionali e premendo quindi il tasto '''Invio'''.  * [[/NodeJs|NodeJs]]: installazione del framework per l'utilizzo server-side di '''!JavaScript'''.
Linea 43: Linea 34:
||<tablestyle="width:100%" tableclass=noborder ><<Immagine(./grub2.png,500,center)>>|| Con le impostazioni predefinite sono presenti le seguenti voci: <<ElencoTabella(\n * '''Ubuntu''' (sistema predefinito per l'avvio)\n * '''Opzioni avanzate per Ubuntu''' (da cui è possibile avviare il sistema con versioni precedenti del kernel oppure in [[AmministrazioneSistema/ModalitaDiRipristino|modalità ripristino]]) \n * '''Memory test'''\n * Eventuali altre voci per ulteriori sistemi operativi presenti \n * Eventuale voce per impostazioni firmware [[AmministrazioneSistema/Uefi|Uefi]]\n)>><<BR>>Se dopo alcuni secondi non si preme nessun tasto, viene avviato il sistema predefinito. Per avviare quest'ultimo senza attendere la scadenza dei secondi, premere semplicemente '''Invio'''.<<BR>><<BR>>L'esempio in figura riporta il tipico '''GRUB''' di Ubuntu in un'installazione in lingua inglese. Si può notare la presenza di '''Ubuntu''' (posto in cima, quindi impostato per l'avvio) e '''Windows 7''' (evidenziato, quindi selezionato per l'avvio).|| = Editor di codice =
Linea 45: Linea 36:
<<Anchor(installazione-sistema)>>
== GRUB durante l'installazione ==
 * [[Ufficio/EditorDiTesto|Editor di testo]]: breve raccolta dei più diffusi editor di testo.
Linea 48: Linea 38:
{{{#!wiki tip
Se non si ha familiarità con la tipologia delle partizioni in ambito Linux, consultare la guida [[Hardware/DispositiviPartizioni/Partizioni|Partizioni]].
= Shell =

 * [[/CambiareShell|Cambiare shell]]: cosa sono le shell e come abilitare quelle alternative a '''bash'''.
 * [[Programmazione/CambiareShell/Fish|Fish]]: guida all'installazione e all'utilizzo della shell alternativa '''fish'''.

= Linguaggi di programmazione =

 * [[/Script|Script]]: guida di base per la creazione generica di script.
 * [[/LinguaggioBash|Bash e lo scripting]]: nozioni di scripting per '''bash''', la shell predefinita in Ubuntu.
 * [[/CSharp|C#]]: muovere i primi passi con il linguaggio C#.
 * [[/Csound|CSound]]: linguaggio di programmazione per l'audio.
 * [[/Java|Java]]: abilitare Java su Ubuntu.
 * [[/Java/Oracle|Java Oracle]] installare Java Oracle su Ubuntu.
 * [[/ObjectiveCaml|OCaml]]: guida all'installazione dell'interprete, dell'ambiente di sviluppo e alla configurazione degli editor di testo.
 * [[/Php|PHP]]: muovere i primi passi con il linguaggio di programmazione '''PHP'''.
 * [[/Python|Python]]: muovere i primi passi con Python su Ubuntu.
 * [[/Ruby|Ruby]]: installazione del linguaggio di programmazione ad oggetti '''Ruby'''.
 * [[/Rust|Rust]]: installazione e gestione del linguaggio di programmazione '''Rust'''.

= Calcolo distribuito =

 * [[/Boinc|BOINC]]: guida all'installazione e alla configurazione.

= Strumenti e risorse per la programmazione =

 * [[/GnuDebugger|GNU debugger]]: guida all'utilizzo di '''GDB'''.
 * Creazione di pacchetti e altro materiale, per sviluppatori e il [[GruppoSviluppo|Gruppo Sviluppo]]:
  * [[https://ubuntu.com/community/contribute/application-development|Application-Development]] su Ubuntu.com Community.
  * [[https://ubuntu.com/community/contribute/ubuntu-development|Ubuntu-Development]] su Ubuntu.com Community.
  * [[https://wiki.ubuntu.com/UbuntuDevelopment|UbuntuDevelopment]] su Ubuntu.com Wiki.
 * [[/DebootstrapChroot|Guida a debootstrap]]: come creare e gestire un sottosistema virtuale con '''schroot'''.
 * [[/Debug|Operazioni di debug]]: come effettuare il ''debug'' delle applicazioni.

 * Per consultare le migliori guide online sul proprio linguaggio di programmazione preferito, consultare [[http://forum.ubuntu-it.org/viewtopic.php?t=21490|questo topic]].

== Installare da sorgenti ==

 * [[/Checkinstall|Checkinstall]]: guida alla pacchettizzazione di un programma compilato da sorgenti.
 * [[/Compilatori|Compilatori]]: come installare e configurare i compilatori in Ubuntu.
 * [[/CMakeGui|CMakeGui]]: guida all'utilizzo di CMake tramite interfaccia.
 * [[AmministrazioneSistema/InstallareProgrammi/DaSorgenti|Installare da sorgenti]]: installare un programma dal codice sorgente.
 * [[/Pbuilder|Pbuilder]]: guida alla creazione dei pacchetti con '''pbuilder'''.

== Controllo della versione ==

 * [[/Bazaar|Bazaar]]: sistema di controllo di versione distribuito per lo sviluppo di progetti software.
 * [[/Cvs|Cvs]]: gestione base di un repository CVS.
 * [[/Git|Git]]: guida introduttiva alle funzionalità di '''Git'''.
 * [[/Subversion|Subversion]]: installare, configurare e utilizzare un repository con svn.

= Localizzazione =

 * [[/Linguist|Linguist]]: editor per la traduzione di file `.ts` in applicazioni con supporto alle librerie '''Qt'''.
 * [[/Poedit|Poedit]]: semplice editor di file `.po` e `.pot` per la traduzione di applicazioni che includono il supporto a '''Gettext'''.
 * [[Ufficio/Stardict|Stardict]]: guida all'utilizzo del dizionario per le lingue.

{{{#!html
<hr class="portale-footer" />
<hr class="portale" />
Linea 52: Linea 99:
Durante l'installazione del sistema se si utilizzano le [[Installazione/InstallareUbuntu#auto|modalità automatiche]] di partizionamento, Ubuntu verrà automaticamente impostato per essere il sistema predefinito all'avvio. Se l'installazione avviene su di un computer con [[https://it.wikipedia.org/wiki/BIOS|BIOS]] tradizionale (o UEFI in modalità [[Installazione/UEFI#legacy|legacy]]), utilizzando il [[Hardware/DispositiviPartizioni/PartizionamentoManuale|partizionamento manuale]] sarà possibile scegliere "dove" installare '''GRUB'''.<<BR>>
Questo può tornare utile ad es. in un'installazione dual boot di un sistema operativo secondario che non vogliamo come predefinito all'avvio.

{{{#!wiki important
I seguenti passi non funzionano in modalità [[Installazione/UEFI|UEFI]]. Il nuovo sistema installato sarà comunque impostato come predefinito all'avvio.<<BR>>Vedere il [[#predefinito|paragrafo successivo]] per impostare il sistema predefinito all'avvio.
}}}

||<tablestyle="width:100%" tableclass=noborder ><<Immagine(./punti_mount.png,500,center)>>||Nella scelta dei [[Hardware/DispositiviPartizioni/PartizionamentoManuale#tabella|punti di mount]], dal menù a tendina evidenziato in figura, è possibile scegliere la collocazione del boot loader.<<BR>><<BR>>In questo caso è selezionato il disco '''/dev/sda''' e questo farà in modo che il sistema che stiamo installando sarà automaticamente il sistema predefinito all'avvio.<<BR>><<BR>>Dal menù a tendina è anche possibile assegnare specifiche partizioni ('''/dev/sda1''', '''/dev/sda2''', ecc..).<<BR>>Questo viene fatto quando installando un sistema secondario, '''non''' si vuole che sia il predefinito all'avvio. In tal caso si seleziona dal menù a tendina la partizione in cui verrà installato.<<BR>><<BR>>A fine installazione sarà necessario avviare il sistema principale e da [[AmministrazioneSistema/Terminale|terminale]] dare il comando '''sudo update-grub''' in modo che il menù venga aggiornato con il nuovo sistema installato.||

= Comandi =

== Aggiornamento menù Grub ==

Per aggiornare, o tenere aggiornato il menù di Boot Loader, è richiesto sempre nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{
sudo update-grub
}}}

<<Anchor(predefinito)>>
= Sistema predefinito all'avvio =

Se si desidera impostare uno dei sistemi presenti sul disco come sistema principale all'avvio:
 0. Avviare il proprio sistema ed effettuare il login.
 0. Per rendere il sistema come predefinito all'avvio digitare nel [[AmministrazioneSistema/Terminale|terminale]] il seguente comando:{{{
sudo grub-install /dev/sdX
}}}
 modificando `/dev/sdX` con il nome del disco presente, oppure del drive desiderato per l'avvio nei computer in cui è presente più di un disco (es: `/dev/sda`, `/dev/sdb`, `/dev/nvme0n1` ecc.).
 {{{#!wiki tip
Se non si ha familiarità con la tipologia delle partizioni in ambito Linux, consultare la guida [[Hardware/DispositiviPartizioni/Partizioni|Partizioni]].
}}}
 0. Per aggiornare la lista dei sistemi avviabili, digitare nel [[AmministrazioneSistema/Terminale|terminale]]:{{{
sudo update-grub
}}}

Si ricorda, infine, che è importante verificare quale disco sia impostato come primo nell'ordine di boot nel [[Installazione/AvvioSupportoDiInstallazione|BIOS]] (o nelle impostazione del firmware [[Installazione/UEFI|EFI]]).

<<Anchor(windows-predefinito)>>
== Windows predefinito all'avvio ==

 0. Aprire con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] e con un [[Ufficio/EditorDiTesto|editor di testo]] il file `/etc/default/grub`.
 0. Se non si sono fatte modifiche in precedenza si visualizzerà la riga:{{{
GRUB_DEFAULT=0
}}}Lo zero "'''0'''" sta a significare la prima posizione nel menù di '''GRUB''' e dovrà essere sostituito con il valore relativo alla posizione di Windows.<<BR>>Prendendo ad esempio la [[#menu_grub|schermata]] mostrata in precedenza, iniziando a contare da zero da cima in basso, Windows risulta essere nella posizione "'''4'''". Il parametro, in questo caso, dovrebbe essere modificato nel seguente modo:{{{
GRUB_DEFAULT=4
}}}Salvare e quindi chiudere il file.
 0. Per memorizzare la modifica, digitare nel [[AmministrazioneSistema/Terminale|terminale]] il comando:{{{
sudo update-grub
}}}

{{{#!wiki note
Tale metodo può essere utilizzato anche per sistemi Linux, tuttavia così facendo non verrebbe automaticamente aggiornato il menù di '''GRUB''' quando dagli aggiornamenti si riceve un nuovo kernel. Ogni volta occorrerebbe fare login sul sistema in cui è stato modificato il file `/etc/default/grub` e dare il comando '''sudo update-grub'''. Per i sistemi Linux è preferibile utilizzare il [[#predefinito|metodo]] tramite comando '''grub-install'''.
}}}

{{{#!wiki important
Nel caso il menù risultasse per qualche motivo fuori uso consultare la guida sul [[AmministrazioneSistema/Grub/Ripristino|ripristino]].
}}}

= Impostazioni =

Con i [[AmministrazioneSistema/PrivilegiDiAmministrazione|privilegi di amministrazione]] e con un [[Ufficio/EditorDiTesto|editor di testo]] è possibile in base alle proprie esigenze modificare le impostazioni del file `/etc/default/grub`.<<BR>>
Per approfondire si rimanda alla [[AmministrazioneSistema/Grub/FileCartelle#default_grub|seguente pagina]], di seguito si elencano giusto alcuni dei parametri più frequentemente personalizzati:
 * '''GRUB_DEFAULT''': settato su '''0''' avvia il sistema in cima alla lista del menù. Sostituendo '''0''' con '''1''', '''2''', '''3''', ecc.. si selezionano via via le voci di menù sottostanti. Per approfondire consultare la [[AmministrazioneSistema/Grub/FileCartelle#Submenu|seguente guida]].
 * '''GRUB_TIMEOUT''': indica in secondi la durata del conto alla rovescia prima che il menù sparisca e il sistema di default si avvii. Di default è settato su '''10'''.
 * '''GRUB_CMDLINE_LINUX_DEFAULT''': questo parametro è spesso utilizzato per:
  * personalizzare l'avvio del sistema (ad esempio per disabilitare l'animazione di [[AmbienteGrafico/Plymouth|Plymouth]], modificando la voce '''"quiet splash"''' in '''"quiet"''').
  * risolvere alcune problematiche relative alle configurazioni hardware. È consigliato consultare la [[Installazione/ParametriAvvio|relativa guida]].

Ogni modifica apportata ai file di configurazione, affinché abbia effetto, necessita del comando da [[AmministrazioneSistema/Terminale|terminale]]:{{{
sudo update-grub
}}}

= Guide di approfondimento =

 * [[/Ripristino|Ripristino]]: procedure di ripristino di '''GRUB'''.
 * [[/AvviareLive|Avviare Live]]: procedure di avvio Live da file `.iso` senza supporto di memoria esterno.
 * [[/Installazione|Aggiornare a GRUB 2]]: guida per aggiornare da '''GRUB Legacy''' a '''GRUB 2'''.
 * [[/FileCartelle|File e cartelle]]: panoramica sui file di configurazione.
 * [[Installazione/ParametriAvvio|Parametri d'avvio]]: inserimento o modifica dei parametri di avvio al kernel.
 * [[/AggiungereTogliereVoci|Aggiungere e togliere voci]]: modifica delle voci di menù.
 * [[/PersonalizzareVociMenù|Personalizzare voci del menù]]: creazione di voci menù personali.
 * [[/Temi|Temi]]: installare nuovi temi.
 * [[/Errori|Problemi noti]]: panoramica su problemi noti che affliggono '''GRUB 2'''.
 * [[AmministrazioneSistema/GrubCustomizer|Grub Customizer]]: programma con interfaccia grafica per gestire e configurare molte impostazioni e personalizzazioni di GRUB 2.

= Ulteriori risorse =

 * [[https://www.gnu.org/software/grub/|Sito ufficiale di GRUB]]
 * [[https://www.gnu.org/software/grub/manual/grub/grub.html|Manuale ufficiale di GRUB]]
 * [[AmministrazioneSistema/ModalitaDiRipristino|Modalità di ripristino]]
## * [[http://upload.wikimedia.org/wikipedia/commons/c/cf/GRUB_with_ubuntu_and_windows_vista.png|Immagine utilizzata da Wikimedia sotto medesima licenza]]
Linea 143: Linea 100:
CategoryAmministrazione CategoryProgrammazione


Programmazione




Per discutere degli argomenti qui descritti, partecipa alla board Programmazione del forum.


Ambienti di sviluppo

  • Android Sdk: installare e configurare Android SDK su Ubuntu.

  • Aptana: guida all'installazione di Aptana.

  • Blazor WebAssembly: framework per creare applicazioni web basate su .NET e C#.

  • CMS: guida ai principali Content Management System (Joomla, Droopal, ecc..).

  • Eclipse: un ambiente di sviluppo in grado di supportare molti linguaggi di programmazione.

  • Gambas: come installare e sviluppare facilmente applicazioni in Basic.

  • Lazarus: IDE/RAD multipiattaforma basato su FreePascal in stile Delphi.

  • Mapnik: realizzazione di mappe vettoriali.

  • Matlab: linguaggio Matlab.

  • Ren'Py: software per la creazione di avventure grafiche in Python.

  • ROOTCern: come configurare e installare le librerie ROOT del CERN.

  • Ruby on Rails: come installare e configurare Ruby on Rails.

  • XAMPP: come configurare un ambiente LAMP (Linux Apache MySQL PHP).

  • Zope: guida all'installazione di Zope3.

Ambienti di produzione

  • NodeJs: installazione del framework per l'utilizzo server-side di JavaScript.

Editor di codice

Shell

  • Cambiare shell: cosa sono le shell e come abilitare quelle alternative a bash.

  • Fish: guida all'installazione e all'utilizzo della shell alternativa fish.

Linguaggi di programmazione

  • Script: guida di base per la creazione generica di script.

  • Bash e lo scripting: nozioni di scripting per bash, la shell predefinita in Ubuntu.

  • C#: muovere i primi passi con il linguaggio C#.

  • CSound: linguaggio di programmazione per l'audio.

  • Java: abilitare Java su Ubuntu.

  • Java Oracle installare Java Oracle su Ubuntu.

  • OCaml: guida all'installazione dell'interprete, dell'ambiente di sviluppo e alla configurazione degli editor di testo.

  • PHP: muovere i primi passi con il linguaggio di programmazione PHP.

  • Python: muovere i primi passi con Python su Ubuntu.

  • Ruby: installazione del linguaggio di programmazione ad oggetti Ruby.

  • Rust: installazione e gestione del linguaggio di programmazione Rust.

Calcolo distribuito

  • BOINC: guida all'installazione e alla configurazione.

Strumenti e risorse per la programmazione

Installare da sorgenti

  • Checkinstall: guida alla pacchettizzazione di un programma compilato da sorgenti.

  • Compilatori: come installare e configurare i compilatori in Ubuntu.

  • CMakeGui: guida all'utilizzo di CMake tramite interfaccia.

  • Installare da sorgenti: installare un programma dal codice sorgente.

  • Pbuilder: guida alla creazione dei pacchetti con pbuilder.

Controllo della versione

  • Bazaar: sistema di controllo di versione distribuito per lo sviluppo di progetti software.

  • Cvs: gestione base di un repository CVS.

  • Git: guida introduttiva alle funzionalità di Git.

  • Subversion: installare, configurare e utilizzare un repository con svn.

Localizzazione

  • Linguist: editor per la traduzione di file .ts in applicazioni con supporto alle librerie Qt.

  • Poedit: semplice editor di file .po e .pot per la traduzione di applicazioni che includono il supporto a Gettext.

  • Stardict: guida all'utilizzo del dizionario per le lingue.



CategoryProgrammazione