web-dev-qa-db-fra.com

Quelles commandes sont nécessaires pour installer Ubuntu Core?

La page page wiki de Ubuntu Core contient les instructions pour installer Ubuntu Core sur un support cible:

  1. Décompresser (ne pas décompresser) rootfs
  2. Formater le support cible: au moins une partition doit être ext2, ext3 ou ext4
  3. Décompressez Ubuntu Core sur la partition ext{2,3,4}
  4. Installer le chargeur de démarrage
  5. Installer Linux
  6. Si le noyau Linux nécessite des modules, ajoutez-les à /lib/modules/$(uname -r) dans le système de fichiers ext{2,3,4}.
  7. Démarrer le périphérique cible
  8. Installez tout logiciel supplémentaire requis à l'aide de apt-get

Mais quelles sont les commandes spécifiques pour faire ce qui précède? Les choses sur lesquelles je suis particulièrement confus sont:

  1. Décompresser et décompresser, quelle est la différence et comment puis-je les faire?
  2. Quel paquet dois-je installer si je veux le noyau générique fourni dans l'installation normale d'Ubuntu?
  3. Je n'installerai aucun pilote ni aucun élément lié au noyau autre que ceux fournis dans le dépôt. Dois-je m'inquiéter d'ajouter manuellement des modules du noyau?

PS Je voudrais demander que toutes les commandes utilisées dans le processus d'installation soient mentionnées dans la réponse, pour le bénéfice de celles qui sont complètement inconnu et moi-même, devrais-je jamais oublier.

18
Oxwivi

Toutes ces commandes nécessiteront des droits d'administrateur. Le plus simple est de faire Sudo su pour obtenir une console racine.

  1. Les archives telles que votre noyau .tar.gz (ceci est onirique, la bêta précise est ici ) sont combinées dans un seul fichier (compressé) et leur taille réduite (compressée).

    gzip -d ubuntu-core-11.10-core-i386.tar.gz

    va décompresser le noyau en ubuntu-core-11.10-core-i386.tar (plus un fichier .gz; un seul gros fichier).

  2. Pour partitionner le périphérique en noyau, il est plus simple d'utiliser un outil graphique tel que gparted. Quand ce n'est pas disponible. Voir ici . En un mot - en supposant que vous vouliez partitionner le périphérique/dev/sda:

    fdisk /dev/sda puis pressez np1<Return><Return>a1w (pour plus de détails, voir le lien).

    Cela crée la partition/dev/sda1.

    mkfs.ext4 /dev/sda1

    Cela crée un système de fichiers ext4 sur la nouvelle partition. Vous pouvez bien sûr utiliser mkfs.ext3, mkfs.ext2 également.

    Montez-le: mount /dev/sda1 /mnt et allez-y cd /mnt

  3. tar -xf /path/to/where/you/put/ubuntu-core-11.10-core-i386.tar

    va décompresser le noyau (beaucoup de fichiers).

  4. grub-install --root-directory=/mnt /dev/sda

    installera le chargeur de démarrage (ce n’est bien sûr qu’une des nombreuses options).

  5. cp /etc/resolv.conf /mnt/etc/resolv.conf

    permettra l'accès au réseau après le chrootage (à l'étape 7) en copiant la configuration du résolveur DNS

  6. for f in /sys /proc /dev ; do mount --rbind $f /mnt/$f ; done ; chroot /mnt

    ira à un chroot, voir Existe-t-il un moyen plus facile de chrooter que bind-mount? pour plus de détails sur mount rbind

  7. apt-get update && apt-get install linux-{headers,image}-generic

    installera le noyau ("linux")

    Remarque: il est possible que apt-get update ne fonctionne pas car aucun réseau n'est présent.

  8. reboot et vous êtes prêt à partir.

Je n'ai pas de machine pour tester cela, donc la réponse ne sera probablement pas complète. Je changerai ma réponse si vous tombez sur des problèmes.

19
turbo

Vous pouvez également vérifier ceci pour installer Ubuntu Core sur une clé USB

Ubuntu Core nous fournit une belle start-up pour jouer avec Linux. Cela permet de gagner beaucoup de temps pour la création d'un rootfs, ce qui peut nécessiter beaucoup d'efforts pour fonctionner.

Il pourrait y avoir plusieurs façons de jouer avec un root. Le plus simple pourrait être d'utiliser chroot pour basculer temporairement vers Ubuntu Core. La plupart des utilitaires que vous connaissez devraient fonctionner. Mais le réseau ne devrait pas l'être, car il n'y a pas de configuration réseau. Ni devfs ni sysfs n’ont été créés, autant d’utilitaires dépendant de ces interfaces inode du noyau ne devraient pas fonctionner.

Cependant, il est toujours possible d'installer des packages sur la racine Ubuntu Core.

Exemple d'installation

Installez les images rootfs et du noyau Ubuntu Core.

Sudo bash 
 Cd /media/duzy/Root
tar xzvf ~/Téléchargements/ubuntu-core-15.10-core-AMD64.tar.gz 
 Cp -vf/boot/vmlinuz -4. * - generic /media/duzy/Boot
cp -vf /boot/initrd.img-4.*-generic /media/duzy/Boot
useradd --root/media/duzy/Root -s '/ bin/bash' -m duzy 
 passwd --root/media/duzy/Root duzy 
Entrez le nouveau mot de passe UNIX: ...... 
 Retapez le nouveau mot de passe UNIX: ......
 cp /etc/resolv.conf /media/duzy/Root/resolv.conf
for s dans proc sys dev; ne pas monter --rbind/dev/media/duzy/racine/$ s; terminé 
 chroot /media/duzy/Root
apt-get update

Installer grub ( grub-install )

Sudo grub-install --boot-directory=/media/duzy/Boot /dev/sdf  
Sudo grub-mkconfig -o /media/duzy/Boot/grub/grub.cfg  

Test USB avec KVM ( lien )

kvm -hdb /dev/sde # NOT the partition (/dev/sde1)!  

Ou testez avec VirtualBox

VBoxManage internalcommands createrawvmdk -filename VirtualBox/usbdisk.vmdk -rawdisk /dev/sde
2
Duzy Chan