Contenu | Rechercher | Menus

Annonce

Ubuntu 16.04 LTS
Commandez vos DVD et clés USB Ubuntu-fr !

Pour en savoir un peu plus sur l'équipe du forum.

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

#1 Le 18/11/2009, à 18:52

T_a_g_a_d_a

Virtualiser une clé usb

Bonjour,

Je me suis créé un clé USB bootable avec Karmic (mode persistance).
Depuis peu, je la lance avec PortableVirtualbox depuis mon poste de développement au travail (poste sous windows XP). C'est bien pratique.

J'aimerais savoir, s'il est possible de virtualiser ma clé depuis mon poste perso avec VirtualBox ou autre.
VirtualBox ne permet pas de booter sur une clé USB. VMware peut être ? Si oui quels sont vos retours ? Qemu ?


Merci bien.
Thierry

Hors ligne

#2 Le 19/11/2009, à 07:20

jotelecom

Re : Virtualiser une clé usb

Qemu permet de faire ce que tu veux a priori, regarde la doc et le man, tout est très bien expliqué smile
http://doc.ubuntu-fr.org/qemu


Terminux ( - John' - )
Débutants : bases, personnalisation et troubleshooting -> http://forum.ubuntu-fr.org/viewtopic.php?id=322271

Hors ligne

#3 Le 19/11/2009, à 11:40

T_a_g_a_d_a

Re : Virtualiser une clé usb

Oui effectivement, je connais un peu "qemu" mais je ne vois pas bien les paramètres pour booter sur une clé. L'option "-boot" ne proposant pas le boot sur clé usb....

Hors ligne

#4 Le 21/11/2009, à 00:00

jotelecom

Re : Virtualiser une clé usb

qemu -usb /dev/sd*

Où * est la lettre  qui suit "sd" dans le nom du device, sans numéro.
Source : http://people.ofset.org/~ckhung/p/mk-boot-usb/use.en.php

Dis moi si ça fonctionne wink


Terminux ( - John' - )
Débutants : bases, personnalisation et troubleshooting -> http://forum.ubuntu-fr.org/viewtopic.php?id=322271

Hors ligne

#5 Le 25/11/2009, à 18:33

T_a_g_a_d_a

Re : Virtualiser une clé usb

Merci pour l'info.
J'ai testé mais ça ne fonctionne pas. Pour ma part, je comprenais ce paramètre comme l'activation de prise en compte de l'usb et non pour lui dire de booter sur un port usb.

Par ailleurs, j'ai continué mes recherches et j'ai installé MultiBoot (cf http://liveusb.info) sur une autre clé. ça permet lorsque l'on boot sur sa clé usb de choisir parmi une liste d'iso supportée.  Il y a une fonction qui permet de lancer les iso en virualisant (choix virtualBox ou QEmu) . ça fonctionne, je l'ai testé sous linux avec l'iso de la dernière Mandriva - même s'il n'a pas lancé le serveur X).

ça ne me dit toujours pas comment virtualiser ma clé usb ou j'ai installé ubuntu avec le mode persistant smile mais ça doit bien être possible.

Hors ligne

#6 Le 03/12/2009, à 17:37

jotelecom

Re : Virtualiser une clé usb

Sinon, il reste toujours la solution d'installer VistualBox ou Vmware, de créer une machine virtuelle sur laquelle on ative un filtre usb correspondant à ta clé, et au 'démarrage' de la machine on boot sur la clé.. Ça marche aussi..


Terminux ( - John' - )
Débutants : bases, personnalisation et troubleshooting -> http://forum.ubuntu-fr.org/viewtopic.php?id=322271

Hors ligne

#7 Le 03/12/2009, à 18:17

T_a_g_a_d_a

Re : Virtualiser une clé usb

Merci pour tes réponses. Au moins, ça intéresse quelqu'un smile

Tu parles bien du menu dans le "bios" au démarrage de la machine virtuelle (touche F12) ?
Si c'est bien ça, chez moi, il ne propose pas de booter sur la clé (qui est pourtant dans la liste des périf usb...).
Il te propose de booter sur une clé usb ?

Merci

Hors ligne

#8 Le 03/12/2009, à 19:45

jotelecom

Re : Virtualiser une clé usb

Ah non très juste.. Dis donc c'est un vrai problème ce truc là..
Mais c'est étrange, je me souviens pourtant très bien avoir démarré à partir d'une clé USB je ne me souviens plus comment j'avais fait! Je suis également certain que c'était avec Qemu, mais j'ai moi même compris l'option -usb comme une option pour activer le support USB, et non pour booter à partir d'une clé...
C'est fou tout ça :S On aurait besoin d'aide down here! PLEASE!


Terminux ( - John' - )
Débutants : bases, personnalisation et troubleshooting -> http://forum.ubuntu-fr.org/viewtopic.php?id=322271

Hors ligne

#9 Le 11/01/2010, à 06:13

bioman

Re : Virtualiser une clé usb

Qemu : sudo qemu -hda /dev/sdb1
Virtualbox : Voir Plop & "Using a raw host hard disk from a guest" dans la doc offcielle.

Hors ligne

#10 Le 14/01/2010, à 15:27

frafa

Re : Virtualiser une clé usb

Bonjour,
Je vous passe le script que MultiBoot-v3 utilise
pour virtualiser une clé usb dans VirtualBox
a adapter a votre conf...
mais bon pas grand chose a modifier pour le rendre autonome...

pour VirtualBox linux (version non ose):

#! /bin/bash
chemin="$(cd "$(dirname "$0")";pwd)/$(basename "$0")";
dossier="$(dirname "$chemin")"
export chemin dossier
cd "${dossier}"

###Pour exporter la librairie de gettext.
set -a
source gettext.sh
set +a
export TEXTDOMAIN=multiboot
export TEXTDOMAINDIR=${dossier}/locale
. gettext.sh
multiboot=$0

#recup option
option="$1"

#verifier Install VirtualBox
if [ ! "$(which VBoxManage)" ]; then
xterm -title 'install VBox' -e './vbox_install.sh'
fi

#verifier que user apartiens aussi a vboxusers
if [ ! "$(grep vboxusers /etc/group | grep $LOGNAME)" ]; then
zenity --error --text "$(eval_gettext "Erreur vboxusers")"
exit 0
fi

#verifier que user appartiens au group disk
if [ ! "$(grep disk /etc/group | grep $LOGNAME)" ]; then
zenity --error --text "$(eval_gettext "Erreur disk")"
exit 0
fi

#verifier que /proc/bus/usb est bien monté
if [ ! "$(mount -l | grep /proc/bus/usb)" ]; then
zenity --error --text "$(eval_gettext "Erreur /proc/bus/usb")"
exit 0
fi

#verifier depot VirtualBox
if [ ! "$(grep "^deb http://download.virtualbox.org/virtualbox/debian" /etc/apt/sources.list)" ]; then
zenity --error --text "$(eval_gettext "Erreur depôt")"
exit 0
fi

#verifier que version VirtualBox n'est pas virtualbox-ose
if [ "$(dpkg -l | grep -i virtualbox-ose)" ]; then
zenity --error --text "$(eval_gettext "Erreur virtualbox-ose")"
exit 0
fi

#noms
name_vbox="multiboot"
chemin_vmdk="$HOME/.VirtualBox/${name_vbox}.vmdk"

#ram dispo?
RAM_LIBRE="$(($(free | grep -e "-/+" | awk '{print $4}') / 1000))"
if [ "$RAM_LIBRE" -gt "896" ]; then
memory="768"
vram="128"
elif [ "$RAM_LIBRE" -gt "768" ]; then
memory="640"
vram="128"
elif [ "$RAM_LIBRE" -gt "640" ]; then
memory="512"
vram="128"
elif [ "$RAM_LIBRE" -gt "512" ]; then
memory="384"
vram="128"
elif [ "$RAM_LIBRE" -lt "384" ]; then
echo -e "\033[1;47;31m $(eval_gettext "Erreur: pas assez de ram libre disponible:") $RAM_LIBRE < 384 Mio \033[0m"
echo -e "\033[1;47;31m mount -t tmpfs -o size=528m none /dev/shm \033[0m"
#mount -t tmpfs -o size=528m none /dev/shm
echo -e "\033[1;47;31m $(eval_gettext "Appuyez sur enter pour continuer") \033[0m"
read
exit 0
fi
echo -e "\033[1;33;44m memory:$memory vram:$vram \033[00m"

#Arrêter VBox
VBoxManage controlvm "${name_vbox}" poweroff &>/dev/null

#Détacher disque associé vmdk
VBoxManage modifyvm "${name_vbox}" --hda none
VBoxManage closemedium disk "${chemin_vmdk}"

#Supprimer disque associé vmdk
rm -vf "${chemin_vmdk}"

#supprimer vm
VBoxManage unregistervm "${name_vbox}" --delete
#zenity --info --text "Attente"

#Créer vmdk
VBoxManage internalcommands createrawvmdk -filename "${chemin_vmdk}" \
-rawdisk $(cat /tmp/multiboot-v3-selection-usb | sed 's/[0-9]//') \
-relative -register

#creer vm
VBoxManage createvm --name "${name_vbox}" --register
VBoxManage modifyvm "${name_vbox}" --memory ${memory} --vram ${vram}
VBoxManage modifyvm "${name_vbox}" --acpi on --nic1 nat --ioapic on
#option specifique a 3.1
if [ "$(echo $(VBoxManage -v) | grep -E "(3.1)|(3.2)|(3.3)")" ]; then
VBoxManage storagectl "${name_vbox}" --name "IDE Controller" --add ide
#VBoxManage storagectl "${name_vbox}" --name "${name_vbox}" --add SATA --controller IntelAhci
#[--add <ide/sata/scsi/floppy>]
#[--controller <LsiLogic/BusLogic/IntelAhci/PIIX3/PIIX4/ICH6/I82078>]
#[--sataideemulation<1-4> <1-30>]
#[--sataportcount <1-30>]
#[--remove]
fi
VBoxManage modifyvm "${name_vbox}" --hda "${chemin_vmdk}"
VBoxManage modifyvm "${name_vbox}" --ostype "Linux26"
VBoxManage modifyvm "${name_vbox}" --audio alsa --audiocontroller ac97
VBoxManage modifyvm "${name_vbox}" --accelerate3d on
VBoxManage modifyvm "${name_vbox}" --pae on
VBoxManage modifyvm "${name_vbox}" --usb on --usbehci on

#Demarrer VBox [--type gui|sdl|vrdp|headless]
sleep 1
VBoxManage startvm "${name_vbox}" --type gui&

#VBoxManage controlvm "${name_vbox}" resume
#pause|resume|reset|poweroff|savestate|
echo -e "\033[1;47;31m $(eval_gettext "Appuyez sur enter pour continuer") \033[0m"
read
exit 0

pour VirtualBox sous win en batch

@echo Off

:Lancer MultiBoot-v3 dans VBox

:PhysicalDrive0

: Reading drive letter ...

for %%d in ( D E F G H I J K L M N O P Q R S T U V W X Y Z ) do if exist %%d:\boot\splash\splash-prevue.png set DISK=%%d

if %DISK% == none goto DiskNotFoundstart

if %DISK%==D SET I=0

if %DISK%==E SET I=1

if %DISK%==F SET I=2

if %DISK%==G SET I=3

if %DISK%==H SET I=4

if %DISK%==I SET I=5

if %DISK%==J SET I=6

if %DISK%==K SET I=7

if %DISK%==L SET I=8

if %DISK%==M SET I=9

if %DISK%==N SET I=10

if %DISK%==O SET I=11

if %DISK%==P SET I=12

if %DISK%==Q SET I=13

if %DISK%==R SET I=14

if %DISK%==S SET I=15

if %DISK%==T SET I=16

if %DISK%==U SET I=17

if %DISK%==V SET I=18

if %DISK%==W SET I=19

if %DISK%==X SET I=20

if %DISK%==Y SET I=21

if %DISK%==Z SET I=22

: Calculating optimal ram use...

for /F "delims=" %%d in ('mem ^| find "XMS"') do set FREEMEM=%%d

if "%FREEMEM%" NEQ "" SET FREEMEM=%FREEMEM:~1,10%

if "%FREEMEM%" NEQ "" SET /A FREEMEM=%FREEMEM% / 2048

if "%FREEMEM%" lss 256 SET FREEMEM=256

SET CHEMIN=c:\Program Files\Sun\VirtualBox\multiboot.vmdk

SET PROGRAMME=c:\Program Files\Sun\VirtualBox\VBoxManage.exe

echo DISK %DISK% FREEMEM %FREEMEM% "%CHEMIN%"

if not exist "%PROGRAMME%" goto ProgNotFound

:Arrêter VBox

"%PROGRAMME%" controlvm "multiboot" poweroff >NUL

:Détacher disque associé vmdk

"%PROGRAMME%" modifyvm "multiboot" --hda none

"%PROGRAMME%" closemedium disk "%CHEMIN%"

:Supprimer disque associé vmdk

if exist "%CHEMIN%" DEL "%CHEMIN%"

:supprimer vm

"%PROGRAMME%" unregistervm "multiboot" --delete

:Créer vmdk

"%PROGRAMME%" internalcommands createrawvmdk -filename "%CHEMIN%" -rawdisk \\.\PhysicalDrive%I% -register

:creer vm

"%PROGRAMME%" createvm --name "multiboot" --register

"%PROGRAMME%" modifyvm "multiboot" --memory %FREEMEM% --vram 128 --acpi on --nic1 nat --ioapic on
"%PROGRAMME%" storagectl "multiboot" --name "IDE Controller" --add ide >NUL

"%PROGRAMME%" modifyvm "multiboot" --hda "%CHEMIN%"

"%PROGRAMME%" modifyvm "multiboot" --ostype "Linux26"

"%PROGRAMME%" modifyvm "multiboot" --audio dsound --audiocontroller ac97

"%PROGRAMME%" modifyvm "multiboot" --accelerate3d on

"%PROGRAMME%" modifyvm "multiboot" --pae on

"%PROGRAMME%" modifyvm "multiboot" --usb on -usbehci on

:Demarrer VBox

"%PROGRAMME%" startvm "multiboot" --type gui

goto exit

:DiskNotFoundstart

echo error disk not found 

goto exit

:ProgNotFound

echo error "%PROGRAMME%" not exist

:exit

pour Qemu:

qemu -no-acpi -usb -cdrom /dev/cdrom -boot c -usbdevice "disk:/dev/sdx" -hda "/dev/sdx" -m 512 -localtime -soundhw es1370

Dernière modification par frafa (Le 14/01/2010, à 15:36)

Hors ligne