Home > guide, Linux, VirtualBox, virtualizzazione > Aumentare le dimensioni di un disco di VirtualBox

Aumentare le dimensioni di un disco di VirtualBox

ottobre 30, 2007

vbox_logo2_gradient.png

Problemi, problemi e sempre problemi.

Ora non potete più vivere senza il vostro amato VirtualBox con i sistemi operativi a matrioska e siete fieri di aver imbrigliato Windows XP dentro il vostro Linux.

Però può capitare che, sottovalutando le manie espansionistiche di windows oppure sottovalutando le cose da installare, il vostro disco virtuale raggiunga la sua massima dimensione.

Come potete allora incrementarne le dimensioni?

La domanda è semplice, la risposta lo è un pò meno.

Ecco i passi da seguire per risolvere questo ennesimo problema.

  • Create un nuovo disco virtuale usando il Virtual Disk Manager (in VirtualBox selezionate File -> Virtual Disk Manager) delle dimensioni che ritenete più opportune.
  • Scaricate questa immagine ISO System Rescue CD.E’ un livecd che contiene gparted, un utile programma per lavorare con disci e partizioni.
  • Impostate nella vostra macchina virtuale il nuovo disco con le dimensioni “maggiorate” come secondo harddisk e l’immagine ISO come immagine del lettore CD
  • Fate partire la vostra macchina virtuale
  • Al prompt dei comandi digitate startx
  • Dovrebbe partire la modalità grafica. Nel terminale digitate gparted si avvierà così il programma per la gestione delle partizioni
  • In gparted selezionate la partizione del sistema operativo da copiare, tasto destro e selezionate copia o copy
  • Selezionate il secondo harddisk dal menù a discesa in alto a destra
  • Tasto destro sul disco e selezionate incolla o paste
  • GParted vi mostrerà le dimensioni del disco. Trascinate la barra fino a riempire interamente il nuovo disco.
  • Premete il pulsante applica o apply
  • aspettate…
  • aspettate ancora…
  • quando ha finito, tasto destro sul disco e selezionate “Manage Flags”. Impostate il flag per BOOT. questo serve per indicare che il disco è un disco avviabile
  • uscite da gparted e spegnete la vostra macchina virtuale
  • cambiate le impostazioni della vostra macchina virtuale in modo che abbia di nuovo un unico disco (selezionate però quello più grande sta volta) e deselezionate l’immagine ISO da dentro il cd.
  • eseguite la vostra macchina virtuale che ora avrà un disco più grande!

Alla prossima

