На моем htpc, работающем под управлением ubuntu server, было установлено приложение под названием mediatomb, несколько месяцев назад я удалил его и заменил на Plex. На выходных при опросе существующих пользователей на машине я заметил, что пользователь и группа mediatomb все еще существуют, поэтому я использовал команду
sudo deluser mediatomb
удалить пользователя. Примерно через день я пошел устанавливать htop, sudo apt-get install htop
но обнаружил, что получаю ошибку:
синтаксическая ошибка: неизвестный пользователь 'mediatomb' в файле statoverride.
Я думал, что смогу открыть файл statoverride с помощью nano и отредактировать любые ссылки на mediatomb, но я не смог правильно открыть файл с помощью nano. Я выполнил команду grep
grep 'mediatomb' /var/lib/dpkg/statoverride
который вернул в файл два местоположения, которых больше нет в системе. Единственный способ, которым я могу сейчас обойти эту проблему, - это воссоздать медиатомбу пользователя, и тогда все работает нормально. Очевидно, что это не хорошее долгосрочное решение.
Я хотел бы знать, что такое файл statoverride и почему он сохраняет в нем пользователей, которые были удалены из системы? Я удаляю пользователей неправильным или устаревшим способом?
Хотя я не могу ответить на ваш вопрос, как спросили, я могу помочь вам с вашей дилеммой. Я столкнулся с той же самой проблемой, с которой вы столкнулись после использования «Учетных записей пользователей» для удаления пользователя «backuppc» - пользователя, которого я вручную настроил для резервного копирования. Ну, я удалил этот маршрут, но не пытался удалить пользователя, пока пару недель спустя (IE - сегодня). У меня не было никаких проблем, пока Менеджер обновлений не нашел и не попытался применить обновления; процесс не сможет прочитать
После некоторых поисков я нашел решение.
Исправлено с помощью команды: sudo sed -i '/ backuppc / d' / var / lib / dpkg / statoverride
Извините, я не могу ответить на ваш вопрос, но это был второй результат в Google, поэтому я хотел выложить решение здесь для людей. Мой ответ возник из http://rickfoosusa.blogspot.com/2012/04/howto-ubuntu-unknown-user-in.html .
источник
Я получаю следующую ошибку:
Ниже команда решила мою проблему установки apt-get
Вы можете изменить слово crontab, но удерживайте «/ d», пока не сможете успешно установить любой apt-get без какой-либо синтаксической ошибки.
источник
Это потому, что вы, возможно, удалили пользователя, и теперь запросы dpkg
/etc/passwd
сравниваются с файлом statoverride, он проверяет, что все записи файла statoverride находятся в passwd, и, если это не так, выдает предупреждение, что и происходит.Это легко исправить, если вы переконфигурируете / переустановите соответствующий пакет (в вашем случае это
mediatomb
может быть что угодно, к счастью, Debian (на котором основана ОС Ubuntu) обычно использует то же имя пользователя, что и имя проекта), и он создаст (повторно) пользователя в файле passwd.или
источник
Когда я установил DelugeD, он создал пользователя с именем debian-deluged. Позже я изменил конфигурацию Deluge для использования другого идентификатора пользователя и удалил автоматически созданного пользователя. Это привело к
statoverride
ошибке при установке пакета спидометра.Я запустил
sudo nano /var/lib/dpkg/statoverride
и вручную заменил автоматически созданного пользователя с назначенным идентификатором пользователя, и ошибка была устранена.источник
У меня была похожая ошибка, и я исправил ее, сначала сделав резервную копию файла statoverride, а затем удалив все строки, содержащие слово postdrop .
Не забудьте добавить новую строку в конце файла statoverride .
источник