Wie aus Rescue-System 2 HDD (RAID 1) mounten um Zugriff auf rc.conf zu erhalten?

testit

Well-Known Member
Guten Abend,

ich hoffe, mir kann jd. von Euch vlt. zeitnah helfen:

Vermutlich habe ich mir mit folgenden Zeilen in der rc.conf meines FreeBSD 13-Systems den Zugriff mit SSH etc. dicht gemacht und komme nur noch über ein FreeBSD 13-Rescue-System auf meinen Rechner. Mutmaßliche Ursache: Ich habe versehentlich firewall_myservices in der rc.conf auskommentiert:

zfs_enable="YES"
firewall_enable="YES"
firewall_quiet="YES"
firewall_type="workstation"
#firewall_myservices="22/tcp 25/tcp 80/tcp 443/tcp 587/tcp 993/tcp 995/tcp 4190/tcp 10000/tcp 11332/tcp 11334/tcp 20000/tcp"
firewall_allowservices="any"

Ich müsste firewall_myservices wieder aktivieren und dann rebooten, um wieder ssh/sftp-Zugriff zu erhalten.

Kann mir von Euch bitte jemand sagen, wie ich die zwei Platten, die im RAID1-Verbund mit ZFS laufen, aus dem FreeBSD 13-Rescue-System heraus mounten kann, um die /etc/rc.conf editieren und die o. a. Zeile firewall_myservices ... wieder aktivieren zu können?

ls /dev zeigt aus dem Rescue-Mode:
acpi diskid mlx5ctl ttyv1
ada0 enc@n3061686369656d30 music0 ttyv2
ada0p1 fd netdump ttyv3
ada0p2 fido netmap ttyv4
ada0p3 full null ttyv5
ada1 geom.ctl pass0 ttyv6
ada1p1 gpt pass1 ttyv7
ada1p2 gptid pass2 ttyv8
ada1p3 hpet0 pci ttyv9
apm input pfil ttyva
apmctl io pts ttyvb
atkbd0 kbd0 random ufsid
audit kbd1 reroot ufssuspend
auditpipe kbdmux0 sequencer0 ugen0.1
bpf klog ses0 uinput
bpf0 kmem sndstat urandom
console led stderr usb
consolectl log stdin usbctl
ctty md0 stdout xpt0
devctl mdctl sysmouse zero
devctl2 mem tcp_log
devstat midistat ttyv0

zpool import gibt aus:

pool: zroot
id: 2008912611606593420
state: ONLINE
action: The pool can be imported using its name or numeric identifier.
config:
zroot ONLINE
mirror-0 ONLINE
ada0p3 ONLINE
ada1p3 ONLINE

Vielen Dank im voraus und nette Grüße
testit
 

turrican

Well-Known Member
du kannst den pool zroot z.B. unter /mnt in dein Rettungssystem mounten:

Code:
zpool import -R /mnt -N -f zroot

dann die /mnt/etc/rc.conf editieren
 

medV2

Well-Known Member
zpool import -R /mnt zroot

das -R /mnt ist wichtig damit es nicht über dein rootfs des resc systems gelegt wird, sondern du über /mnt darauf zugreifen kannst. also vi /mnt/etc/rc.conf um dann dein file zu bearbeiten. mit zpool export zroot wieder freigeben.

edit da war @turrican um einen sekundenbruchteil schneller :D
 

testit

Well-Known Member
du kannst den pool zroot z.B. unter /mnt in dein Rettungssystem mounten:

Code:
zpool import -R /mnt -N -f zroot

dann die /mnt/etc/rc.conf editieren

Hallo,

vielen Dank für Deine Antwort!

Leider hakt es irgendwo/irgendwie noch:

[root@rescue /]# zpool import -R /mnt -N -f zroot
[root@rescue /]# cd /mnt/etc/
-bash: cd: /mnt/etc/: No such file or directory

[root@rescue /mnt]# zpool import -R /mnt -N -f zroot
cannot import 'zroot': a pool with that name already exists
use the form 'zpool import <pool | id> <newpool>' to give it a new name

Was mache ich falsch?

Danke und nette Grüße
testit
 

testit

Well-Known Member
zpool import -R /mnt zroot

das -R /mnt ist wichtig damit es nicht über dein rootfs des resc systems gelegt wird, sondern du über /mnt darauf zugreifen kannst. also vi /mnt/etc/rc.conf um dann dein file zu bearbeiten. mit zpool export zroot wieder freigeben.

edit da war @turrican um einen sekundenbruchteil schneller :D

Hallo medV2,

ich Dir ein herzliches Dankeschön!

Deine Anweisung ist ja leicht anders als jene von Turrican.
Ich erhalte nach "zpool import -R /mnt zroot"

[root@rescue /]# zpool import -R /mnt zroot
cannot import 'zroot': pool was previously in use from another system.
Last accessed by <unknown> (hostid=0) at Sat Jan 15 19:47:02 2022
The pool can be imported, use 'zpool import -f' to import the pool.

Was hier genau mit "another system" gemeint ist, kann ich nicht genau sagen.
Der Rechner hat allerdings einen anderen abgelöst, indem er in dessen Rack geschoben und die IP-Adresse des Vorgängers erhalten hat, die allerdings in der rc.conf schon ausgewiesen sind. Daher ist er bspw. auch anpingbar, aber ich benötige natürlich SSH usw.

Soll ich nun ein "zpool import -f' machen?
Turrican hatte ja schon das -f als Parameter in seiner vorgeschlagenen Mount-Sequenz drin, aber unter /mnt ist eben kein etc-Verzeichnis zu finden, obwohl "zpool import -R /mnt -N -f zroot" keine Fehlermeldung ausgab.


Danke und Gruß
testit
 

testit

Well-Known Member
Vielen Dank nochmals Euch beiden!

Der Autor der o. a. Quelle schreibt ja ebenfalls, dass Eure Vorgehensweisen bis etwa März 2021 noch funktionierten, anschließend aber noch die o. a. weiteren Anweisungen umgesetzt werden müssen.

Einen schönen Sonntag!
testit
 
Oben