Rettung des Arch Linux Systems

aptosiduser

New member
Registriert
27 Juli 2013
Beiträge
45
Guten Abend,

habe mal vor 3 Tagen beim Upgrade meinen Arch zerschossen, und habe es heute versucht zu repairieren. Habe null Bock alles neu zu installieren und einzurichten.

Auf dem Euch vielleicht bekannten Blog Linux und ich fand ich eine Anleitung, wie man mit einen Linux-Live-System Arch Linux rettet.

Link https://linuxundich.de/gnu-linux/arch-linux-aus-ubuntu-oder-anderen-live-linuxen-retten/

Habe alles gemacht was dort steht, allerdings kam ich bei den letzten Befehl chroot /arch bash nicht weiter.

Kann mir jemand da behilfich sein, und mir verraten wie ich das Problem loese? :eek:

Code:
[paclive@pacbang ~]$ su
[root@pacbang paclive]# mkdir /arch
[root@pacbang paclive]# mount /dev/sda1 /arch
[root@pacbang paclive]# mount /dev/sda2 /arch/home
mount: /dev/sda2 is write-protected, mounting read-only
mount: special device /dev/sda2 does not exist
[root@pacbang paclive]# mount -t proc none /arch/proc
[root@pacbang paclive]# mount -t sysfs none /arch/sys
[root@pacbang paclive]# pacman -S bind
resolving dependencies...
looking for conflicting packages...

Packages (1) bind-9.10.3.P4-1

Total Download Size:   0.29 MiB
Total Installed Size:  0.86 MiB

