ArchLinux offline pseudo-installation trin for trin

Denne artikel blev sendt til mig af vores ven Hugo Florentino via e-mail, hvor han fortæller os om sin erfaring med at prøve at installere ArchLinux uden at have noget lager ved hånden, bare ved hjælp af installationsdisken

Pseudo-installation

For et par dage siden downloadede jeg ArchLinux ISO for at lave en hjemmeinstallation. Efter at have tidligere brugt andre distributioner, der giver dig mulighed for at installere mindst en minimal database fra cd'en, ville jeg gøre noget lignende, men mærkeligt nok er Arch-installationsprocessen ikke designet til en computer, der ikke har internetadgang (bivirkninger af udviklere, der lever i den første verden).

I mit tilfælde havde jeg allerede Windows 7 (med sin boot- og systempartition) og Fedora (med dens swap og dens dedikerede / boot-partition) på min disk. Ideen var derefter at administrere at installere Arch, hvor Fedora tidligere var, uden at ødelægge Windows i processen.

ArchLinux offline pseudo-installation

Nå startede jeg fra Arch-cd'en ved at vælge x86_64 og efterlod mig uden en masse problemer ved en konsol. Jeg tænkte: "Wow, disse fyre er seriøse over at ikke være en rookie-distro ... okay, lad os spille sammen dengang og se hvad der sker."

Jeg oplistede biblioteket, hvor jeg skulle se, om der var nogen dokumentation, og jeg opdagede, at der faktisk var en tekst med en elementær installationsvejledning. Jeg skrev, hvad der var relevant, på et stykke papir (jeg har ikke en printer derhjemme) og kom på arbejde.

Den første ting, jeg gjorde, var at ændre tastaturlayoutet til spansk fra Spanien, hvilket var lettere end forventet (der er endda en nysgerrig kaldet us-accenter):

loadkeys es

Den næste ting var at montere en ekstern disk for at gemme en kopi af MBR i tilfælde af problemer og i øvrigt gemme de vigtige oplysninger, som jeg havde i min Fedora:

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

Heldigvis understøtter Archs LiveCD NTFS og har indbygget Midnatskammerat (MC), så på ingen tid var jeg færdig med at gemme resten af ​​informationen.

Derefter afmonterede jeg disken, fjernede den midlertidige mappe og fysisk fjernede den eksterne disk for at reducere risikoen for potentielle "cagastrofer."

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

Så jeg formaterede mine partitioner, monterede rod- og bootpartitionen og tændte 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

Det næste trin var min første forhindring:

pacstrap /mnt base

Arch forsøgte naturligvis at kigge efter databaserne på en af ​​spejlerne og ikke kunne finde alt pacstrap Det gjorde var at oprette en katalogstruktur i / mnt, meget organiseret, men åbenbart tom.

Over telefonen spurgte jeg et par venner, der bruger Arch, om der ikke var nogen måde at installere uden internetadgang i det mindste de samme pakker, der er på LiveCD, uden at have et arkiv kopieret til disk heller, og de fortalte mig, at i det mindste de vidste ikke, hvordan de skulle gøre det.

Jeg fandt den tekniske 'udfordring' interessant, så jeg tænkte, 'hvis Arch er i stand til at logge ind i LiveCD-tilstand, skal den være i stand til at installere på en harddisk i mindst den samme tilstand', så jeg prøvede ved manuelt at kopiere filer og efter resten af ​​selvstudiet (med den ulige mindre ændring) for at se, hvad der skete:

rsync -avl / {bin osv., hjem, lib, lib64, opt, root, sbin, srv, usr, var} / mnt arch-chroot / mnt genfstab -p / >> / etc / fstab echo hpc> / etc / værtsnavn ln -sf / usr / share / zoneinfo / Cuba / etc / localtime locale-gen

Det næste trin var min næste forhindring:

mkinitcpio -p linux

Denne kommando producerede nogle fejl efter at have læst kommandovejledningen og indholdet af filerne /etc/mkinitcpio.conf y /etc/mkinitcpio.d/linux.preset, Jeg forstod, at kommandoen ikke kunne finde filen vmlinuz-linux, så jeg trykkede på Ctrl + D for at afslutte chroot-miljøet og ledte efter en fil, der lignede den:

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

