Étape par étape de la pseudo-installation hors ligne d'ArchLinux

Cet article m'a été envoyé par notre ami Hugo Florentino par e-mail, où il nous raconte son expérience en essayant d'installer ArchLinux sans avoir de référentiel à portée de main, simplement en utilisant le disque d'installation

Pseudo-installation

Il y a quelques jours, j'ai téléchargé l'ISO ArchLinux pour faire une installation à domicile. Ayant déjà utilisé d'autres distributions qui vous permettent d'installer au moins une base de données minimale à partir du CD, je voulais faire quelque chose de similaire, mais curieusement, le processus d'installation d'Arch n'est pas conçu pour un ordinateur qui n'a pas d'accès Internet (effets secondaires des développeurs vivant dans le premier monde).

Dans mon cas, j'avais déjà Windows 7 (avec sa partition de démarrage et système) et Fedora (avec son swap et sa partition dédiée / boot) sur mon disque. L'idée était alors de réussir à installer Arch là où se trouvait auparavant Fedora, sans détruire Windows dans le processus.

Pseudo-installation hors ligne d'ArchLinux

Eh bien, j'ai démarré à partir du CD Arch, en choisissant x86_64, et sans trop tarder, je me suis laissé sur une console. Je me suis dit: "Wow, ces gars sont sérieux au sujet de ne pas être une distribution pour débutants ... d'accord, jouons le jeu et voyons ce qui se passe."

J'ai répertorié le répertoire où je devais voir s'il y avait de la documentation et j'ai découvert qu'il y avait bien un texte avec un guide d'installation élémentaire. J'ai écrit ce qui était pertinent sur un morceau de papier (je n'ai pas d'imprimante à la maison) et je me suis mis au travail.

La première chose que j'ai faite a été de changer la disposition du clavier en espagnol depuis l'Espagne, ce qui était plus facile que prévu (il y a même un curieusement appelé nous-accents):

loadkeys es

La chose suivante était de monter un disque externe pour enregistrer une copie du MBR en cas de problème et de faire une sauvegarde des informations importantes que j'avais dans mon Fedora:

mkdir -p / mnt / tmp1 && mount / dev / sdb1 / mnt / tmp1 dd if = / dev / sda of = / mnt / tmp1 / mbr.bin bs = 512 count = 1

Heureusement, le LiveCD d'Arch prend en charge NTFS et intègre Commandant de minuit (MC), donc en peu de temps j'ai fini d'enregistrer le reste des informations.

J'ai ensuite démonté le disque, supprimé le répertoire temporaire et physiquement retiré le disque externe pour réduire le risque de «cagastrophes» potentiels.

umount /mnt/tmp1 && rmdir /mnt/tmp1

J'ai donc formaté mes partitions, monté la partition racine et de démarrage et activé le swap:

mkfs -t ext4 / dev / sda3 mkfs -t ext4 / dev / sda6 mount / dev / sda6 / mnt mkdir -p / mnt / boot mount / dev / sda3 / mnt / boot swapon / dev / sda5

La prochaine étape a été mon premier obstacle:

pacstrap /mnt base

Arch a naturellement essayé de rechercher les bases de données des référentiels sur l'un des miroirs, sans pouvoir en trouver, tout. pacstrap a été de créer une structure de répertoires dans / mnt, très organisée, mais évidemment vide.

Au téléphone, j'ai demandé à quelques amis qui utilisent Arch s'il n'y avait aucun moyen d'installer sans accès Internet au moins les mêmes packages que ceux du LiveCD, sans avoir non plus un référentiel copié sur le disque, et ils m'ont dit qu'au moins ils ne savaient pas comment le faire.

J'ai trouvé le `` défi '' technologique intéressant, alors j'ai pensé: `` Si Arch est capable de se connecter en mode LiveCD, il devrait pouvoir s'installer sur un disque dur dans au moins le même mode '', alors j'ai essayé de copier manuellement les fichiers et en suivant le reste du didacticiel (avec le changement mineur étrange) pour voir ce qui s'est passé:

rsync -avl / {bin, etc, home, lib, lib64, opt, root, sbin, srv, usr, var} / mnt arch-chroot / mnt genfstab -p / >> / etc / fstab echo hpc> / etc / nom d'hôte ln -sf / usr / share / zoneinfo / Cuba / etc / localtime locale-gen

La prochaine étape était mon prochain obstacle:

mkinitcpio -p linux

