E: Malformed entry 1 in list file /etc/apt/sources.list.d/extra.list (Component) with E: The list of sources could not be read. means a deb line stops before its components. In the test the line had a server and a release but no main or universe after them. Add the component, or remove the line, and apt reads its sources again.

The message gives you the file, the entry number and, in brackets, the part that was missing. Open that file, look at that line, and complete it.

The error

$ echo 'deb http://archive.ubuntu.com/ubuntu noble' > /etc/apt/sources.list.d/extra.list
exit code: 0
$ apt-get update
E: Malformed entry 1 in list file /etc/apt/sources.list.d/extra.list (Component)
E: The list of sources could not be read.
exit code: 100

Why it happens

The corrected line that worked in this test had four parts: deb, the address, the release and a component (deb http://archive.ubuntu.com/ubuntu noble-backports universe). The broken line ended after the release name noble, so the component was missing, and apt named that part in brackets: (Component). The update printed no Hit: or Get: line at all, only the two E: lines, and returned 100.

Read the bracket as the name of the missing piece. Here it was (Component), the last part of the line; the error does not repeat the line itself, so open the file and compare it with a line that works, such as the corrected one below.

The broken file affects more than the update. While a list file cannot be read, other apt commands stop with the same The list of sources could not be read. line; that was captured for a different broken entry in the Signed-By post, where apt-get install -y jq failed the same way.

The fix

$ echo 'deb http://archive.ubuntu.com/ubuntu noble-backports universe' > /etc/apt/sources.list.d/extra.list
exit code: 0
$ apt-get update
Hit:1 http://archive.ubuntu.com/ubuntu noble-backports InRelease
Hit:2 http://archive.ubuntu.com/ubuntu noble InRelease
Hit:3 http://security.ubuntu.com/ubuntu noble-security InRelease
Hit:4 http://archive.ubuntu.com/ubuntu noble-updates InRelease
Reading package lists...
W: Target Packages (universe/binary-amd64/Packages) is configured multiple times in /etc/apt/sources.list.d/extra.list:1 and /etc/apt/sources.list.d/ubuntu.sources:1
...
exit code: 0

With a component at the end the line was read and the update returned 0. The W: lines are a separate matter: this test line repeated a source the image's ubuntu.sources already lists, which is explained in configured multiple times. A real third-party line would name that vendor's address, release and component; copy it whole from the vendor's instructions rather than retyping it. After the test the file was moved out of the folder.

How it was reproduced

The capture was made in an ubuntu:24.04 container (Ubuntu 24.04.5 LTS, apt 2.8.3) on Docker Engine 29.9.3, standing in for Ubuntu in WSL. As root, a list file with deb http://archive.ubuntu.com/ubuntu noble was written and apt-get update was run, then the file was rewritten with a complete line and the update was run again.

Frequently asked

How do I fix 'Malformed entry 1 in list file (Component)'?
Open the file the message names and add a component such as main or universe after the release name, or remove the line. In the test the completed line made apt-get update return 0.
What does 'The list of sources could not be read' mean?
apt could not parse one of its list files and stopped. In the test it followed the Malformed entry line and apt-get update returned 100 and printed no Hit or Get line.
Which line is 'entry 1'?
In the test the file had a single line, and entry 1 was that line. The file name in the message says which file to open.

More decoded errors in the Fixes category. A line that does not start with deb at all gives a different message; see Type is not known on line 1.