dpkg: ошибка: анализ файла '/ var / lib / dpkg / updates / 0045' рядом со строкой 0:


44

Я получаю эту ошибку в Ubuntu 12.04 при выполнении описанной ниже операции.

frank@august:~$ sudo apt-get install ttf-mscorefonts-installer
[sudo] password for frank: 
E: dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct    the problem. 
frank@august:~$ sudo dpkg --configure -a
dpkg: error: parsing file '/var/lib/dpkg/updates/0045' near line 0:
 newline in field name `#padding'
frank@august:~$ 

&

frank@august:~$ head /var/lib/dpkg/updates/0045
#padding
#padding
#padding
#padding

frank@august:~$ 

Я не вижу, где ошибка, помогите мне решить эту проблему. Спасибо.

Ответы:


79

Хорошо, я решил проблему сам.

Я запустил эти две команды в терминале ( CTRL+ ALT+ T):

cd /var/lib/dpkg/updates && rm -rf 0045
sudo dpkg --configure -a

И моя проблема была решена.


7
Поскольку попытка бега sudo rm -rf /var/lib/dpkg/updates/0045является безопасной и правильной, но может привести к катастрофическим результатам, если кто-то введет в случайном месте рядом с любым из них /(особенно первые два!), Может быть лучше предупредить об этой опасности или предложить что-то подобное cd /var/lib/dpkg/updates && rm -rf 0045. Хорошее решение, хотя!
Элия ​​Каган

2
В такой ситуации я бы никогда не воспользовался sudo rm -rf [file], но sudo mv [file] /var/tmp.
Карл Рихтер

даже с sudoдоступом было отказано, поэтому мне пришлось обратиться в root с sudo -sблагодарностью, это действительно помогло мне, хотя однажды я был в root.
Джон Д,

11

Похоже, файл поврежден. Предлагаю вам сделать следующее (пожалуйста, сделайте резервную копию и делайте это на свой страх и риск;))

sudo rm /var/lib/dpkg/updates/000*
sudo apt-get clean
sudo apt-get update
sudo apt-get install ttf-mscorefonts-installer

Спасибо за ваш ответ, но он не помог мне paste.ubuntu.com/1337768
r 6dʒɑ

Это удаляет явно оскорбительный файл, но в моем случае это просто привело меня к следующему поврежденному файлу. Поэтому я просто sudo rm /var/lib/dpkg/updates/*продолжаю с обновлением clean +, которое работало нормально.
thoni56

10

Попробуй это:

sudo rm -rf /var/lib/dpkg/updates/*
dpkg --configure -a

7
Можете ли вы добавить более подробную информацию к вашему ответу, пожалуйста? Как то, что это делает и почему это делает?
Сет

2
В чем разница с более легким ответом @ Ten-Coin?
Карл Рихтер

@KarlRichter Скорее всего, ответ Ten-Coin не сработает, если ваша ошибка не 0045, а другие числа.
皞 皞

Такая разница не оправдывает отдельный ответ. Вместо этого вы должны предложить и улучшить существующий ответ, если изменение настолько мало.
Карл Рихтер

Это исправило мою проблему на UBUNTU 18.04 LTS с рабочим столом xfce4.
EsmaeelE

7

Кажется, что файл состояния поврежден, чтобы исправить это, вы должны удалить / очистить файл с помощью команды.

sudo dpkg --clear-status

(Примечание: опция --clear-status больше не доступна. Распечатка из 'dpkg -?' Не предлагает явной замены.) Затем пересоберите файл с помощью команды:

sudo apt-get update
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.