Cette commande a produit quelques erreurs, après lecture du manuel de commande et du contenu des fichiers /etc/mkinitcpio.conf y /etc/mkinitcpio.d/linux.preset, J'ai compris que la commande ne pouvait pas trouver le fichier vmlinuz-linux, j'ai donc appuyé sur Ctrl + D pour quitter l'environnement chroot, et j'ai cherché tout fichier qui lui ressemblait:

find / -type f -iname "*vmlinuz*"

Il arrive que l'Arch LiveCD monte les fichiers de démarrage sous le répertoire / courir /, j'ai donc décidé de les copier sur mon / boot / pour les avoir à portée de main dans mon environnement chroot:

cp /run/archiso/bootmnt/arch/boot/{memtest,intel_ucode.img} / mnt / boot / cp / run / archiso / bootmnt / arch / boot / x86_64 / * / mnt / boot / arch-chroot / mnt

Comme une autre erreur que j'ai trouvée en expérimentant avec mkinitcpio était que l'étiquette de la partition racine ne pouvait pas être trouvée, j'ai noté son UUID (que j'ai identifié à l'aide de la commande blkid) à utiliser avec la commande, qui ressemblait finalement à ceci:

mkinitcpio -p linux -k /boot/vmlinuz root=UUID=d85938aa-83b8-431c-becb-9b5735264912

Cette fois, la construction s'est terminée avec succès, seulement avec quelques avertissements de modules qui n'ont pas pu être trouvés, mais dans mon cas n'étaient pas nécessaires. Juste au cas où, j'ai recréé le fstab, mais cette fois en spécifiant l'UUID:

genfstab -U -p / > /etc/fstab

J'ai pensé: ah bien, enfin progresser. Et j'ai continué à changer le mot de passe et à installer un chargeur de démarrage.

passwd grub-install --target = i386-pc --recheck / dev / sda grub-mkconfig -o /boot/grub/grub.cfg

Enfin et pour être méthodique, j'ai à nouveau appuyé sur Ctrl + D pour quitter l'environnement chrooté, tout démonté et redémarré pour voir ce qui s'était passé:

umount / mnt / boot umount / mnt redémarrage

L'ordinateur a redémarré en affichant le menu Grub avec Arch (Windows n'apparaissait nulle part), alors je l'ai sélectionné et tout semblait se charger correctement jusqu'à ce que ... le système indique qu'il y avait des erreurs que je devrais vérifier avec la commande suivante:

journalctl -xb

En analysant les erreurs, j'ai vu que la plupart pouvaient être ignorées, mais la dernière était inhabituelle, me disant que plymouth ne pouvait pas être trouvé.

J'ai immédiatement pensé: «Plymouth ??? Pourquoi diable un environnement de démarrage de console a-t-il besoin de quelque chose comme ça? Cela ne semble pas très KISS à dire. Je ne l'ai certainement pas mis et je n'en ai pas besoin. "

Mais pour être pratique, j'ai pensé: "Eh bien, mais au moins il devrait être référencé dans un fichier, voyons voir ...":

find /etc -type f -print0 | xargs -0 grep -i "plymouth"

Étonnamment, aucun fichier avec la chaîne de texte "plymouth" n'apparaît dans le répertoire de configuration. Je me suis alors dit: «Oh, alors… tu te force avec moi? voyons ensuite comment vous assimilez un «canon» »(comme on dit à Cuba), et« j'ai construit »un plymouth à partir de zéro:

vi / usr / bin / plymouth chmod 755 / usr / bin / plymouth

Pour ceux d'entre vous qui se demandent ce que j'ai mis dans ce fichier, voici le contenu dans son intégralité glorieuse:

#! / bin / sh quitter

J'ai redémarré en m'attendant à une erreur et ... étonnamment, systemd était heureux d'avoir trouvé ce "composant essentiel", car il a terminé le processus de démarrage et sans plus tarder il m'a laissé dans la console. Comme je n'en croyais pas mes yeux, j'ai décidé de «désinstaller» Plymouth et de redémarrer, pour voir ce qui s'était passé:

rm -fr / usr / bin / plymouth redémarrage

Étrangement, cette fois, le système a démarré tranquillement sans m'ennuyer davantage avec l'absence de Plymouth. (Sans commentaires)

Ajout de Windows à GRUB

Il restait ensuite à ajouter l'entrée Windows à GRUB. Comme les itinéraires traditionnels ne fonctionnaient pas (la combinaison de grub-mkconfig avec os-prober ne semblait pas bien fonctionner), j'ai décidé de créer l'entrée manuellement, pour laquelle je devais détecter la chaîne du chargeur de démarrage Windows et l'UUID de la partition de démarrage:

mkdir -p / mnt / winboot && mount / dev / sda1 / mnt / winboot grub-probe --target = hints_string / mnt / winboot / bootmgr grub-probe --target = fs_uuid / mnt / winboot / bootmgr

Cela m'a renvoyé respectivement ces deux chaînes:

--hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1
DC788F27788EFF8E

De cette façon, j'ai vérifié que l'UUID renvoyé était le même que celui obtenu pour cette partition lors de l'exécution de la commande blkid. Il était alors nécessaire de générer une entrée grub personnalisée avec lesdites données:

vi /etc/grub.d/40_custom

Dans son contenu:

#! / bin / sh exec tail -n +3 $ 0 # Ce fichier fournit un moyen facile d'ajouter des entrées de menu personnalisées. Tapez simplement les # entrées de menu que vous souhaitez ajouter après ce commentaire. Veillez à ne pas modifier # la ligne 'exec tail' ci-dessus. menuentry "Microsoft Windows 7 SP1" --class windows --class os {insmod part_msdos insmod ntfs insmod search_fs_uuid insmod ntldr recherche --fs-uuid --set = root --hint-bios = hd0, msdos1 --hint-efi = hd0, msdos1 --hint-baremetal = ahci0, msdos1 DC788F27788EFF8E ntldr / bootmgr}

Une fois cette étape terminée, j'ai décidé de définir Windows comme système d'exploitation par défaut, afin que ma femme ne panique pas et que ma nièce puisse jouer ses Barbies quand elle viendra. Pour cela j'ai simplement édité le fichier / Etc / default / grub et j'ai mis l'entrée pour lancer par défaut et le délai d'expiration à seulement 3 secondes.

GRUB_DEFAULT = 2 GRUB_TIMEOUT = 3

Il ne restait plus qu'à régénérer la configuration GRUB et redémarrer:

grub-mkconfig -o /boot/grub/grub.cfg redémarrage

Heureusement, tout s'est déroulé comme prévu. J'ai sélectionné l'entrée Windows et cela a commencé joyeusement.

Donc, comme vous pouvez le voir, si vous pouvez faire au moins une pseudo-installation ArchLinux hors ligne étape par étape sans être en ligne uniquement avec le CD, bien évidemment, ce qui sera installé sur le disque dur est essentiellement un LiveCD, mais au moins il peut démarrer un système, copier des fichiers et exécuter certaines applications.

Heureusement, Sandy (KZKG ^ Gaara) s'est arrêté et a copié le dépôt Arch (pour lequel je suis très reconnaissant), donc je prévois de terminer bientôt une véritable installation hors ligne, mais ce serait une autre histoire. Ce que je peux vous assurer, c'est que depuis un certain temps, ce genre d'expérimentation amusante me manque un peu. En fait, si j'avais le temps, la connectivité dans la maison et certaines conditions matérielles assurées, j'essaierais probablement de faire une distribution personnalisée basée sur LFS, ce qui serait un projet beaucoup plus amusant. 😉


