trusty to xenial no second partition /dev/sda2 mount hangup Xserver not running and others

Bug #1647014 reported by Onno
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
ubuntu-release-upgrader (Ubuntu)
New
Undecided
Unassigned

Bug Description

Ok I hope someone speak german. My English isn't good enough to describe the troubles.

Vor vier Tagen hatte ich die irrwitzige Idee aus heutiger Sicht betrachtet von trusty auf xenial upzudaten. Das System ist ein Lenovo X201 Tablet mit /dev/sda1 als root und /dev/sda2 als home und /dev/sda7 als Swap. Es ist eine i915 Grafikkarte drin und iwlwifi ist das Modul für das Netzwerk. Zunächst begann das Update ganz normal um dann mitten drin den Xserver abzuschiessen, den logfiles nach war das um:
ERROR: apport (pid 3777) Tue Nov 29 22:40:02 2016: executable: /usr/sbin/cron (command line "CRON")
ERROR: apport (pid 3777) Tue Nov 29 22:40:02 2016: is_closing_session(): no DBUS_SESSION_BUS_ADDRESS in environment
ERROR: apport (pid 3777) Tue Nov 29 22:40:02 2016: apport: report /var/crash/_usr_sbin_cron.0.crash already exists and unseen, doing nothing to avoid disk usage DoS
ERROR: apport (pid 3776) Tue Nov 29 22:40:02 2016: another apport instance is already running, aborting
ERROR: apport (pid 809) Tue Nov 29 22:49:20 2016: called for pid 7257, signal 11, core limit 0
ERROR: apport (pid 809) Tue Nov 29 22:49:20 2016: executable was modified after program start, ignoring
ERROR: apport (pid 822) Tue Nov 29 22:49:21 2016: called for pid 28073, signal 11, core limit 0
ERROR: apport (pid 822) Tue Nov 29 22:49:21 2016: executable was modified after program start, ignoring
Danach habe ich ewig lang versucht irgendwie wenigstens wieder ein grafisches System zu bekommen. Das gelang mir das erste Mal dann wohl um laut log "Nov 30 14:46 Xorg.0.log" über den Recoverymodus und zwar X im Failsafe abbrechen und nach Ctrl+C dann plötzlich ein System zu haben.
Da der update-manager abgebrochen hatte und nicht mehr zum leben zu erwecken war, wollte ich da weiter machen, aber hmpf - kein Netzwerk, da der neue Kernel kein iwlwifi mehr hat und linux-extras wohl nicht installiert ist. Tja ohne Netzwerk keine Fortsetzung eines unterbrochenen Upgrades.

Nun wollte ich einfach von einem 16.04 Iso einfach drüber installieren. Ich hatte zur Verfügung Xubuntu 16.04, Ubuntu Studio 16.04 und zum Schluss probierte ich auch noch Mate, was soll ich sagen, alle drei Isos wollten nicht. Ubuntustudio versuchte ich zuerst und meinte einfach den Edubuntueintrag anpassen zu können, warum auch immer ist bei Ubuntustudio es nur vmlinuz wobei es bei Edubuntu 14.04 mit efi ist

menuentry "Ubuntustudio 16.04 Live CD" {
        insmod part_msdos
        insmod gzio
        insmod fat
        insmod ext2
        set isofile="/ubuntustudio-16.04.1-dvd-amd64.iso"
        # or set isofile="/iso//iso/ubuntu-12.04.2-desktop-i386.iso"
        # if you use a single partition for your $HOME
        # sdb2 (hd1,2) sdb1 (hd1,1) sda1 (hd0,1)
        loopback loop (hd1,msdos1)/$isofile
        linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile noprompt noeject
        initrd (loop)/casper/initrd.lz
}

Der Installprozess hing sich nach Eingabe aller Daten auf, dachte mir, ok nimmste halt Xubuntu

Dachte etwas gelernt zu haben, und machte casper ohne efi , aber denkste:

menuentry "Xubuntu 16.04 Live CD" {
        insmod part_msdos
        insmod gzio
        insmod fat
        insmod ext2
        set isofile="/xubuntu-16.04.1-desktop-amd64.iso"
        # or set isofile="/iso//iso/ubuntu-12.04.2-desktop-i386.iso"
        # if you use a single partition for your $HOME
        # sdb2 (hd1,2) sdb1 (hd1,1) sda1 (hd0,1)
        loopback loop (hd1,msdos1)/$isofile
        linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile noprompt noeject
        initrd (loop)/casper/initrd.lz
}

Ok was solls meinte ja nur dass das Install von ubuntustudio defekt ist, vielleicht schlechtes Iso erwischt, aber denkste bei Xubuntu dasselbe also dann Mate probiert:

menuentry "Ubuntu Mate 16.04 Live CD" {
        insmod part_msdos
        insmod gzio
        insmod fat
        insmod ext2
        set isofile="/ubuntu-mate-16.04.1-desktop-amd64.iso"
        # or set isofile="/iso//iso/ubuntu-12.04.2-desktop-i386.iso"
        # if you use a single partition for your $HOME
        # sdb2 (hd1,2) sdb1 (hd1,1) sda1 (hd0,1)
        loopback loop (hd1,msdos1)/$isofile
        linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile noprompt noeject
        initrd (loop)/casper/initrd.lz
}

Aber same game - ok, vielleicht kommen die Installer nicht mit Festplattenboot zurecht und Mate gebrannt auf DVD und von DVD gebootet - nachdem da aber der gleiche Effekt auftrat, fragte ich mich, ob irgendwer die CDs verwendet oder alle nur von der LiveCD booten ohne jemals zu installieren. Ja, die LiveCDs funktionieren, sogar der Touchscreen.

Wieder ein Tag um und kein funktionierendes System. Nachdem die LiveCDs ja booteten aber nicht installierten, entschloss ich mich root zu mounten, da ich das die letzten Tage mehrmals machte, kann ich die Befehle jetzt auswendig
sudo su
cd /
mkdir chroot
mount /dev/sda1 /chroot
mount /dev/sda2 /chroot/home
for i in dev dev/pts proc sys; do mount -o bind $i /chroot/$i; done
chroot chroot
vi /etc/resolv.conf
nameserver 8.8.8.8

apt-get -f install

Damit dachte ich ein funktionierendes System zu bekommen, er holte sich die Pakete für xenial und ich meinte danach könnte ich dann hochfahren.

Zwischendurch kämpfte ich mit solchen Scherzen:

Dez 03 05:38:55 thinkpad kernel: intel ips 0000:00:1f.6: failed to disable graph

Das passiert immer dann, wenn die Distri eine initramfs generiert, den Fehler werde ich los, wenn ich mir im chroot mit update-initramfs -c -k all über die Livecd ein neues initramfs bastle. Und da die LiveCD ja funktioniert, nehme ich einfach die Kernelmodule von der LiveCD in /chroot/etc/initramfs-tools/modules auf. In der Zwischenzeit kann ich auch die Befehlzeile auswendig lsmod | cut -d' ' -f1 | tac > modules und dann die letzte Zeile rauslöschen, weil Module als Module gibt es ja nicht. Damit habe ich dann die richtige Modulereihenfolge, die mit Kernel 4.2 auch wunderbar laden, allerdings nicht mit der von dem Update-manager installierten Kernel 4.4.-0-51 oh scheisse, habe ich lange gebraucht um rauszufinden, dass linux-extras nicht installiert wird. Installiert doch bitte wenigstens die Module mit, die auch auf der LiveCD sind - büüütte. Egal ein Detailproblem der letzten vier Tage.

Mein Problem die gesamten vier Tage war, wie verdammt noch mal überredet man systemd dazu home zu mounten. Root kann er ja auch mounten, dann muss es doch auch möglich sein /dev/sda2 nach home zu mounten. Und nein die fstab stimmt.

Im Chroot funktioniert 'mount -a' wunder bar. Und wenn ich im rescue-System auf das er zurückfällt, da er ja home nicht mounten kann einfach nur im fstab /home auf hom setze und dann ein mount -a eingebe, dann kann er es auch.

Ich hatte einerseits apparmor in Verdacht, dass der mir verbietet irgendetwas im Rescuesystem nach home zu mounten, das aber erschien mir dann unwahrscheinlich, weil ich einfach mal /mnt/data in die fstab eingetragen habe und nach update-initramfs und reboot ich sda2 auch nicht mehr im rescue nach /mnt/data mounten konnte wie vorher nach /home nicht.

Der mount wird einfach nicht ausgeführt, aber die Partition lässt sich sowas von Fehlerfrei mounten, das es nicht daran liegt. Jetzt vermute ich mal, das kaum einer / und /home getrennt hat, das er swap auch nicht mag, das ist nur ein Randproblem - für mich, allerdings wenn ich die ganzen Tickets zu swap lese, dann vermute ich dass das System überhaupt nicht fähig ist zwei Partitionen beim Boot zu mounten.

Mich durch die Hölle von systemd gewühlt und in der Zwischenzeit am Verzweifeln. Dieses Ticket ist auf dem System geschrieben, das es betrifft. Sprich mit dem Würgaround im recovery mounte /dev/sda2 nach hom rmdir home ln -s hom /home wähle failsafe X mache Ctrl C -- ach ja ich hatte noch gar nicht erwähnt, das der FailsafeX modus hängen bleibt und keinen Xserver einrichten will, aber egal der Xserver funktioniert ja normal, wenn er mit dem Würgaround gestartet wird.

Achso auch noch so am Rande udevadm ist so geschrieben, dass man rfkill zum Beispiel und 28 weiter Pakete nicht installieren kann, weil rfkill udevadm aufruft und dann unkonfiguriert rumliegt. Hätte udevadm exit 0 statt exit 1 dann kann man auch rfkill installieren.

Tag 4 und einen Bug aufgemacht, xenial ist buggy

ProblemType: Bug
DistroRelease: Ubuntu 16.04
Package: ubuntu-release-upgrader-core 1:16.04.19
ProcVersionSignature: Ubuntu 4.4.0-51.72-generic 4.4.30
Uname: Linux 4.4.0-51-generic x86_64
ApportVersion: 2.20.1-0ubuntu2.2
Architecture: amd64
CrashDB: ubuntu
CurrentDesktop: MATE
Date: Sat Dec 3 04:53:20 2016
EcryptfsInUse: Yes
PackageArchitecture: all
SourcePackage: ubuntu-release-upgrader
Symptom: dist-upgrade
UpgradeStatus: No upgrade log present (probably fresh install)
VarLogDistupgradeAptlog:
 Log time: 2016-12-01 10:35:02.441149
 Starting pkgProblemResolver with broken count: 0
 Starting 2 pkgProblemResolver with broken count: 0
 Done
 Log time: 2016-12-01 10:35:41.613908
mtime.conffile..etc.update-manager.release-upgrades: 2016-11-29T11:10:27.872144

Revision history for this message
Onno (schiller-babsi) wrote :
Revision history for this message
Onno (schiller-babsi) wrote :

Ok dpkg -S /bin/udevadm says
Umleitung durch fake-udev von: /bin/udevadm
Umleitung durch fake-udev zu: /bin/udevadm.upgrade

and all my problems are there - i copied /bin/udevadm from LiveCD to /bin/udevadm on my harddisk and now /dev/sda2 mounts and wacom works and and and ...

All problems are from this code cat /bin/udevadm
#!/bin/sh

if [ "$1" = "trigger" ]; then
    echo "udevadm trigger is not permitted while udev is unconfigured." 1>&2
    exit 1
fi

if [ "$1" = "settle" ]; then
    echo "udevadm settle is not permitted while udev is unconfigured." 1>&2
    exit 1
fi

exec /bin/bash -c "exec -a \"\$0\" /bin/udevadm.upgrade \"\$@\"" "$0" "$@"

But I don't know which package installed this in /bin/udevadm there is no package fake-udev and also udev installs only a symlink zu udevadm libudev1 don't install udevadm so I took the bin from the InstallCD - this were terrible 4 days.

Mathew Hodson (mhodson)
tags: added: bot-stop-nagging
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.