:: Proceed with installation? [Y/n] 
:: Retrieving packages...
 bind-9.10.3.P4-1-i686    295.9 KiB  1248K/s 00:00 [######################] 100%
(1/1) checking keys in keyring                     [######################] 100%
(1/1) checking package integrity                   [######################] 100%
(1/1) loading package files                        [######################] 100%
(1/1) checking for file conflicts                  [######################] 100%
(1/1) checking available disk space                [######################] 100%
:: Processing package changes...
(1/1) installing bind                              [######################] 100%
[root@pacbang paclive]# mount -o bind /dev /arch/dev
[root@pacbang paclive]# mount -o bind /dev/pts /arch/dev/pts
[root@pacbang paclive]# chroot /arch bash
chroot: failed to run command ‘bash’: Exec format error
[root@pacbang paclive]# pacman -S bash
warning: bash-4.3.042-4 is up to date -- reinstalling
resolving dependencies...
looking for conflicting packages...

Packages (1) bash-4.3.042-4

Total Download Size:   1.22 MiB
Total Installed Size:  6.24 MiB
Net Upgrade Size:      0.00 MiB

:: Proceed with installation? [Y/n] 
:: Retrieving packages...
 bash-4.3.042-4-i686     1250.6 KiB  1483K/s 00:01 [######################] 100%
(1/1) checking keys in keyring                     [######################] 100%
(1/1) checking package integrity                   [######################] 100%
(1/1) loading package files                        [######################] 100%
(1/1) checking for file conflicts                  [######################] 100%
(1/1) checking available disk space                [######################] 100%
:: Processing package changes...
(1/1) reinstalling bash                            [######################] 100%
[root@pacbang paclive]# chroot /arch bash
chroot: failed to run command ‘bash’: Exec format error
[root@pacbang paclive]#

Liebe Gruesse
aptosiduser
 
Exec-Format == falsche Bit-Version.

Installation == 64bit, LiveCD == 32bit.


Grüße
 
Bitte nimm für eine Arch-Reparatur das Arch-Image und dort den Befehl arch-chroot (oder so ähnlich). Vorgehen nur, wie es im Arch-Wiki beschrieben ist. Vor allem solltest du uns erzählen, was genau du kaputt gemacht hast.
 
Aber auch da: Beachte die Bits ;)

Ein 64bit-System kannst du NUR aus einer 64bit-Umgebung chrooten, ein 32Bit-System aber auch aus einer 64bit-Umgebung.

@Sammy: Da er alle wichtigen Verzeichnisse bind mountet, kann er problemlos irgendeine CD nehmen. Arch-Chroot macht nämlich nur genau das .. und nichts anderes ;) Und da das Live-System nach einem Chroot (abgesehen vom Kernel) völlig egal ist, ist es nur wichtig die passenden Folder zu binden, egal wie :)

Vermutung was kaputt ist: Update auf Pacman 5.0 ;)

Wenn es der Fehler ist, ist sogar das bind mounten egal, da verzeichnisse wie /proc /dev etc pp nur für den Kernel / Module wichtig sind, aber für Programme nachinstallieren / erneut installieren, wie Pacman etc pp, völlig egal :)
 
Der Vorteil von arch-chroot ist, dass man sich um proc, sys etc. keine Gedanken machen braucht. Man kann es natürlich per Hand von fast jedem System machen, man läuft dann aber auch Gefahr, irgendeine unpassende Anleitung zu verwenden.

PS: Ich bastele viel an meinem Arch, aber kaputt habe ich es noch nicht bekommen. Erst recht nicht durch Updates.
 
Beim ersten Satz gebe ich dir natürlich vollkommen recht! Es sorgt einfach dafür das du nichts vergisst ;)

Beim 2ten: Hach .. es wäre so schön gewesen .. ich nutze Arch seit 2002 ... und glaub mir .. es gab viele .. wirklich viele! updates die irgendwas elementares kaputt gemacht haben.

Gerade änderungen an Pacman (Signatur wurde eingeführt) oder sprünge in den bash-Versionen etc pp.

Das kann je nach Config / Mirror zu fiesen schweinerein führen -.-
 
Erstmal vielen Dank an alle fuer die Aufmerkamkeit zu meinem Problem!

Und nun kommt die Rueckmeldung: ich kann den Befehl

Code:
chroot /arch /bin/bash

mit der folgender Konsolenbegruendung nicht ausfuehren:

Code:
[paclive@pacbang ~]$ sudo chroot /arch bash
chroot: failed to run command ‘bash’: No such file or directory



Ein anderer Befehl auf arch-chroot-Grundlage schafft es auch nicht:

Code:
[paclive@pacbang ~]$ sudo chroot /mnt/arch /bin/bash
chroot: cannot change root directory to '/mnt/arch': No such file or directory

Ein Blick unter /bin- Verzeichnis verraet folgendes:
Code:
[paclive@pacbang ~]$ sudo ls /mnt/arch/usr/bin/
ls: cannot access '/mnt/arch/usr/bin/': No such file or directory
[paclive@pacbang ~]$

Irgendwas ging hier schief. obwohl ich in der linux und ich -Anleitung alles bis auf bash-Befehl ausfuehren koennte.

- - - Beitrag zusammengeführt - - -

Hier noch meine Ausgabe von lsblk:

Code:
[paclive@pacbang ~]$ sudo lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 298.1G  0 disk 
└─sda1   8:1    0 298.1G  0 part /arch/home
sdb      8:16   1  29.5G  0 disk 
├─sdb1   8:17   1  29.5G  0 part /run/media/paclive/76AAEC52AAEC1083
└─sdb4   8:20   1   341M  0 part 
sdc      8:32   1   7.5G  0 disk 
├─sdc1   8:33   1   688M  0 part /run/archiso/bootmnt
└─sdc2   8:34   1    31M  0 part 
sr0     11:0    1  1024M  0 rom  
loop0    7:0    0 623.8M  1 loop /run/archiso/sfs/airootfs
[paclive@pacbang ~]$

Ob die neueste Version von pacman die Ursache ist, kann ich nicht nachvollziehen, denn ich habe bis zum Crash mit anschliessender Kernel-Panic taeglich updates installiert. Testing Repo benutze ich nicht. Habe damit schlechte Erfahrungen gesammelt. Und ich habe die 64-Bit ISO auf dem ISO gestern kopiert um das 64 Bit System zu retten.
 
Zuletzt bearbeitet:
Fehlermeldungen lesen und verstehen. Nach welcher Anleitung bist du vorgegangen?

chroot: failed to run command ‘bash’: No such file or directory: Bitte schau dir den Befehl nochmal an. "bash" findet er selbstverständlich nicht, "/usr/bin/bash" hätte er möglicherweise gefunden. Außerdem hast du die Root-Partition unter /arch gemountet.

chroot: cannot change root directory to '/mnt/arch': No such file or directory: Jetzt bist du plötzlich bei /mnt/arch, was es aber nicht gibt.

Hier noch meine Ausgabe von lsblk: Interessanter wäre die Ausgabe von "findmnt". Es sieht mir aber so aus, als hättest du sda1 unter /arch/home gemountet, obwohl auf sda1 wohl eher dein Root liegen dürfte.

Bitte lies dir folgende Seite durch und führe ein chroot (bzw. arch-chroot) wie beschrieben durch: https://wiki.archlinux.org/index.php/change_root

Was willst du danach eigentlich machen? Was ist überhaupt kaputt gegangen? Das hast du uns immer noch nicht erzählt. Ein Kernel Panic kommt selten allein, normalerweise steht direkt davor, wo es geklemmt hat.
 
Ich weiss selbst nicht was kaputt gegangen ist. Ich habe vor 3 Tagen auf KDE 5.6.2 geupgraded, dann reboot gemacht, und konnte ploetzlich kein SDDM mehr sehen. Nur noch noch systemd 229 Meldung und blinkendes Textkursor. Was ich jetzt machen moechte ist, dass ich von einer arch-live CD bzw pacbang auf den root-Verzeichnis durch die Konsole komme und dort die neusten updates und Grub und Kernel neu aufsetzen, denn ich habe im Moment einen Kernel panic. Wodurch Kernel Panic verursacht wurde, habe ich auch keine Ahnung.
Aber gut :) ich werde erstmal die Wikiseite von Dir durchstoebern, und alles tun was da steht. Ich melde mich bald wieder.

- - - Beitrag zusammengeführt - - -

Hier einmal die Ausgabe von findmnt:

Code:
[paclive@pacbang ~]$ findmnt
TARGET                           SOURCE     FSTYPE  OPTIONS
/                                airootfs   overlay rw,relatime,lowerdir=/run/ar
├─/proc                          proc       proc    rw,nosuid,nodev,noexec,relat
│ └─/proc/sys/fs/binfmt_misc     systemd-1  autofs  rw,relatime,fd=32,pgrp=1,tim
├─/sys                           sys        sysfs   rw,nosuid,nodev,noexec,relat
│ ├─/sys/kernel/security         securityfs securit rw,nosuid,nodev,noexec,relat
│ ├─/sys/fs/cgroup               tmpfs      tmpfs   ro,nosuid,nodev,noexec,mode=
│ │ ├─/sys/fs/cgroup/systemd     cgroup     cgroup  rw,nosuid,nodev,noexec,relat
│ │ ├─/sys/fs/cgroup/cpu,cpuacct cgroup     cgroup  rw,nosuid,nodev,noexec,relat
│ │ ├─/sys/fs/cgroup/blkio       cgroup     cgroup  rw,nosuid,nodev,noexec,relat
│ │ ├─/sys/fs/cgroup/freezer     cgroup     cgroup  rw,nosuid,nodev,noexec,relat
│ │ ├─/sys/fs/cgroup/devices     cgroup     cgroup  rw,nosuid,nodev,noexec,relat
│ │ ├─/sys/fs/cgroup/memory      cgroup     cgroup  rw,nosuid,nodev,noexec,relat
│ │ ├─/sys/fs/cgroup/cpuset      cgroup     cgroup  rw,nosuid,nodev,noexec,relat
│ │ ├─/sys/fs/cgroup/net_cls     cgroup     cgroup  rw,nosuid,nodev,noexec,relat
│ │ └─/sys/fs/cgroup/pids        cgroup     cgroup  rw,nosuid,nodev,noexec,relat
│ ├─/sys/fs/pstore               pstore     pstore  rw,nosuid,nodev,noexec,relat
│ ├─/sys/kernel/debug            debugfs    debugfs rw,relatime
│ ├─/sys/kernel/config           configfs   configf rw,relatime
│ └─/sys/fs/fuse/connections     fusectl    fusectl rw,relatime
├─/dev                           dev        devtmpf rw,nosuid,relatime,size=4017
│ ├─/dev/shm                     tmpfs      tmpfs   rw,nosuid,nodev
│ ├─/dev/pts                     devpts     devpts  rw,nosuid,noexec,relatime,gi
│ ├─/dev/mqueue                  mqueue     mqueue  rw,relatime
│ ├─/dev/hugepages               hugetlbfs  hugetlb rw,relatime
│ └─/dev/pts                     devpts     devpts  rw,nosuid,noexec,relatime,gi
├─/run                           run        tmpfs   rw,nosuid,nodev,relatime,mod
│ ├─/run/archiso/bootmnt         /dev/sdc1  iso9660 ro,relatime
│ ├─/run/archiso/cowspace        cowspace   tmpfs   rw,relatime,size=262144k,mod
│ ├─/run/archiso/sfs/airootfs    /dev/loop0 squashf ro,relatime
│ ├─/run/user/1000               tmpfs      tmpfs   rw,nosuid,nodev,relatime,siz
│ │ └─/run/user/1000/gvfs        gvfsd-fuse fuse.gv rw,nosuid,nodev,relatime,use
│ └─/run/media/paclive/76AAEC52AAEC1083
│                                /dev/sdb1  fuseblk rw,nosuid,nodev,relatime,use
├─/tmp                           tmpfs      tmpfs   rw
├─/etc/pacman.d/gnupg            tmpfs      tmpfs   rw,relatime,mode=755
└─/arch                          /dev/sda1  ext4    rw,relatime,data=ordered
  ├─/arch/home                   /dev/sda1  ext4    rw,relatime,data=ordered
  ├─/arch/proc                   none       proc    rw,relatime
  ├─/arch/sys                    none       sysfs   rw,relatime
  └─/arch/dev                    dev        devtmpf rw,nosuid,relatime,size=4017
    └─/arch/dev/pts              devpts     devpts  rw,nosuid,noexec,relatime,gi
[paclive@pacbang ~]$

- - - Beitrag zusammengeführt - - -

Habe alles getan was da stand mit folgenden Ergebnis:

Code:
[paclive@pacbang ~]$ sudo mkdir /mnt/arch
[paclive@pacbang ~]$ sudo mount /dev/sda1 /mnt/arch
[paclive@pacbang ~]$ sudo mount /dev/sdx2 /mnt/arch/boot/
mount: /dev/sdx2 is write-protected, mounting read-only
mount: special device /dev/sdx2 does not exist
[paclive@pacbang ~]$ sudo mount /dev/sda1  /mnt/arch/boot/
[paclive@pacbang ~]$ sudo arch-chroot /mnt/arch
chroot: failed to run command ‘/bin/sh’: No such file or directory
[paclive@pacbang ~]$
 
Ui ui ui!

Du mountest sda1 2 x .. einmal nach /mnt/arch nud /mnt/arch/boot.

DAS ist nicht gut.

Du musst entspannter werden und wirklich mehr lesen und vorallem verstehen.

Du hast, soweit ich das gerade sehe, nur eine Partition, die /home und /boot etc beinhaltet. Daher musst du diese nicht seperat mounten!

Gib mir mal bitte ein

Code:
fdisk -l /dev/sda

UND! Kopiere nicht sinnbefreit Sachen, nutzte sie nur wenn du sie verstehst, wenn du sie nicht verstehst, frag nach! Sonst hättest du nicht /dev/sdx2 versucht zu mounten, das steht bestimmt so im How-To mit dem Hinweis: Pass die Partition auf deine gegebenehiten an.

Grüße
 
Danke Dir, dass Du so freundlich reagierst, ich habe es manchmal in der Tat nicht verstanden, was ich da tue :rolleyes:

Hier schau mal:

Code:
[paclive@pacbang arch]$ sudo fdisk -l /dev/sda
Disk /dev/sda: 298.1 GiB, 320072933376 bytes, 625142448 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0x65f26e8a

Device     Boot Start       End   Sectors   Size Id Type
/dev/sda1  *     2048 625141759 625139712 298.1G 83 Linux
[paclive@pacbang arch]$
 
Code:
# mkdir /mnt/arch
# mount /dev/sda1 /mnt/arch
# arch-chroot /mnt/arch /bin/bash
sollte für dich reichen.

Weißt du denn schon, welche Befehle du dann ausführen möchtest und was sie bedeuten?

denn ich habe im Moment einen Kernel panic
Bitte reproduziere ihn, mache ein Foto von deinem Bildschirm und poste es hier.
 
Gerne fuege ich ein Foto vom Kernel-Panic hier ein.

Leider kann ich das Foto nicht umdrehen.

IMG_20160410_182104.jpg

ich moechte dort auf dem System vorerst
Code:
pacman -Syuyu

Code:
pacman -S grub

und

Code:
mkinitcpio -p linux

durchfuehren. Dann hoffe ich. dass kernel panic geloest ist.
 
Zuletzt bearbeitet:
Leider etwas unscharf geworden, vom Smartphone zu fotografieren ist eine echte wackelige Angelegenheit!:facepalm:

IMG_20160410_202942.jpg
 
Zuerst die gute Info: Dein System ist nicht kaputt. Alles läuft so, wie es soll. Die schlechte Info: Das System läuft nicht auf deinem Rechner. Warum das so ist, lässt sich auf dem Bild leider nicht erkennen (das zweite Bild hättest du dir übrigens sparen können ;)).

Grub brauchst du nicht neu zu installieren, das startet dein System ja problemlos. mkinitcpio ist auch unnötig, denn der System läuft ja. Einzig ein Update könnte helfen, falls in der Zwischenzeit ein Fehler behoben wurde.

Fang also damit an, das Update zu machen (pacman -Syyu). Falls es danach immer noch nicht geht, solltest du schauen, an welcher Stelle es nicht mehr läuft. Dazu würde ich zuerst den Display Manager deaktivieren (systemctl disable ***.service). Welchen du nutzt, solltest du eigentlich selbst wissen, du hast ihn installiert. Entsprechend die *** anpassen. Damit dann neu starten und schauen, ob du den normalen Login bekommst. Klappt das, dürfte es ziemlich sicher ein Problem mit dem Grafiktreiber sein. An der Stelle wird es dann aber schwieriger ohne weitere Infos (z.B. welche Hardware du verwendest). Ich sehe, dass das radeon Modul geladen ist. Hybridgrafik macht gerne mal Probleme. Die könntest du im BIOS vorübergehend komplett deaktivieren und nur die Intel-Grafik nutzen (falls das geht).
 
Zuerst die gute Info: Dein System ist nicht kaputt. Alles läuft so, wie es soll. Die schlechte Info: Das System läuft nicht auf deinem Rechner. Warum das so ist, lässt sich auf dem Bild leider nicht erkennen (das zweite Bild hättest du dir übrigens sparen können ;)).

Grub brauchst du nicht neu zu installieren, das startet dein System ja problemlos. mkinitcpio ist auch unnötig, denn der System läuft ja. Einzig ein Update könnte helfen, falls in der Zwischenzeit ein Fehler behoben wurde.

Fang also damit an, das Update zu machen (pacman -Syyu). Falls es danach immer noch nicht geht, solltest du schauen, an welcher Stelle es nicht mehr läuft. Dazu würde ich zuerst den Display Manager deaktivieren (systemctl disable ***.service). Welchen du nutzt, solltest du eigentlich selbst wissen, du hast ihn installiert. Entsprechend die *** anpassen. Damit dann neu starten und schauen, ob du den normalen Login bekommst. Klappt das, dürfte es ziemlich sicher ein Problem mit dem Grafiktreiber sein. An der Stelle wird es dann aber schwieriger ohne weitere Infos (z.B. welche Hardware du verwendest). Ich sehe, dass das radeon Modul geladen ist. Hybridgrafik macht gerne mal Probleme. Die könntest du im BIOS vorübergehend komplett deaktivieren und nur die Intel-Grafik nutzen (falls das geht).

Ich habe T420 mit Intel i5 2520M mit reiner Intel HD 3000. Ich konnte leider nicht den in den #13 erwähnten Befehl chroot-Befehl ausführen. Was in der Konsole kommt, erzähle ich hier morgen. Erstmal nun den Körper runterfahren, und durchschlafen. :) Gute Nacht! ;)
 
Seltsam, denn ich sehe da ein Modul "radeon", aber kein "i915".


Gute Nacht.

Da bin ich wieder nach einer kurzen Nacht und einen anstrengenden Tag :rolleyes:

Habe folgendes versucht durchzufuehren, wie man es sieht, kann ich keinen chroot-Befehl mit bash durchlaufen lassen.

Gibt es denn andere Vorschlaege?

Code:
[paclive@pacbang ~]$ sudo mkdir /mnt/arch
[paclive@pacbang ~]$ sudo mount /dev/sda1 /mnt/arch
[paclive@pacbang ~]$ sudo arch-chroot /mnt/arch /bin/bash
chroot: failed to run command ‘/bin/bash’: No such file or directory

Hier ist der gesamt Inhalt von cd /mnt/arch/usr/bin:

http://pastebin.com/X7GFdCfN
 
  • ok1.de
  • ok2.de
  • thinkstore24.de
  • Preiswerte-IT - Gebrauchte Lenovo Notebooks kaufen

Werbung

Zurück
Oben