web-dev-qa-db-fra.com

Live USB sur un lecteur USB à 2 partitions

Je me demandais si je pouvais avoir 2 partitions sur un lecteur USB qui me permettraient de démarrer sur ma clé en tant que disque d'installation USB classique (partition1) et une autre partition pour un stockage normal sous Windows/Ubuntu (partition2). J'aimerais avoir un disque avec:

/dev/sdb (16GB)
 - sdb1 : ext4/fat32, LiveUSB (2GB)
 - sdb2 : fat32, storage (14GB)

Cette clé peut-elle être démarrée ET utilisée comme un lecteur USB classique?

PS: c’est parce que je suis malade d’installer/désinstaller Ubuntu sur mon lecteur USB chaque fois que je dois sauver un PC et que je ne souhaite pas acheter un lecteur USB uniquement pour le disque d’installation Ubuntu.

30
MrVaykadji

Oui, vous pouvez partitionner un lecteur flash USB pour démarrer dans une session Ubuntu Live et l'utiliser comme un lecteur USB standard (accessible aux fenêtres) sur des partitions séparées. Je pouvais le faire avec un lecteur flash PNY USB 2.0 de 32 Go sur un ordinateur portable Sony Vaio T Series Ultrabook avec UEFI et Windows 8.0 installé. J'ai également testé cela à partir du serveur Ubuntu 12.04 sur mon serveur RAID5 i7-290 de 16 To.

J'ai partitionné le lecteur flash USB en utilisant GParted dans cette configuration:

32GB USB Flash Drive GParted

sdh1 est la partition "Stockage" accessible à partir de Windows. sdh2 est la partition amorçable du bureau Ubuntu 12.04. C'étaient mes pas:

 1. Création d’une nouvelle partition logique de 10 Go, ntfs, avec 25 Mo d’espace libre avant 
    et 0 Mo après, étiqueté Stockage ( doit figurer en premier sur le lecteur ) 2. Création d'une nouvelle partition logique Fat32 de 5 Go , avec 0 Mo avant et après 3. Définir un indicateur d’amorçage pour la deuxième partition 4. (Créer les autres partitions inutiles) 5. Démarré sur un Ubuntu Live Session chargée sur un DVD et sélectionnée Try Ubuntu 
    sans installer à partir du menu GRUB 6. Ouvrir le Créateur de disque de démarrage avec le lecteur flash USB branché 7. Le lecteur flash USB 2.0 Ubuntu-Desktop 12.04 Image and pny (/ dev/sdh2) 5,0 Go 
    partition ont déjà été sélectionnés, déplacé la diapositive Combien pour stocker les documents 
    et paramètres dans l’espace supplémentaire réservé et sélectionnez Créer une disquette de démarrage

Sans sélectionner l'indicateur de démarrage, Startup Disk Creator ne reconnaîtrait l'intégralité du lecteur flash que sous le nom /dev/sdh, au lieu de la seconde partition désirée /dev/sdh2.

Sans mettre la partition Windows en premier, le Removable Media Bit ...

 "Le paramètre de périphérique de support amovible est un indicateur contenu dans les données d’enquête SCSI. 
réponse à la commande SCSI Inquiry. Le bit 7 de l'octet 1 (indexé à partir de 0) est le 
Amovible Media Bit (RMB). Un RMB réglé à zéro indique que le périphérique n'est pas un
dispositif de support amovible. Un RMB sur un indique que le périphérique est un périphérique amovible 
périphérique multimédia. Les pilotes obtiennent ces informations à l’aide de StorageDeviceProperty
demande."

... voudrait dire une seule partition apparaît dans Windows:

 "Q. Qu'est-ce qu'une super-disquette? 
 
 A. 
 Un support amovible sans format GPT ni MBR est considéré comme un" super-disquette ". 
Le média entier est traité comme une partition unique. 
Le fabricant de supports effectue tout partitionnement MBR des supports amovibles. Si la 
le média a un MBR, une seule partition est supportée. Il y a peu 
différence perceptible par l'utilisateur entre les supports partitionnés MBR et les superfloppies. 
Exemples de supports amovibles: lecteurs de disquettes, cartouches de disques JAZ, 
supports magnéto-optiques, DVD-ROM et CD-ROM. Disques durs sur des bus externes 
tels que SCSI ou IEEE 1394 ne sont pas considérés comme amovibles. "

Voici quelques outils qui retournent le RMB (ce qui est inutile dans ce cas):
Outil de formatage USB de Laxar
Bootice
RMPrepUSB

