FreeBSD remote ausgesperrt, mit Recovery die Tür eintreten
-
- Posts: 31
- Joined: 2012-12-06 19:23
- Location: Düsseldorf
FreeBSD remote ausgesperrt, mit Recovery die Tür eintreten
Hallo Community
erstmal Dank an Joe für die händische Aktivierung hier. Und jetzt, mit einer kurzen Einleitung mal on Topic.
Ich bin vor kurzem, nach guten 20 Jahren Linux auf BSD geschwenkt und habe es jetzt auch, dank Joe's HowTos, geschafft, FreeBSD remote auf einem Server von Server4You zu installieren. Habe mich dann aber im finalen Installationsschritt (vermutlich eine kleine Unachtsamkeit beim Anpassen der Konfigurationsdateien mit mergemaster) vom Server ausgesperrt.
Da es bis dahin nicht wenig Arbeit war, hab ich darüber nachgedacht, wie ich wieder reinkomme.
Also, Recovery-System (Ubuntu) gestartet, die ersten 100MB von /dev/sd[ab] local gesichert (dd is your friend), mfsBSD dahin geschrieben und im normalen Modus wieder hochgefahren. Dann habe ich mit mfsBSD die Festplatten wieder restauriert.
Mein Plan war jetzt, die root-partition zu mounten, die Konfiguration zu checken und zu reparieren. Da bin ich dann vor den Poller gelaufen. Ich kann d, e oder f mounten, aber leider nicht a. Da kommen wahrscheinlich meine begrenzten BSD-Spezialkenntnisse zum tragen :-?
Traut sich da jemand zu, mir auf die Sprünge zu helfen, oder mach ich die ganze Installation jetzt, so zur Übung, am besten nochmal? Produktivdaten sind ja noch nicht drauf.
Abgesehen von der Arbeit, die ich mir sparen möchte, interessiert mich auch, ob dieser Weg grundsätzlich funktioniert.
Vielen Dank schonmal an alle, die sich das bis hier hin durchgelesen haben #:-s
erstmal Dank an Joe für die händische Aktivierung hier. Und jetzt, mit einer kurzen Einleitung mal on Topic.
Ich bin vor kurzem, nach guten 20 Jahren Linux auf BSD geschwenkt und habe es jetzt auch, dank Joe's HowTos, geschafft, FreeBSD remote auf einem Server von Server4You zu installieren. Habe mich dann aber im finalen Installationsschritt (vermutlich eine kleine Unachtsamkeit beim Anpassen der Konfigurationsdateien mit mergemaster) vom Server ausgesperrt.
Da es bis dahin nicht wenig Arbeit war, hab ich darüber nachgedacht, wie ich wieder reinkomme.
Also, Recovery-System (Ubuntu) gestartet, die ersten 100MB von /dev/sd[ab] local gesichert (dd is your friend), mfsBSD dahin geschrieben und im normalen Modus wieder hochgefahren. Dann habe ich mit mfsBSD die Festplatten wieder restauriert.
Mein Plan war jetzt, die root-partition zu mounten, die Konfiguration zu checken und zu reparieren. Da bin ich dann vor den Poller gelaufen. Ich kann d, e oder f mounten, aber leider nicht a. Da kommen wahrscheinlich meine begrenzten BSD-Spezialkenntnisse zum tragen :-?
Traut sich da jemand zu, mir auf die Sprünge zu helfen, oder mach ich die ganze Installation jetzt, so zur Übung, am besten nochmal? Produktivdaten sind ja noch nicht drauf.
Abgesehen von der Arbeit, die ich mir sparen möchte, interessiert mich auch, ob dieser Weg grundsätzlich funktioniert.
Vielen Dank schonmal an alle, die sich das bis hier hin durchgelesen haben #:-s
-
- Posts: 31
- Joined: 2012-12-06 19:23
- Location: Düsseldorf
Re: FreeBSD remote ausgesperrt, mit Recovery die Tür eintret
Ach ja, falls ich nicht das richtige Unterforum getroffen habe, bitte ich um Verschiebung :-B
-
- Project Manager
- Posts: 11190
- Joined: 2003-02-27 01:00
- Location: Hamburg
Re: FreeBSD remote ausgesperrt, mit Recovery die Tür eintret
Welche Fehlermeldung bekommst Du beim Mountversuch?
Möglicherweise ist beim Restaurieren etwas schief gelaufen, etwa Partitionstabelle nicht mitgesichert und durch mfsBSD überschrieben.
Du schreibst von a, d, e und f, das deutet auf das klassische Partitionslayout mit MBR statt GPT hin. In diesem Fall könnte der MBR für a noch den mfsBSD Eintrag statt den für das alte a haben. Mit viel Glück könnte dann das händische Neuanlegen mittels fdisk und bsdlabel helfen.
Im Zweifel ist eine zweite Lehrinstallation nicht die schlechteste Lösung ;)
Möglicherweise ist beim Restaurieren etwas schief gelaufen, etwa Partitionstabelle nicht mitgesichert und durch mfsBSD überschrieben.
Du schreibst von a, d, e und f, das deutet auf das klassische Partitionslayout mit MBR statt GPT hin. In diesem Fall könnte der MBR für a noch den mfsBSD Eintrag statt den für das alte a haben. Mit viel Glück könnte dann das händische Neuanlegen mittels fdisk und bsdlabel helfen.
Im Zweifel ist eine zweite Lehrinstallation nicht die schlechteste Lösung ;)
PayPal.Me/JoeUser ● FreeBSD Remote Installation
Wings for Life ● Wings for Life World Run
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
Wings for Life ● Wings for Life World Run
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
-
- Posts: 31
- Joined: 2012-12-06 19:23
- Location: Düsseldorf
Re: FreeBSD remote ausgesperrt, mit Recovery die Tür eintret
Ok,
die Fehlermeldung für gm0s1a ist:
Operation not permitted
gm0s1[def] mounten problemfrei
die Vorgehensweise war
wer weiß schon genau, von wo die remote-dinger dann booten.
Unter mfsBSD dann
und local geholt hab ich die Sachen dann natürlich mit scp und nicht etwa per ftp im ascii-mode :D (ok, das war jetzt ein Insider)
was da genau schief gehen kann :-?
Wegen dem Layout:
Ich habe dein HowTo auf RootService.org bis zur Plattenaufteilung verfolgt, und bin da quer rüber zum HowTo hier im Wiki (im ersten stand halt nichts von ZFS, was ich mir aber eingeredet hab haben zu wollen :-B ) und anschließend zur weiteren Installation wieder ins erste HowTo. Hat ja auch alles funktioniert. Wenn ich wieder rein gekommen wäre, hätte ich als nächstes gesehen, wie ich den ZFS-Pool hinkrieg.
Ist da noch was zu machen?
die Fehlermeldung für gm0s1a ist:
Operation not permitted
gm0s1[def] mounten problemfrei
die Vorgehensweise war
Code: Select all
dd if=/dev/sda of=dd_sda_start bs=1M count=100
dd if=/dev/sdb of=dd_sdb_start bs=1M count=100
dd if=mfsbsd.img of=/dev/sda
dd if=mfsbsd.img of=/dev/sdb
Unter mfsBSD dann
Code: Select all
dd if=dd_sda_start of=/dev/ada0 bs=1M
dd if=dd_sdb_start of=/dev/ada1 bs=1M
was da genau schief gehen kann :-?
Wegen dem Layout:
Ich habe dein HowTo auf RootService.org bis zur Plattenaufteilung verfolgt, und bin da quer rüber zum HowTo hier im Wiki (im ersten stand halt nichts von ZFS, was ich mir aber eingeredet hab haben zu wollen :-B ) und anschließend zur weiteren Installation wieder ins erste HowTo. Hat ja auch alles funktioniert. Wenn ich wieder rein gekommen wäre, hätte ich als nächstes gesehen, wie ich den ZFS-Pool hinkrieg.
Ist da noch was zu machen?
-
- Project Manager
- Posts: 11190
- Joined: 2003-02-27 01:00
- Location: Hamburg
Re: FreeBSD remote ausgesperrt, mit Recovery die Tür eintret
Du müsstest diesen Part nochmal mit den exakt gleichen Daten wiederholen:
Theoretisch sollten die Nutzdaten dabei erhalten bleiben und wieder Nutzbar werden. Dennoch möchte ich das nicht garantieren. Try and Error ;)
Code: Select all
fdisk -p /dev/ad4 > /tmp/fdisk_ad4.txt
fdisk -p /dev/ad6 > /tmp/fdisk_ad6.txt
cat > /tmp/bsdlabel.txt <<"EOF"
8 partitions:
# size offset fstype [fsize bsize bps/cpg]
a: 2048M 16 4.2BSD 2048 16384 8
b: 2048M * swap
c: * 0 unused 0 0 # "raw" part, don't edit
d: 16384M * 4.2BSD 2048 16384 28528
e: 8192M * 4.2BSD 2048 16384 28528
f: * * 4.2BSD 2048 16384 28528
"EOF"
dd if=/dev/zero of=/dev/ad4 count=2
fdisk -BI /dev/ad4
fdisk -f /tmp/fdisk_ad4.txt /dev/ad4
bsdlabel -wB /dev/ad4s1
bsdlabel -R /dev/ad4s1 /tmp/bsdlabel.txt
dd if=/dev/zero of=/dev/ad6 count=2
fdisk -BI /dev/ad6
fdisk -f /tmp/fdisk_ad6.txt /dev/ad6
bsdlabel -wB /dev/ad6s1
bsdlabel -R /dev/ad6s1 /tmp/bsdlabel.txt
PayPal.Me/JoeUser ● FreeBSD Remote Installation
Wings for Life ● Wings for Life World Run
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
Wings for Life ● Wings for Life World Run
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
-
- Posts: 31
- Joined: 2012-12-06 19:23
- Location: Düsseldorf
Re: FreeBSD remote ausgesperrt, mit Recovery die Tür eintret
Hmm,
erst nochmal eine Vergewisserung. Der WikiArtikel, den ich meinte, war: http://www.rootforum.org/wiki/FreeBSD_m ... stallation
Was müsste ich dann jetzt wiederholen? Alles zwischen
Slices Anlegen und Dateisysteme erzeugen?
Mein aktuelles
bsdlabel /dev/mirror/gm0s1
sieht so aus
ohne etwas wiederholt zu haben.
Hatte da bei der Urinstallation schon ein paar Sachen angepasst.
erst nochmal eine Vergewisserung. Der WikiArtikel, den ich meinte, war: http://www.rootforum.org/wiki/FreeBSD_m ... stallation
Was müsste ich dann jetzt wiederholen? Alles zwischen
Slices Anlegen und Dateisysteme erzeugen?
Mein aktuelles
bsdlabel /dev/mirror/gm0s1
sieht so aus
Code: Select all
# /dev/mirror/gm0s1:
8 partitions:
# size offset fstype [fsize bsize bps/cpg]
a: 4194304 16 4.2BSD 0 0 0
c: 71302832 0 unused 0 0 # "raw" part, don't edit
d: 20971520 4194320 4.2BSD 0 0 0
e: 41943040 25165840 4.2BSD 0 0 0
f: 4193952 67108880 4.2BSD 0 0 0
Hatte da bei der Urinstallation schon ein paar Sachen angepasst.
-
- Project Manager
- Posts: 11190
- Joined: 2003-02-27 01:00
- Location: Hamburg
Re: FreeBSD remote ausgesperrt, mit Recovery die Tür eintret
Ah OK, der Artikel ist nicht von mir ;)
Den Abschnitt "Slices anlegen" musst Du wiederholen und dabei für bsdlabel die exakt gleichen Werte verwenden, wie Du sie bei der Erstinstallation verwendet hast.
Beim dd bitte nur "bs=512 count=1" als Parameter übergeben.
Daumen drücken nicht vergessen ;)
Den Abschnitt "Slices anlegen" musst Du wiederholen und dabei für bsdlabel die exakt gleichen Werte verwenden, wie Du sie bei der Erstinstallation verwendet hast.
Beim dd bitte nur "bs=512 count=1" als Parameter übergeben.
Daumen drücken nicht vergessen ;)
PayPal.Me/JoeUser ● FreeBSD Remote Installation
Wings for Life ● Wings for Life World Run
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
Wings for Life ● Wings for Life World Run
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
-
- Posts: 31
- Joined: 2012-12-06 19:23
- Location: Düsseldorf
Re: FreeBSD remote ausgesperrt, mit Recovery die Tür eintret
Ja, wäre interessant gewesen, ob es tatsächlich so wieder gelaufen wäre.
Wobei es mir nicht ganz einsichtig ist, was bei Benutzung von dd, wenn man sich nicht vertut ;-) , schief gehen kann.
Inzwischen läuft jedenfalls ein etwas umfassenderes dd if=/dev/zero auf beide Platten. Anschließend werde ich deinem Artikel auf RootService.org folgen (ggf. mit einem etwas traditionelleren Layout) und ZFS so weit zurück stellen bis ich ein bisschen mehr KnowHow im BSD Bereich gesammelt habe.
Um kurz auf das Layout zurück zu kommen. Das beschriebene bezieht sich auf eine 30GB-Platte. Interpretiere ich das richtig, wenn ich das bei der Übersetzung auf 1TB mit 8GB Ram so darstellen würde?
ansonsten würde ich zu
tendieren. Aber das mag meiner langjährigen Linux-Vergangenheit geschuldet sein :-)
Jedenfalls, vielen Dank für deinen Einsatz!
Wobei es mir nicht ganz einsichtig ist, was bei Benutzung von dd, wenn man sich nicht vertut ;-) , schief gehen kann.
Inzwischen läuft jedenfalls ein etwas umfassenderes dd if=/dev/zero auf beide Platten. Anschließend werde ich deinem Artikel auf RootService.org folgen (ggf. mit einem etwas traditionelleren Layout) und ZFS so weit zurück stellen bis ich ein bisschen mehr KnowHow im BSD Bereich gesammelt habe.
Um kurz auf das Layout zurück zu kommen. Das beschriebene bezieht sich auf eine 30GB-Platte. Interpretiere ich das richtig, wenn ich das bei der Übersetzung auf 1TB mit 8GB Ram so darstellen würde?
Code: Select all
Partition Mountpunkt Filesystem Grösse
/dev/mirror/swap none SWAP 8 GB
/dev/mirror/root / UFS2 12 GB
/dev/mirror/home /usr/home UFS2 4 GB
/dev/mirror/data /data UFS2 REST GB
Code: Select all
Partition Mountpunkt Filesystem Größe
/dev/mirror/swap none SWAP 8 GB
/dev/mirror/root / UFS2 2 GB
/dev/mirror/tmp /tmp UFS2 2 GB
/dev/mirror/var /var UFS2 20 GB
/dev/mirror/usr /usr UFS2 REST GB
Jedenfalls, vielen Dank für deinen Einsatz!
-
- Project Manager
- Posts: 11190
- Joined: 2003-02-27 01:00
- Location: Hamburg
Re: FreeBSD remote ausgesperrt, mit Recovery die Tür eintret
Als "traditionelles" Layout bei 1TB solltest Du es so anlegen:
Die restlichen Partitionen dann nach eigenem Geschmack hintendran setzen.
Für / sollten auch 4GB bis 8GB reichen, sofern /usr eigenständig ist, dennoch würde ich / nicht unter 16GB anlegen.
/usr braucht je nach Grösse der zu kompilierenden Ports und der späteren Nutzdaten, sowie {/usr}/home ordentlich Platz (quasi /home + /usr + /var unter Linux).
/var braucht Platz für die Logs, den Mailspool, die üblichen Systemfiles, eventuelle SQL-Datenbanken und ein wenig Luft für Sonstiges.
/tmp hängt wie immer von den Apps ab.
Ich persönlich nehme nur noch / (32GB-64GB) und /data und werfe dann den Mailspool, die Nutzdaten und die Datenbanken nach /data. Der Rest bleibt auf /.
Code: Select all
sysctl kern.geom.debugflags=0x10
gpart create -s gpt ada0
gpart add -t freebsd-boot -b 4096 -s 512 -a 4096 -l boot0 ada0
gpart add -t freebsd-ufs -b 8192 -s 24G -a 4096 -l root0 ada0
gpart add -t freebsd-swap -s 16G -a 4096 -l swap0 ada0
gpart create -s gpt ada1
gpart add -t freebsd-boot -b 4096 -s 512 -a 4096 -l boot1 ada1
gpart add -t freebsd-ufs -b 8192 -s 24G -a 4096 -l root1 ada1
gpart add -t freebsd-swap -s 16G -a 4096 -l swap1 ada1
gmirror load
gmirror label -b round-robin root ada0p2 ada1p2
gmirror label -b prefer -F swap ada0p3 ada1p3
newfs -O2 -U -f 4096 /dev/mirror/root
Für / sollten auch 4GB bis 8GB reichen, sofern /usr eigenständig ist, dennoch würde ich / nicht unter 16GB anlegen.
/usr braucht je nach Grösse der zu kompilierenden Ports und der späteren Nutzdaten, sowie {/usr}/home ordentlich Platz (quasi /home + /usr + /var unter Linux).
/var braucht Platz für die Logs, den Mailspool, die üblichen Systemfiles, eventuelle SQL-Datenbanken und ein wenig Luft für Sonstiges.
/tmp hängt wie immer von den Apps ab.
Ich persönlich nehme nur noch / (32GB-64GB) und /data und werfe dann den Mailspool, die Nutzdaten und die Datenbanken nach /data. Der Rest bleibt auf /.
PayPal.Me/JoeUser ● FreeBSD Remote Installation
Wings for Life ● Wings for Life World Run
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.
Wings for Life ● Wings for Life World Run
„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.