Daniele

  1. Giovanni
    ottobre 30, 2007 alle 9:45 am

    Grande….ottima idea.

    Ho spulciato più volte il manuale di virtualbox alla ricerca di una feature così.
    In effettu è l’approccio che si usa sulle macchine fisiche……

  2. ottobre 30, 2007 alle 10:10 am

    Esatto Giovanni… la stessa procedura funzionerebbe anche con due dischi fisici reali.

  3. dicembre 1, 2007 alle 6:35 PM

    “siete fieri di aver imbrigliato Windows XP dentro il vostro Linux”.
    Cavolo è la frase che davvero dice tutto

  4. Cybermario
    dicembre 4, 2007 alle 6:37 PM

    Mi sà che sono l’unico sfortunato, ho una VM con XP che non riesco a ingrandire.

    Forse sarà la partizione ntfs o forse gparted che dopo ogni “close” si chiude … bah. 😦

  5. man
    gennaio 25, 2008 alle 2:53 am

    Ciao
    Bel tutorial, proprio quello che mi serviva!
    Ti consiglio però di rivederlo un po’ ché se non hai già un’idea di come si fa tra dischi virtuali ci si confonde un po’.
    Eppoi, perché non usare proprio la gparted live?
    Sysrescuecd a me ci mette diversi minuti per partire e se ne siu usa solo gparted…

    grazie comunque.

  6. febbraio 24, 2008 alle 6:27 PM

    idem, gparted mi da un errore al momento della copia… mha!

  7. mauri
    febbraio 25, 2008 alle 8:29 PM

    Idem, gparted mi da un errore al momento della copia 🙂
    Qualcuno ha qualche idea?
    Grazie

  8. Ivan
    giugno 5, 2008 alle 9:46 PM

    Beh, in realtà conosco un altro paio di metodi, un po’ più low-level, facendo uso intensivo del comando dd.
    Di norma va bene su tuttte le vm e per mutare una “real machine” in “virtual machine”…

    serve un disco “nuovo” del software di virtualizzazione che volete utilizzare, un minimo di analisi sul file dell’hd virtuale appena creato.. un po’ di editing per vedere come è strutturato, quello che ci interessa vedere è dove termina la parte relativa all’header…

    dopo di che tenete solo la parte che definisce il “firmware ” dell’hd virtuale in cui è specificata anche la dimensione, in questo modo qualunque avete l’header del virtualhd… Servono i dati..

    Verificate la dimensone dell’header e fate un dd del vostra vecchia immagine del hd virtuale che volete allargare, nel comando dd specificate lo skip riportando la dimensione esatta dell’header del virtualhd nuovo

    salvato il file dei soli dati facciamo il terzo ed ultimo dd dove accoderemo il file dei dati al file dell’header

    quello che otteniamo è un firmware di un hd delle dimensioni che vogliamo, con di seguito la struttura di partizioni del nostro vecchio hd con i nostri dati.

    ora non ci resta che allargare la partizione o generare altre partizioni.

    Altrimenti usando sempre SystemRescueCd ci si può sbizzarrire con partimage… dd+netcat etc…

    Il metodo descritto è utile in caso di ambienti con più vm da gestire e necessità di automatizzare almeno parzialmente i processi per l’allargamento dei volumi via scripting al di fuori dei sistemi virtualizzati.

    Ciao
    Ivan

  9. cha0s
    ottobre 2, 2008 alle 4:35 PM

    Ottima Guida, tutto funzionante al 100%. Forse l’unica cosa che non viene detta esplicitamente è che prima di fare copia/incolla, bisogna selezionare il secondo hd, creare una new partition, formattandola in ntfs, poi è possibile fare paste…

  10. Andrea
    ottobre 21, 2008 alle 10:09 am

    mmh..la domanda che ho da porvi è un altra..ma se ho creato un hard disk a dimensione dinamica perchè poi non si espande ???

  11. budspanzer
    novembre 12, 2008 alle 5:38 PM

    Per Andrea:
    Non si espande oltre il limite fissato. Significa che tu puoi creare un disco da 200 giga volendo, ma non si espande oltre quel limite.
    Per Daniele: Ottima guida, grazie.

  12. talos
    novembre 30, 2008 alle 7:37 PM

    Ottima Guida, é la prima volta che copio un intero hd su un’altro hd!! Funziona tutto perfettamente, nessun problema 🙂

  13. agosto 30, 2009 alle 3:36 PM

    Grazie, ottima procedura, funziona a perfezione.

  14. settembre 17, 2009 alle 8:55 PM

    Grazie, interessante anche quanto scritto da Ivan: faccio subito una prova, speriamo!

    🙂

  15. Prometeo
    ottobre 22, 2009 alle 10:11 am

    Ottimo metodo! Riguardo a quanto affermato da Man, circa l’utilizzo di gparted in .iso, ritengo comunque consigliabile la System Rescue che mette a disposizione una serie di tools molto più completi.
    Grazie Daniele per i consigli!

  16. Francesco
    novembre 2, 2009 alle 12:31 PM

    > GParted vi mostrerà le dimensioni del disco. Trascinate la barra fino a riempire interamente il nuovo disco.
    Dovendo ospitare anche la partizione di swap sul nuovo disco, è meglio lasciare ~1,5 GB non allocati

  17. gennaio 8, 2010 alle 12:23 PM

    Salve io ho 1 problema, eseguo tutte le operazioni che mi dice daniele ma quando entro dentro gparted il mio hd da 16gb lo vede non allocato..come se non avesse dati invece dentro ci sono e come…dentro a questo hd c’è installato 1 sistema operativo freebsd ma non so come fare per prendere i file e copiarli del’altra parte AIUTATEMIIIIIIIIIIIIIIIIIIIIII

  18. Piera
    Maggio 31, 2010 alle 12:14 PM

    Ciao a tutti.
    Ho un problema. Io ho un Macbook Pro e ho installato Virtual Box con Windows XP. Ora vorrei aumentare la dimensione del mio hard disk virtuale, ma da quello che ho capito il sistema proposto da Daniele vale solo per Linux… O sbaglio?
    E poi non mi è molto chiara questa parte :”Fate partire la vostra macchina virtuale
    Al prompt dei comandi digitate startx. Dovrebbe partire la modalità grafica. Nel terminale digitate gparted si avvierà così il programma per la gestione delle partizioni”.
    Vi chiedo scusa non sono molto esperta ma devo assolutamente risolvere il problema. Potrei reinstallare tutto da capo ma ho installato un sacco di programmini che mi servono per lavoro e dovrei riprenderli tutti…
    Grazie mille dell’attenzione.
    Piera

  19. Daniele
    Maggio 31, 2010 alle 12:49 PM

    Piera,

    La soluzione proposta è la stessa che si utilizza quando vuoi clonare i dati che hai su un disco fisso reale su un altro disco reale.
    La procedura è valida per qualsiasi sistema operativo. Dopo che scarichi quella immagine iso e dici a virtualbox di montarla nel cd virtuale, la fai partire. Una volta che è partita ti ritroverai una schermata nera in cui potrai digitare comandi. Tu digita startx per avviare la modalità grafica e dalla schermata nera passerai alla modalità grafica.. il resto è spiegato

  20. Piera
    giugno 1, 2010 alle 8:55 am

    Ok ci ho provato. Il problema però è che io come immagine ho già Virtualbox Guest additions. Quando quindi faccio partire la macchina virtuale parte direttamente quella… Devo prima rimuoverla? Forse non ho capito io… Sorry…

  21. Daniele
    giugno 1, 2010 alle 8:59 am

    – Avvi virtualbox senza lanciare la macchina virtuale
    – Vai nelle configurazioni della tua macchina virtuale
    – Seleziona il cdrom e digli di montare come immagine invece che quella di VirtualBox Guest Additions l’immagine iso che hai scaricato
    – Avvia la macchina virtuale
    – Quando la macchina virtuale sta partendo e vedi le informazioni iniziali premi F12 per poter selezionare un dispositivo di boot (così da potergli indicare di far partire dal cd invece che dal disco virtuale)

  22. Piera
    giugno 4, 2010 alle 11:54 am

    Graaaaazieeee!!! Risolto!!!! 🙂

  23. Alberto
    settembre 21, 2010 alle 4:51 PM

    Ciao a tutti ho effettuato tutte le operazioni ma quando faccio per partire la mia VM con il mio nuovo ubuntu sul disco nuovo lo schermo diventa nero e rimane lì impiantata…ho messo il flag boot e l’ho messo come primary master…ma niente
    qualche consiglio??
    Notare in questa VM ho fatto degli snapshots ….

  24. Roby
    giugno 15, 2011 alle 10:42 am

    Ottimo Blog ed ottime informazioni!!! unico problema… il disco rimane sempre di quella dimensione 10 gb sia vedendolo tra le proprietà che tramite comando dir, ma se verifico lo stesso disco su gestione dischi di windows, mi compare che il disco ha 50 gb .. .help!!!!

  25. gennaio 5, 2012 alle 2:21 PM

    …e per unire i due dischi virtuali funzia allo stesso modo?

  26. eddy
    gennaio 22, 2012 alle 10:55 am

    ottima guida per profani come il sottoscritto, ben fatta, passo-passo e chiara. mi sembra che in giro ci siano tanti volenterosi che scrivono guide e suggerimenti, purtroppo non sempre con la dovuta chiarezza.
    chi lo fa bene è perché spiega le varie fasi come se avesse di fronte un idiota (come me in campo informatico), quelli più preparati potranno saltare i passaggi per loro pleonastici.
    grazie DANIELE.

    eddy

  27. Adriano
    febbraio 8, 2012 alle 8:01 PM

    Dopo 5 anni è più che mai di attualità! complimenti per la guida. Solo qualche precisazione per gli utenti Mac come me. Funziona solo con system rescue cd e non gparted direttamente perchè quest’ultima è una applicazione solo per linux o win. Bisogna prestare attenzione, nella nuova versione di VB, a selezionare la iso come master e slave secondari gli altri dischi già creati in precedenza (quello piccolo ed il nuovo). Dopodichè tanta pazienza (con macpro core i5, dedicati 2 core e 3gb alla macchina virtuale, su 8, due ore!!) mentre fa la copia e…tutto perfetto.. a proposito..

  28. Adriano
    febbraio 8, 2012 alle 8:02 PM

    ..la partizione nuova è da formattare come msdos…ciau e grazie

  29. Tharnadar
    febbraio 9, 2012 alle 3:27 PM

    Provata oggi ma non ha funzionato.
    Ho una macchina con Win Server 2008 R2, ha due partizioni, la minuscola di sistema e poi C: che devo ampliare.
    Ho creato il nuovo disco con dimensione maggiorata, ho apreto gparted ed ho copiato tutte 2 le partizioni originali mettendo il boot su quella che la aveva nel HD originale ma non è partita la macchina.
    Se metto il boot alla parttizione C: mi dice che non ha il bootmanager.
    Qualche aiuto per piacere?

    Grazie

  30. marzo 8, 2012 alle 11:05 am

    anche a me stesso problema di sopra seguito tutto alla lettera, fatto diverse volte dall’inizio…ma quando riavvio dice che manca il bootmgr…

  31. marzo 9, 2012 alle 11:22 am

    In realtà penso di aver capito dove sta il problema, virtual box oltre a creare la partizione del disco crea anche una mini partizione che se si va a vedere è effettivamente quella che in origine ha il flag di boot.
    Bisgona copiarle tutte e due nel nuovo disco…

  32. marzo 12, 2012 alle 7:00 PM

    come per alberto: ho fatto partire il nuovo HD e, sebbene lo abbia dimensionato a 30Gb, mi mostra, una volta avviato WinXP, una dimensione di 10 Gb.
    c’è una soluzione?

  33. Francesco
    ottobre 6, 2012 alle 10:39 PM

    Salve, cercavo anch’io una soluzione a questo problema e mi sono imbattuto in una guida che vi segnalo: http://www.ilsoftware.it/articoli.asp?tag=Espandere-un-hard-disk-VirtualBox-in-poche-mosse-ecco-la-procedura-pratica_9153 che risolve il problema da riga di comando in modo molto rapido ed efficace

  1. ottobre 31, 2007 alle 1:00 am
  2. gennaio 21, 2010 alle 10:56 am
I commenti sono chiusi.