Ce sont des approches logicielles (encore une fois inutiles dans ce cas):
Créez un pilote dummy.sys
Utilisez le Hitachi Microdrive Filterdriver

Crédit:
TSJNachos117 Live USB sur un lecteur USB à 2 partitions
http://ubuntuforums.org/showthread.php?t=102029
https://stackoverflow.com/questions/2598502/howto-flip-removable-bit-on-usb-drive-in-c
http://www.rmprepusb.com/tutorials/multipartufd

23
conman253

J'ai trouvé un moyen alternatif qui est plus simple. Il y a 2 éléments d'information importants à comprendre sur la raison pour laquelle cela fonctionne. Le premier concerne le processus de démarrage et explique comment le test automatique de mise sous tension initial (exécuté par le BIOS) recherche un enregistrement de démarrage sur le premier secteur de démarrage des périphériques connectés. Il s’agit d’un petit fichier qui transmet le processus d’exécution du démarrage au gestionnaire/chargeur de démarrage, tel que GRUB2, sur les installations Linux les plus récentes. Pour plus d'informations à ce sujet, lisez ceci très informatif post .

Le deuxième élément d'information consiste à comprendre que les téléchargements ISO pour les systèmes d'exploitation Linux sont conçus pour être installés sur un disque (CD/DVD/USB) et non pour une partition. Ces ISO doivent être modifiés à l'aide d'un petit outil qui se trouve dans le package syslinux-utils, appelé isohybrid. La modification ISO pour l'installation sur une partition est effectuée avec le --partokindicateur . J'ai trouvé cette information de ce post qui décrit exactement le même problème. Je ne suis pas sûr de savoir comment fonctionne la magie --partok; j'ai cherché une explication, mais je n'en ai trouvé aucune.

En résumé , voici ce que j'ai fait pour obtenir mon live PureOS installer pour démarrer à partir d'une partition USB,

  1. Partitionné ma clé USB en utilisant le disque GNOME, j'ai initialement formaté le disque en utilisant MBR/DOS. J'ai créé une partition de 4 Go (FAT32) suivie d'une partition Linux ext4 dans l'espace restant pour mes sauvegardes.

  2. Ensuite, j'ai modifié le fichier ISO que j'ai téléchargé pour le rendre amorçable à partir de la partition. Pour ce faire, j'ai dû installer le syslinux-utils à partir des référentiels, dans lequel réside l'outil isohydrid:

    Sudo apt-get install syslinux-utils
    

    J'ai ensuite modifié le fichier ISO avec:

    isohybrid --partok pureos.ISO
    
  3. J'ai utilisé dd pour copier cette image ISO sur la partition ci-dessus. Vous pouvez obtenir le périphérique de partition à partir des détails du disque GNOME.

    dd if=pureos.ISO of=/dev/sdb1 bs=1M
    
  4. À partir du disque GNOME, j'ai édité la partition et vérifié l'option bootable , qui installe l'enregistrement de livre requis.

Je pouvais maintenant démarrer à partir de la clé USB dans le live CD et l'utiliser comme solution de récupération tout en stockant les sauvegardes de mon système sur l'autre partition.

8
Aurovrata

La réponse simple est oui, mais vous pouvez aller plus simple!

assurez-vous que vous avez une image ISO de la version Linux que vous voulez sur le lecteur et sur UNetbootin, disponible ici: http://unetbootin.sourceforge.net/

Assurez-vous de sélectionner Installation sur le disque dur dans le menu déroulant et de copier toutes vos données du lecteur avant de commencer. Vous devriez pouvoir utiliser le reste de l'espace à d'autres fins!

2
Viperfang

Live drive persistant

Vous pouvez utiliser mkusb pour créer un disque dur permanent. Il va créer 5 partitions. Voir ce lien,

help.ubuntu.com/community/mkusb

  • La partition n ° 1 porte l'étiquette 'usbdata' et le système de fichiers NTFS, qui peuvent être utilisés à la fois par Ubuntu et Windows afin de stocker des fichiers et de transférer des fichiers entre ordinateurs.

  • Les autres partitions appartiennent au système live persistant d'Ubuntu.

    Voir ce lien pour plus de détails,

    help.ubuntu.com/community/mkusb/persistent#Partitions

    1. partition: (NTFS) usbdata pour le stockage et le transfert de fichiers

    2. partition: GPT: indicateur bios_grub pour le démarrage en mode BIOS; MSDOS: partition étendue

    3. partition: partition de démarrage (FAT32)

    4. partition: fichier ISO copié (ISO 9660)

    5. partition: (ext4) casper-rw ou live-rw ou persistence

