Я получил странное сообщение об ошибке внутри chroot:
unknown user 'geoclue' in statoverride file
при запуске apt-get install
или apt-get upgrade
. Я использую schroot для входа в этот chroot. Я обнаружил, что у меня был установлен пакет geoclue-2.0
в chroot, и я его очистил.
apt-get purge geoclue-2.0
Это устранило проблему. Что вызвало эту проблему? Я использую Debian wheezy на хост-машине. Chroot использует Debian jessie (тестирование).
Я спросил об этом в чате, и это побудило Брайама опубликовать тесно связанную тему Как предотвратить перезапись schroot-файла passwd и других файлов, уже присутствующих в chroot-системе?
решение1
В вашем конкретном случае это происходит потому, что schroot переопределяет несколько файлов, включая тот /etc/passwd
, который dpkg запрашивает для сравнения с файлом statoverride, он проверяет, что все записи файла statoverride находятся в passwd, и если это не так, выдает предупреждение, что и происходит. По сути, это происходит всякий раз, когда вы удаляете пользователя, созданного пакетом.
Это легко исправить, если перенастроить/переустановить соответствующий пакет (в вашем случае это был geoclue
, но это может быть что угодно, к счастью, Debian обычно использует то же имя пользователя, что и имя проекта), и он (пере)создаст пользователя в файле passwd.