Det sker, at Archs LiveCD monterer startfilerne under biblioteket / løb /, så jeg besluttede at kopiere dem til min / støvle / at have dem handy i mit chroot-miljø:

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

Som en anden fejl, som jeg fandt ud af at eksperimentere med mkinitcpio, var at etiketten på rodpartitionen ikke kunne findes, skrev jeg ned dens UUID (som jeg identificerede ved hjælp af blkid-kommandoen) til brug sammen med kommandoen, som endelig så ud som dette:

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

Denne gang sluttede bygningen med succes, kun med et par advarsler om moduler, der ikke kunne findes, men i mit tilfælde ikke var nødvendige. Bare hvis jeg genopretter fstab, men denne gang angiver jeg UUID:

genfstab -U -p / > /etc/fstab

Jeg tænkte: Nå ja, endelig fremskridt. Og jeg fortsatte med at ændre adgangskoden og installere en bootloader.

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

Endelig og for at være metodisk trykkede jeg igen på Ctrl + D for at forlade det rodede miljø, adskillede alt og genstartede for at se, hvad der skete:

umount / mnt / boot umount / mnt genstart

Computeren genstartet med Grub-menuen med Arch (Windows dukkede ikke op nogen steder), så jeg valgte den, og alt syntes at indlæse fint indtil ... systemet angav, at der havde været fejl, som jeg skulle kontrollere med følgende kommando:

journalctl -xb

Ved at analysere fejlene så jeg, at de fleste kunne ignoreres, men den sidste var usædvanlig og fortalte mig, at plymouth ikke kunne findes.

Jeg tænkte straks, 'Plymouth ??? Hvorfor i helvede har et konsolstartmiljø brug for noget lignende? Det synes ikke meget KISS at sige. Jeg har bestemt ikke sagt det, og jeg har heller ikke brug for det. "

Men for at være praktisk tænkte jeg: "Nå, men det skal i det mindste refereres til i en fil, lad os se ...":

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

Overraskende nok opstod der ingen fil med tekststrengen "plymouth" i konfigurationsmappen. Jeg tænkte da: «Åh, så ... tvinger du dig selv med mig? så lad os se, hvordan du assimilerer en 'kanon' "(som vi siger på Cuba), og" jeg byggede "plymouth fra bunden:

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

For de af jer, der spekulerer på, hvad jeg lægger i den fil, her er indholdet i dets strålende helhed:

#! / bin / sh exit

Jeg genstartede igen og forventede en fejl og ... overraskende var systemd glad for at have fundet den "vigtige komponent", fordi den afsluttede opstartsprocessen og uden yderligere forsinkelse efterlod den mig i konsollen. Da jeg ikke kunne tro mine øjne, besluttede jeg at "afinstallere" plymouth og genstarte for at se, hvad der ville ske:

rm -fr / usr / bin / plymouth genstart

Mærkeligt nok startede systemet denne gang stille uden yderligere at irritere mig med Plymouths fravær. (Ingen kommentarer)

Tilføjelse af Windows til GRUB

Det var derefter at tilføje Windows-posten til GRUB. Da de traditionelle ruter ikke fungerede (kombinationen af grub-mkconfig med os-prober syntes ikke at fungere godt), besluttede jeg at oprette posten manuelt, som jeg havde brug for til at registrere Windows bootloader-strengen og UUID for bootpartitionen:

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

Dette gav mig henholdsvis disse to strenge:

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

På denne måde bekræftede jeg, at UUID-returneringen var den samme som den, der blev opnået for denne partition, når jeg udførte blkid-kommandoen. Det var derefter nødvendigt at generere en brugerdefineret grub-post med nævnte data:

vi /etc/grub.d/40_custom

I dets indhold:

#! / bin / sh exec tail -n +3 $ 0 # Denne fil giver en nem måde at tilføje brugerdefinerede menupunkter på. Indtast blot de # menuposter, du vil tilføje efter denne kommentar. Pas på ikke at ændre linjen 'exec tail' ovenfor. menuindlæg "Microsoft Windows 7 SP1" - klassevinduer - klasse os {insmod part_msdos insmod ntfs insmod search_fs_uuid insmod ntldr search --fs-uuid --set = root --hint-bios = hd0, msdos1 --hint-efi = hd0, msdos1 - tip-baremetal = ahci0, msdos1 DC788F27788EFF8E ntldr / bootmgr}

