142

I just wanted to test something out real quick. So I ran a docker container and I wanted to check which version I was running:

$ docker run -it ubuntu    
root@471bdb08b11a:/# lsb_release -a
bash: lsb_release: command not found
root@471bdb08b11a:/# 

So I tried installing it (as suggested here):

root@471bdb08b11a:/# apt install lsb_release
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package lsb_release
root@471bdb08b11a:/# 

Anybody any idea why this isn't working?

kramer65
  • 50,427
  • 120
  • 308
  • 488

6 Answers6

235

It seems lsb_release is not installed.

You can install it via:

apt-get update && apt-get install -y lsb-release && apt-get clean all
vvvvv
  • 25,404
  • 19
  • 49
  • 81
ckaserer
  • 4,827
  • 3
  • 18
  • 33
14

Just use cat /etc/os-release and that should display the OS details.

Screenshot from debian.

enter image description here

Screenshot from ubuntu.

enter image description here

Screenshot from fedora.

enter image description here

Svj
  • 231
  • 2
  • 10
6

This error can happen due to uninstalling or upgrading the default python3 program version in ubuntu 16.04

The way to correct this is by reinstalling the original python3 version which comes with ubuntu and relinking again. (in ubuntu 16.04 - the default python3 version is python 3.5

sudo rm /usr/bin/python3
sudo ln -s /usr/bin/python3.5 /usr/bin/python3
Magnus Melwin
  • 1,509
  • 1
  • 21
  • 32
  • I'd be careful messing with the potential symlinks in /usr/bin/python3. You really should be using sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.5 35 #or whatever priority. That being said, mine is there, but the shebang is for python, not python3 – DeadlyChambers May 27 '22 at 04:16
2

lsb_release.py lives in /usr/share/pyshared which to me doesn't look like python3.6 and above is referencing.

I found the following will create a link back from a later Python install to this /usr/share script:

sudo ln -s /usr/share/pyshared/lsb_release.py /usr/lib/python3.9/site-packages/lsb_release.py
vvvvv
  • 25,404
  • 19
  • 49
  • 81
1

In case one is trying to deal with lsb_release: command not found on fedora or redhat, the package to install is redhat-lsb-core , so sudo dnf install redhat-lsb-core

Vivek Gani
  • 1,283
  • 14
  • 28
0

While writing Dockerfile we can add lsb-release package - like this

RUN apt-get update -y \
    && apt-get upgrade -y \
    && apt-get install lsb-release -y \
    && apt-get clean all

Assuming OS is Ubuntu.

Pravind Kumar
  • 809
  • 1
  • 11
  • 10