i installed pgAdmin but when i open it i get this error :

Failed to launch pgAdmin4. Error: Error: spawn /usr/pgadmin4/venv/bin/python3 ENOENT 

when i tap this command :

sudo python3 /usr/share/pgadmin4/web/pgAdmin4.py 

i get

python3: can't open file '/usr/share/pgadmin4/web/pgAdmin4.py': [Errno 2] No such file or directory 

then i create the missing file path as,

sudo mkdir -p /var/cache/pgadmin/sessions 

and run this command again

sudo python3 /usr/share/pgadmin4/web/pgAdmin4.py 

but i get the same error

1 Answer

Ran into this on Ubuntu 21.10 (impish), because I had borked my installation paths thinking pgadmin4 wasn't fully installed when it was.

The error is because it is assuming python3.8 is installed (21.10 comes with python3.9) , but it isn't, so all the symlinks and virtual env fails. But this is happening because you've installed a version of pgadmin4 that doesn't match your Ubuntu version.

garrett@garrett-external:/etc/apt/sources.list.d$ ls deadsnakes-ubuntu-ppa-impish.list pgadmin4.list.save pgdg.list.save pgadmin4.list pgdg.list ##Looking at pgadmin4.list.save , I see I had at least tried to use # hirsute 's repo: garrett@garrett-external:/etc/apt/sources.list.d$ cat pgadmin4.list.save deb pgadmin4 main ##I'm thinking this is overriding the correct impish repos, so I'll # try deleting that file, purging the installation and re-installing: garrett@garrett-external:/etc/apt/sources.list.d$ ls deadsnakes-ubuntu-ppa-impish.list pgadmin4.list pgadmin4.list.save pgdg.list pgdg.list.save garrett@garrett-external:/etc/apt/sources.list.d$ sudo rm pgadmin4.list.save ##double check that the pgadmin4 sources are correct... garrett@garrett-external:/etc/apt/sources.list.d$ ls deadsnakes-ubuntu-ppa-impish.list pgadmin4.list pgdg.list pgdg.list.save garrett@garrett-external:/etc/apt/sources.list.d$ cat pgadmin4.list deb pgadmin4 main ##^ok definitely the problem...should fix that.... garrett@garrett-external:/etc/apt/sources.list.d$ sudo sed -i 's/focal/impish/g' /etc/apt/sources.list.d/pgadmin4.list garrett@garrett-external:/etc/apt/sources.list.d$ cat ./pgadmin4.list deb pgadmin4 main ##uninstall pgadmin4 garrett@garrett-external:/etc/apt/sources.list.d$ sudo apt purge pgadmin4 garrett@garrett-external:/etc/apt/sources.list.d$ sudo apt autoremove ##reinstall pgadmin4 garrett@garrett-external:/etc/apt/sources.list.d$ sudo apt update && sudo apt install pgadmin4 And now it works fine 

EDIT: DON'T GO DOWN THE RABBIT HOLE BELOW

Workaround: Manually install python3.8 using the deadsnakes PPA and some temporary apt cache updating trickery

 #first add deadsnakes ppa... $ sudo add-apt-repository ppa:deadsnakes # Following the gist of , # update the deadsnakes ppa's app repos to look at the past 2 LTS versions $ sudo vim /etc/apt/sources.list.d/deadsnakes-ubuntu-ppa-impish.list ---> change 'deb impish main' to 'deb bionic main' , also add 'deb focal main' #Add the following rules which blacklist all packages from # the repos, and then selectively enable Python versions from the correct # locations. This can be put in any filename within the directory # /etc/apt/preferences.d/ (I named mine deadsnakes_pref) Explanation: Prevent installing from deadsnakes repo. Package: * Pin: release o=LP-PPA-deadsnakes Pin-Priority: 1 Explanation: Allow installing python 3.{6,7} from deadsnakes/focal Package: *python3.6* *python3.7* Pin: release o=LP-PPA-deadsnakes,n=focal Pin-Priority: 500 Explanation: Allow installing python 3.8 from deadsnakes/bionic Package: *python3.8* Pin: release o=LP-PPA-deadsnakes,n=bionic Pin-Priority: 500 ##temporarily change all your sources to bionic, so the python3.8 #dependencies will be met $ sudo sed -i 's/impish/bionic/g' /etc/apt/sources.list ## try to update the apt cache and install python3.8 . You'll get yelled # at for not having the proper key ring: **************** W: GPG error: bionic InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 3B4FE6ACC0B21F32 E: The repository ' bionic InRelease' is not signed. N: Updating from such a repository can't be done securely, and is therefore disabled by default. N: See apt-secure(8) manpage for repository creation and user configuration details. **************** ## so following ## ## , I add the key $ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32 # now this should work $ sudo apt update && sudo apt install python3.8 #after we're done, don't forget to change back your sources $ sudo sed -i 's/bionic/impish/g' /etc/apt/sources.list $ sudo apt update #And now pgadmin4 should work. If you want to run it from the terminal, # add this line to your ~/.bash_aliases file: alias pgadmin4='/usr/pgadmin4/bin/pgadmin4' 

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy