Undefined symbol "__libc_start1@FBSD_1.7" on pfSense Plus 23.01
-
It shouldn't matter that pkg has been updated. It's only an issue if you're using pkg at the CLI in which case you will see that error if you don't use pkg-static.
-
I somehow lost my active repos. Toggling back and forth between 23.01 and 23.05 doesn't help.
I wonder if I could scp some files from a working machine into the system. Or somehow fix a symlink or so.[23.01-RELEASE][root@some.host]/root: pkg-static clean -ay ; pkg-static install -fy pkg pfSense-repo pfSense-upgrade pkg-static: No active remote repositories configured pkg-static: No packages available to install matching 'pfSense-repo' have been found in the repositories pkg-static: No packages available to install matching 'pfSense-upgrade' have been found in the repositories
Unfortunately this box is in a protected environment, I can't let Netgate support in right now.
help appreciated, thanks
-
Some more infos:
# pkg --version ld-elf.so.1: /usr/local/sbin/pkg: Undefined symbol "__libc_start1@FBSD_1.7" # pkg-static install -f pkg-1.18.4_4 pkg-static: No packages available to install matching 'pkg-1.18.4_4' have been found in the repositories
According to the GUI I am on 23.01 branch ... but some repo-information seems to be lost right now.
-
Try running:
pfSense-repoc-static
That should pull in repo data. Or show an error.
-
@stephenw10 "Command not found"
I managed to downgrade "pkg" as far as I see. And I reinstalled the repos, and somehow fixed that symlink:
ln -s /usr/local/etc/pfSense/pkg/repos/pfSense-repo-prev.conf pfSense.conf
I assume I should get things right on 23.01 at first?
Currently:
# pkg update Updating pfSense-core repository catalogue... Certificate verification failed for /C=US/ST=Texas/L=Austin/O=Rubicon Communications, LLC (Netgate)/OU=pfSense Plus/CN=pfsense-plus-pkg01.atx.netgate.com 2427236352:error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed:/var/jenkins/workspace/pfSense-Plus-snapshots-23_01-main/sources/FreeBSD-src-plus-RELENG_23_01/crypto/openssl/ssl/statem/statem_clnt.c:1921: Certificate verification failed for /C=US/ST=Texas/L=Austin/O=Rubicon Communications, LLC (Netgate)/OU=pfSense Plus/CN=pfsense-plus-pkg01.atx.netgate.com 2427236352:error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed:/var/jenkins/workspace/pfSense-Plus-snapshots-23_01-main/sources/FreeBSD-src-plus-RELENG_23_01/crypto/openssl/ssl/statem/statem_clnt.c:1921: Certificate verification failed for /C=US/ST=Texas/L=Austin/O=Rubicon Communications, LLC (Netgate)/OU=pfSense Plus/CN=pfsense-plus-pkg01.atx.netgate.com 2427236352:error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed:/var/jenkins/workspace/pfSense-Plus-snapshots-23_01-main/sources/FreeBSD-src-plus-RELENG_23_01/crypto/openssl/ssl/statem/statem_clnt.c:1921: Certificate verification failed for /C=US/ST=Texas/L=Austin/O=Rubicon Communications, LLC (Netgate)/OU=pfSense Plus/CN=pfsense-plus-pkg01.atx.netgate.com [..]
thanks ...
-
If you re-installed the repo pkg and it repopulated the symlink then it looks like it might not have the correct cert for the repo.
Try running
pkg -d update
to see the full error.Check what cert it's using:
cat /usr/local/etc/pkg.conf
-
Oh, yeah if you added the symlink manually it probably also needs the pkg.conf updating manually. In 23.01 when set to 'Prev' it should look like:
ABI=FreeBSD:14:amd64 ALTABI=freebsd:14:x86:64 PKG_ENV { SSL_CA_CERT_FILE=/etc/ssl/netgate-ca.pem SSL_CLIENT_CERT_FILE=/usr/local/etc/pfSense/pkg/repos/pfSense-repo-prev-cert.pem SSL_CLIENT_KEY_FILE=/usr/local/etc/pfSense/pkg/repos/pfSense-repo-prev-key.pem }
-
Compared
/usr/local/etc/pkg.conf
with another 23.01 box.The whole block "PKG_ENV" was missing, added it.
Now:
pkg -d update DBG(1)[32839]> pkg initialized Updating pfSense-core repository catalogue... DBG(1)[32839]> PkgRepo: verifying update for pfSense-core DBG(1)[32839]> PkgRepo: need forced update of pfSense-core DBG(1)[32839]> Pkgrepo, begin update of '/var/db/pkg/repo-pfSense-core.sqlite' DBG(1)[32839]> Request to fetch pkg+https://pfsense-plus-pkg.netgate.com/pfSense_plus-v23_01_aarch64-core/meta.conf DBG(1)[32839]> opening libfetch fetcher DBG(1)[32839]> Fetch > libfetch: connecting DBG(1)[32839]> Fetch: fetching from: https://pfsense-plus-pkg01.atx.netgate.com/pfSense_plus-v23_01_aarch64-core/meta.conf with opts "i" DBG(1)[32839]> Fetch: fetcher chosen: https Fetching meta.conf: 100% 163 B 0.2kB/s 00:01 DBG(1)[32839]> Request to fetch pkg+https://pfsense-plus-pkg.netgate.com/pfSense_plus-v23_01_aarch64-core/packagesite.pkg DBG(1)[32839]> opening libfetch fetcher DBG(1)[32839]> Fetch > libfetch: connecting DBG(1)[32839]> Fetch: fetching from: https://pfsense-plus-pkg01.atx.netgate.com/pfSense_plus-v23_01_aarch64-core/packagesite.pkg with opts "i" DBG(1)[32839]> Fetch: fetcher chosen: https Fetching packagesite.pkg: 100% 2 KiB 1.8kB/s 00:01 DBG(1)[32839]> PkgRepo: extracting packagesite.yaml of repo pfSense-core DBG(1)[32947]> PkgRepo: extracting signature of repo in a sandbox DBG(1)[32839]> Pkgrepo, reading new packagesite.yaml for '/var/db/pkg/repo-pfSense-core.sqlite' Processing entries: 100% pfSense-core repository update completed. 7 packages processed. Updating pfSense repository catalogue... DBG(1)[32839]> PkgRepo: verifying update for pfSense DBG(1)[32839]> PkgRepo: need forced update of pfSense DBG(1)[32839]> Pkgrepo, begin update of '/var/db/pkg/repo-pfSense.sqlite' DBG(1)[32839]> Request to fetch pkg+https://pfsense-plus-pkg.netgate.com/pfSense_plus-v23_01_aarch64-pfSense_plus_v23_01/meta.conf DBG(1)[32839]> opening libfetch fetcher DBG(1)[32839]> Fetch > libfetch: connecting DBG(1)[32839]> Fetch: fetching from: https://pfsense-plus-pkg00.atx.netgate.com/pfSense_plus-v23_01_aarch64-pfSense_plus_v23_01/meta.conf with opts "i" DBG(1)[32839]> Fetch: fetcher chosen: https Fetching meta.conf: 100% 163 B 0.2kB/s 00:01 DBG(1)[32839]> Request to fetch pkg+https://pfsense-plus-pkg.netgate.com/pfSense_plus-v23_01_aarch64-pfSense_plus_v23_01/packagesite.pkg DBG(1)[32839]> opening libfetch fetcher DBG(1)[32839]> Fetch > libfetch: connecting DBG(1)[32839]> Fetch: fetching from: https://pfsense-plus-pkg00.atx.netgate.com/pfSense_plus-v23_01_aarch64-pfSense_plus_v23_01/packagesite.pkg with opts "i" DBG(1)[32839]> Fetch: fetcher chosen: https Fetching packagesite.pkg: 100% 143 KiB 146.3kB/s 00:01 DBG(1)[32839]> PkgRepo: extracting packagesite.yaml of repo pfSense DBG(1)[33279]> PkgRepo: extracting signature of repo in a sandbox DBG(1)[32839]> Pkgrepo, reading new packagesite.yaml for '/var/db/pkg/repo-pfSense.sqlite' Processing entries: 100% pfSense repository update completed. 503 packages processed. All repositories are up to date.
Looks better, thanks ;-)
How to proceed now? Switch to 23.05 in the GUI?
-
Currently I have:
ABI=FreeBSD:14:aarch64 ALTABI=freebsd:14:aarch64:64 PKG_ENV { SSL_CA_CERT_FILE=/etc/ssl/netgate-ca.pem SSL_CLIENT_CERT_FILE=/usr/local/etc/pfSense/pkg/repos/pfSense-repo-stable-cert.pem SSL_CLIENT_KEY_FILE=/usr/local/etc/pfSense/pkg/repos/pfSense-repo-stable-key.pem }
but as mentioned it seemed to work.
-
Yes, try switching to 23.05 and see if it allows you to update.
-
Unfortunately not.
Option 13 gives me:
Enter an option: 13 ld-elf.so.1: /usr/local/bin/php: Undefined symbol "__libc_start1@FBSD_1.7" ld-elf.so.1: /usr/local/bin/php: Undefined symbol "__libc_start1@FBSD_1.7" ld-elf.so.1: /usr/local/bin/php: Undefined symbol "__libc_start1@FBSD_1.7" ld-elf.so.1: /usr/local/bin/php: Undefined symbol "__libc_start1@FBSD_1.7" /usr/local/libexec/pfSense-upgrade: /usr/local/sbin/-update-repos.php: not found cp: /usr/local/etc/pkg/repos/.conf: No such file or directory /usr/local/libexec/pfSense-upgrade: /usr/local/sbin/-update-repos.php: not found failed to update the repository settings!!! ld-elf.so.1: /usr/local/bin/php-cgi: Undefined symbol "__libc_start1@FBSD_1.7"
even after toggling 23.01 -> 23.05 -> 23.01 -> 23.05 ...
Again "No active remote repositories configured", seems that the symlink is gone again.
-
Hmm, OK.
What do these show:pfSense-upgrade -d
pkg-static -d update
-
I think I messed it up even more. Currently php is messed up, GUI disfunctional.
# pfSense-upgrade -d Fatal error: Uncaught Error: Call to undefined function gettext() in /etc/inc/certs.inc:48 Stack trace: #0 /etc/inc/functions.inc(34): require_once() #1 /etc/inc/notices.inc(26): require_once('/etc/inc/functi...') #2 /etc/inc/config.inc(51): require_once('/etc/inc/notice...') #3 /usr/local/sbin/pfSense-update-repos.php(23): require_once('/etc/inc/config...') #4 {main} thrown in /etc/inc/certs.inc on line 48 failed to update the repository settings!!!
pkg-static -d update
runs through OK. -
Hmm, I assume reinstalling this would be difficult?
pkg-static -d update
runs successfully against the 23.05 repo? -
reinstalling would include sending the appliance from one country to the other .. I am a few hundred kms away from that box. I have a 2nd SG1100 there (already on 23.05, no such issues there!), so it's possible, but it would be great to avoid that.
Yes,
pkg-static -d update
succeeds while:# /usr/local/etc/pkg/repos: ls -l total 1 -rw-r--r-- 1 root wheel 26 Feb 10 21:04 FreeBSD.conf lrwxr-xr-x 1 root wheel 57 Jun 22 15:18 pfSense.conf -> /usr/local/etc/pfSense/pkg/repos/pfSense-repo-stable.conf # cat pfSense.conf FreeBSD: { enabled: no } pfSense-core: { url: "pkg+https://pfsense-plus-pkg.netgate.com/pfSense_plus-v23_05_aarch64-core", mirror_type: "srv", signature_type: "fingerprints", fingerprints: "/usr/local/share/pfSense/keys/pkg", enabled: yes } pfSense: { url: "pkg+https://pfsense-plus-pkg.netgate.com/pfSense_plus-v23_05_aarch64-pfSense_plus_v23_05", mirror_type: "srv", signature_type: "fingerprints", fingerprints: "/usr/local/share/pfSense/keys/pkg", enabled: yes }
-
Ah, it's an 1100?
Is it installed as ZFS? You can probably roll back to a snapshot before you tried to upgrade if so.
-
@stephenw10 yeah, zfs.
tried to reinstall php stuff and gettext etc ... a mess
gui broken, can I roll back from cli?
-
Yes, you can using bectl. Or from the loader if you have console access.
First check what there is:
bectl list -s
-
bectl list -s BE/Dataset/Snapshot Active Mountpoint Space Created default pfSense/ROOT/default NR / 897M 2023-02-10 22:00
nothing else
-
Could I get some list of php-packages to reinstall maybe? That might fix something ...
Rolling back is not possible as far as I understand. Looks as if everything has been written into this first boot env.
thanks