Når dette trin var afsluttet, besluttede jeg at indstille Windows som standardoperativsystem, så min kone ikke får panik, og min niece kan spille sine barbies, når hun kommer. Til dette redigerede jeg blot filen / Etc / default / grub og jeg indstiller input til start som standard og timeout til kun 3 sekunder.

GRUB_DEFAULT = 2 GRUB_TIMEOUT = 3

Det forblev kun at regenerere GRUB-konfigurationen igen og genstarte:

grub-mkconfig -o /boot/grub/grub.cfg genstart

Heldigvis gik alt som forventet. Jeg valgte Windows-posten, og den startede lykkeligt.

Så som du kan se, kan mindst en ArchLinux offline pseudoinstallation udføres trin for trin uden kun at være online med CD'en, selvom det naturligvis er, hvad der vil blive installeret på harddisken i det væsentlige en LiveCD, men i det mindste kan den starte et system, kopier filer og kør nogle applikationer.

Heldigvis kom Sandy (KZKG ^ Gaara) forbi og kopierede Arch Repo (som jeg er meget taknemmelig for), så jeg planlægger snart at afslutte en rigtig offlineinstallation, men dette ville være en anden historie. Hvad jeg kan forsikre dig om er, at jeg i lang tid har savnet denne form for sjov eksperimentering lidt. Faktisk hvis jeg havde tid, tilslutningsmuligheder i huset og visse materielle forhold sikret, ville jeg sandsynligvis forsøge at lave en brugerdefineret distribution baseret på LFS, hvilket ville være et meget sjovere projekt. 😉


Efterlad din kommentar

