报错码:
mainError: Data directory /var/lib/postgresql/15/main must not be owned by root ... failed!
E: Sub-process /usr/bin/dpkg returned an error code (1)
update-initramfs: deferring update (trigger activated) (Reading database ... 311341 files and directories currently installed.) Preparing to unpack .../postgresql-15_15.3-0+deb12u1_arm64.deb ... invoke-rc.d: could not determine current runlevel Stopping PostgreSQL 15 database server: mainError: Data directory /var/lib/postgresql/15/main must not be owned by root ... failed! failed! invoke-rc.d: initscript postgresql, action "stop" failed. dpkg: warning: old postgresql-15 package pre-removal script subprocess returned error exit status 1 dpkg: trying script from the new package instead ... invoke-rc.d: could not determine current runlevel Stopping PostgreSQL 15 database server: mainError: Data directory /var/lib/postgresql/15/main must not be owned by root ... failed! failed! invoke-rc.d: initscript postgresql, action "stop" failed. dpkg: error processing archive /var/cache/apt/archives/postgresql-15_15.3-0+deb12u1_arm64.deb (--unpack): new postgresql-15 package pre-removal script subprocess returned error exit status 1 Errors were encountered while processing: /var/cache/apt/archives/postgresql-15_15.3-0+deb12u1_arm64.deb E: Sub-process /usr/bin/dpkg returned an error code (1)
解决办法:
sudo apt update && sudo apt full-upgrade -y
sudo rm -rf /var/lib/dpkg/info/postgresql*
sudo dpkg --configure -a
sudo apt update && sudo apt full-upgrade -y