Вы находитесь на странице: 1из 2

Fix: Could not open file /var/lib/dpkg/status

By Kevin Arrows May 10, 2018 0 2 minutes read

You might get a nasty �could not open file /var/lib/dpkg/status� error or something
similar if you�ve been poking around the /var/lib/dpkg/ directory and clearing
things out as the root users. Most files located in /var, according to the Linux
Filesystem Hierarchy Standard, are temporary and change during operation. However,
that doesn�t mean that they need to be cleaned out the same way that a Web browser
cache needs to be cleared.

Since most Linux users don�t have a need to poke around here, the good news is that
you probably won�t get this one nearly ever. Those who are on distributions that
don�t use apt-get, such as Fedora or Arch, won�t ever get this error either since
it�s wholly specific to that package manager. Nevertheless, if you�re dealing with
it then read on.

Method 1: Fixing a Seemingly Random could not open file /var/lib/dpkg/status Error

If this error comes out of the blue, then type ls /var/lib/dpkg/status at the
command line and take a look at the output.

You might also want to use a graphical file manager to the browser over to it and
take a look.

Make sure that you see a status file in the results. You�ll normally just get a
line that reads /var/lib/dpkg/status with nothing else after it before it returns
you straight to the prompt. If that�s the case, then you have a file there and you
should be okay. Close all the programs that you were working in after saving and
then reboot.

Once you�re back up and running, type sudo apt-get update followed by sudo apt-get
upgrade at the terminal and follow the prompts. You�ll probably get asked for your
administrator password, but once it updates you should be fine. You�ll want to
watch for any odd errors.

If the file wasn�t there, then you�ll have some decisions to make.
Method 2: Recreating /var/lib/dpkg/status

Some users back all their important data up at this point before reinstalling
Linux. You could do this, but there might be a way to salvage things first. There�s
a backup copy of /var/lib/dpkg/status that gets made automatically, and hopefully
not too much time has passed since you got the error that it caused it to be out of
sync.

Try running sudo cp /var/lib/dpkg/status-old /var/lib/dpkg/status at the terminal.


If this doesn�t give you an error, then you can see if this fixed the issue. This
restores the most recent backup copy of the status file, but unfortunately if it
was too out of date you might still be in hot water. Nevertheless, you can restart
then run sudo apt-get update followed by sudo apt-get upgrade to see what sorts of
dependency errors end up coming up for you. In a best-case scenario, you won�t have
any and you�ll merely be able to continue working with your system again like
normal.

You could also try rebuilding the status list. Type sudo touch /var/lib/dpkg/status
to create an empty file as the root user and then try sudo apt-get install long-
list from the terminal. There are a few scripts that do this automatically, but
this is essentially the same thing and comes without the dangers of running a
potentially outdated script on your machine. Be warned that you�ll need to remember
what you have on your system for this to work, and the software will prompt you to
remember.

You can also try ls /var/backups/dpkg.status* and see what ones are there that you
might instead want to use for this.

Take a look at the list that comes up when you run that. If you see one that isn�t
zipped up, then try sudo cp /var/backups/dpkg.status.0 /var/lib/dpkg/status and see
if that fixes things. You could always copy one of the other ones and run the
gunzip command on it to decompress it. However, keep in mind that the further back
you go the higher your risk of updating an obsolete file that would cause broken
dependencies

Вам также может понравиться