Come montare la partizione EXT4 sulla scheda SD dall'interno di VirtualBox


9

Ho un lettore di schede SD integrato nel mio laptop Lenovo e ho installato VirtualBox e Debian spremere su una macchina virtuale, ma non riesco a visualizzare la partizione EXT4, o qualsiasi partizione, sulla scheda SD!

Ho posto questa domanda: modificare le impostazioni IP montando la scheda SD su un altro computer

E le risposte suggerite riguardano il montaggio della scheda SD in una macchina virtuale.


Penso che devi passare attraverso il dispositivo USB (il lettore di schede SD è probabilmente collegato internamente al bus USB) - vedi howtoforge.com/… - Facci sapere se funziona e lo scriverò come risposta.
Alex Chamberlain,

@Alex Chamerlain - Sto ancora lottando, non sembra apparire come un dispositivo USB, sto cercando di montare la partizione come un dispositivo raw in VirtualBox ma non abbiamo (o molto poco) una connessione Internet è difficile capire cosa devo fare!
Orecchie da cane

Grazie signore, ha funzionato perfettamente per utilizzare il mio disco rigido SATA Xubuntu in VirtualBox. Esattamente quello che stavo cercando.

Dovresti menzionare nella domanda che stai provando a farlo su un host che esegue Windows (anche se usi una VM Linux sotto Windows per accedere alla scheda SD).
cjs,

Risposte:


8

Lettore di schede interno - Non USB - Host di Windows 7

Il mio laptop ha un lettore di schede integrato e non appare come un dispositivo USB. Per farlo funzionare ho dovuto montare la partizione EXT4 come RAW prima di assegnarla alla VM e quindi avviare la VM.

La prima cosa che ho notato è se ho aperto la Gestione disco di utilità sotto Gestione computer - clic destro su Risorse del computer e selezionare Manage si dovrebbe essere in grado di vedere la scheda SD come un disco e come Kibbee accennato miniera aveva anche tre partizioni, ho indovinato la più grande la partizione di mezzo è quella che stavo cercando.

Per montare la partizione non elaborata in VirtualBox è necessario conoscere il numero del disco e della partizione. Li ho confermati prima usando l'utilità della riga di comando di Windows Diskpart e il list diskcomando (sul mio laptop, e in Gestione disco, la scheda SD è apparsa come # 1)

Per identificare correttamente le partizioni, ho usato il comando VirtualBox listpartitionsecco il mio come esempio:

vboxmanage internalcommands listpartitions -r awdisk \\.\PhysicalDrive1

E l'output per me è stato:

Number  Type   StartCHS       EndCHS      Size (MiB)  Start (Sect)
1       0x0c  16  /0  /1   1023/3  /32            75         2048
2       0x83  1023/3  /32  1023/3  /32          1590       157696
3       0x82  1023/3  /32  1023/3  /32           191      3416064

Da questo suppongo che la partizione 2 sia la partizione EXT4 a cui sto tentando di accedere.

Montare la partizione come volume grezzo

Per rendere la partizione non elaborata disponibile per il guest Linux, VirtualBox consente di inviare il createrawvmdkcomando che crea un file con estensione .vmdk che è possibile specificare come disco esistente dalle impostazioni di archiviazione della VM. Ancora una volta, ecco il mio come esempio:

vboxmanage internalcommands createrawvmdk -filename 
C:\VirtualMachines\Debian\disk1_part2.vmdk -rawdisk \\.\PhysicalDrive1
-partitions 2

(è possibile tralasciare il parametro "-partitions 2" per abilitare tutte le partizioni sul dispositivo.)

Aggiunta del disco non elaborato alla VM

Prima di avviare la VM

  • Apri la finestra di dialogo Impostazioni della VM, seleziona Storge
  • Fare clic con il tasto destro del mouse su Controller SATA e fare clic su Aggiungi disco rigido
  • Seleziona il pulsante Scegli disco esistente e cerca il file creato nel passaggio precedente.

Ora puoi avviare la VM e avere accesso alla partizione EXT4.

Problemi con il controllo dell'account utente

Se sono soddisfatte le seguenti condizioni:

  • il sistema host esegue Windows Vista, 7 o 8 (o forse Windows Server 2008R2 / 2012)
  • Il controllo dell'account utente è abilitato
  • e non hai modificato le autorizzazioni relative all'accesso al disco non elaborato

allora l'operazione sopra potrebbe fallire, anche se sei un amministratore. Ciò è dovuto al fatto che i non amministratori non avranno accesso ai dispositivi non elaborati.

Vedo 4 possibili soluzioni, nessuna delle quali è molto bella:

  • La disabilitazione del controllo dell'account utente potrebbe risolverlo (non l'ho ancora verificato).
  • Potrebbe essere possibile assegnare autorizzazioni agli utenti per accedere ai dispositivi non elaborati; tuttavia non lo consiglierei perché è estremamente insicuro.
  • È possibile eseguire VirtualBox come amministratore (fare clic con il tasto destro del mouse, selezionare "Esegui come amministratore"); devi farlo sia durante la creazione che durante l'utilizzo del dispositivo.
  • .... o acquistando un lettore di schede USB e collegarlo direttamente come dispositivo USB.

Questo potrebbe essere specifico per il mio uso di questo, ma ho pensato di commentare nel caso in cui aiuti chiunque altro: se stai scrivendo sulla scheda SD dal sistema operativo guest e il tuo sistema operativo bombe con un errore BLKCACHE_IOERR, puoi risolverlo accedere alle impostazioni del guest e abilitare "Usa cache I / O host" sul controller SATA.
Joshua Whitley,

1

Per fare ciò, ho usato un lettore di schede SD, simile a questo . Ne ho preso uno nel mio negozio di dollari locale, che è il posto più economico per ottenerli. Anche se suppongo che quasi tutti i lettori di schede USB funzionerebbero.

Dopo averlo collegato e avviato la tua macchina virtuale, vai al menu "Dispositivi" per Virtual Box e seleziona USB, quindi trova il tuo dispositivo USB. Il mio appare come "Generic-USB2.0-CRW [8687]". Il nome del tuo dispositivo potrebbe essere diverso. Non appena l'ho collegato, ha montato automaticamente le unità e spuntato una finestra per ciascuna delle 2 partizioni (senza contare la partizione di swap). Se ciò non accade per te, il dispositivo viene riconosciuto come / dev / sdb sulla mia macchina con le tre partizioni:

boot: /dev/sdb1
root: /dev/sdb2 <-- This is the EXT 4 one with the /etc/network/interfaces file
swap: /dev/sdb3

Il nome del dispositivo potrebbe essere diverso sulla macchina virtuale e le partizioni potrebbero essere diverse se si utilizza qualcosa di diverso da Debian per la scheda Raspberry SD. Se non hai a portata di mano un lettore di schede SD, potresti provare a inserire la scheda SD in una fotocamera e collegarla a Virtual Box. Questo potrebbe funzionare o meno, appena testato con il mio lettore di eBook (Kobo) e solo la partizione vfat (boot) si presenta.


+1 anche se non mi aiuta, forse un titolo che identifica questa soluzione applicabile a USB?
Orecchie da cane
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.