Kategorien

Druckansicht des Beitrags Druckansicht des Beitrags

FreeBSD auf Rasperry Pi aktualisieren

Leider lässt sich FreeBSD auf dem Rasperry Pi nicht mit freebsd-update aktualisieren, da dort leider die Unterstützung für arm-Architekturen fehlt. In Anlehnung an einen Post im FreeBSD-Forum habe ich nun FreeBSD auf dem Rasperry Pi 3 wie folgt aktualisiert, um den langwierigen build-Prozess zu umgehen.

  1. Clone-Version installieren
    mkdir -p /usr/local/etc/pkg/repos/
    vi /usr/local/etc/pkg/repos/FreeBSD.conf

    Dann dort folgenden Inhalt eintragen:

    FreeBSD: {
      url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest",
    }

    und mit

    pkg install clone

    die richtige Version von clone installieren.

  2. Backup des aktuellen OS (SD-Karte auf externe USB-Festplatte)
    Wechseln ins Backup-Verzeichnis:

    cd /remote_backup/backup_haning

    Über

    geom disk list

    herausfinden, wie groß das Systemvolume ist (hier SD-Karte mmcsd0) und dann den Parameter count im folgenden Befehl anpassen, um die Backup-Datei zu erzeugen:

    dd if=/dev/zero of=haning_2020-07-12.img bs=1m count=31915

    Backup dann wie folgt erzeugen:

    mdconfig -a -u 0 -t vnode -f /remote_backup/backup_haning/haning_2020-07-12.img
    gpart create -s MBR md0
    gpart add -tfreebsd md0
    newfs -nU /dev/md0s1
    tunefs -a enable -m 0 /dev/md0s1
    mount -o noatime /dev/md0s1 /media
    clone -c rwoff -x /remote_backup / /media
    umount /media
    mdconfig -d -u
  3. FreeBSD aktualisieren auf den neusten Stand
    Unter FreeBSD Releases, die aktuellste Version herausfinden und dann unter https://download.freebsd.org/ftp/releases/arm64/aarch64/ISO-IMAGES/ die entsprechende Version suchen

    cd /remote_backup/backup_haning/images
    fetch https://download.freebsd.org/ftp/releases/arm64/aarch64/ISO-IMAGES/12.1/FreeBSD-12.1-RELEASE-arm64-aarch64-RPI3.img.xz
    xz -d FreeBSD-12.1-RELEASE-arm64-aarch64-RPI3.img.xz
    mdconfig -a -u 0 -t vnode -f /remote_backup/backup_haning/images/FreeBSD-12.1-RELEASE-arm64-aarch64-RPI3.img
    mount -o noatime,ro /dev/md0s2a /media
    clone -c rwoff -s -x /usr/home:/usr/local:/usr/ports:/usr/obj:/usr/src /media/usr /usr
    clone -c rwoff -s /media/sbin /sbin
    clone -c rwoff -s /media/rescue /rescue
    clone -c rwoff -s /media/bin /bin
    clone -c rwoff -s /media/libexec /libexec
    clone -c rwoff -s /media/lib /lib
    clone -c rwoff -s -x crontab:exports:fstab:group:hosts:shells:localtime:master.passwd:motd:ntp.conf:passwd:pwd.db:rc.conf:rc.local:resolv.conf:spwd.db:ssh:ssl:unbound /media/etc /etc
    clone -c rwoff -s -x /boot/loader.conf:/boot:modules:/boot/msdos /media/boot /boot
    umount /media
    mdconfig -d -u 0

    Dann neu starten mit

    shutdown -r now
  4. Bitte überspringen – nur als Erinnerung für mich: verschlüsselte USB-Festplatte einbinden mit
    geli attach -k /root/remote_backup_wd_elements_10tb.key /dev/da0p2
    zpool import remote_backup
  5. Boot-Partition aktualisieren
    mdconfig -a -u 0 -t vnode -f /remote_backup/backup_haning/images/FreeBSD-12.1-RELEASE-arm64-aarch64-RPI3.img
    mount_msdosfs -o noatime /dev/md0s1 /media
    clone -c rwoff -s /media /boot/msdos
    umount /media mdconfig -d -u 0
    shutdown -r now
  6. Pakete installieren
    Paketquelle wieder richtig setzen mit

    rm /usr/local/etc/pkg/repos/FreeBSD.conf

    Jetzt fehlen eventuell die aus der Vergangenheit vorhandenen Pakete. Diese lassen sich installieren mit

    pkg update
    pkg upgrade

Leave a Reply

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

  

  

  

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.