Din e-mailadresse vil ikke blive offentliggjort. Obligatoriske felter er markeret med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Control SPAM, management af kommentarer.
  3. Legitimering: Dit samtykke
  4. Kommunikation af dataene: Dataene vil ikke blive kommunikeret til tredjemand, undtagen ved juridisk forpligtelse.
  5. Datalagring: Database hostet af Occentus Networks (EU)
  6. Rettigheder: Du kan til enhver tid begrænse, gendanne og slette dine oplysninger.

  1.   Petercheco sagde han

    Håber du prøver FreeBSD Elav.
    Hvad din guide angår, meget meget meget god og komplet ...

    1.    Rampe sagde han

      Hvor foranderlig du er. Jeg kan forsikre dig om, at du keder dig med FreeBSD om et par måneder.

      1.    lf sagde han

        Interessante oplysninger, men jeg kan stadig ikke se guider til installation af arch i systemer med UEFI. Har bueskytterne nye pc'er?

        1.    Elav sagde han

          Installationen med UEFI i ArchLinux forenkles ved at installere Antergos, du skal kun oprette en partition i Fat32 med mindre end 500 MB og automatisk (når du starter USB med UEFI), markerer Antergos partitionen som / boot.

      2.    Petercheco sagde han

        Derfor skifter jeg ... For ikke at ændre mere går jeg fra Linux til BSD: D.

    2.    Petercheco sagde han

      Ændring foretaget og skriftlig guide: D.

  2.   r @ y sagde han
    1.    ozkar sagde han

      Bliv ved med at bruge Arch, når jeg tager til Havana, henter jeg det.

  3.   Alex sagde han

    Jeg har en Arch Linux-iso på min usb. Jeg turde ikke bruge den på grund af mangel på tid.
    Jeg vil tage en god gennemgang af artiklen og derefter bruge den!

  4.   Krigshjerte sagde han

    Fremragende artikel, forresten minder den mig om odyssey, jeg gik igennem for at installere Arch via WIFI med en BCM4312.

  5.   kalevito sagde han

    Elav, undskyld spørgsmålet, men jeg er ny på linux, jeg har kun brugt ubuntu og arch linux fanger min opmærksomhed. Mine venner siger, at jeg ikke vil være i stand til at installere det, fordi det er til eksperter, men når jeg ser din offline tutorial, tror jeg, at efter trin for trin kan jeg gøre det, det er en udfordring for mig at installere det. Kun jeg vil gøre det med Internettet, der er mit spørgsmål: har du, eller hvornår vil du lave en tutorial med så mange detaljer (som denne) for at installere den?

    1.    daekko sagde han

      Guiden offentliggøres på dette websted. https://blog.desdelinux.net/guia-de-instalacion-de-arch-linux-2014/

      Så ved hjælp af guiden og opmærksom på, hvad der er gjort, har vi en installation uden komplikationer, held!

    2.    Elav sagde han

      Du kan stadig installere Antergos, som er Archlinux, men med en "Ubuntu-stil" installation .. 😀

  6.   afanisk sagde han

    I Arch er der et andet alternativt installationsmedium til de officielle billeder kaldet Archboot, der i modsætning til de officielle billeder indeholder [core] repository (og noget andet), der er nyttigt til offlineinstallationer (det er også en hybridarkitektur, det bruges til i686 og til x86_64).

    Den dårlige ting er, at den optager 1 GB lige nu (det plejede at være optaget for meget mindre år siden), der skulle downloades før ... og uden en stabil forbindelse for at udføre den indledende download er kompliceret.

    Her er et link, hvis du finder det nyttigt: https://wiki.archlinux.org/index.php/archboot

    1.    Elav sagde han

      Interessant, jeg kendte ham ikke 😀

    2.    Hugo sagde han

      Nå, nysgerrig, for et stykke tid siden prøvede jeg archboot, og når jeg kommer til pacstrap-delen, fortæller det mig, at det ikke kan finde ntfs-3g-pakken 🙁

      Det har også andre særegenheder, såsom at det ikke inkluderer mc eller manuelle sider, og det har brug for en masse ram at installere. Det virker ikke som en velpoleret løsning.

  7.   Max stål sagde han

    Sandheden er, at der er en meget enkel måde at installere arch offline på, og som jeg var nødt til at gøre den klassiske prøve og fejl for at installere den på min hjemme-pc (hvor jeg ikke har internet).

    Til dette har du naturligvis brug for en anden pc med en bue og internetforbindelse. Lav bare en pacman -Syu først og derefter en pacman -Sw-base (plus alt hvad du selvfølgelig vil installere). Kopier alle filerne fra pacman-cachen til en usb-stick og også databasefilerne (/var/lib/pacman/sync/{core.db, extra.db, community.db}.

    Fortsæt derefter med at udføre den normale installation af arch, men inden du når det punkt, hvor du laver pacstrap - d / mnt-basen (eller hvad som helst, jeg siger alt fra hukommelsen>. <) Du skal redigere præcist pacstrap (med vi eller hvad du foretrækker eller bringe installationsdisken) og næsten til slutningen er der en linje, der henviser til "pacman -Syy", vi sletter den simpelthen. Herefter kopierer vi pacman-databasefilerne til deres tilsvarende sted (alle .db-filer til / var / lib / pacman / sync) og cache-filerne til cache-biblioteket.

    Så nu fortsætter vi med pacstrap -loquenomeaccord / mnt base og alt andet.

    Alt hvad jeg siger fra hukommelsen, så der kan være nogle detaljer, som jeg er gået, såsom cache-filer, jeg kan ikke huske nøjagtigt, hvor de går, men det skal være i / var / cache / pacman / pkg, eller hvis det ikke kan specificeres i pacstrap synes mig.

  8.   leonel sagde han

    Du kunne lave en cfdisk-tutorial med dobbelt eller tredobbelt boot 🙁, hvad jeg har brug for at installere arch

    1.    Hugo sagde han

      Der er virkelig ikke meget at sige om cfdisk, da det slet ikke er komplekst, og faktisk viser installationsguiden, der er nævnt ovenfor, grundlæggende, hvordan man bruger den. Men hvis du har andre systemer installeret, kan du bruge noget mere venligt, måske Gparted. For Windows er der et gratis værktøj (selvom det desværre ikke er gratis) kaldet Easeus Partition Master, som du kunne bruge, det ser ud til at fungere meget godt.

      For resten er jeg glad for, at du fandt artiklen interessant, jeg så ikke den store fortjeneste ved min erfaring, men Elav opmuntrede mig til at forberede noget på det.