freebsd-update -> ssh-Verbindung verloren beim Aktualisieren

Morfio

Well-Known Member
Hi,

ich habe einen Server bei Hetzner. Ich habe heute das System von 11.2 auf 11.3 bringen wollen, beim letzten freebsd-update install ist dummerweise die ssh-Verbindung abgerissen und ich hatte das dummerweise nicht in einem screen oder ähnlichem gemacht. Naja, der Server bootet nicht mehr.

Ich habe dann ein Rettungssystem gestartet (FreeBSD 11.2), dann den zroot gemountet und ein chroot da rein gemacht. Ich dachte, ich kompiliere einfach mal flott Userland und Kernel und installiere die. Leider bricht das Kompilieren vom Userland ab:

Code:
--- libprivatessh.so.5.full ---
building shared library libprivatessh.so.5
cc -target x86_64-unknown-freebsd11.3 --sysroot=/usr/obj/usr/src/tmp -B/usr/obj/usr/src/tmp/usr/bin  -fstack-protector-strong -shared -Wl,-x -Wl,--fatal-warnings -Wl,--warn-shared-textrel  -o libprivatessh.so.5.full -Wl,-soname,libprivatessh.so.5  `NM='nm' NMFLAGS='' lorder ssh_api.pico ssherr.pico sshbuf.pico sshkey.pico sshbuf-getput-basic.pico sshbuf-misc.pico sshbuf-getput-crypto.pico krl.pico bitmap.pico authfd.pico authfile.pico bufaux.pico bufbn.pico bufec.pico buffer.pico canohost.pico channels.pico cipher.pico cipher-aes.pico cipher-aesctr.pico cipher-bf1.pico cipher-ctr.pico cipher-3des1.pico cleanup.pico compat.pico crc32.pico deattack.pico fatal.pico hostfile.pico log.pico match.pico md-sha256.pico moduli.pico nchan.pico packet.pico opacket.pico readpass.pico rsa.pico ttymodes.pico xmalloc.pico addrmatch.pico atomicio.pico key.pico dispatch.pico mac.pico uidswap.pico uuencode.pico misc.pico utf8.pico monitor_fdpass.pico rijndael.pico ssh-dss.pico ssh-ecdsa.pico ssh-rsa.pico dh.pico msg.pico progressmeter.pico dns.pico entropy.pico umac.pico umac128.pico ssh-pkcs11.pico smult_curve25519_ref.pico poly1305.pico chacha.pico cipher-chachapoly.pico ssh-ed25519.pico digest-openssl.pico digest-libc.pico hmac.pico sc25519.pico ge25519.pico fe25519.pico ed25519.pico verify.pico hash.pico blocks.pico kex.pico kexdh.pico kexgex.pico kexecdh.pico kexc25519.pico kexdhc.pico kexgexc.pico kexecdhc.pico kexc25519c.pico kexdhs.pico kexgexs.pico kexecdhs.pico kexc25519s.pico platform-pledge.pico platform-tracing.pico bcrypt_pbkdf.pico blowfish.pico bsd-misc.pico explicit_bzero.pico fmt_scaled.pico glob.pico openssl-compat.pico port-tun.pico realpath.pico strtonum.pico timingsafe_bcmp.pico vis.pico xcrypt.pico getrrsetbyname-ldns.pico | tsort -q` -lprivateldns  -lcrypto  -lcrypt  -lz
--- libprivatessh.so.5.debug ---
objcopy --only-keep-debug libprivatessh.so.5.full libprivatessh.so.5.debug
--- libprivatessh.so.5 ---
objcopy --strip-debug --add-gnu-debuglink=libprivatessh.so.5.debug  libprivatessh.so.5.full libprivatessh.so.5
--- _libinstall ---
sh /usr/src/tools/install.sh  -C -o root -g wheel -m 444   libprivatessh.a /usr/obj/usr/src/tmp/usr/lib/
sh /usr/src/tools/install.sh  -s -o root -g wheel -m 444   -S  libprivatessh.so.5 /usr/obj/usr/src/tmp/usr/lib/
sh /usr/src/tools/install.sh  -o root -g wheel -m 444    libprivatessh.so.5.debug /usr/obj/usr/src/tmp/usr/lib/debug/usr/lib/
sh /usr/src/tools/install.sh -l rs  libprivatessh.so.5 /usr/obj/usr/src/tmp/usr/lib/libprivatessh.so
bmake[4]: "/dev/null" line 1: Need an operator
bmake[4]: Fatal errors encountered -- cannot continuebmake[3]: "/usr/src/Makefile.inc1" line 423: warning: "MK_AUTO_OBJ=no MAKEFLAGS= CPUTYPE=dummy /usr/obj/usr/src/make.amd64/bmake  -f /dev/null -m /usr/src/share/mk -V CPUTYPE" returned non-zero status
bmake[3]: "/usr/src/Makefile.inc1" line 425: CPUTYPE global should be set with ?=.
*** [libraries] Error code 1

bmake[2]: stopped in /usr/src
1 error

bmake[2]: stopped in /usr/src
*** [_libraries] Error code 2

bmake[1]: stopped in /usr/src
1 error

bmake[1]: stopped in /usr/src
*** [buildworld] Error code 2

make: stopped in /usr/src
1 error

make: stopped in /usr/src

Jetzt kam ich auf die Idee, einfach base.txz und kernel.txz auf den Server zu schieben und an die richtige Stelle zu entpacken. Ist das die beste Idee oder gibt es eine sinnvollere Lösung?

Vielen Dank

Morfio
 
Ich habe dann ein Rettungssystem gestartet (FreeBSD 11.2), dann den zroot gemountet und ein chroot da rein gemacht.
In Kombination mit
Code:
bmake[4]: "/dev/null" line 1: Need an operator
führt zur potentiell dummen Frage: Hast du ein devfs in das /dev deines chroot gemountet? Ohne wird die Welt nicht bauen, weil er kein /dev/null hat. /dev/random braucht er glaube ich auch noch.
 
In Kombination mit
Code:
bmake[4]: "/dev/null" line 1: Need an operator
führt zur potentiell dummen Frage: Hast du ein devfs in das /dev deines chroot gemountet? Ohne wird die Welt nicht bauen, weil er kein /dev/null hat. /dev/random braucht er glaube ich auch noch.
Erm, nein, habe ich tatsächlich vergessen. Ich habe es gemountet und versuche es nochmal. Vielen Dank!
 
Drei Tipps für die Zukunft:
- wie du schon festgestellt hast, immer screen oder tmux nutzen. Am Besten direkt automatisch nach dem Login einrichten
- Wenn du schon ZFS benutzt, mach einen Snapshot vor einem Update
- vorsichtig mit zfs upgrade / zpool upgrade sein. Die mfsbsd bei Hetzner ist nicht immer aktuell
 
Zurück
Oben