19 commentaires, laissez le vôtre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.

  1.   Petercheco dit

    J'espère que vous essayez FreeBSD Elav.
    Quant à votre guide, très très très bon et complet ...

    1.    Rampe dit

      Comme vous êtes changeant. Je vous assure que vous vous ennuierez avec FreeBSD dans quelques mois.

      1.    lf dit

        Informations intéressantes, mais je ne vois toujours pas de guides pour installer Arch dans les systèmes avec UEFI, les archers ont-ils de nouveaux PC?

        1.    animé dit

          L'installation avec UEFI dans ArchLinux est simplifiée en installant Antergos, il vous suffit de créer une partition dans Fat32 avec moins de 500 Mo et automatiquement (lorsque vous démarrez l'USB avec UEFI), Antergos marquera la partition comme / boot.

      2.    Petercheco dit

        C'est pourquoi je change ... Pour ne plus changer je passe de Linux à BSD: D.

    2.    Petercheco dit

      Modification apportée et guide écrit: D.

    1.    ozkar dit

      Continuez à utiliser Arch, que quand je vais à La Havane, je le récupère.

  2.   Alex dit

    J'ai un iso Arch Linux sur mon usb je n'ai pas osé l'utiliser faute de temps.
    Je vais prendre une bonne critique de l'article et ensuite l'utiliser!

  3.   Cœur de guerre dit

    Excellent article, au fait cela me rappelle l'odyssée que j'ai traversée pour installer Arch via WIFI avec un BCM4312.

  4.   kalevito dit

    Elav, excusez la question mais je suis nouveau sur Linux, je n'ai utilisé que ubuntu et arch linux attire mon attention. Mes amis disent que je ne pourrai pas l'installer car c'est pour des experts, mais en voyant votre tutoriel hors ligne, je pense qu'en suivant pas à pas je peux le faire, c'est un défi pour moi de l'installer. Seulement je veux le faire avec Internet, là ma question: avez-vous ou quand allez-vous faire un tutoriel avec autant de détails (comme celui-ci) pour l'installer?

    1.    Daecko dit

      Le guide est publié sur ce site. https://blog.desdelinux.net/guia-de-instalacion-de-arch-linux-2014/

      😀 Donc en utilisant le guide et en faisant attention à ce qui est fait, nous aurons une installation sans complications, chance!

    2.    animé dit

      Vous pouvez toujours installer Antergos, qui est Archlinux mais avec une installation "à la Ubuntu" .. 😀

  5.   aphanique dit

    Dans Arch, il existe un autre support d'installation alternatif aux images officielles appelé Archboot qui, contrairement aux images officielles, contient le référentiel [core] (et autre chose), utile pour les installations hors ligne (c'est aussi une architecture hybride, il est utilisé pour i686 et pour x86_64).

    La mauvaise chose est qu'il occupe 1 Go actuellement (il occupait beaucoup moins d'années auparavant) qu'il faudrait télécharger avant ... et sans une connexion stable pour faire ce téléchargement initial est compliqué.

    Voici un lien au cas où vous le trouveriez utile: https://wiki.archlinux.org/index.php/archboot

    1.    animé dit

      Intéressant, je ne le connaissais pas 😀

    2.    Hugo dit

      Eh bien, curieusement, il y a quelque temps, j'ai essayé archboot et quand j'arrive à la partie pacstrap, cela me dit qu'il ne peut pas trouver le paquet ntfs-3g 🙁

      Il a également d'autres particularités, comme le fait qu'il n'inclut pas de mc ou de pages de manuel, et qu'il a besoin de beaucoup de RAM pour être installé. Cela ne semble pas être une solution bien rodée.

  6.   Max Steel dit

    La vérité est qu'il existe un moyen très simple d'installer Arch hors ligne et que j'ai dû faire des essais et erreurs classiques pour l'installer sur mon PC personnel (où je n'ai pas Internet).

    Pour cela, vous avez évidemment besoin d'un autre PC avec un arc et une connexion Internet. Faites simplement un pacman -Syu d'abord, puis une base pacman -Sw (plus tout ce que vous voulez installer évidemment). Copiez tous les fichiers du cache pacman sur une clé USB ainsi que les fichiers de la base de données (/var/lib/pacman/sync/{core.db, extra.db, community.db}.

    Ensuite, procédez à l'installation normale de arch, mais avant d'arriver au point de faire le pacstrap - d / mnt base (ou peu importe, je dis tout de mémoire>. <) Vous devez éditer précisément pacstrap (avec vi ou ce que vous préférez ou apportez le disque d'installation) et presque à la fin il y a une ligne qui fait référence à "pacman -Syy", nous la supprimons simplement. Ensuite, nous copions les fichiers de la base de données pacman à leur emplacement correspondant (tous les fichiers .db dans / var / lib / pacman / sync), et les fichiers cache dans le répertoire cache.

    Alors maintenant, nous procédons avec pacstrap -loquenomeaccord / mnt base et tout le reste.

    Tout ce que je dis de mémoire, donc il me reste peut-être des détails, tels que les fichiers cache, je ne me souviens pas exactement où ils vont mais cela devrait être dans / var / cache / pacman / pkg ou s'il ne peut pas être spécifié dans pacstrap me semble.

  7.   Leonel dit

    Vous pouvez faire un tutoriel cfdisk avec double ou triple démarrage 🙁, outre ce dont j'ai besoin pour installer arch

    1.    Hugo dit

      Il n'y a vraiment pas grand-chose à dire sur cfdisk car il n'est pas du tout complexe, et en fait le guide d'installation référencé ci-dessus montre essentiellement comment l'utiliser. Mais si vous avez d'autres systèmes installés, vous pouvez utiliser quelque chose de plus convivial, peut-être Gparted. Pour Windows, il existe un outil gratuit (bien que malheureusement pas gratuit) appelé Easeus Partition Master que vous pouvez utiliser, il semble fonctionner très bien.

      Pour le reste je suis content que vous ayez trouvé l'article intéressant, je n'ai pas vu le grand mérite de mon expérience, mais Elav m'a encouragé à préparer quelque chose à ce sujet.