Détails

Détails sur les partitions à partir de et après la création du système live persistant:

...
parted -s "/dev/sdd" print
Model: SanDisk Extreme (scsi)
Disk /dev/sdd: 16,0GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name     Flags
 2      1049kB  2097kB  1049kB               primary  bios_grub
 3      2097kB  258MB   256MB   fat32        primary  boot, esp
 4      258MB   1791MB  1533MB               primary
 5      1791MB  8902MB  7111MB  ext2         primary
 1      8902MB  16,0GB  7111MB  ntfs         primary  msftdata

lsblk -o MODEL,NAME,FSTYPE,LABEL,MOUNTPOINT,SIZE "/dev/sdd"
MODEL            NAME   FSTYPE  LABEL                    MOUNTPOINT  SIZE
Extreme          sdd                                                14,9G
                 |-sdd1 ntfs    usbdata                              6,6G
                 |-sdd2                                                1M
                 |-sdd3 vfat    usbboot                              244M
                 |-sdd4 iso9660 Ubuntu 16.04.1 LTS AMD64             1,4G
                 `-sdd5 ext4    casper-rw                            6,6G
</pre>
 Done :-) 
The target device is ready to use.
'ubuntu-16.04.1-desktop-AMD64.iso'
was installed

gparted dans 16.04 LTS ne reconnaissant pas le système de fichiers ISO 9660 et l'image de démarrage bios_grub:

enter image description here

gparted dans 17h10, voir le système de fichiers iso 9660 et l'image de démarrage bios_grub:

enter image description here

2
sudodus

Cela devrait être facile à faire. Cependant, soyez averti à l'avance que Windows ne pourra voir que la première partition (/ dev/sdb1), la deuxième partition sera invisible (je ne sais pas pourquoi). Par conséquent, je recommanderais que la partition de stockage à usage général soit la première et que la partition LiveUSB soit la seconde.

Si, après cela, vous ne pouvez pas obtenir la clé pour démarrer, vous devriez pouvoir définir l'indicateur Boot en utilisant GParted.

Remarque: bien que j'aie déjà réussi à le faire auparavant, je n'ai jamais testé cette possibilité sur un système basé sur UEFI, sans parler de quelque chose utilisant Secure Boot.

1
TSJNachos117
  1. Vous souhaitez conserver la partie principale de votre clé USB en tant que stockage FAT32 de 14 Go
  2. Vous voulez une partie LiveUSB dans Ext4 2GB

Ensuite, la mise en page de votre clé USB suit:

sdb1 14 Go de stockage Fat32 et dossier EFI
sdb2 2 Go Ext4 LiveUSB

  1. Vous devez créer le poing Fat32 pour être vu sous Windows, car sans beaucoup de Tweak, Windows ne monte que la 1ère partition de votre clé USB
  2. Cette partition Fat32 contient également le dossier EFI pour démarrer votre partie LiveUSB
  3. Si vous voulez la partition LiveUSB sdb2 sur Ext4. Par défaut, le fichier bootx64.efi intégré de LiveUSB ne démarrera pas une partition Ext4. J'ai donc créé un fichier bootx64.efi modifié. Vous venez de copier le fichier sur sdb1/EFI/boot /. Et cela démarrera votre partie Ext4 LiveUSB. Tous mes détails ici https://github.com/sonvirgo/Ext4-LiveUSB
1
Son Nguyen

Une solution simple:

  1. Utilisez Gestionnaire de partitions KDE pour supprimer toutes les partitions et créer une partition primaire 2,048Mo, FAT32.

  2. Allouez le reste de l'espace libre à votre partition de données. Si vous avez besoin d'interopérabilité avec Windows, choisissez NTFS comme système de fichiers, mais n'oubliez pas que, lorsqu'ils sont lus sous Linux, l'attribut +x est défini pour tous les fichiers. Sinon, choisissez ext4.

  3. Utilisez netbootin pour écrire l’ISO (Ubuntu 18.04 a environ cette taille, 2 Go). Ne vous inquiétez pas, il semble écrire uniquement dans /dev/sda au lieu d'une partition particulière.

Dans ma configuration, gparted ne voit pas les partitions correctement, contrairement à KDE Partition Manager. Je ne sais pas quoi faire de ça.

0
Dan Dascalescu